Introduction
Software refers to the collection of integrated programs and procedures, and a process is followed to produce a software product. This process is called the Software Process, which refers to the set of activities and their outcomes. Software engineers carry out all these activities.
There are four key activities that are common to all software processes.
Let's have a look at it.
- Software Specifications - In this stage, a brief description of the functionalities of the Software and its constraints must be provided.
- Software Development - This is the stage of designing, programming, testing, and fixing the bug.
- Software Validation - This is the stage of software evaluation. It is done to ensure that the Software performs all the required functions and meets all the end-users needs.
- Software Evolution - It is the process of updating the Software to meet client changing needs.
Software Process Model
Software Process Model is the simplified representation or an abstraction of the actual software process. The process model represents the software process from a specific perspective.
Some types of software process models are listed below:-
- A Workflow Model - It is a series of activities or tasks and decisions taken to make a process. It is required generally to perform human actions.
- A Dataflow or Activity Model - Here, the process is represented as a set of activities. This set of activities carries out data transformations. The transformations that they perform are carried out by people or by computers.
- A Role/Action Model - This specifies the roles and activities that the people involved carry out.
Now let us have a look at various general models or paradigms of software development:-
- The Waterfall approach - This approach considers the above models or activities and produces them as separate process phases like implementation, software design, testing, etc. After this, the development goes on to the next stage.
- Evolutionary Development - This approach alternates the activities of specification, development, and validation phases.
- Formal Transformation - The transformation performed in this is "correctness preserving," i.e., the program developed will meet its specification. The given method produces a mathematical system specification and transforms it into a program using mathematical methods.
-
System Assembly from reusable components - The target of this method is to integrate the parts of the system and not develop them from scratch.
Recommended topic, V Model in Software Engineering




