Software Processes in Software Engineering
Software is the set of instructions in the form of programs to govern the computer system and to process the hardware components. To produce a software product the set of activities is used. This set is called a software process.
Components of Software:
There are three components of the software:
Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.
A computer program is a list of instructions that tell a computer what to do.
Source information about the product contained in design documents, detailed code comments, etc.
- Operating Procedures:
Set of step-by-step instructions compiled by an organization to help workers carry out complex routine operations.
There are four basic key process activities:
- Software Specifications:
In this process, detailed description of a software system to be developed with its functional and non-functional requirements.
- Software Development:
In this process, designing, programming, documenting, testing, and bug fixing is done.
- Software Validation:
In this process, evaluation software product is done to ensure that the software meets the business requirements as well as the end users needs.
- Software Evolution:
It is a process of developing software initially, then timely updating it for various reasons.
- Size and Cost:
Day to day growing complexity and expectation out of software. Software are more expensive and more complex.
Software products must have good quality.
- Delayed Delivery:
Software takes longer than the estimated time to develop, which in turn leads to cost shooting up.
Software Process Model:
A software process model is an abstraction of the actual process, which is being described. It can also be defined as a simplified representation of a software process. Each model represents a process from a specific perspective. Basic software process models on which different type of software process models can be implemented:
- A workflow Model:
It is the sequential series of tasks and decisions that make up a business process.
- The Waterfall Model:
It is a sequential design process in which progress is seen as flowing steadily downwards. Phases in waterfall model:
- (i) Requirements Specification
- (ii) Software Design
- (iii) Implementation
- (iv) Testing
- Dataflow Model:
It is diagrammatic representation of the flow and exchange of information within a system.
- Evolutionary Development Model:
Following activities are considered in this method:
- (i) Specification
- (ii) Development
- (iii) Validation
- Role / Action Model:
Roles of the people involved in the software process and the activities.