Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Basics
Prof. Dr. Bernd Hindel
Dr. Martin Geier
Dr. Jens Schedel
Schedule
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 2
Impact of Software
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 3
Impact of Software
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 4
Impact of Software
Grundbegriffe
● Damage
about $ 75 Million at AT&T (disregarding damage of image)
about $ 100 Million at phone customers
(travel agencies, taxi companies, stock exchange, …)
● Route Cause
the “break”-statement of “C” was used in a wrong way
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 5
Impact of Software
Grundbegriffe
● total cost: $ 5.200 Mio. The original budget was $ 2.000 Mio.
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 6
Impact of Software
Grundbegriffe
Toll Collect
● Delayed start
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 7
Impact of Software
Grundbegriffe
Ariane 5
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 8
Impact of Software
begin
declare
pragma suppress(numeric_error, horizontal_veloc_bias);
begin
sensor_get(vertical_veloc_sensor);
sensor_get(horizontal_veloc_sensor);
vertical_veloc_bias := integer(vertical_veloc_sensor);
horizontal_veloc_bias := integer(horizontal_veloc_sensor);
…
exception
when numeric_error => calculate_vertical_veloc();
when others => use_irs1();
end;
end irs2; ● Part of code re-used from the
Ariane 4 Software
● No diversity in SW-Development
● Ineffective / insufficient testing?
● No adequate fault tolerance mechanisms
● ...
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 9
Statistics of „large scale“ SW Projects
● Influence on failure:
● Incomplete / imprecise requirements 13,1%
● Insufficient involvement of stakeholders 12,4%
● Insufficient resources 10,6%
● Unrealistic expectations 9,9%
● Insufficient support of management 9,3%
● Moving target / changing requirements / specs 8,7%
● Inadequate planning 8,1%
● Necessity of product expired during development 7,5%
● Inadequate IT management 6,2%
● Insufficient knowledge of technology 4,3%
● …
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 10
Why Projects Fail…
Customer Technology
Project
Processes
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 11
Cost of Failure in Software Projects
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 12
Cost of Failure in Software Projects
€ 50.000 € 6.500.000
€ 45.000
€ 40.000
€ 35.000
€ 30.000
€ 25.000
€ 20.000
€ 15.000
€ 8.400
€ 10.000
€ 2.460
€ 5.000 € 160 € 300 € 960
€ 480
€0
SW-Pflichtenheft- SW-Design- Code-Review Debugging Test (Ziel-HW, Freigabetest Serie
Review Review (Emulator, EAD) EVD) (EVD, Kunde)
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 13
Basics & Process Models
Basics
● Processes and Projects
● Process Parameters
● Solution Principles and History
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 14
Definition: Activity Oriented Process
Activity
Resources
Infrastructure
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 15
Example: Software Development Process
Project Goals
Implementation
Design
Stakeholder Software-
Requirements Test System
Requirements
Analysis Technical
Solution
Resources
Infrastructure
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 16
Definition: Document Oriented Process
Artifact
Resources
Infrastructure
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 17
Example: Software Development Process
Project Goals
Source Code
Specification
Stakeholder Software-
Requirements Test Protocol System
Requirements
Documents Technical
Documents
Resources
Infrastructure
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 18
Definition: Project
A Project is an endeavor …
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 19
Definition: Process
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 20
Basics & Process Models
Basics
● Processes and Projects
● Process Parameters
● Solution Principles and History
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 21
Process Parameters
Phases Roles
Responsibilities
Software
Development
Activities
Practices
Artifacts
Methods
Tools
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 22
Phases
Analysis Test
Analysis Test
Analysis Test
Design
Design
Design
Implementation
Implementation
Implementation
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 23
Roles and Responsibilities
● Examples of Roles
● Project Manager
● Software Engineer
● Examples of Responsibilities
● Author
● Approver
● Examples of Qualification
● Programming language experience
● Project management certification
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 24
Artifacts
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 25
Activities, Practices, Methods and Tools
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 26
Process Definition
p1 p2 p3 r1 r2 r3 m1 m2 m3
a1 # a1 # a1 # #
Artifacts # #
a2 a2 # a2 #
a3 # # a3 # a3 #
supports
Revision
Approver
Creation
Author
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 27
Process Definition
A Document Plan
… shows what, when, who and how
Documents Phases Roles Methods
Change Management
Review Technique
Sequence Chart s
Change Manager
System Designer
Software Metrics
Quality Manager
Project Manager
State Machines
Implementation
System Tester
Test Methods
Pseudo Code
Structograms
Maintenance
Flow Charts
Developer
Analysis
Design
Test
User Guide # # #
Feasibility Study # # # #
Programming Guidelines # # #
Project Plan # # # # # # #
Source Code # # # # # # #
Release Note # # # # # # # # #
Component Design # # # # # # # # # # # # #
Requirements Specification # # # # # #
System Design # # # # # # # # # #
Test Case Specification Component # # # # # # # # # # # # # #
Test Case Specification Module # # # # # # # # # # # # # #
Test Case Specification System # # # # # # # # # # # # #
Test Plan # # # # # # #
Test Log Component # # # # # #
Test Log Module # # # # # #
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 28
Why Processes?
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 29
Basics & Process Models
Basics
● Processes and Projects
● Workflows and Activities
● Solution Principles and History
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 30
Solution Principles
● Simulation
● Understand reality using models
● Models are abstractions
● „All models are wrong, but some are useful“ – George Box
● Experimenting with the model to learn about the world
● Build up powerful terminology: „Domain Concepts“
● Domain Concepts have nothing to do with bits & bytes!
Prof. Dr. Bernd Hindel, Dr. Martin Geier, Dr. Jens Schedel: PSWT - WS 2019/20 - Basics 31