Software is the entire set of programs, procedures, and routines associated with the operation of a computer system, including the operating system. Software is written by programmers in a variety of programming languages, this writing is known as source code, which must be translated by a compiler into machine language so that it can be understood and executed by the computer.
The software has three main features:
1) Operational features
features 3) Review features
Software operating characteristics
They are functionality factors, it is how the software is presented, it is the “outer part” of it. It includes aspects such as:
- Correction: The software that we are making must satisfy all the specifications established by the client.
- Usability / Ease of learning: It must be easy to learn.
- Integrity: Quality software should not have secondary effects.
- Reliability: The software product should not have any defects. Not only this, it must not crash while executing.
- Efficiency: How the software uses available resources. The software must make efficient use of storage space and execute the command according to the desired timing requirements.
- Security: Appropriate measures must be taken to keep data safe from external threats
Software Transition Features
- Interoperability: It is the ability to exchange information with other applications.
- Reuse: It is being able to use the software code with some modifications for different purposes.
- Portability: Ability to carry out the same functions in all environments and platforms.
Software Review Features
They are the engineering factors, the ‘inner quality’ of the software such as efficiency, documentation and structure. It includes aspects such as:
- Maintainability: Software maintenance should be easy for any type of user.
- Flexibility: Changes to the software should be easy to make.
- Extensibility: It should be easy to add new functions.
- Scalability: It should be very easy to upgrade for more work.
- Testability: Software testing should be easy.
- Modularity: It must be composed of units and modules that are independent from each other.