Mdd Days 2009 Handout
-
Upload
christian-mann -
Category
Technology
-
view
348 -
download
0
Embed Size (px)
description
Transcript of Mdd Days 2009 Handout

MDAMDANeue Techniken,neue Lösungenneue Lösungen,neue Probleme?
Dr. Christian Mann
Tomcat® computer GmbHp

Eine Erfolgsgeschichte“ zu BeginnEine „Erfolgsgeschichte“ zu 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 geltenals erfolgreich gelten…
Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 2

Woran scheitern Software Projekte?Woran scheitern Software-Projekte?
Programmiersprache, IDE, Betriebssystem,
S ft ?Hardware? Zielumgebung…
Software?CPU-Geschwindigkeit, Arbeitsspeicher, Plattenspeicher,
Wetware?Netzwerkdurchsatz…
Wetware?Der eigene Kopf…
Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 3

Fehlerquelle & Erfolgsfaktor Nr 1Fehlerquelle & Erfolgsfaktor Nr. 1
Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 4

Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 5

(Subjektive!) Begriffsabgrenzung(Subjektive!) Begriffsabgrenzung
MDA MDD MDA „Akademischer“ Standard Separation of Concerns durch
M d llhi hi
MDD „Pragmatísches“
VorgehensmodellN t t t i h iModellhierarchie
(CIM => PIM => PSM => Code) M2M-Transformation
Nutzt typischerweise nur M2T-Transformationen
Nutzt tendenziell nur eine DSL als wesentliches Element!
Nutzt mehrere DSLs pro Projekt- CIM/PIM
pro Projekt Bevorzugt
„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

Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 7

Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 8

Narrensicher!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” 1992Mostly Harmless , 1992
Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 9

Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 10

Qualitätssicherung für FrameworksQualitätssicherung für Frameworks
Wiederverwendung setzt Vertrauen in die Qualität voraus! 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ändenvs.
Konzentration auf intendierte Anwendungenmit hohem Qualitäts-Risikomit hohem Qualitäts-Risiko
Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 11

Model Driven TestingModel Driven Testing
MDA-Antwort“ auf Probleme der Qualitätssicherung: „MDA-Antwort auf Probleme der Qualitätssicherung: Basis: eigenes UML-Profil zur Testfall-Spezifikation Testcode wird mit der Applikation generiert 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)(= Anwendung auf PSM-Ebene)
Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 12

Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 13

Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 14

WerwölfeWerwölfe…
“There is no single development in eitherdevelopment, in either technology or management technique which by itselftechnique, which by itself promises even one order-of-magnitude improvementof-magnitude improvement within a decade in productivity in reliability inproductivity, in reliability, in simplicity.“
Fredrick P. Brooks Jr., „No Silver Bullet“, 1986
Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 15

Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 16

Wir haben da unsere generische DSL “„Wir haben da unsere generische DSL…“
Ja Aber Ja… Den höchsten Grad an
Wiederverwendung erreichen wir durch Wiederverwendung
…Aber Die DSL ist spezifisch für eine
bestimmte Domäne.Di ( i d t h)wir durch Wiederverwendung
von fachlichen Konzepten. Wiederverwendbarkeit der DSL
äh l i t t Wi d d
Diese muss (zumindest: auch) fachlich sein, um das Abstraktionsniveau der M d lli h bgewährleistet Wiederverwend-
barkeit - des Frameworks
Modellierung anheben zu können.
Als fachliche DSL kann sie b i ht j kt bhä i- des Generatoren aber nicht projektunabhängig
und -übergreifend generisch sein!
Als Entwickler lieben wir generische Lösungen… ;-) Eine „generische DSL“ droht
stets eine „TSL“ (Technology S ifi L )Specific Language) zu werden…
Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 17

Erstmal entwickeln wir das Framework “„Erstmal entwickeln wir das Framework…“
Ja Aber Ja… Zu Projektbeginn steckt die
fachliche Spezifikation oft noch in den Kinderschuhen
…Aber Frameworks entstehen nicht
auf der „grünen Wiese“, sondern wachsen mit der Zeit!in den Kinderschuhen.
Das technische Umfeld ist hingegen bekannt.
sondern wachsen mit der Zeit! Das Framework als Ziel-
Plattform der Generierung, ist i F k it fachlicher Die Probleme des technischen
Umfelds sind oft bekannt. Die Lösung technischer
ein Framework mit fachlicherFunktionalität.
Die fachlichen Anforderungen ü i T ib dProbleme kann unmittelbar
angegangen werden.müssen vorrangiger Treiber der Entwicklung von Framework & Generator sein!
Und wir haben das im übrigen schon immer so gemacht!
- Das Framework muss enthalten, was benötigt wird, nicht was man eventuell benötigen könnte…benötigen könnte…
Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 18

„Daraus können wir nix generieren, da müssen wir nochmal bei “da müssen wir nochmal bei…“
Ja Aber Ja… Es gibt eine Tradition
„schlampiger Modellierung“ bei vielen Fachbereichen!
…Aber Ziel von MDA ist es gerade,
fachliche & technische Baustellen klar zu trennenvielen Fachbereichen!
- Daher: fachliche Modellierung liegt oft in der Hand von „Prozess-
Baustellen klar zu trennen.- Fachlichkeit spezifiziert der
Fachbereich, Technik stellen die Entwickler bereit…in der Hand von „Prozess
Designern“, o.ä.- Diese sind häufig der
Entwicklung zugeordnet.
die Entwickler bereit…
Die DSL muss fachliche Funktionalität deklarativzugängig machen!
Die Entwickler kennen die formalen Anforderungen an
zugängig machen! Technische Detail-Tiefe wird
generiert.
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

Wir streben nur eine 80% Lösung an “„Wir streben nur eine 80%-Lösung an…“
Ja Aber Ja… 100%-Lösungen tendieren dazu
„in Schönheit zu sterben“…i d h it i
…Aber „Pareto-Regel“: die generierten
80% sparen typischerweise nur 20% des Codieraufwandes!- insonderheit, wenn sie
technologiegetrieben sind!
80% generierter Code spart bereits viel Zeit die den 20%
20% des Codieraufwandes!
=> „Low Hanging Fruits“bereits viel Zeit, die den 20% manuell zu erstellenden Code zugute kommen.D G t ä h t it d
Wird generierter und manueller Code gemischt, so schafft dies neue Probleme die den Zeit Der Generator wächst mit der
Zahl der Projekte, wir müssen aber jetzt zu lauffähigen Ergebnissen kommen!
neue Probleme, die den Zeit-gewinn „aufzufressen“ drohen…
Ergebnissen kommen! Sinnvoller:
80% für fachliche Modellierung20% fü F k E it 20% für Framework-Erweiterungen
100% Generierung!
Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 20

Low Hanging FruitsLow Hanging Fruits
Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 21

QuellenQuellen
Douglas Adams 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„No Silver Bullet , Proceedings of the IFIP 86 conference
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

Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 23

Wer wir sind was wir sindWer wir sind, was wir sind
Tomcat® computer GmbH: Tomcat computer GmbH: Kleines, mittelständiges Beratungsunternehmen
mit Sitz in Krailing bei Müncheng Gegründet 1988 Derzeit 18 (freie & feste) Mitarbeiter( ) Schwerpunkte:
- Objektorientierter Technologienj 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

EntwicklungEntwicklung
2006/07: Wachstum und Kompetenz-erweiterung durch Beteiligungen
2003: Start der Business-ConsultingDivision
2001: Erste Ansätze: Business-AnalyseGPM und Projektmanagement
1999: OO-Systemarchitektur und
1997: „Einstieg“ in Entwicklungen mit JAVA-Techniken
1999: OO-Systemarchitektur und MDA
1988: Gründung der Tomcat computer GmbH durch
1992: OO-Technologie mit Smalltalk
Herrn Richard von Lavante in MünchenAb hier SW-Unterstützung im UNIX-Umfeld
Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 25

StandorteStandorte
München
Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 26

KundenKunden
Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 27

B i d IT Lö fü d P j kt Lif lBusiness- und IT-Lösungen für den Projekt-Lifecycle
SW-EngineeringIV-Konzept
Implementierung, Test,Geschäftsprozeß-
Management
g gVerfahrenFachkonzept
p
Projekt-Management
p gIntegration
Management
Schulung
Consulting
a age e t SchulungCoaching
Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 28

Business Solutions Finance FachthemenBusiness Solutions Finance - Fachthemen
IAS / IFRSKreditwesen
und -risikoIn /Exkasso
KompositversicherungRating / Basel-2
In-/Exkasso
Pro isionss stem
RisikocontrollingKontokorrent-Systeme
Provisionssystem
WP-Handel
Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 29

Software EngineeringSoftware Engineering
Intranet /
Klassische C/Smit JAVA / Smalltalk
Multi Tier Architecture Extranet
Config-management
FrameworksBeans
Datenbanken
management
Beans
Mainframe
...mit Partner
Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 30

Unternehmens und MitarbeiterstrukturUnternehmens- und Mitarbeiterstruktur
Tomcat computer GmbHKraillingMitarbeiter: 18
Aktives Netzwerk
Mitarbeiter: 18
Mitarbeiter: 32
Feltech s.r.oCZ / PragMit b 8
Beteiligungen
Mitarb.: 8Premium Data ServicesGmbH, MünchenMitarbeiter: 15
AspectWorks s.r.o.CZ / PragMitarbeiter: 13
Tomcat® computer GmbH© 2009 Dr.Ch.Mann (Stand 08.03.2009) 31