13
SE-280 Dr. Mark L. Hornick 1 Software Engineering Process Based on what you have learned so far… What is your current development process? What can you say about it? What is good/bad about it?

Software Engineering Process

Embed Size (px)

DESCRIPTION

Software Engineering Process. Based on what you have learned so far… What is your current development process? What can you say about it? What is good/bad about it?. If you are given a requirements specification for a medium-sized program, could you state in advance. - PowerPoint PPT Presentation

Citation preview

SE-280Dr. Mark L. Hornick

1

Software Engineering Process

Based on what you have learned so far… What is your current development

process? What can you say about it? What is good/bad about it?

SE-280Dr. Mark L. Hornick

2

If you are given a requirements specification for a medium-sized program, could you state in advance . . .

. . . how long it would take you to write the program?

. . . how many defects you would inject during its development?

. . . how many defects will remain when it is completed?

SE-280Dr. Mark L. Hornick

3

Why do we need a Process?

Many organizations today cannot meet commitments with repeatability Project A completes without any problems Project B is a disaster

Late Incomplete Not tested

Too many times, the result is Cancelled projects Management over-reaction

SE-280Dr. Mark L. Hornick

4

Data from PSP training courses usually show similar results for practicing software engineers and MSOE SE students.

Yield Before Compile (SEI)

0.0

10.0

20.0

30.0

40.0

50.0

60.0

70.0

80.0

90.0

100.0

1A 2A 3A 4A 5A 6A 7A 8A 9A 10A

Program

Yie

ld (

%)

Max

75pct

Avg

25pct

Min

SEI: 810 engineers MSOE: 30 sophomore students

SE-280Dr. Mark L. Hornick

5

And sometimes they don’t agree...

Total Defect Density (SEI)

0.0

20.0

40.0

60.0

80.0

100.0

120.0

140.0

160.0

180.0

200.0

1A 2A 3A 4A 5A 6A 7A 8A 9A 10A

Program

Def

ects

/KL

OC Max

75pct

Avg

25pct

Min

SEI: 810 engineers MSOE: 30 sophomore students

SE-280Dr. Mark L. Hornick

6

Testing time is a major cost in commercial software development; PSP course data shows a general reduction in test time.

Test TIme % (SEI)

0.0

5.0

10.0

15.0

20.0

25.0

30.0

35.0

40.0

1A 2A 3A 4A 5A 6A 7A 8A 9A 10A

Program

Tes

t T

Ime

%

Max

75pct

Avg

25pct

Min

SEI: 810 engineers MSOE: 30 sophomore students

SE-280Dr. Mark L. Hornick

7

Even with additional PSP planning and quality activities, overall productivity remains nearly constant.

Productivity (SEI)

0.0

10.0

20.0

30.0

40.0

50.0

60.0

1A 2A 3A 4A 5A 6A 7A 8A 9A 10A

Program

LO

C/H

ou

r

Max

75pct

Avg

25pct

Min

SEI: 810 engineers MSOE: 30 sophomore students

SE-280Dr. Mark L. Hornick

8

Industry experience shows that the TSP can help teams achieve high levels of quality.

7.5

6.24

4.73

2.28

1.05

0.060

1

2

3

4

5

6

7

8

Level 1 Level 2 Level 3 Level 4 Level 5 TSP

Defects/KLOC

Total Delivered Defects/KLOC

N. Davis and J. Mullaney, The Team Software Process (TSP) in Practice: A Summary of Recent Results, Technical Report CMU/SEI-2003-TR-014, www.sei.cmu.edu/publications/.

SE-280Dr. Mark L. Hornick

9

[Source: AIS]

Schedule Deviation Individual Value Control Chart - Commercial Systems

-150-100

-500

50100150

200250

300350

01/8801/89

01/9001/91

01/9201/93

01/9401/95

01/9601/97

01/98

Date of Project Start

% D

ev

iati

on

Individual Data Points Mean Upper Natural Process Limit

Lower Natural Process Limit One Standard Deviation

CMM introduced

TSP introduced

By increasing predictability, the TSP helps teams to function more effectively.

SE-280Dr. Mark L. Hornick

10

In 2005, Humphrey was awarded the National Medal of Technology for his work in software process improvement.

Jan 15, 2009

Watts Humphrey named ACM Fellow For contributions to computing

and Information Technology For innovations made in areas

critical to Global Competitiveness

For contributions to software engineering process discipline

SE-280Dr. Mark L. Hornick

11

Watts Humphrey1927-2010

SE-280Dr. Mark L. Hornick

12

You can improve your own performance as a software engineer using disciplined methods, but it does take some effort.

MSOE sports photos courtesy of Dr. Eric Durant

SE-280Dr. Mark L. Hornick

13

Here are a few references on SE process, PSP, and TSP.

W. Humphrey, PSP – A Self-Improvement Process for Software Engineers, A-W, 2005

W. Humphrey, Introduction to the Team Software Process, A-W, 2000 W. Humphrey, Winning with Software: An Executive Strategy, A-W,

2002 N. Davis & J. Mullaney, The Team Software Process in Practice: A

Summary of Recent Results, SEI, 2003 SEI/CMU-2003-TR-014 (www.sei.cmu.edu)

D. Suri and M. Sebern, “Incorporating software process in an undergraduate software engineering curriculum: challenges and rewards”, Proceedings of CSEE&T’04, 2004

M. Sebern, “The software development laboratory: incorporating industrial practice in an academic environment”, Proceedings of CSEE&T’05, 2005