Software
Definition
Software is an instruction (computer programs), data structures and descriptive information.
Categories of Computer Software
There are various computer software, which can be categorized as follows.
- System Software
- Application Software
- Engineering / Scientific Software
- Embedded Software
- Product-line Software
- Web / Mobile Application
- Artificial Intelligent Software
Attributes of Good Software
- Deliver the required functionality and performance to the user
- Maintainable
- Dependable
- Usable
Type of Software Products
Generic Products
Stand-alone systems that are produced by a development organization and sold on the open market to any customer who is able to buy them.
Customized Products
Systems that are commissioned by a particular customer. A software contractor develops the software especially that customer.
General Issues that Affect Software
Heterogeneity
Increasingly, systems are required to operate as distributed systems across networks that include different types of computer and mobile devices.
Business and Social Change
Business and society are changing quickly as emerging economics develop, and new technologies become available. They need to be able to change their existing software and to rapidly develop new software.
Security and Trust
It is essential that we can trust that software as it is intertwined with all aspects of our lives.
Scale
Software has to be developed across a very wide range of scales.
Application Types
- Stand-alone applications
- Running on local computer and do not need to be connected to a network.
- Interactive Transaction-based Applications
- Applications that execute on a remote computer and are accessed by users from their own PCs or terminals.
- Embedded Control Systems
- Control and manage hardware devices. Numerically, there are probably more embedded systems than any other type of system.
- Batch Processing Systems
- Business systems that are designed to process data in large batch.
- Entertainment Systems
- For personal use and are intended to entertain the user.
- System for Modelling and Simulation
- Developed by scientists and engineers to model physical processes or situations.
- Data Collection Systems
- Collect data from their environment by using a set of sensors and send the data to other systems for processing.
- System of systems
- Systems that are composed of a lot of other software systems.