mtat.03.047 introduction to informatics · - architecture/design docs - issue reports - user...
TRANSCRIPT
![Page 1: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/1.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
MTAT.03.047
Introduction to Informatics
Lecture:
Software Engineering
Dietmar Pfahl
email: [email protected] Fall 2013
![Page 2: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/2.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Today: Software is everywhere (=ubiquitous)
![Page 3: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/3.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
How did we get there?
![Page 4: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/4.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Before expulsion from paradise …
• No calculation needed
• No computer needed
• No software needed
Adam & Eve
![Page 5: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/5.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
After expulsion from paradise …
• Pre-civilisation:
• Counting
• Writing
• Ancient civilisations (China, India, Persia, Egypt,
Greece, …):
• Number systems
• Algebra
• Geometry
• Logic
• Astronomy
• …
![Page 6: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/6.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
After expulsion from paradise …
• Middle ages:
• Invention of ‘0’
• Development and
popularisation of
rules for addition
and multiplication
• Production of
calculation tables
• Blaise Pascal:
• Binary system
0 00000000
1 00000001
2 00000010
3 00000011
4 00000100
5 00000101
6 …
1623-1662
![Page 7: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/7.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
The computer age starts …
• 19th inspired by the
programmable loom
(kudumismasin),
Charles Babbage
and Ada Lovelace
discuss the idea of
a programmable
calculator
• 20th century
• Conrad Zuse: builds first
programmable
computers (1930s)
• Z1 (using relays)
• Z3 (using tubes)
… unfinished
1910-1995
![Page 8: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/8.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
The computer age evolves …
• 1940s: first
functioning
computers in USA
and UK (Turing)
used for ‘number
crunching’
• 1950s & 1960s:
• IBM:
• Mainframes for commercial use
• Advanced OS
• 3rd gen. programming languages
(FORTRAN, COBOL, Algol ...)
• Application programs for
commercial use in many fields
• Software grows, legacy systems
![Page 9: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/9.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
1968 – NATO Conference in Garmisch-
Partenkirchen, Germany
• Recognition of
’Software Crisis’
• Coining of term
‘Software
Engineering’
![Page 10: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/10.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Software Engineering:
Why and What?
![Page 11: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/11.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Engineering versus Craftsmanship
![Page 12: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/12.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Engineering versus Craftsmanship
Organic growth?
![Page 13: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/13.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Engineering vs. Science
Science
Detect (and prove) new 'laws' governing reality
Proof that a solution to a known problem exists
Invent new devices (prototypes) that demonstrate the existence of a solution to a problem
Find new problems
Engineering
Find solutions to known problems under given constraints (time and effort budgets, quality needs = functional and non-functional requirements)
![Page 14: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/14.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Magic Triangle of SE
![Page 15: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/15.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
SW Eng. vs. 'Other' Engineering
SW Engineering:
Many engineers (up to 500) collaborate/cooperate to solve a problem
Cannot rely on laws of nature (only math/logic and sociology/psychology)
Material cost is negligible compared to personnel cost of engineers / Production is not a cost factor
Non-SW Engineering:
Small teams of engineers solve a problem / design a solution
Can rely on laws of nature (i.e., physics and chemistry)
Many workers (and much material) involved in the construction/production process of (physical) artifacts
![Page 16: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/16.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
What is Software Engineering?
• Software Engineering =
• An engineering discipline that is concerned with all aspects of software production.
• Software Engineers should
• adopt a systematic and organised approach to their work
• use appropriate tools and techniques depending on
- the problem to be solved,
- the development constraints and
- the resources available.
![Page 17: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/17.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Elements
of
Software Engineering
![Page 18: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/18.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
The Three Ps in Software Projects
• Software development happens in projects
Project
P ?
P ?
P ?
![Page 19: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/19.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
The Three Ps in Software Projects
• Software development happens in projects
Project
Products
People Processes
![Page 20: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/20.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Products Products
Code: - Production code:
- Source code - Object code
- Non-production code: - Test code
Non-Code: - Requirements - Specifications - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ...
Models
Types of Software: - Embedded/real-time - Information System - Web application - System software - ...
Properties of Software: - Functionality - Reliability - Usability - Efficiency - Maintainability - Portability
![Page 21: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/21.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Software in a Car Products
ECU = Electronic Control Unit
![Page 22: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/22.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Software in a Car Products
ECU = Electronic Control Unit
![Page 23: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/23.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Properties of Software
The software should deliver the required functionality and performance to the user and should be maintainable, dependable and acceptable.
Maintainability
Software must evolve to meet changing needs;
Dependability (Reliability)
Software must be trustworthy;
Efficiency
Software should not make wasteful use of system resources;
Usability
Software must be accepted by the users for which it was designed. This means it must be understandable, usable and compatible with other systems.
Products
![Page 24: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/24.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Product Modeling UML = Unified Modeling Language
Online information: http://www.uml.org
Products
![Page 25: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/25.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Products
Software Engineering helps with:
• Requirements gathering/analysis (requirements engineering)
• Defining/analysing architecture/design
• Defining/selecting/applying modeling languages to create product models (UML, ADL, SDL, ...)
• Analysing/improving code (code smells, refactoring)
• Defining/analysing code properties
• (Semi-)automatically generating code and test cases (from models)
• Detecting and maintaining traceablity between artifacts
• ...
Products
![Page 26: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/26.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
The Three Ps in Software Projects
• Software development happens in projects
Project
Products
People Processes
![Page 27: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/27.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
People
People
Roles: - Project Manager - Product Manager - Architect - Programmer - Tester - ...
Skills: - Must match roles Training: - Must fill skill-gaps Education: - Curricula (ACM/IEEE)
Teams: - Team building - Geographically distributed (international/global) - Mechanisms for collaboration/cooperation - Motivation, Personality, Values, Culture
User models
![Page 28: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/28.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
ACM/IEEE Curriculum for Undergraduate Studies in SE (2004)
People
![Page 29: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/29.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
ACM/IEEE Curriculum for Undergraduate Studies in SE (2004)
People
![Page 30: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/30.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
People
Software Engineering helps with:
• Defining roles
• Defining and assessing skills
• Defining a body of knowledge (SWEBOK) and professional code of ethics
• Training and education (curricula)
• Methods, techniques, tools
• Team building (i.e., global/international teams)
• Developing tools for developer/team support (IDEs, CSCW)
• ...
People
SWEBOK = Software Engineering Book of Knowledge IDE = Integrated Development Environment (e.g., Eclipse) CSCW = Computer-Supported Cooperative Work
![Page 31: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/31.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
The Three Ps in Software Projects
• Software development happens in projects
Project
Products
People Processes
![Page 32: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/32.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Processes
Processes
Process (Model) Elements: - Activity - Input/Output Product(s) - Roles - Methods/Techniques/Tools
Process Taxonomy: - Non-engineering processes
- Business processes - Social processes
- Engineering processes - Product-engineering proc.
- Technical prod.-eng. proc. - Managerial prod.-eng. proc.
- Process-engineering proc.
Process Models: - Descriptive PMs - Prescriptive PMs
- Standards - Families
Process Types: - Heavy-weight (rich) - Light-weight
- Lean - Agile - Kanban
![Page 33: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/33.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Process Taxonomy
H. Dieter Rombach, Martin Verlage,
Directions in Software Process Research,
Advances in Computers, Volume 41,
Marvin V. Zelkowitz (Ed.), Pages 1-63,
Academic Press, Boston, MA, 1995.
A Process … … defines Who does What, When
and How to reach a specific goal. In software engineering the goal is
to build a software product or to enhance an existing one
Processes
![Page 34: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/34.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
SW Development Process Examples
Processes
![Page 35: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/35.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Waterfall Method (naïve)
Unidirectional, no way back finish this step before moving to the next
Processes
requirements
deliver
test
implement
design
![Page 36: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/36.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Requirements and Customers
Processes
![Page 37: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/37.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Development Process Types
RUP = Rational Unified Process XP = Extreme Programming
Processes
![Page 38: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/38.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Scrum Elements – Process, Artifacts, Roles
http://www.scrumforteamsystem.com/processguidance/v1/Scrum/Scrum.html
Processes
![Page 39: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/39.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
What is a software process model?
• A simplified representation (abstraction) of a software process,
• holistic or presented from a specific perspective
• in the form of an Electronic Process Guide (EPG)
• Examples of process perspectives are
• Workflow perspective – sequence of activities
• Data/Product-flow perspective – information flow
• Role/action perspective – who does what?
Processes
![Page 40: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/40.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Descriptive vs. Prescriptive Process Models
Processes
![Page 41: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/41.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Plan-Do-Check-Act (PDCA): A systematic approach to Software Process Improvement (SPI)
• PLAN what you want to accomplish over a period of time and what you might do, or need to do, to get there
• DO what you planned to do • CHECK the results of what
you did to see if the objective was achieved
• ACT on the information – standardize or plan for further improvement
Processes
![Page 42: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/42.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Plan-Do-Check-Act – “Plan”
Processes
![Page 43: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/43.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Processes
Processes
Software Engineering helps with:
• Defining processes, including:
• Guidelines, methods, techniques, tools, ...
• Eliciting/discovering processes
• Describing processes
• Improving processes
• Plan-Do-Check-Act
• Measurement
• CMMI, TMMI, ...
• ...
Process change managementTechnology change managementDefect prevention
Software quality managementQuantitative process management
Peer reviewsIntergroup coordinationSoftware product engineeringIntegrated software managementTraining programmeOrganization process definitionOrganization process focus
Software configuration managementSoftware quality assuranceSoftware subcontract managementSoftware project tracking and oversightSoftware project planningRequirements management
Initial
Repeatable
Defined
Managed
Optimizing
![Page 44: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/44.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Wrap-Up
![Page 45: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/45.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Software Engineering
Consistent application of engineering principles and methods to the development of software (intensive) systems
Engineering Principles: Application of systematic (i.e., predictable, repeatable, scalable) procedures - with well-defined goals (e.g., quality, functionality/scope, cost, time) - with well-defined/structured products, processes, and organization Adherence to existing body of knowledge Observation of constraints (standards, time/cost/quality requirements, etc.) Development and use of models
![Page 46: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/46.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Software Engineering Management
Consistent application of engineering principles and methods to the development of software (intensive) systems
Engineering Principles: Application of systematic (i.e., predictable, repeatable, scalable) procedures - with well-defined goals (e.g., quality, functionality/scope, cost, time) - with well-defined/structured products, processes, and organization Adherence to existing body of knowledge Observation of constraints (standards, time/cost/quality requirements, etc.) Development and use of models
Planning – deciding what is to be done Organizing – making arrangements Staffing – selecting the right people for the job Directing – giving instructions Monitoring – checking on progress Controlling – taking action to remedy hold-ups Innovating – finding solutions when problems emerge Representing – liaising with clients, users, developers and other stakeholders
![Page 47: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/47.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Software Engineering
Software Product
A bridge from customer/user needs to software product
Customer, User
Needs
![Page 48: MTAT.03.047 Introduction to Informatics · - Architecture/Design docs - Issue reports - User manuals - Plans of all kinds - ... -Models Types of Software: ... - Business processes](https://reader035.vdocuments.mx/reader035/viewer/2022070813/5f0cf8407e708231d43807b7/html5/thumbnails/48.jpg)
MTAT.03.047 / Lecture on SE / © Dietmar Pfahl 2013
Thank You