Vorgehensmodelle - Quo Vadis? Trends und Herausforderungen
Vorgehensmodelle - Quo Vadis? Trends und Herausforderungen
Vorgehensmodelle - Quo Vadis? Trends und Herausforderungen
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
<strong>Vorgehensmodelle</strong> - <strong>Quo</strong> <strong>Vadis</strong> ?<br />
<strong>Trends</strong> <strong>und</strong> <strong>Herausforderungen</strong><br />
em. Prof. Dr. Gerhard Chroust<br />
Johannes Kepler University Linz Austria<br />
and<br />
International Federation for Systems Research<br />
tel +43 (0)664 28 29 978<br />
email gerhard.chroust@jku.at<br />
www http//gerhard-chroust.at
Push <strong>und</strong> Pull<br />
Wunsch nach<br />
mehr <strong>und</strong><br />
komplexeren<br />
Anwendungen<br />
pull<br />
Notwendigkeit von<br />
reichhaltiger <strong>und</strong><br />
komplexerer<br />
Infrastruktur<br />
© Chroust 2011<br />
Gesellschaft / Wirtschaft/<br />
Industrie<br />
Software<br />
Anwendungen<br />
Infrastruktur<br />
(Hardware <strong>und</strong><br />
Middleware)<br />
Einfluss auf<br />
Gesellschaft,<br />
Wirtschaft,<br />
<strong>und</strong>Industrie<br />
erzeugt Bedarf<br />
<strong>und</strong><br />
Begehrlichkeiten<br />
push<br />
Erlaubt komplexare<br />
Anwendungen <strong>und</strong><br />
schnellere<br />
Entwicklung
Phasenweises<br />
Vorgehen<br />
Begleitende<br />
Prozesse<br />
2<br />
3<br />
??? Social<br />
Computing??<br />
Externe<br />
Regulative<br />
Projekt-externe<br />
Prozesse<br />
9<br />
Direkte<br />
Programmierung<br />
1<br />
8<br />
6<br />
7<br />
Wiederverwendung<br />
5<br />
4<br />
Formale<br />
<strong>Vorgehensmodelle</strong><br />
Agile<br />
Methoden<br />
Institutionalisierte<br />
Wartung<br />
© Chroust 2011
Stufe<br />
1: direkte<br />
Programmierg<br />
Organisatorisches<br />
Einzelkämpfer, eigenes Verständnis der Abläufe<br />
Jackson Strukturierte Methode<br />
2:<br />
phasenweises<br />
Vorgehen<br />
System Feasibility<br />
Validation<br />
SW-Plans + Requirements<br />
Validation<br />
Product Design<br />
Verification<br />
Detail Design<br />
Verification<br />
© Chroust 2011<br />
Phasenspezialisten (Analysator, Organisationsprogrammierer‘,<br />
…)<br />
Anforderungsanalyse<br />
Formale Dokumentübergabe zwischen Phasen<br />
Phasenorientierte Werkzeuge (Investition: Rechner<br />
<strong>und</strong> Sw)<br />
Software-Workbenches (ADW, IEF, …)<br />
Information Engineering (James Martin)<br />
Unternehmenssicht<br />
Code<br />
Verification<br />
Integration<br />
Produkt Verification<br />
Implementation<br />
System Test<br />
Operation,Maintenenace<br />
Revalidation
Stufe<br />
3: Begleitende<br />
Prozesse<br />
organisatorisch<br />
Dokumentation, Qualitätsprozesse,<br />
Projektmanagement, …<br />
Unb<strong>und</strong>ling (IBM)<br />
Neue Rollen (Q-Manager, IT-Abteilung)<br />
Software-Häuser<br />
4: Formale<br />
Vorgehens -<br />
modelle<br />
Formalisierung, Enforcement,<br />
Assessment<br />
ISO9000, CMM,<br />
Methodenabteilungen<br />
„DV-Verfahrenstechnik“ (IBM)<br />
Watts Humphrey<br />
© Chroust 2011
K<strong>und</strong>e<br />
Stufe<br />
5: Agile<br />
Methoden<br />
organisatorisch<br />
Kleine Gruppen, Teams, Pair-<br />
Programming,<br />
Flexible Ziele<br />
K<strong>und</strong>e-vor-Ort<br />
Agilität, Flexibilität, Menschlichkeit<br />
XP (Kent Beck), SCRUM<br />
??*@<br />
!!<br />
Stufe<br />
organisatorisch<br />
6:<br />
Institutionalisierte<br />
Wartung<br />
© Chroust 2011<br />
Spezialisten, keine Anfänger<br />
Eigenes Vorgehensmodell<br />
Wartungskosten berücksichtigt!<br />
Teilwiederholung des<br />
Entwicklungsprozessses<br />
(Harry Sneed)
Stufe<br />
7: Wiederverwendung<br />
organisatorisch<br />
Organisierte Wiederverwendung („Asset“)<br />
Reorganisation:<br />
Software-Engineering Provisioning<br />
Produktlinien<br />
Belohnungsschema<br />
© Chroust 2011
Work products<br />
requests<br />
Compliance checks (PLD)<br />
System Composition Process<br />
Component<br />
Provision Process<br />
Product Line<br />
Specification<br />
Product Line<br />
Maintenance<br />
User<br />
idea<br />
Need<br />
Product Line<br />
Specification<br />
Adaption<br />
Compatibility analysis<br />
Product Line<br />
New spec<br />
Project Requirement<br />
Analysis and adaption<br />
Search/adapt Asset Pool<br />
Component<br />
Realisation<br />
(with variability)<br />
Specification l<br />
check<br />
modify<br />
Basic System Structure<br />
(bespoke)<br />
System design/<br />
implementation<br />
Search/adapt Variable<br />
component<br />
Select / adapt<br />
generate<br />
variant of component<br />
modify<br />
© Chroust 2011
8: Projekt-externe<br />
Prozesse<br />
Entwicklungsprozess - Operationelle Prozesse<br />
auslagern<br />
Outsourcing, Cloud Computing<br />
Gesamtsicht<br />
(Cheesman, Clements)<br />
Audit?<br />
Assessment?<br />
Zertifizierung?<br />
© Chroust 2011
Stufe<br />
9: Externe<br />
Regulative<br />
organisatorisch<br />
Produkt UND Prozess<br />
Produkthaftung,<br />
Neue Abteilungen, Neue Rollen<br />
Sarbanes-Oxley, Basel III,<br />
© Chroust 2011
Stufe<br />
organisatorisch<br />
10: Social<br />
computing?<br />
Jedermann,<br />
Benutzerfre<strong>und</strong>lichkeit<br />
time-to-market<br />
Linkedit, Facebook, Twitter,
Vergleichsdimensionen<br />
Entwicklungsphasen<br />
Navigation <strong>und</strong><br />
Entwicklungsstrategie <strong>und</strong><br />
Kooperierende<br />
Teilmodelle<br />
Beschreibungselemente<br />
Externe<br />
Verflechtung<br />
© Chroust 2011
Time<br />
Inception Elaboration Construction Transition<br />
Life-cycle<br />
Objective<br />
Milestone<br />
Ist es ein sinnvolles<br />
Produkt?<br />
Life-cycle<br />
Architecture<br />
Milestone<br />
Kann man<br />
es bauen?<br />
Initial<br />
Operational<br />
Capability<br />
Milestone<br />
Product<br />
Release<br />
Ist es<br />
Marktfähig?<br />
Ist es lauffähig?<br />
© Chroust 2011
Koop. Teilmodelle<br />
Projektmanagement<br />
(PM)<br />
Qualitätssicherung<br />
(QS)<br />
Konfigurationsmanagement<br />
(KM)<br />
Software-Erstellung<br />
(SWE)<br />
© Chroust 2011
Externe Verflechtung<br />
Wiederverwendung von Assets<br />
Produktline<br />
Assessment<br />
Regulation<br />
Cloud<br />
© Chroust 2011
Beschreibungselemente<br />
W<br />
I<br />
E<br />
erzeugt<br />
verwendet<br />
Aktivitätstyp<br />
definiert<br />
zeitliche<br />
Beziehung<br />
Ablaufstruktur<br />
spiegelt wider<br />
W<br />
A<br />
S<br />
Resultatstyp<br />
definiert<br />
logische<br />
Beziehung<br />
Resultstruktur<br />
impliziert<br />
© Chroust 2011
Navigation <strong>und</strong><br />
Entwicklungsstrategie<br />
Start<br />
a) Wasserfall<br />
Verifizierung<br />
b) horizontale<br />
Verifikation<br />
c) inkrementell<br />
Endprodukte<br />
e) opportunistisch<br />
d) iterativ,<br />
spiralig<br />
© Chroust 2011
Ausblick<br />
•Anpassung <strong>und</strong> Expansion<br />
• mächtige Software-Werkzeuge (Teil-Vorgangsmodelle)<br />
• Outsourcing v. Teilprojekten (‚exit‘ -‚entry‘ <strong>und</strong> Qualität)<br />
• Anpassung an Wissen / Ausbildung … variable Granularität<br />
• Anpassung an Kultur <strong>und</strong> Physis/Psyche<br />
• Agilität berücksichtigen<br />
• Anbindung externer Prozesse<br />
•Product-Line, Outsourcing, Cloud<br />
• Auditierbarkeit<br />
• ISO 15504, Sarbanes-Oxley, …<br />
© Chroust 2011
Trennungskonzepte<br />
Stufe<br />
BE<br />
Phas<br />
Nav<br />
Koo<br />
Ext<br />
Auftrennungen<br />
1: direkte Programmierung<br />
(x)<br />
keine<br />
2: phasenweises Vorgehen<br />
(x)<br />
X<br />
(x)<br />
Sichten <strong>und</strong> Verantwortung (sequentiell)<br />
3: begleitende Prozesse<br />
X<br />
(x)<br />
x<br />
X<br />
Sichten <strong>und</strong> Verantwortung (parallel <strong>und</strong><br />
phasenübergreifend)<br />
4: formales Vorgehensmodell<br />
X<br />
(x)<br />
x<br />
x<br />
Prozess-Definition <strong>und</strong> Ausführung<br />
5: agile Methoden<br />
x<br />
x<br />
x<br />
(x)<br />
X<br />
Auflösung der Trennungen<br />
6: institution. Wartung<br />
x<br />
X<br />
x<br />
x<br />
(x)<br />
Entwicklung <strong>und</strong> Wartungsprozess(!)<br />
7: Wiederwendung<br />
x<br />
x<br />
x<br />
X<br />
x<br />
Entwicklung <strong>und</strong> Asset-Bereitstellung<br />
(Auslagerung Teilprodukte)<br />
8: Projekt-externe Prozesse<br />
x<br />
x<br />
x<br />
x<br />
X<br />
Kernprozesse/Kernprodukte <strong>und</strong><br />
Hilfsprozesse/Produkte<br />
9: Externe Regulative<br />
x<br />
x<br />
x<br />
x<br />
X<br />
Entwicklung <strong>und</strong> rechtlich/wirtschaftl.<br />
Verantwortung<br />
10: soz. Computing<br />
X<br />
????????<br />
© Chroust 2011
© Chroust 2011<br />
G erhard Chroust<br />
G erhard.chroust@ jku.at