barry boehm a view of 20 th and 21 st century software engineering international conference on...

39
Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE-2006), pp. 12-29 CS 791z Graduate Topics on Software Engineering University of Nevada, Reno Department of Computer Science & Engineering

Upload: dulcie-waters

Post on 31-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

Barry BoehmA View of 20Th and 21st Century Software Engineering

International Conference on Software Engineering (ICSE-2006), pp. 12-29

CS 791zGraduate Topics on Software Engineering

University of Nevada, RenoDepartment of Computer Science & Engineering

Page 2: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

Outline

Introduction A Hegelian View of Software Engineering A View of 2010’s and Beyond Conclusions

2

Page 3: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

Concept

3

Page 4: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

Concept

4

Page 5: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A Hegelian View of SE

Hegel believed that human understanding follows a path of Thesis – this is why things happen they way they do Antithesis – the thesis fails in some important ways,

here’s a better explanation Synthesis – the antithesis rejected too much of the

original thesis, here’s a better hybrid explanation that captures the good from both thesis and antithesis

5

Page 6: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A Hegelian View of SE: 1950’s

6

Page 7: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A Hegelian View of SE: 1950’s

7

Page 8: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A Hegelian View of SE: 1960’s

8

Characteristics: code-and-fix; software maintenance; non-engineering people; 1960’s “question authority” mentality; hacker culture; cowboy programmers.

Page 9: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A Hegelian View of SE: 1960’s

9

Page 10: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A Hegelian View of SE: 1970’s

10

Page 11: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A Hegelian View of SE: 1970’s

11

Page 12: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A Hegelian View of SE: 1970’s

12

Page 13: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A Hegelian View of SE: 1970’s

13

Page 14: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A Hegelian View of SE: 1970’s

14

Page 15: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A Hegelian View of SE: 1970’s

15

Page 16: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A Hegelian View of SE: 1980’s

16

Page 17: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A Hegelian View of SE: 1980’s

17

Page 18: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A Hegelian View of SE: 1980’s

18

Solutions:- Software Tools

- New testing and CM tools- IPSE’s- CASE

- Software Processes- “Software Processes are Software Too” - DoD STARS program on work avoidance- CMU-SEI, similar organizations in Europe and Japan - Brooks’ “No silver bullet” (1983)

- Accidental vs essential tasks (c, c, c, i) - Software Reuse

- Commercial infrastructure software reuse- OOP: Smalltalk, Eiffel, C++, Java

Page 19: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A Hegelian View of SE: 1990’s

19

Page 20: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A Hegelian View of SE: 1990’s

20

Other directions in 1990s: - Emphasis on Time-to-Market- Controlling concurrency in

engineering (see Boehm’s own spiral process)

- Open source development- Usability and HCI

Page 21: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A Hegelian View of SE: 2000’s

21

Page 22: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A Hegelian View of SE: 2000’s

22

New directions:• Agile methods• Value-based SE• Software criticality and dependability• COTS, open source, and legacy software• Model-driven development• Interacting software and systems engineering

Page 23: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A Hegelian View of SE: 2000’s

23

Page 24: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A Hegelian View of SE: 2000’s

24

Page 25: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

25

A View of SE: 2010’s & beyond

Page 26: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

26

A View of SE: 2010’s & beyond

Page 27: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A View of SE: 2010’s and beyond

27

Page 28: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A View of SE: 2010’s and beyond

28

SE for systems of systems

Page 29: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A View of SE: 2020’s & beyond

29

Computational plenty trends

Page 30: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A View of SE: 2020’s & beyond

30

Wildcards: Autonomy & Bio-computing

Page 31: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

A View of SE: 2020’s & beyond

31

Wildcards: Autonomy & Bio-computing

Page 32: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

Conclusions

32

Timeless Principles and Aging Practices

Page 33: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

Conclusions

33

Timeless Principles and Aging Practices

Page 34: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

Conclusions

34

Timeless Principles and Aging Practices

Page 35: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

Conclusions

35

Timeless Principles and Aging Practices

Page 36: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

Conclusions

36

Timeless Principles and Aging Practices

Page 37: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

Conclusions

37

Timeless Principles and Aging Practices

Page 38: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

Conclusions

38

Timeless Principles and Aging Practices

Page 39: Barry Boehm A View of 20 Th and 21 st Century Software Engineering International Conference on Software Engineering (ICSE- 2006), pp. 12-29 CS 791z Graduate

Conclusions

39

Challenges for SE education