Upload
henry-muccini
View
479
Download
0
Embed Size (px)
Citation preview
DISIM
Dept. of Information Engineering, Computer Science and Mathematics
University of L’Aquila, Italy
Welcome
Henry Muccini
SEA GroupSEA Group
Welcome
SEA GroupSEA Group
The material in these slides may be freely reproduced
and distributed, partially or totally, as far as an explicit
reference or acknowledge to the material author is
preserved.
Henry Muccini
SEA GroupSEA Group
WELCOME
SEA GroupSEA Group
Henry Muccini, Ph.D.Prof. in Computer ScienceInternational aspects
My Research in Software Engineering:
o Software Architecture
o Software Testing
o Model Driven Engineeering
o Mobile Computing
Teaching:
o Software Engineering
o Software Architecture
o Progettazione UML per il Web (MWT)
SEA GroupSEA Group
SEA GroupSEA Group
Tell me something about you
SEA GroupSEA Group
THE CONTEXT… SOME YEARS AGO…
Waterfall model (Royce 1970)
Waterfall modelRoyce, 1970
» Linear, sequential
» An ideal model
» The output of each phase is the input to the next one
[Figure from Ian Sommerville]
Programming Languages:
Pascal, Fortran, Cobol, …
SEA GroupSEA Group
» Evolutionary processes:
- Exploratory development
- Throw-away prototyping
» Spiral, Boehm, 1985
Objectives Analyse and Evaluate
Plan nextphase
Development and test
SEA GroupSEA Group
WHAT IS GOING ON WITH SOFTWARE?
SEA GroupSEA Group
What is happening…
Bigger and bigger systems
USA space program
1960 19801970 1990 2000
0
25
50
75
100
. . .
.
.Mercury
Gemini
Apollo
Space
Ship
Space
Station
Millions of instructions
YEAR
SEA GroupSEA Group
http://www.informationisbeautiful.net/visualizations/million-lines-of-code/
SEA GroupSEA Group
http://www.informationisbeautiful.net/visualizations/million-lines-of-code/
SEA GroupSEA Group
It is not just a matter of
LOC!!!
«difficult» and
competing requirements
SEA GroupSEA Group
1994 1996 1998 2000 2002 2004 2009
Succeeded 16% 27% 26% 28% 34% 29% 32%
Failed 31% 40% 28% 23% 15% 18% 24%
Challenged 53% 33% 46% 49% 51% 53% 44%
� See more at: http://www.projectred.org/latest-
news/190-software-project-failure-costs-billions-
better-estimation-planning-can-help.html
Standish Findings By Year Updated for 2009
SEA GroupSEA Group
... Failures in Big Projects...
Air Traffic Control
Real-time system, composed by 1.000.000 LOCs,
distributed among a hundred of computers
Expected cost: 500 $ for LOC
Real cost: 700-900 $ for LOC
Cause: average every line of code had to be rewritten
once
5 years delay with a surcharge of about “1 billion
dollars”
J. Rost and R. L. Glass, The Dark Side of Software Engineering:
Evil on Computing Projects, John Wiley & Sons, 2011.
SEA GroupSEA Group
Therac-25 safety failure:
•approximately 100 times the intended dose of
radiation
•3 people died, and 6 got injured
see article at: http://sunnyday.mit.edu/papers/therac.pdf
Factors:
•Overconfidence in
Software
•Confusing reliability
with safety
•Lack of defensive Design
•Failure to eliminate
fault causes
•Inadequate software
engineering practices
•…
SEA GroupSEA Group
The Skype
pervasive
failures:
•Black out for two hours
•Europe, Japan, Australia,
Afghanistan, Sud Africa,
Malesia and Brasil have
been affected
SEA GroupSEA Group
[Fatal Defect, Ivars Peterson, 1995]
Half book is about failures in software development
SEA GroupSEA Group
… need …
To Design Software
→ Software development has to be a systematic activity
(Early) Quality Assurance
→ To discover issues as soon as possible
Abstraction:
→ To take complexity managable
For achievieng those goals, this course will use a:
→ Model-Driven Engineering approach to Architectural Design
SEA GroupSEA Group
What You Will Learn in This Course
→ Software architectures
─ Why we need it
─ SA styles
─ Architecture Description Languages
─ Design Decisions
─ Views and Viewpoints
─ …
SEA GroupSEA Group
Lectures
Labs
Projects
Exams
SEA GroupSEA Group
� Project � Oral examination
� Project � Oral examination
� Following given templates� Some of them with project management tasks
SEA GroupSEA Group
Course Web Site
https://app.schoology.com/course/383006041/materials
CODE:
XQKSQ-Q886X
https://goo.gl/1SyGQC
SEA GroupSEA Group
There is not one predefined textbook:
You have to study on the:
SEA GroupSEA Group
Advanced Software
Engineering Project