42
1 Vorlesung "Software-Engineering" Vorige Vorlesung Techniken für die Enwicklung von Individualsoftware Extreme Programming (XP) Feature-Driven-Development Generalisierung: Agile Software-Entwicklungsmethoden Heute Techniken für die Entwicklung von Standardsoftware Anpassung durch Adaption von Referenzmodellen (Bsp. SAP) Modellierung von Geschäftsprozessen (Bsp.: ARIS) rof. Ralf Möller, TUHH, Arbeitsbereich STS

1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

Embed Size (px)

Citation preview

Page 1: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

1

Vorlesung "Software-Engineering"

Vorige Vorlesung Techniken für die Enwicklung von Individualsoftware

Extreme Programming (XP) Feature-Driven-Development Generalisierung: Agile Software-Entwicklungsmethoden

Heute Techniken für die Entwicklung von Standardsoftware Anpassung durch Adaption von Referenzmodellen (Bsp. SAP) Modellierung von Geschäftsprozessen (Bsp.: ARIS)

Prof. Ralf Möller, TUHH, Arbeitsbereich STS

Page 2: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

2

Motivation

Standardsoftware bietet eine Möglichkeit teure Individualsoftware zu ersetzen

Die Einführung von Standardsoftware kann durch Vorgehensmodelle für die Softwareentwicklung unterstützt werden

Page 3: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

3

Standard vs. Individualsoftware

Susanne Strahringer, Wirtschaftsinformatik, SoSe 03

Page 4: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

4

Risiken Standardsoftware

Susanne Strahringer, Wirtschaftsinformatik, SoSe 03

Page 5: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

5

Von der Lagerbestandsverwaltung über ERP zu SCM

Susanne Strahringer, Wirtschaftsinformatik, SoSe 03

Page 6: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

6

Individualisierung Aufgabenstellung

Wie unterstützen Vorgehensmodelle den Einsatz und die Adaption von Standardsoftware?

ReferenzmodelleWie sind Referenzmodelle strukturiert?Wie werden Referenzmodelle in Vorgehensmodellen

angewendet?Wie kann ein Vorgehensmodell zur Erstellung von

Software erweitert werden um Referenzmodelle zu erzeugen bzw. zu berücksichtigen?

[C. Haasis 2001, STS]

Page 7: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

7

Beispiele für Standardsoftware

Betriebliche Standardsoftwaresysteme SAP R/3 Oracle Applications BAAN IV

Groupware/Kommunikationssysteme: Lotus Notes MS Exchange

Content/Knowledge Management Systeme: CoreMedia InfoBroker

[C. Haasis 2001, STS]

Page 8: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

8

30 Jahre SAP

Susanne Strahringer, Wirtschaftsinformatik, SoSe 03

Page 9: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

9

Beispiel SAP

Umfangreich: 60 Mio Zeilen CodeStandardkomponenten: Module FI, MM, TR, HR, ....Branchenspezifische Anwendungen: IS-OIL, IS-

Hospital, IS-PS, ...Skalierbar durch SchichtenarchitekturAdaptierbar durch:

integrierte Werkzeuge zur Konfiguration (Customizing), integrierte Programmierumgebung, integriertes Vorgehensmodell (Einführungsleitfaden), integriertes Referenzmodell.

[C. Haasis 2001, STS]

Page 10: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

10

Adaptionsmöglichkeiten[C. Haasis 2001, STS]

Page 11: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

11

Referenzmodell: Definition

Referenz: (lat.: refere) zurücktragen, überbringen, berichten

Modell: Abbildung von Objekten, ihren Eigenschaften, Beziehungen und Verhalten.

Zusätzliche Eigenschaften: allgemeingültig anpassbar anwendbar

Ein Referenzmodell stellt für eine bestimmte AnwendungsdomäneStrukturen, Eigenschaften, Beziehungen und das Verhalten vonObjekten in einer allgemeingültigen und anwendbaren Form dar,die es ermöglicht, durch Anpassung spezifische Modelle zu erzeugen.

[C. Haasis 2001, STS]

Page 12: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

12

Referenzmodell <-> Metamodell[C. Haasis 2001, STS]

Page 13: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

13

Referenzmodell <-> Metamodell[C. Haasis 2001, STS]

Page 14: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

14

Referenzmodelle zur Prozeßoptimierung

Die Referenzmodelle bilden allgemeingültige Strukturen und Prozesse ab, die als Vorbild für das betrachtete Unternehmen angesehen werden können.

Sie dienen der Prozeßoptimierung, indem die modellierten Istprozesse mit den Referenzmodellen verglichen werden. Durch die Umsetzung der adaptierten Referenzprozesse kommt es zur Erhebung von Daten über die neuen Prozesse.

Der Regelkreis wird geschlossen, so daß ein Übergang zum Prozeßmonitoring und damit zum Process Change Management geschaffen wird.

R. SCHÜTTE. BERLIN ET AL. 1998,

Page 15: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

15

Referenzmodelle vs. Vorgehensmodelle

R. SCHÜTTE. BERLIN ET AL. 1998,

Page 16: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

16

Architektur eines Referenzmodells

Was wird in einem Referenzmodell dargestellt?Was für Schichten gibt es?Welche Sichten existieren?Wie wird die Verbindung zwischen den einzelnen

Sichten/Schichten hergestellt?Wie wird Redundanz vermieden?

[C. Haasis 2001, STS]

Page 17: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

17

Sichten und Schichten

Page 18: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

18

Ziel: Vom Prozeßmodell zum Anwendungssystem

Page 19: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

19

Geschäftsprozeßmodellierung mit ARIS

Page 20: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

20

Phasenkonzept

Page 21: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

21

Vorgehensmodelle

Page 22: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

22

Geschäfts-leitung

Material-wirtschaft Vertrieb

EinkaufOrg 5Disposition

ET 2ET 1

ET 3

AnfrageAngebot

Kunde

E 1

E 2

F 12

ET 2 F 11

Anfrage isteingegangen

Anfrage ist bearbeitet

Angebots-bearbeitung

AnfrageAnfrage-

bearbeitung

F 1

F 12

F 111

F 112

F 11

Vertriebs-abwicklung

Lieferterminermitteln

Anfrage-bearbeitungVertrieb

Angebots-bearbeitung

Bonitätprüfen

Daten Steuerung FunktionenFunktionen

Organisation

EPKERM Funktionsbaum

Organigramm

ARIS - Methodenbausteine (Auszug)

Quelle: FFH Hamburg

Page 23: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

23

Geschäftsprozeßkomponenten

Page 24: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

24

Daten werden in Funktionen verarbeitet

Page 25: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

25

Mitarbeiter sind verantwortlich für Funktionen

Page 26: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

26

Mitarbeiter gehören zu Organisationseinheiten

Page 27: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

27

Funktionen erzeugen und verarbeiten Leistungen

Page 28: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

28

EPK - Elemente der Modellierung (1)

QuickTime™ and aTIFF (LZW) decompressorare needed to see this picture.

nach Prof. Dr. H. Krcmar

Page 29: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

29

EPK - Elemente der Modellierung (2)

QuickTime™ and aTIFF (LZW) decompressorare needed to see this picture.

nach Prof. Dr. H. Krcmar

Page 30: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

30

Verknüpfungsregeln

QuickTime™ and aTIFF (LZW) decompressorare needed to see this picture.

nach Prof. Dr. H. Krcmar

Page 31: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

31

Objekte einer EPK

nach Prof. Dr. H. Krcmar

Org-einheit

Ereignis1

Ereignis4Ereignis3Ereignis2

Funktion

Output

Input2

Input1

XOR

Auslösendes Ereignis

erzeugtes Ereignisse

Verantwortliche Struktureinheit (Stelle, Person usw.)

Page 32: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

32

Beispiele für Prozeßmodellierung

QuickTime™ and aTIFF (LZW) decompressorare needed to see this picture.

EPK: Wareneingangsbearbeitung EPK: Fertigungsdurchführung

nach Prof. Dr. H. Krcmar

Page 33: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

33

Komplexitätsreduzierung durch Sichtenbildung

Page 34: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

34

ARIS-Sichten

Page 35: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

35

Methodenintegration

Page 36: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

36

Organigramme

Fachbegriffsdiagramme

SAP-ERM-Diagramme

Wertschöpfungskettendiagramme

EreignisgesteuerteProzeßkettendiagramme

Vorgangskettendiagramme

Funktionshierarchie-diagramme

Anwendungssystem-diagramme

KundeninformationFB

KundennummerFB

KundennameFB

KundenauftragFB

Kundenwunsch-termin FB

Kundenauftrags-nummer FB

VorgangDatenbasis Art der Bearbeitung

Ergebnis/Ereignis

Auf-gaben-träger

DV-unterstützt

manuellDV-unterstützt

dialog batchmanuell

ARIS - Methodenbausteine (Auszug)

Quelle: IDS Scheeer

Page 37: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

37

Ereignis Funktion Daten dialog batch manuellAnwendungssyst.

Auftrag isteingetroffen

Auftrag isterfaßt

Auftrag isteingetroffen

Auftragsdatensind ergänzt

Auftrag istbearbeitet

Auftrag isteingetroffen

Auftragerfassen

Auftragbearbeiten

Auftragweiterleiten

Auftrags-daten

ergänzen

Kunden-auftrag

Auftragsdaten

Kunden-stamm

Kunden-auftrag

Auftragsdaten

Mailsystemtextverar-beitung

Org.-Einheit

Auftrags-annahme

Vertrieb

Vertrieb

Vertrieb

Auftragsbe-arbeitungs-

system

Mailsystem

ARIS Steuerungssicht - Vorgangskettendiagramm

Page 38: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

38

(AuswahlwichtigerMethoden undVerbin-dungen)

WareLieferant

Auftrag

Bestellung Bedarf Mitarbeiter0..* 1..1

0..* 1..*

1..1

0..*

1..1

0..*

0..* 1..1

Angelegt

Erfaßt

Empfängerzugeordnet

InBestellung

Befriedigt

Ware undMenge

zugeordnet

Geprüft

EPK Bedarfaufgetreten

Bedarferfaßt

Warevorrätig

Warenicht

vorrätig

Bedarferfassen

Bestandprüfen

MitarbeiterVertrieb

SachbearbeiterBeschaffung

Ware

Bedarf

Ware

Mitarbeiter

Bedarf

Ware

Mitarbeiter

Ware

Bedarf[geprüft]

Bedarf[erfaßt]

StatechartDiagram

ClassDiagram

Bedarf

Menge

Datum

Status

anlegen

Ware festlegen

Status festlegen

Menge festlegen

Empfänger bestimmenClass Description Diagram

Quelle: FFH Hamburg

ARIS -Integrierte GP-/OO-Modellierung

Page 39: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

39Quelle: Scheer, ARIS – Vom Geschäftsprozeß zum Anwendungssystem, 1998

ARIS-HOBE: House of Business Engineering

Page 40: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

40

ARIS Analyzer for R/3ARIS Analyzer for R/3

SAP-R/3 Referenz-SAP-R/3 Referenz-modellemodelleOrganisationseinheiten

Daten Prozesse Funktionen

Unternehmens-Unternehmens-prozesseprozesse

SAP-R/3 ImplementierungSAP-R/3 Implementierung• effiziente und konsistente Analyse• schlanke Implementierung innerhalb von Zeit und Budget• erhöhte Ausrichtung• einfache Dokumentation

SAP-R/3SAP-R/3PP

Produktions-planung

MMMaterial-wirtschaft

SDVertrieb

QMQualitäts-Manage-

ment PMInstand-haltung HR

Personal-wirtschaft

ISBranchen-lösungen

OCOffice

Communi-cation

&

PSProjekt-system

AMAnlagen-wirtschaft

COControlling

FIFinanz-wesen

Client/ServerABAP/4

Client/ServerABAP/4

R/3R/3

• erforschen• analysieren• verstehen

• vergleichen

• auswerten

ARIS Werkzeuge - Einführung SAP-R/3

Page 41: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

41

ARIS Werkzeuge - SAP Business Workflow

Quelle: Scheer

Page 42: 1 Vorlesung "Software-Engineering" zVorige Vorlesung yTechniken für die Enwicklung von Individualsoftware xExtreme Programming (XP) xFeature-Driven-Development

42

Zusammenfassung, Kernpunkte

ARIS-Haus Organisation Daten Steuerung (Ereignisgesteuerte Prozeßketten) Funktionen Leistungen

ARIS und SAPSoftwareerstellung durch Abgleich von aktuellen

Geschäftsprozessen mit Referenzmodellen aus Bibliothek für best. Anforderungen und Branchen(Bsp. SAP)