PRAKTISCHE UMSETZUNG EINES RICHTUNGSWEISENDEN SOFTWAREENTWICKLUNGSPROZESSES - AUTOREN: ADION INFORMATIONSMANAGEMENT GMBH
←
→
Transkription von Seiteninhalten
Wenn Ihr Browser die Seite nicht korrekt rendert, bitte, lesen Sie den Inhalt der Seite unten
Praktische Umsetzung eines richtungsweisenden SoftwareEntwicklungsProzesses Autoren: Hans-Jochen Braun (W&W-Informatik GmbH) Birgit Schweizer (adiOn Informationsmanagement GmbH) RUF 20.11.2003 Seite 1
Agenda Ausgangslage SEP – Der Softwareentwicklungsprozess innerhalb der W&W-Informatik GmbH KOMPAS - Vorstellung der Projektes Komponentenbasiertes Anwendungssystem Schaden. Die Entwicklungsumgebung basiert auf Rational Rose und IBM WebSphere Application Developer. SEP-Bank - In Form eines Videos wird das bei der W&W Informatik verwendete Schulungsbeispiel gezeigt. Aktuell wird das Werkzeug Rational XDE Developer eingesetzt. ü Fazit Diskussion und Fragen RUF 20.11.2003 Seite 2
W&W Informatik GmbH Fusion 1999 ff. W&W Informatik GmbH ist seit 01.08.2002 ein eigenständiges Unternehmen. Anteilseigner sind zu 51% die Wüstenrot & Württembergische AG und zu jeweils 24,5% die Bausparkasse Wüstenrot und die Württembergische Versicherung. RUF 20.11.2003 Seite 3
Herausforderungen durch die Fusion F mehrere Entwicklungsprozesse (>2) in der Informatik führen zu Sofortmaßnahmen: Konfigurations management Qualitäts s icherung Sys temers tellung P rojektmanagement § IT-Strategie (z.B. einheitliche Architektur) Vorgehens weis e Methoden § Bündelung der IT-Aktivitäten, Organigramm Werkzeug- anforderungen ausgerichtet auf Übergang zu einer IT-GmbH § W&W-Phasenmodell § einheitliches Projektmanagement § einheitliches Architekturmanagement § einheitliche Geschäftsprozessmodellierung F Java-Technologie bei W&W § rudimentäre Beschreibungen von OO-Prozessen (OOA/OOD) § einzelne Ergebnisse (z.B. Java-Programmier-Richtlinien) F unterschiedliches Erscheinungsbild (z.B. Technik und Aufbau der Dokumentation) RUF 20.11.2003 Seite 4
Vorgehen Abgeleitet aus den Zielen der IT-Strategie der W&W Informatik GmbH: „Ein einheitlicher Softwareentwicklungsprozess, der weitgehend medienbruch- frei die Entwicklungsschritte von den fachlichen Geschäftsprozessen bis hin zur Verteilung von Softwarekomponenten vorgibt.“ F Einsammeln von Bewährtem: Best Practices übernehmen, dabei Mängel an bisherigen Modellen beseitigen F Ganzheitliche Darstellung: neben den reinen Software Engineering- Aktivitäten werden die begleitenden Prozesse mitbetrachtet F Unterstützung von diversen Projekttypen und Plattformen § kleine / kurze Projekte -> Leichtgewichtiges Modell § große / komplexe Projekte -> Iterative Modelle F Transparenz schaffen für alle Beteiligten (auch für Kunden der IT) F Konsolidierung der Werkzeugumgebungen RUF 20.11.2003 Seite 5
Agenda Ausgangslage SEP – Der Softwareentwicklungsprozess innerhalb der W&W-Informatik GmbH KOMPAS - Vorstellung der Projektes Komponentenbasiertes Anwendungssystem Schaden. Die Entwicklungsumgebung basiert auf Rational Rose und IBM WebSphere Application Developer. SEP-Bank - In Form eines Videos wird das bei der W&W Informatik verwendete Schulungsbeispiel gezeigt. Aktuell wird das Werkzeug Rational XDE Developer eingesetzt. ü Fazit Diskussion und Fragen RUF 20.11.2003 Seite 6
Ebenenmodell RUF 20.11.2003 Seite 7
Plattformen RUF 20.11.2003 Seite 8
Merkmale C Anwendung einer standardisierten Modellbeschreibung für die Entwicklungsarchitektur – aufgeteilt in zehn Disziplinen C Ablage von Aktivitäten, Rollen, Ergebnistypen etc. in einer Prozessdatenbank C Verwendung einheitlicher Nomenklatur (z.B. Begriffe und Symbole) C Plattform-unabhängige Ausgabe C Zuständigkeiten für alle Komponenten – vorwiegend relevant bei Methoden und Werkzeugen - geregelt C Schnittstellen zu anderen Prozessen (z. B. Betrieb) werden über entsprechende Ergebnistypen definiert RUF 20.11.2003 Seite 9
Modellbeschreibung aufgegliedert in dargestellt detailliert durch verwendet durch Elementar- Methoden Software- Disziplinen Aktivitäten aktivität entwicklungs- verwendet prozess verwendet Einheitlich für alle Plattformen r ch erstellt t du hr fü verant wortlic Werkzeuge Rolle h für Ergebnistyp Anleitung Checkliste Vorlage Muster Abhängig von der Plattform RUF 20.11.2003 Seite 10
Veröffentlichung Prozess Vorlagen Templates Anleitungen Checklisten Leitfäden B er M ioth eu ib k us e ge W l te ke r n z RUF 20.11.2003 Seite 11
Ergebnistypen Ergebnistypen in Ebenenmodell Facharchitektur ist Basis für Geschäftsprozessmodell Entwicklungs- Fachmodell eingeführt durch architektur realisiert durch gelöst durch geprüft durch Technische Architektur Analyse- und Software- Produktversion QS-Modell Designmodell Einheit Einheitlichkeit, Durchgängigkeit, Transparenz bei der Weiterverwendung von Ergebnissen oder Teilen davon RUF 20.11.2003 Seite 12
Ergebnistyp Fachmodell Fachmodell ü Geschäfts- prozessmodell ü ü Funktionale Nicht-Funktionale Anforderungen Anforderungen ü Anwendungsfallmodell Projektauftrag ü ü Anwendungsfall- Anwendungsfall- ü diagramm beschreibung Begriffslexikon RUF 20.11.2003 Seite 13
Ergebnistyp Anwendungsfallmodell RUF 20.11.2003 Seite 14
SEP für J2EE-Projekte C Durchgängigkeit des SEP: Wird laufend über Projekte erprobt und ggf. verfeinert und angepasst C SEP wird über Architekturberatung in die Projekte eingebracht C SEP liefert Methoden und zugehörige Werkzeuge C Lösungen aus den Projekten werden über Architekturmanagement zum Allgemeingut. C alternativ informelle Zusammenarbeit zwischen dem Bereich Methoden und Verfahren und einzelnen Projekten RUF 20.11.2003 Seite 15
Agenda Ausgangslage SEP – Der Softwareentwicklungsprozess innerhalb der W&W-Informatik GmbH KOMPAS - Vorstellung der Projektes Komponentenbasiertes Anwendungssystem Schaden. Die Entwicklungsumgebung basiert auf Rational Rose und IBM WebSphere Application Developer. SEP-Bank - In Form eines Videos wird das bei der W&W Informatik verwendete Schulungsbeispiel gezeigt. Aktuell wird das Werkzeug Rational XDE Developer eingesetzt. ü Fazit Diskussion und Fragen RUF 20.11.2003 Seite 16
Vorteile des SEP-Ansatzes § Produktivitätssteigerung durch Generierung des Codes § Qualitätssteigerung innerhalb des Codes § Konzentration auf fachliche Anforderungen RUF 20.11.2003 Seite 17
Projektziele § Aufbau einer elektronischen Akte für ein Schadensystem § Integration eines Imagesystems § Integration des vorhandenen Schadensystems (Host) § Verifikation und Entwicklung von Architekturkomponenten RUF 20.11.2003 Seite 18
Entwicklungsumgebung § Rational Rose Enterprise Edition § WebSphere Studio Application Developer 4.0 § Forte für Java (GUI) § ANT RUF 20.11.2003 Seite 19
Zielumgebung § 500 Clients - Innendienst § WebSphere 4.0 Application Server § WebSpere MQ Integrator 2.1 § OS 390 § DB2 Version 7 RUF 20.11.2003 Seite 20
Fachmodell Schadeninformationpräsentieren Stufe1 § Anwendungsfall-Diagramm (fromSchadenpräsentation/Steuerung) § Definition der Anwendungsfälle § Festlegung der Akteure § Festlegung der Beziehungen AktendeckelInformationenerfassen/ ändern (fromSchadendokumentation) zwischen den Anwendungsfällen Schaden-Sachbearb eiter (fromAktoren) SonstigeInformationenerfassen/ Berechtigungs-Prüfung (fromSchadendokumentation) § Aktivitäts-Diagramm ändern/ löschen (fromSchadendokumentation) § Festlegung der Verantwortlichkeit § Definition des Ablaufes § Festlegung der Entscheidungen Gespraechsnotizerfassen (fromPräsentation/Steuerung) RUF 20.11.2003 Seite 21
Analyse- und Designmodell Aktendeckel LAendUserID LAendTimestamp ErgKommentar : String § Klassenmodell definieren ErgBedingungen : String ADErgaenzung § Festlegung der Klassen beinhaltet SBAbgezogenKZ : char LAendUserID DBedText : String LAendTimestamp DeckungKZ : char 1 0..n DAblehnText : String § Attribute DAendUserID : String AGesellschaften : String Aendern() § Operationen AktendeckelRS AktendeckelUNKU AktendeckelAHKraft § Festlegung der Beziehungen / VSKurbeihilfe : Decimal / LetztRiskBeg : Date / DBedFText : String § Erstellen von Sequenz- / VSKosmOper : Decimal / VorsteuerKZ : char / DeckungFKZ : char / MaklerBedKZ : char / SBAbgSNR : String / DAblehnFText : String / DirAnsprKZ : char / EBriefKZ : char / DAendFUserID : String / SammelschaKZ : char / DoppelversKZ : char / SammelschaJahr : Decimal Aendern() Diagrammen / VersArtText : String Aendern() / TaetigkeitVers : String 1..1 / TaetigkeitAusg : String beinhaltet / ErgBedingungenUnf : String Aendern() § Festlegung der Pakete der 0..n ADDeckungsZusage / LAendUserID / LAendTimestamp Anwendung und deren / DZusageKZ : char / DZusageText : String / Erstelldatum : Date Aendern() Abhängigkeiten RUF 20.11.2003 Seite 22
Analyse- und Designmodell § Generierung der Klassen in A DP e rso n B O rdn e r_ ID : T IM E S T A M P A d re ssp o si ti o n : CHA RA CT E R(2 ) E n ti ta e tstyp : CHA RA CT E R(4 ) L A e n d Use rID : CHA RA CT E R(6 ) L A e n d T i m e sta m p : T IM E S T A M P S ta tu sFre i K Z : CHA RA CT E R(2 ) Ha ftK Z : CHA RA CT E R(1 ) § EJBs Ha ftP ro ze n t : DE CIM A L (5 , 2 ) Ha ftZa e h l e r : INT E G E R Ha ftNe n n e r : INT E G E R Ha ftG ru n d T e xt : V A RCHA R(5 0 0 ) Ha ftA e n d Use rID : CHA RA CT E R(6 ) S i ch S ch e i n K Z : CHA RA CT E R(1 ) S ta tA u ftra g K Z : CHA RA CT E R(2 ) Ha ftG ru n d K Z1 : CHA RA CT E R(3 ) Ha ftG ru n d K Z2 : CHA RA CT E R(3 ) § Java-Klasse B e a rb e i tu n g so rd n e r Ha ftG ru n d K Z3 : CHA RA CT E R(3 ) B O rd n e r_ ID : T IM E S T A M P < < Id e n ti fyi n g > > Ha ftG ru n d K Z4 : CHA RA CT E R(3 ) S NR : CHA RA CT E R(1 1 ) Ha ftG ru n d K Z5 : CHA RA CT E R(3 ) L A e n d Use rID : CHA RA CT E R(6 ) Ha ftG ru n d K Z6 : CHA RA CT E R(3 ) L A e n d T i m e sta m p : T IM E S T A M P 1 1 0. .* Ha ftG ru n d K Z7 : CHA RA CT E R(3 ) Ha ftG ru n d K Z8 : CHA RA CT E R(3 ) < < P K > > P K _ B O rd () Ha ftG ru n d K Z9 : CHA RA CT E R(3 ) < < In d e x> > I_ S NR() Ha ftG ru n d K Z1 0 : CHA RA CT E R(3 ) < < In d e x> > I_ B O RD2 () Ha ftG ru n d K Z1 1 : CHA RA CT E R(3 ) § Transformation der Klassen 1 1 Ha ftG ru n d K Z1 2 : CHA RA CT E R(3 ) > Ha ftG ru n d K Z1 3 : CHA RA CT E R(3 ) Ha ftG ru n d K Z1 4 : CHA RA CT E R(3 ) Ha ftG ru n d K Z1 5 : CHA RA CT E R(3 ) Ha ftG ru n d K Z1 6 : CHA RA CT E R(3 ) Ha ftG ru n d K Z1 7 : CHA RA CT E R(3 ) 1 Ha ftG ru n d K Z1 8 : CHA RA CT E R(3 ) Ha ftG ru n d K Z1 9 : CHA RA CT E R(3 ) in ein Datenmodell A kt en d ec kel Ha ftG ru n d K Z2 0 : CHA RA CT E R(3 ) B O rd n e r_ ID : T IM E S T A M P V S In v : DE CIM A L (1 3 , 2 ) V S T o d : DE CIM A L (1 3 , 2 ) E n ti ta e tstyp : CHA RA CT E R(4 ) V S K HT G u rt : DE CIM A L (1 3 , 2 ) L A e n d Use rID : CHA RA CT E R(6 ) V S T a g e g e l d : DE CIM A L (1 3 , 2 ) L A e n d T i m e sta m p : T IM E S T A M P E rg K o m m e n ta r : V A RCHA R(5 0 0 ) A DE rg a e n zu n g < < FK > > F_ B O RD2 () E rg B e d i n g u n g e n : V A RCHA R(5 0 0 ) B O rd n e r_ ID : T IM E S T A M P < < In d e x> > I_ A P e r() S B A b g ez o g e n K Z : CHA RA CT E R(1 ) A DE rg a en z u n g _ ID : T IM E S T A M P < < P K > > P K _ A P e r() DB e d T ex t : V A RCHA R(5 0 0 ) E n ti ta e tstyp : CHA RA CT E R(4 ) De cku n g K Z : CHA RA CT E R(1 ) L A e n d Use rID : CHA RA CT E R(6 ) DA b l e h n T e xt : V A RCHA R(5 0 0 ) L A e n d T i m e sta m p : T IM E S T A M P DA e n d Use rID : CHA RA CT E R(6 ) E rste l l d a tu m : DA T E A G e se l l sch a fte n : V A RCHA R(5 0 0 ) B e sch re i b u n g : V A RCHA R(8 0 ) DB e d FT e x t : V A RCHA R(5 0 0 ) S B B e tra g : DE CIM A L (1 3 , 2 ) De cku n g FK Z : CHA RA CT E R(1 ) S B P ro ze n t : DE CIM A L (5 , 2 ) DA b l e h n FT e xt : V A RCHA R(8 0 ) S B M i n i m a l : DE CIM A L (1 3 , 2 ) DA e n d FUse rID : CHA RA CT E R(6 ) < < No n- Id en ti fyi ng > > S B M a xi m a l : DE CIM A L (1 3 , 2 ) V S K u rb e i h i l fe : DE CIM A L (1 3 , 2 ) 0. .* V S S u m m e : DE CIM A L (1 3 , 2 ) V S K o sm O p e r : DE CIM A L (13 , 2 ) 1 1 T e rm Da tu m : DA T E M a kl e rB e d K Z : CHA RA CT E R(1 ) T e rm K Z : CHA RA CT E R(3 ) Di rA n sp rK Z : CHA RA CT E R(1 ) T e rm S o n stT e xt : V A RCHA R(8 0 ) S a m m e l sch a K Z : CHA RA CT E R(1 ) T e rm S ta tu sK Z : CHA RA CT E R(1 ) S a m m e l sch a Ja h r : CHA RA CT E R(4 ) S NR : CHA RA CT E R(1 1 ) V e rsA rtT e xt : V A RCHA R(8 0) E rg K o m m e n ta r : V A RCHA R(5 0 0 ) T a e ti g ke i tV e rs : V A RCHA R(8 0 ) DZu sa g e K Z : CHA RA CT E R(3 ) T a e ti g ke i tA u sg : V A RCHA R(8 0 ) E rg B e d i n g u n g e n Un f : V A RCHA R(5 0 0 ) < < P K > > P K _ A DE () L e tztRi skB e g : DA T E < < FK > > F_ B O RD3 () V o rste u e rK Z : CHA RA CT E R(1 ) < < In d e x> > I_ A DE R1 () S B A b g S NR : CHA RA CT E R(1 1 ) < < In d e x> > I_ B O RD1 () E B ri e fK Z : CHA RA CT E R(1 ) Do p p e l ve rsK Z : CHA RA CT E R(1 ) < < P K > > P K _ A kte () < < FK > > F_ B O RD1 () < < In d e x> > I_ A kte 1 () RUF 20.11.2003 Seite 23
Datenmodell § Denormalisierung des generierten E/R-Modells § Festlegung der Informationen zur Generierung der DB2-Objekte § Generierung der DDL für verschiedene DB2-Versionen RUF 20.11.2003 Seite 24
E/R-Modellierung - Probleme und Abhilfe § IBM DB2 OS/390 ab 5.x § keine korrekte Generierung der DDL (alle benötigten Informationen waren vorhanden) § Lösung: REXX-Prozedur korrigiert DDL RUF 20.11.2003 Seite 25
Agenda Ausgangslage SEP – Der Softwareentwicklungsprozess innerhalb der W&W-Informatik GmbH KOMPAS - Vorstellung der Projektes Komponentenbasiertes Anwendungssystem Schaden. Die Entwicklungsumgebung basiert auf Rational Rose und IBM WebSphere Application Developer. SEP-Bank - In Form eines Videos wird das bei der W&W Informatik verwendete Schulungsbeispiel gezeigt. Aktuell wird das Werkzeug Rational XDE Developer eingesetzt. ü Fazit Diskussion und Fragen RUF 20.11.2003 Seite 26
Vom Analysemodell zur DDL Im Rahmen von KOMPAS wurde das Verfahren auf der Basis der Werkzeuge Rose und WSAD 4.0 in 2002 entwickelt. Inzwischen kommen bei der W&W Informatik XDE 2003 und WSAD 5.0.1 zur Anwendung. Der Film basiert auf dem in 2003 erstellten Evaluierungsbeispiel SEP-Bank. Den Film erhalten Sie unter www.adion.de RUF 20.11.2003 Seite 27
Agenda Ausgangslage SEP – Der Softwareentwicklungsprozess innerhalb der W&W-Informatik GmbH KOMPAS - Vorstellung der Projektes Komponentenbasiertes Anwendungssystem Schaden. Die Entwicklungsumgebung basiert auf Rational Rose und IBM WebSphere Application Developer. SEP-Bank - In Form eines Videos wird das bei der W&W Informatik verwendete Schulungsbeispiel gezeigt. Aktuell wird das Werkzeug Rational XDE Developer eingesetzt. ü Fazit Diskussion und Fragen RUF 20.11.2003 Seite 28
Fazit – SEP und Projekte ü § Zusammenarbeit klappt bei Einzelthemen immer dann, wenn WIN-WIN- Situationen geschaffen werden § ein klarer Entwicklungsprozess alleine sichert nicht den Projekterfolg § ein Tailoring des Entwicklungsprozesses ist von Projekten als eigene Aktivität zu planen und durchzuführen § gemeinsame Maßnahmen sind frühzeitig zu planen § Rückfluss von Projektergebnissen muss sichergestellt werden RUF 20.11.2003 Seite 29
Fazit – SEP und Beteiligte ü § Schaffung des Bewusstseins für einen einheitlichen Entwicklungsprozess im Top- und Middle-Management ist Rahmenbedingung § hohes Maß an Disziplin und Bereitschaft der Mitarbeiter erforderlich § Abschaffung der Entwicklungskünstler („Rad neu erfinden“) --> Konzentration der Kreativität auf die Problemlösung unter Verwendung vorhandener Muster etc.) § Abschaffung der „Flucht in Word-Dokumente“ § als Vorgabe zur Zusammenarbeit mit Dritten durchsetzen § Fachabteilungen § externe Partner RUF 20.11.2003 Seite 30
Fazit – SEP im Unternehmen ü § organisatorische Voraussetzungen müssen geschaffen sein, der Betrieb der eingesetzten Tools und Verfahren ist zu bündeln (Produktverantwortung) § Durchsetzung nur möglich, wenn Vorgaben aus SEP Richtlinien-Charakter haben § muss einher gehen mit Vereinheitlichung anderer Prozesse des Unternehmens (Multiprojektmanagement, Beschaffung etc.) § kein Einsatz von Werkzeugen ohne Nutzungskonzept - korrespondierend zu bestehenden Richtlinien § auf langwierigen Prozess der Akzeptanz einrichten RUF 20.11.2003 Seite 31
Abschluss Den Vortrag sowie den zugehörigen Film erhalten Sie unter www.adion.de Die verbleibende Zeit steht für Diskussion und Fragen zur Verfügung. Vielen Dank für Ihre Aufmerksamkeit! RUF 20.11.2003 Seite 32
Sie können auch lesen