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:
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.
- Software Engineering | Project size estimation techniques
- Types of Software Testing
- Software Testing | Basics
- Software Engineering | Architectural Design
- Software Engineering | Halstead’s Software Metrics
- Beta Testing | Software Testing
- Software Engineering | Debugging Approaches
- Pairwise Software Testing
- Software Engineering | COCOMO Model
- Software Engineering | Classification of Software Requirements
- Software Engineering | Classical Waterfall Model
- Software Engineering | Iterative Waterfall Model
- Software Engineering | Spiral Model
- Software Engineering | Requirements Engineering Process
- Software Engineering | Requirements Elicitation
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.