0% found this document useful (0 votes)
11 views

Chapter 02

This document provides an overview of software engineering processes and models. It defines software engineering and describes it as the application of systematic and quantifiable approaches to software development, operation, and maintenance. A common process framework is presented that includes umbrella activities like project management, reviews, and configuration management applied across framework activities, task sets, and tasks. Linear, waterfall, prototyping, RAD, incremental, evolutionary spiral, and other models are described as ways to structure the software development process.

Uploaded by

HOD CSE AIET
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views

Chapter 02

This document provides an overview of software engineering processes and models. It defines software engineering and describes it as the application of systematic and quantifiable approaches to software development, operation, and maintenance. A common process framework is presented that includes umbrella activities like project management, reviews, and configuration management applied across framework activities, task sets, and tasks. Linear, waterfall, prototyping, RAD, incremental, evolutionary spiral, and other models are described as ways to structure the software development process.

Uploaded by

HOD CSE AIET
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 18

Chapter 2

The Process

1
Software Engineering

 Defined by IEEE 610.12-1990 as:


 (1) The application of a systematic, disciplined, quantifiable approach
to the development, operation, and maintenance of software; that is,
the application of engineering to software. (2) The study of approaches
in (1).

2
A Layered Technology
Software
Software Engineering
Engineering
- provide support for methods
tools and processes
methods - technical how tos
-glue that holds layers
process model together
a “quality” focus - bedrock

3
Types of Software Maintenance
 Corrective
 Adaptive
 Perfective
 Preventive

4
A Common Process Framework

Common process framework


Framework activities
Task Sets
tasks
milestones,deliverables
SQA checkpoints
Umbrella Activities

5
Umbrella Activities
 Software project management (tracking and
control)
 Formal technical reviews
 Software quality assurance
 Software configuration management
 Document preparation and production
 Reusability management
 Measurement
 Risk management

6
The Process Model:
Adaptability
 the framework activities will always be
applied on every project ... BUT
 the tasks (and degree of rigor) for each
activity will vary based on:
 the type of project (an “entry point” to the model)
 characteristics of the project
 common sense judgment; concurrence of the project
team

7
SEI CMM Levels

8
Process as Problem Solving

problem
definition

status technical
quo development

solution
integration

9
The Linear Model

System/information
engineering

analysis design code test

10
Waterfall Model

Software Software
Software
Reqmts Detailed
Integration
Analysis Design
Software Item 1 Software Software Software
Architectural Coding & Qualification
Design Testing Testing

System System
Reqmts System Software Integration,
Analysis Architectural Item n Qualification
Design ... & Release
Activities

Hardware
Items

Note: 1) Software Lifecycle Activities are bolded / shaded


11
2) This model is consistent with IEEE/EIA 12207.2 - 1997
Prototyping

listen
to build/revise
customer mock-up

customer
test-drives
mock-up

Prototyping

12
RAD
team #3
team #2
business
modeling

team #1 business data


modeling modeling

business
process
modeling

modeling data
modeling application
generation

testing
&
process turnover

data modeling
modeling

application
generation
process
modeling testing
&
turnover

application
generation

testing
&
turnover

60 - 90 days

13
The Incremental Model
System/information increment 1
engineering

analysis design code test delivery of


1st increment

increment 2 analysis design code test delivery of


2nd increment

increment 3analysis design code test delivery of


3rd increment

increment 4 analysis design code test

delivery of
4th increment

calendar time

14
15
An Evolutionary (Spiral) Model
Pla n n in g
Risk Ana lysis

C usto m e r
C o m m unic a tio n

Eng in e e rin g

C usto m e r
Eva lua tio n C o nstruc tio n & Re le a se

16
17
Still Other Process Models
 WINWIN spiral model - defines negotiating activities and adds
anchor points to spiral model
 Concurrent process model—recognizes that different part of
the project will be at different places in the process
 Component-based development model—the process to apply
when reuse is a development objective
 Formal methods—the process to apply when a mathematical
specification is to be developed
 Cleanroom software engineering—emphasizes error detection
before testing

18

You might also like