Page 18 - DCAP405_SOFTWARE_ENGINEERING
P. 18
Unit 1: The Evolving Role of Software
Software engineering expenditure represents a significant fraction of GNP in all developed Notes
countries.
Software engineering is concerned with cost-effective software development.
1.5.2 Software Process
A process is a series of steps involving activities, constraints and resources that produce an
intended output of some kind.
In simpler words, when you build a product or system, it’s important to go through a series of
predictable steps – a road map that helps you create a timely, high quality result. The road map
that you follow is called a software process.
In the last decade there has been a great deal of resources devoted to the definition,
implementation, and improvement of software development processes.
ISO 9000
Software Process Improvement and Capability Determination (SPICE)
SEI Processes
Capability Maturity Model (CMM) for software
Personal Software Process (PSP)
Team Software Process (TSP)
A set of activities whose goal is the development or evolution of software.
Generic activities in all software processes are:
Specification: what the system should do and its development constraints
Development: production of the software system
Validation: checking that the software is what the customer wants
Evolution: changing the software in response to changing demands.
Software Process Model
A simplified representation of a software process, presented from a specific perspective.
Example: Process perspectives are:
Workflow perspective - sequence of activities
Data-flow perspective - information flow
Role/action perspective – who does what
Generic Process Models
Waterfall
Evolutionary development
Formal transformation
Integration from reusable components.
LOVELY PROFESSIONAL UNIVERSITY 11