Weitere ähnliche Inhalte Ähnlich wie Mdd Days 2009 Handout (20) Mdd Days 2009 Handout1. MDA
Neue Techniken,
neue Lösungen,
Lösungen
neue Probleme?
Dr. Christian Mann
Tomcat® computer GmbH
p
2. Eine „Erfolgsgeschichte“ zu Beginn…
Erfolgsgeschichte“ Beginn
„Chaos Report 2007“ (Standish Group):
35 % der Software-Projekte können
als erfolgreich gelten…
g g
„Chaos Report 1994“ (Standish Group):
16,2 % der Software-Projekte können
als erfolgreich gelten
gelten…
Tomcat® computer GmbH
© 2009 Dr.Ch.Mann (Stand 08.03.2009) 2
3. Woran scheitern Software-Projekte?
Software Projekte?
Programmiersprache,
IDE, Betriebssystem,
Hardware? Zielumgebung…
CPU-Geschwindigkeit, Software?
S ft ?
Arbeitsspeicher,
Plattenspeicher,
Netzwerkdurchsatz…
Wetware?
Der eigene
Kopf…
Tomcat® computer GmbH
© 2009 Dr.Ch.Mann (Stand 08.03.2009) 3
6. (Subjektive!) Begriffsabgrenzung
MDA MDD
„Akademischer“ Standard „Pragmatísches“
Separation of Concerns durch Vorgehensmodell
Modellhierarchie
M d llhi hi N t t typischerweise nur
Nutzt t i h i
(CIM => PIM => PSM => Code) M2T-Transformationen
M2M-Transformation Nutzt tendenziell nur eine DSL
als wesentliches Element! pro Projekt
Nutzt mehrere DSLs pro Projekt Bevorzugt
- CIM/PIM „Single-Pass-Generierung“
=> Fachliche Domänen
- PSM/Code
=> Technische Domänen
Nutzt ggfls. mehrstufige
Transformation/Generierung
Tomcat® computer GmbH
© 2009 Dr.Ch.Mann (Stand 08.03.2009) 6
9. Narrensicher!
“A common mistake
that people make when
trying to design something
completely foolproof
was to underestimate
the ingenuity of complete
fools.”
Douglas Adams,
“Mostly Harmless”, 1992
Mostly Harmless
Tomcat® computer GmbH
© 2009 Dr.Ch.Mann (Stand 08.03.2009) 9
11. Qualitätssicherung für Frameworks
Wiederverwendung setzt Vertrauen in die Qualität voraus!
Mehr Testfälle
Abdeckung aller „intendierten Anwendungen“!
Abdeckung aller möglichen Anwendungen!?
„Scylla & Charybdis“:
Hohe Pfad-Abdeckung aller möglichen Anwendungen
mit prohibitiven Aufwänden
vs.
Konzentration auf intendierte Anwendungen
mit hohem Qualitäts-Risiko
Tomcat® computer GmbH
© 2009 Dr.Ch.Mann (Stand 08.03.2009) 11
12. Model Driven Testing
„MDA-Antwort auf Probleme der Qualitätssicherung:
MDA-Antwort“
Basis: eigenes UML-Profil zur Testfall-Spezifikation
Testcode wird mit der Applikation generiert
- Abhängigkeiten zu Applikationsframework
- Abhängigkeiten zu spezifischem Test-Framework
Problem:
„Überschaubarer“ Aufwand für fachliche Akzeptanztests
(= Anwendung auf PIM-Ebene)
Die Anzahl technischer Fehlerklassen überwiegt die
fachlichen Fehlerklassen bei weitem!
(= Anwendung auf PSM-Ebene)
PSM Ebene)
Tomcat® computer GmbH
© 2009 Dr.Ch.Mann (Stand 08.03.2009) 12
15. Werwölfe…
Werwölfe
“There is no single
development,
development in either
technology or management
technique,
technique which by itself
promises even one order-
of-magnitude improvement
within a decade in
productivity, reliability
productivity in reliability, in
simplicity.“
Fredrick P. Brooks Jr.,
„No Silver Bullet“, 1986
Tomcat® computer GmbH
© 2009 Dr.Ch.Mann (Stand 08.03.2009) 15
17. „Wir haben da unsere generische DSL…“
Wir DSL “
Ja
Ja… …Aber
Aber
Den höchsten Grad an Die DSL ist spezifisch für eine
Wiederverwendung erreichen bestimmte Domäne.
wir durch Wiederverwendung Di
Diese muss (zumindest: auch)
( i d t h)
von fachlichen Konzepten. fachlich sein, um das
Wiederverwendbarkeit der DSL Abstraktionsniveau der
gewährleistet Wi d
äh l i t t Wiederverwend-
d Modellierung anheben zu
M d lli h b
barkeit können.
- des Frameworks Als fachliche DSL kann sie
- des Generatoren aber nicht projektunabhängig
b i ht j kt bhä i
und -übergreifend generisch
sein!
Als Entwickler lieben wir
generische Lösungen… ;-) Eine „generische DSL“ droht
stets eine „TSL“ (Technology
Specific L
S ifi Language) zu
)
werden…
Tomcat® computer GmbH
© 2009 Dr.Ch.Mann (Stand 08.03.2009) 17
18. „Erstmal entwickeln wir das Framework “
Erstmal Framework…“
Ja
Ja… …Aber
Aber
Zu Projektbeginn steckt die Frameworks entstehen nicht
fachliche Spezifikation oft noch auf der „grünen Wiese“,
in den Kinderschuhen
Kinderschuhen. sondern wachsen mit der Zeit!
Das technische Umfeld ist Das Framework als Ziel-
hingegen bekannt. Plattform der Generierung, ist
Die Probleme des technischen ein F
i Framework mit fachlicher
k it
Umfelds sind oft bekannt. Funktionalität.
Die Lösung technischer Die fachlichen Anforderungen
Probleme kann unmittelbar müssen vorrangiger T ib d
ü i Treiber der
angegangen werden. Entwicklung von Framework &
Generator sein!
- Das Framework muss
enthalten, was benötigt wird,
Und wir haben das im übrigen nicht was man eventuell
schon immer so gemacht! benötigen könnte…
Tomcat® computer GmbH
© 2009 Dr.Ch.Mann (Stand 08.03.2009) 18
19. „Daraus können wir nix generieren,
da müssen wir nochmal bei “
bei…“
Ja
Ja… …Aber
Aber
Es gibt eine Tradition Ziel von MDA ist es gerade,
„schlampiger Modellierung“ bei fachliche & technische
vielen Fachbereichen! Baustellen klar zu trennen.
trennen
- Daher: - Fachlichkeit spezifiziert der
fachliche Modellierung liegt oft Fachbereich, Technik stellen
in der Hand von „Prozess-
„Prozess die Entwickler bereit…
Designern“, o.ä. Die DSL muss fachliche
- Diese sind häufig der Funktionalität deklarativ
Entwicklung zugeordnet.
zugängig machen!
Technische Detail-Tiefe wird
Die Entwickler kennen die
generiert.
formalen Anforderungen an
Detail-Tiefe am besten.
Warum also den Fachbereich
damit behelligen anstatt selbst
Hand an zu legen?
Tomcat® computer GmbH
© 2009 Dr.Ch.Mann (Stand 08.03.2009) 19
20. „Wir streben nur eine 80%-Lösung an…“
Wir 80% Lösung an “
Ja
Ja… …Aber
Aber
100%-Lösungen tendieren dazu „Pareto-Regel“: die generierten
„in Schönheit zu sterben“… 80% sparen typischerweise nur
- i
insonderheit, wenn sie
d h it i 20% des Codieraufwandes!
technologiegetrieben sind!
80% generierter Code spart => „Low Hanging Fruits“
bereits viel Zeit, die den 20%
Zeit
manuell zu erstellenden Code Wird generierter und manueller
zugute kommen. Code gemischt, so schafft dies
D G
Der Generator wächst mit der
t ä h t it d neue Probleme die den Zeit
Probleme, Zeit-
Zahl der Projekte, wir müssen gewinn „aufzufressen“ drohen…
aber jetzt zu lauffähigen
Ergebnissen kommen!
Sinnvoller:
80% für fachliche Modellierung
20% fü F
für Framework-Erweiterungen
kE it
100% Generierung!
Tomcat® computer GmbH
© 2009 Dr.Ch.Mann (Stand 08.03.2009) 20
22. Quellen
Douglas Adams
„Mostly Harmless“, William Heinemann Ltd., 1992
5. Band der Trilogie „Hitchhiker‘s Guide to the Galaxy“…
„Einmal Rupert und zurück“, Hoffmann & Campe, 1993
Frederick P. Brooks Jr.
„No Silver Bullet“, Proceedings of the IFIP '86 conference
Bullet , 86
Nachdruck in:
„The Mythical Man Month“, Addison-Wesley, 1995
„Vom Mythos des Mann-Monats “, mitp, 2003
Tomcat® computer GmbH
© 2009 Dr.Ch.Mann (Stand 08.03.2009) 22
24. Wer wir sind, was wir sind
sind
Tomcat® computer GmbH:
Kleines, mittelständiges Beratungsunternehmen
mit Sitz in Krailing bei München
g
Gegründet 1988
Derzeit 18 (freie & feste) Mitarbeiter
( )
Schwerpunkte:
- Objektorientierter Technologien
j g
- Methoden & Verfahren der Software-Entwicklung
- Projektmanagement
Kunden:
- Banken, Versicherungswirtschaft, Finanzdienstleister
- Leasing & Handel
- Energiewirtschaft
Tomcat® computer GmbH
© 2009 Dr.Ch.Mann (Stand 08.03.2009) 24
25. Entwicklung
2006/07: Wachstum und Kompetenz-
erweiterung durch Beteiligungen
2003: Start der Business-Consulting
Division
2001: Erste Ansätze: Business-Analyse
GPM und Projektmanagement
1999: OO-Systemarchitektur und
MDA
1997: „Einstieg“ in Entwicklungen
mit JAVA-Techniken
1992: OO-Technologie mit Smalltalk
1988: Gründung der Tomcat computer GmbH durch
Herrn Richard von Lavante in München
Ab hier SW-Unterstützung im UNIX-Umfeld
Tomcat® computer GmbH
© 2009 Dr.Ch.Mann (Stand 08.03.2009) 25
26. Standorte
München
Tomcat® computer GmbH
© 2009 Dr.Ch.Mann (Stand 08.03.2009) 26
27. Kunden
Tomcat® computer GmbH
© 2009 Dr.Ch.Mann (Stand 08.03.2009) 27
28. Business- und IT-Lösungen für den Projekt-Lifecycle
B i d IT Lö fü d P j kt Lif l
IV-Konzept
p SW-Engineering
g g
Fachkonzept Verfahren
Geschäftsprozeß-
Management Implementierung, Test,
p g
Integration
Projekt-
Management
a age e t Schulung
Coaching
Consulting
Tomcat® computer GmbH
© 2009 Dr.Ch.Mann (Stand 08.03.2009) 28
29. Business Solutions Finance - Fachthemen
Kreditwesen
IAS / IFRS und -risiko
In-/Exkasso
In /Exkasso
Rating / Basel-2
Kompositversicherung
Kontokorrent-Systeme Risikocontrolling
Provisionssystem
Pro isionss stem
WP-Handel
Tomcat® computer GmbH
© 2009 Dr.Ch.Mann (Stand 08.03.2009) 29
30. Software Engineering
Klassische C/S
mit JAVA / Smalltalk
Intranet /
Extranet
Multi Tier Architecture
Config-
management
Datenbanken
Frameworks
Beans
Mainframe
...mit Partner
Tomcat® computer GmbH
© 2009 Dr.Ch.Mann (Stand 08.03.2009) 30
31. Unternehmens-
Unternehmens und Mitarbeiterstruktur
Tomcat computer GmbH Aktives
Netzwerk
Krailling
Mitarbeiter: 18
Mitarbeiter: 32
Beteiligungen
Feltech s.r.o
CZ / Prag
Mitarb.:
Mit b 8
Premium Data Services
GmbH, München
Mitarbeiter: 15
AspectWorks s.r.o.
CZ / Prag
Mitarbeiter: 13
Tomcat® computer GmbH
© 2009 Dr.Ch.Mann (Stand 08.03.2009) 31