Software Strategy

Software strategy

Every organisation with an information system needs to consider very carefully the following points when writing and implementing a software strategy. It needs to take account of several important issues:

Software evaluation

Functionality – This refers not only to the number of features an application program has but the number of useable features it has. Also the tasks to be completed need to be evaluated against the features in the software.

Performance – The performance of software can be measured by several different criteria depending on the type of software:

Speed – A database program could be measured for the speed it takes to search through, say 10,000 records, by a variety of criteria. A spreadsheet’s speed may be measured by the time it takes to recalculate a complex formula over a set number of cells.

Usability – This can be simply the look and feel of the software, whether tabs or buttons are used and whether standard menus or specific menus are used.  Usability can also mean what choices one has in the menus (e.g. you expect to find cut, copy and paste in the edit menu and no other) and also whether the software does what you expect it to.

Compatibility – Is the software compatible with other software on the system and also the intended hardware.  The commonest compatibility problem is with operating systems.  As software becomes more modern and up-to-date it is likely not to run on older operating systems.  Developers write routines that they know are supported by the newest operating system, but not by a version several years old (e.g. trying to use the USB port – Windows 98 onwards supports USB, but try to use the software on Windows NT and it will not work).

Data migration – The process of translating data from one format to another. Data migration is necessary when an organisation decides to use a new computing system or database management system that is incompatible with the current system. Typically, data migration is performed by a set of customised programs or scripts that automatically transfer the data.

Reliability – Reliable software does the job it is supposed to do, and gives the expected results to test data supplied to it.  It can be a long process devising suitable test data and running reliability tests but this is a very important area of testing.  For example a program dealing with small decimal parts of numbers may only be accurate to 10 decimal places when the requirement is for 12 places.

Resource requirements – Software must be investigated to see whether or not the computer going to operate it has adequate resources.  This means questions must be asked about whether the processor is fast enough and has the correct type of processor, and how much RAM is required to run the software and deal with associated data files.  The next level is to look at the hard disk space required and the type of monitor and graphics adapter. Other considerations will be more peripheral, such as sound capability and other storage requirements, CD-ROM, DVD, USB devices.

Portability – When used to describe software, portable means that the software has the ability to run on a variety of computers or operating systems. ‘Portable’ and ‘machine independent’ mean the same thing – that the software does not depend on a particular type of hardware.


On-the-job – This type of training comes when a new user starts using an information system. A new user needs to be introduced to the software; this usually takes the form of working through a tutorial to become familiar with the functions of the software. It will either be an online tutorial program or tutorial manual that teaches the user about the software.

In-house – This is when small groups of staff, within the company or organisation, receive a training course usually delivered by IT staff. This allows staff to become fully familiar with the information system; if they have any complex or unusual questions relating to using the system, the IT staff have the expert knowledge to answer them.

External – This type of training is used when an organisation does not have in-house IT specialists to deliver the training internally. It is offered by specialist training providers for popular application software, such as software created by Microsoft, Macromedia and Adobe.

User support

There are numerous sources of user support that allow a user to solve a problem when using a piece of software.


There are several types of manuals available for application software:

On-line help – This is usually a facility associated with a piece of software that explains to the user what each feature of the software does.  Importantly, it is a part of the program situated on the computer and is not on the Internet.

On-line tutorials – This is usually a facility associated with a piece of software that teaches the user how to use the software. Users are led through a set of steps that illustrate how the software works and this is usually very similar to the paper-based tutorial manual (replacing it very often).  This facility is also situated on the computer and is not on the Internet.

Help desk – There are two types of help desk: internal and external. They both provide support information on how to use the information system or software. Sometimes the company that is the end user of the software and focuses on solving low-level user problems operates an internal help desk. These problems can usually be solved very simply and do not require a complex understanding of the information system.

An external help desk is usually associated with the software company that provided the software. They deal with complex high level user problems. They provide detailed technical information to the user and are also responsible for logging any bug reports for the software, which would require the programming team to fix.

Newsgroups – A newsgroup allows users of a piece of software to post e-mail messages to the wider user community. Users subscribe to a newsgroup and when a message is posted there it is sent to all members of the group. If it is a problem that another user has experienced then they may reply with helpful advice. A newsgroup helps support a user by allowing the user group to share the knowledge of the community. It is also common for the moderator of a newsgroup to create an FAQ (see below), which is updated and posted on a regular basis.

FAQs – This stands for Frequently Asked Questions. It is usually a file that contains a list of commonly asked user queries about a piece of software. These FAQ files are often posted on newsgroups or on a website to allow users to access them easily. They can be a simple starting point when trying to find a solution to a problem. If the user can’t find the answer in the FAQ then they can try one of the other sources of support.

Decisions to upgrade software

There are several reasons why an organisation may decide to upgrade their software, as it is usually a large step to take and care must be taken to ensure that the upgrade is not a costly mistake.

Data files, which may be more valuable than the computer system, must be compatible with upgraded software, and upgraded software must be compatible with the current hardware, or else that will need to be upgraded also; and so the cycle continues.

Lack of functionality – At some time the organisation will evolve and change.  For example, a mail-order company might move over to telephone ordering. The mail-order software will not be able to cope with telephone ordering.  In the case of an application package there may be new features in the software that the users want to use or need to use.  An example was Web Authoring software that worked perfectly well but did not support MP3 files (which came out after the software was released), so the different companies released upgrades to cope with these and other new file formats.

Hardware incompatibility – It may be that an organisation has to upgrade its computers and the new computers have an operating system that will not support the original software, so upgraded software will need to be ordered or bought.

Software incompatibility – Likewise, an organisation may have to upgrade its software for operational reasons and finds that the upgraded software will not run on the version of the operating system installed.  The next step is then to upgrade the operating system.

Perfecting the software – If a software company releases software and it discovers there are bugs in the software, the company will try and remove those bugs and release an update.  This may well be free, but users should check that their data files are upwardly compatible.

Download and complete Worksheet 9. Complete Worksheet 9a. and Worksheet 9b.



Intermediate II Home
Database | Using Information | Internet | NAB/Coursework| Revision
Log into Glow | School Website | Contact Us