
Instructions given to a computer (computer programs) Software is a general term for the various kinds of programs used to operate computers and related devices.
• Application software
Software is the set of instructions that makes the computer work.
Example - When you type in words via the keyboard, the software is responsible for displaying the correct letters, in the correct place on the screen.
Software is held either on your computer’s hard disk, CDROM, DVD or on a diskette (floppy disk) and is loaded (i.e. copied) into the computer’s RAM (Random Access Memory), as and when required.
System software
System software is a collection of programs is written to service the other programs.
Eg:Operating system component, drivers, telecommunication process.
Business software:
System have evolved into management information system software that access one or more large database containing business information.
Embedded software:
Embedded software resides in read-only memory and is used to control product and system for the customer and industrial markets.
Engineering and scientific software:
They have been characterized by number crunching algorithms.
Personal computer software:
Personal computer software market has burgeoned over the past two decades. Word processing, spreadsheets, computer graphic, multimedia and db management.
Web-based software:
The network becomes a massive computer providing an almost unlimited software resources that can be accessed by anyone with a modem.
Artificial intelligence software:
AI software makes use of nonnumerical algorithms to solve the complex problems that are not amenable to computing or straightforward analysis.
Characteristics of Software
• Intangibility - Cannot touch software.
• Increase use will not introduce any defects.
• Software is configurable-able to build software by combining a basic set of software components in different ways.
• One can change the product easily by re-implementing it without changing the design.
• Custom built- Most software are made upon order.
Attributes of Good Software
The software should deliver the required functionality and performance to the user and should be maintainable, dependable and acceptable.
– Maintainability
• Software must evolve to meet changing needs;
– Dependability
• Software must be trustworthy;
– Efficiency
• Software should not make wasteful use of system resources;
– Acceptability
• Software must accepted by the users for which it was designed. This means it must be understandable, usable and compatible with other systems.