As has been mentioned earlier, software may conveniently be divided into: systems software (i.e., programs designed to control the execution of other programs and to utilise hardware effectively) and applications software (i.e., programs to solve users problems). Systems software is generally supplied by hardware manufacturers. In this section, let us look at some general points on applications software. Applications software comprises the procedures and instructions which enable computer systems to do what the user requires. Software design essentially involves three abstract concepts. These are: algorithms, data structures, and file structures. Algorithms are procedures, or recipes, for computation. They may either be numerical or non-numerical, for example, sorting, text searching, etc. Data structures on the other hand, indicate the way in which information is organised in the computer's memory, for example, in array or in tree structure. File structures indicate the way in which large amounts of information is stored for example: sequential, direct access or inverted file. Although, users need not have an in-depth knowledge of these concepts, it is desirable to have some understanding of the terminology, since it is often used in the literature of software vendors. Once a software procedure is expressed in these terms, it can be coded into a form which the computer can use, by means of programming languages of which there are a variety in use. It may be mentioned here that it is not necessary for users of a package to have any knowledge of the language in which it is written.
There are literally thousands of applications programs deigned to help the user use the computer to accomplish some task or the other. A growing number of programmers the world over, are working alone sin teams developing new applications in response to the demand for software. The potential is really boundless, and new applications are being developed for solving different problems in new areas using computers. Even so five types of computerised applications are widely used in all professions. These are generally identified as: word processing file, database management, spread sheets, graphics and communications. When they are sensibly integrated into the work environment by well trained and experienced users, these applications tend to be powerful productivity tools. This is as hue of US profession as of other professions.