Geschäftsprozessorientierte Anwendungsentwicklung
|
|
- Josef Hansl Linden
- vor 8 Jahren
- Abrufe
Transkript
1 Geschäftsprozessorientierte Anwendungsentwicklung Ein Ansatz zur Kopplung von ADONIS und Rational Rose eingereicht von: Michael Derntl DIPLOMARBEIT zur Erlangung des akademischen Grades Magister rerum socialium oeconomicarumque Magister der Sozial- und Wirtschaftswissenschaften (Mag. rer. soc. oec.) Fakultät für Wirtschaftswissenschaften und Informatik, Universität Wien Fakultät für Technische Naturwissenschaften und Informatik, Technische Universität Wien Studienrichtung: Wirtschaftsinformatik Begutachter: O. Univ.-Prof. Dr. Dimitris Karagiannis Dipl. Wi.-Inf. Harald Kühn Wien, im Oktober 2001
2 Ehrenwörtliche Erklärung Ehrenwörtliche Erklärung Ich versichere hiermit, dass ich die vorliegende Diplomarbeit selbständig verfasst, andere als die angegebenen Quellen und Hilfsmittel nicht benutzt und mich auch sonst keiner unerlaubten Hilfe bedient habe. Diese Diplomarbeit hat in gleicher oder ähnlicher Form im In- oder Ausland noch keiner Prüfungsbehörde vorgelegen. Wien, den 16. Oktober Michael Derntl Seite I
3 Vorwort Vorwort Im Zuge der Entstehung dieser Diplomarbeit sind nicht wenige Jahreszeiten gekommen und gegangen, und doch ist sie noch in einem letzten Kraftakt kurz vor Einführung der Studiengebühren fertiggestellt worden. Mein Dank gilt gleichsam - in alphabetischer Reihenfolge meinen Eltern, die mir das Studium der Wirtschaftsinformatik ermöglicht haben, meiner Freundin für die zwar fachfremde, jedoch rechtschreibtechnisch und grammatikalisch unerlässliche Durchsicht, den Herren Professor Dr. Karagiannis und Harald Kühn für richtungsgebende Anregungen, Betreuung und Verbesserungsvorschläge, sowie allen, die soweit vorgestoßen sind, diese Zeilen zu lesen. Möge diese Arbeit häufig in Literaturhinweisen auftauchen, auf dass sie nicht in der Bibliothek verstaube. Seite II
4 Inhalt Inhalt 1 Einführung Motivation Aufgabenstellung Aufbau der Arbeit Begriffe und Grundkonzepte Software-Entwicklung Begriffsbestimmung Phasen der Software-Entwicklung Unified Modeling Language (UML) Klassendiagramme Klassen Interfaces Beziehungen UseCase-Diagramme System UseCases Akteure Beziehungen Aktivitätsdiagramme Aktivitätszustand Transitionen Entscheidungsknoten Synchronsiation Swimlanes Unified Software Development Process Begriff und Hauptmerkmale Phasen CASE Geschäftsprozessmanagement Das BPMS-Paradigma Strategic Decision Process Reengineering Process Resource Allocation Process Workflow Process Performance Evaluation Process Geschäftsprozessmodellierung Werkzeuge Allgemeines zur Werkzeugunterstützung Das Geschäftsprozessmanagement-Werkzeug ADONIS Theoretische Basis Funktionalität und Einsatzszenarien Programmierschnittstellen ADLP AdoScript Das CASE-Werkzeug Rational Rose Seite I
5 Inhalt Theoretische Basis Funktionalität und Einsatzszenarien Programmierschnittstellen COM-API RoseScript Kopplungsansätze Einleitung Entscheidungsvariablen eines Kopplungsansatzes Dimensionen eines Kopplungsansatzes Bereitschaft des Kopplungsmoduls Onlinemodule Offlinemodule Kopplungsrichtung Automation der Transformation Automation der Integration Konkrete Ansätze Modellmanipulation Direkter Zugriff auf die Beschreibungssprache Indirekter Zugriff auf die Beschreibungssprache Automatische Ansätze Mapping-Scripts Integrationsregeln Integration im Offlinemodul Integration im Onlinemodul Benutzergesteuerte Ansätze Benutzergesteuerte Onlinemodule Benutzergesteuerte Offlinemodule Gemischte Ansätze Geschäftsprozesse und Anwendungsentwicklung Geschäftsprozessorientierte Anwendungen ADONIS-Standard-Anwendungsbibliothek Transformation von Modellen gleichen Typs Transformation von Modellen verschiedenen Typs Generierung von UseCase-Diagrammen aus Geschäftsprozessmodellen Generierung von Aktivitätsdiagrammen aus Geschäftsprozessmodellen Anwendungsorientierte Geschäftsprozesse Generierung von Geschäftsprozessmodellen aus UseCase- Diagrammen Zusammenfassung der Überführungsmethoden Fallstudie: AdoRose Kopplung von ADONIS und Rational Rose Realisierung Entwicklungsumgebung und Zielsystem Konzeption und Architektur ADLP-Client-Modul COM-Client-Modul Script-Parser Konvertierungsmodul Seite II
6 Inhalt Kommandozeile Benutzerschnittstelle Einsatz und Grenzen Zusammenfassung Verzeichnisse Abbildungen Literatur Abkürzungen Seite III
7 Motivation Einführung 1 Einführung 1.1 Motivation Da nicht zu übersehen ist, wie die Unified Modeling Language (UML) seit 1997 ein Standard der Object Management Group (OMG) in der objektorientierten Anwendungsentwicklung immer mehr an Bedeutung und Akzeptanz gewinnt, sind Kopplungsmechanismen zwischen organisations- und administrativ orientierten Werkzeugen einerseits, und IT-nahen Werkzeugen andererseits für eine umfassende Befriedigung der Kundenbedürfnisse unerlässlich. Gerade Unternehmen, die viele Mitarbeiter beschäftigen und eine Vielzahl konkreter und potentieller Arbeitsabläufe aufweisen, sind auf die Dokumentation und Transparenz ihrer Geschäftsprozesse angewiesen. Gute Beispiele für Unternehmen dieser Kategorie sind Banken und Versicherungen, bei deren Umstrukturierungen und Reorganisationsprojekten in der Regel mehrere hundert verschiedene Prozesse ermittelt werden können. Um diesen organisatorischen und administrativen Aufwand bewältigen zu können, wird viel Geld in Modellierungswerkzeuge investiert. Ein vor allem in Europa bedeutender Vertreter dieser Werkzeuge ist ADONIS 1, ein Geschäftsprozessmanagement- Werkzeug, das seit 1996 von der BOC Information Technologies Consulting GmbH entwickelt und weiterentwickelt wird. Auf ADONIS und seine Fähigkeiten und Einsatzmöglichkeiten wird in den Kapiteln des Hauptteils näher eingegangen (s. Kap. 3.2). Um die Automation der Geschäftsprozesse soweit als möglich zu fördern, können die Unternehmen weder auf spezialisierte, noch auf standardisierte Software verzichten. Es kommt häufig vor, dass Geschäftsprozesse auf Informationssysteme als Ressourcen zurückgreifen oder einzelne Aktivitäten vollständig durch Informationstechnologie umgesetzt werden. Da viele Software-Komponenten, vor allem betriebliche Informationssysteme, hochgradig prozess- und damit unternehmensspezifisch sind, muss das Unternehmen auf Grundlage der identifizierten Prozesse Anwendungssoftware entwickeln, die den Mitarbeitern der Ausführungsebene ermöglicht, in den Prozessen gewonnene Daten per Computer in das betriebliche Informationssystem - ohne über die reine Benutzung hinausgehende Kenntnisse - einzuspeisen. Als einfaches Beispiel hierfür könnte man die Kontoeröffnung eines neuen Kunden einer Bank anführen. Ein Ausschnitt aus diesem Prozess, der vor allem auch vom Kunden aktiv miterlebt wird, ist das übliche Frage- und Antwortspiel, bei dem die personenbezogenen Kundendaten vom Mitarbeiter in die dafür vorgesehene Eingabemaske eingetragen werden. Aus dieser Überlegung ist ersichtlich, wie eng das Geschäftsprozessmanagement und die Anwendungsentwicklung miteinander verwoben sind. Was zumindest für den Außenstehenden verborgen bleibt, um das obige Beispiel 1 ADONIS ist ein eingetragenes Warenzeichen der BOC Information Technologies Consulting GmbH. Seite 1
8 Aufgabenstellung Einführung weiterzuführen, ist der meist äußerst holprige Weg von der Prozessmodellierung bis zur fertigen und ins betriebliche Informationssystem integrierten Eingabemaske. Die Anwendungsentwickler können logischerweise aus den Geschäftsprozessmodellen nicht unmittelbar die Architektur des Softwaresystems ableiten, vor allem wie es mit bestehenden Komponenten integriert werden kann (Problematik der Legacy-Systeme). Daher ist es auch in diesem Bereich vordergründig notwendig, Modelle des Systems zu entwerfen. Die Firma Rational hat sich mit dieser Problematik intensiv auseinandergesetzt und eine Methodik entworfen, mit der iterativ und inkrementell ein Softwaresystem aus den Anforderungen entwickelt wird. Die Rede ist vom Unified Software Development Process, der ein mehrstufiges Phasenschema für die Entwicklung komplexer Software-Architekturen bereitstellt. Rational hat zur Unterstützung des Entwicklungsprozesses ein Werkzeug implementiert, das die Modellierung sämtlicher UML-Modelltypen integriert ermöglicht Rational Rose 2. Um die Einführung nicht mit technischen Details zu überladen, wird der Rational Unified Process als ein wichtiger Vertreter moderner und objektorientierter Software-Entwicklungsschemata in Kap und das CASE-Werkzeug Rational Rose in Kap. 3.3 näher beschrieben. Die Motivation dieser Arbeit lässt sich anhand obiger Ausführungen leicht formulieren. Es soll ein Konzept entworfen werden, das Ansätze zur Integration von Geschäftsprozessmodellierung und Anwendungsentwicklung liefert. Ziel ist ein methodisches Rahmenwerk, das einen einheitlichen und durchgängigen Weg von der Prozesserhebung bis zum fertigen Softwaresystem ermöglicht. Zentral ist die Realisierung eines Konzeptes zur Kopplung der beiden Werkzeuge ADONIS und Rational Rose. 1.2 Aufgabenstellung Diese Arbeit soll einerseits vorrangig konzeptionelle Ansätze zu entsprechenden Kopplungsmechanismen entwickeln, um andererseits gleichzeitig die theoretische Basis für die Realisierung eines Kopplungsmoduls der Werkzeuge ADONIS und Rational Rose zu bieten. Der Entwurf effektiver Kopplungen wirft eine Vielzahl von Fragen auf, die gründlich zu überlegen sind, unter anderem: Worauf spezialisiert sich das Geschäftsprozessmanagement-Werkzeug? Wo zeichnet es sich aus, ab wann scheint es sinnvoll, ein CASE-Werkzeug einzusetzen? Ab welchem Zeitpunkt ist es unumgänglich, mit einem CASE-Werkzeug weiterzuarbeiten? Gibt es einen Anhaltspunkt für eine gemeinsame Schnittstelle oder ein gemeinsames Metamodell? Sind etwaige Schnittstellen homogen? Welche Kopplungsansätze gibt es und welcher bringt kundenspezifisch die meisten Vorteile? 2 Rational Rose ist ein eingetragenes Warenzeichen der Rational Software Corporation. Seite 2
9 Aufbau der Arbeit Einführung Die Entwicklung eines Konzeptes zur Beantwortung dieser und anderer wesentlicher Fragen erfolgt - wie bereits oben angesprochen zuerst theoretisch, sowie anschließend konkret mittels je einem gängigen Vertreter seiner Sorte: Das Geschäftsprozessmanagement-Werkzeug ADONIS einerseits, Rational Rose als CASE-Werkzeug andererseits. Es sollen Möglichkeiten vorgestellt werden, wie Modelle zwischen den Werkzeugen ausgetauscht, also transformiert werden können. Um dies zu ermöglichen, müssen Regeln definiert werden, wie eine solche Transformation vonstatten gehen soll, wobei unterschiedliche Modelle durch ihre unterschiedliche Semantik auch individuelle Regeln erfordern. Die Transformation von UseCase-Diagrammen 3 als statische Sicht auf die Anforderungen an ein Software-System (s. Kap ) stellt andere Anforderungen als die Transformation dynamischer Modelle, wie etwa von Aktivitätsdiagrammen, die unter anderem dazu benutzt werden können, Abläufe, Objekt- und Kontrollflüsse innerhalb von UseCases zu beschreiben (s. Kap ). Ebenso wichtig sind Aussagen über grundsätzliche Ansätze der Transformation. So kann ein Kopplungsmodul über Nachrichten und individuelle Schnittstellen mit den Werkzeugen kommunizieren, oder aber einen Ansatz wählen, der über Mapping-Scripts, die Transformationsregeln beinhalten, funktioniert. Relevant ist auch die Frage nach dem Automatisierungsgrad der Kopplung: Wird der Benutzer miteinbezogen? Wenn ja, zu welchem Grad? Wird vollautomatisch transformiert? Wie hoch ist dann der Informationsverlust oder die Anzahl der Fehltransformationen? All diese Fragen werfen zahlreiche Dimensionen von Kopplungsmechanismen auf, die im Rahmen der Kopplungsansätze diskutiert werden (s. Kap. 4). Um auf eine gemeinsame begriffliche und sprachliche Basis zu gelangen, werden vorerst jene Begriffe und Grundkonzepte erläutert, die dann im Hauptstück ohne nähere Erläuterung verwendet werden. 1.3 Aufbau der Arbeit Folgende Abb. 1 zeigt die Struktur und die Zusammenhänge der Kapitel dieser Arbeit, jeweils mit kurzen Zusammenfassungen der Kapitelinhalte. Pfeile deuten auf inhaltliche, konzeptionelle oder begriffliche Abhängigkeit hin. 3 Für UseCases und UseCase-Diagramme existieren in der Literatur verschiedene Schreibweisen (u.a. "use case", "Use Case", "Use-Case"), in dieser Arbeit wird ausschließlich die Bezeichnung "UseCase" verwendet in Anlehnung an [OMG 1999]. Seite 3
10 Aufbau der Arbeit Einführung 1 Einführung Motivation, Aufgabenstellung und Aufbau der Arbeit. 2 Begriffe und Grundkonzepte Erläuterung von Konzepten und Begriffen der Software-Entwicklung allgemein, sowie der Unified Modeling Language (UML). Einführung in in Geschäftsprozessmanagement und Geschäftsprozessmodellierung. Einführungsteil 3 Werkzeuge Beschreibung von Funktionalität, Einsatzmöglichkeiten und Programmierschnittstellen des Geschäftsprozessmanagement- Werkzeugs ADONIS sowie des CASE-Werkzeugs Rational Rose. 4 Kopplungsansätze Definition der verschiedenen Dimensionen von Kopplungsansätzen, sowie Vorstellung von Möglichkeiten der Realisierung. Identifikation der Kluft zwischen Geschäftsprozessmanagement und Anwendungsentwicklung, sowie der Versuch der bidirektionalen Integration der beiden Disziplinen. 5 Fallstudie: AdoRose Vorstellung der Konzeption, Realisierung, Implementierung, Einsatzmöglichkeiten und Grenzen eines spezifischen Kopplungsansatzes zur Transformation von Modellinformationen der Werkzeuge ADONIS und Rational Rose: Das Kopplungsmodul AdoRose. Hauptteil 6 Zusammenfassung Zusammenfassung der Kernaussagen der Arbeit und Ausblick. 7 Verzeichnisse Verzeichnisse der Abbildungen, Literatur und Abkürzungen. Schlussteil Abb. 1: Kapitelstruktur der Arbeit Die Arbeit ist, wie in Abb. 1 ersichtlich, in drei wesentliche Teile gegliedert: Einführungs-, Haupt- und Schlussteil. Die durch die Pfeile dargestellte Kapitelabhängigkeit kann über mehrere Stufen führen: Da Kap. 6 von Kap. 5 inhaltlich abhängig ist, ist es auch von Kap. 3, 4 und 2 inhaltlich abhängig, wobei eine solche Abhängigkeit nicht als "Lesepflicht" zu verstehen ist, sondern die Gesamtheit der Abhängigkeiten einen Wegweiser durch die Arbeit bieten soll. Seite 4
11 Software-Entwicklung Begriffe und Grundkonzepte 2 Begriffe und Grundkonzepte 2.1 Software-Entwicklung Ein zentraler Begriff bereits in der Einleitung war die Software-Entwicklung, in dieser Arbeit auch synonym verwendet mit Anwendungsentwicklung und Software-Engineering Begriffsbestimmung Für Software-Engineering gibt es eine Menge von anderslautenden Begriffsbestimmungen, die jedoch im wesentlichen gleiches aussagen. Deshalb sei hier stellvertretend die Beschreibung des Begriffes von Sommerville [Sommerville 1995, S. 3-20] angeführt. Demnach beschäftigt sich Software-Engineering mit Methoden, Werkzeugen und Techniken des Managements, sowie der Erstellung und Entwicklung von Software-Produkten Phasen der Software-Entwicklung Da hier ein durchgängiges Konzept vom Geschäftsprozessmanagement bis zur fertigen Software-Lösung angestrebt wird, seien die wichtigsten Phasen der Software-Entwicklung angeführt. Phasenschemata des Software-Engineering haben schon seit den 60er-Jahren die Literatur beschäftigt, daher ist es auch verständlich, dass eine Vielzahl von Modellen existiert. Trotzdem können die meisten Modelle, wie beispielsweise das Wasserfallmodell [Royce 1970] oder das Spiralmodell [Boehm 1988] durch folgende Phasen charakterisiert werden [Sommerville 1995, S.10] (s. Abb. 2 4 ): Abb. 2: Phasen des Software-Engineering als Geschäftsprozessmodell 1. Anforderungsanalyse und -definition (requirements analysis and definition): In Zusammenarbeit mit den Benutzern werden Funktionalität, Einschränkungen und Ziele erhoben. Wichtig ist das gemeinsame Verständnis zwischen Entwicklern und Benutzern, die Anforderungen müssen also auch für die Benutzer verständlich repräsentiert werden, 4 Zur Erstellung sämtlicher Geschäftsprozessmodelle in dieser Arbeit, sowie für die Generierung der hier abgebildeten Grafiken von Geschäftsprozessmodellen wurde das Geschäftsprozessmanagement-Werkzeug ADONIS verwendet. Seite 5
12 Software-Entwicklung Begriffe und Grundkonzepte zum Beispiel durch einfache Modellierungstechniken wie das UseCase- Diagramm in UML (s. Kap ). 2. System- und Softwaredesign (system and software design): Die Anforderungen werden unterteilt in Hard- und Software-Anforderungen, sodass ein allgemeines Modell der Systemarchitektur entsteht. Das Softwaredesign liefert eine Vorgehensweise für die Umsetzung der Funktionalität der ausführbaren Programme. 3. Implementierung und Unit-Tests (implementation and unit testing): In dieser Phase wird die im Softwaredesign spezifizierte Funktionalität realisiert in Form eines oder mehrerer Programmmodule. Die einzelnen Module werden isoliert auf Erreichung der erwarteten Leistung getestet. 4. Integration und Systemtests (integration and system testing): Die in der vorangegangenen Phase entwickelten Programmmodule werden zu einem kompletten System integriert. Nach sorgfältiger Testung des integrierten Systems wird das Produkt an die Endbenutzer ausgeliefert. 5. Einführung und Wartung (operation and maintenance): Das System wird beim Kunden eingeführt. In früheren Zyklen nicht erkannte Fehler werden im Rahmen der Wartung ausgebessert. Die Wartung umfasst jedoch auch die Weiterentwicklung der Module und des Systems, um neuen Anforderungen gerecht zu werden. In der Regel ist dies die längste und teuerste Phase im Lebenszyklus eines Softwareprodukts Unified Modeling Language (UML) Da die Unified Modeling Language (UML) in den bisherigen Ausführungen eine Rolle gespielt hat, und auch weiterhin vor allem in Bezug auf die Modellierungswerkzeuge eine tragende Rolle spielen wird, seien hier einführend die wichtigsten Konzepte, Diagrammtypen und elemente erklärt. Aus der Tatsache, dass die UML-Spezifikation in der aktuellen Version 1.3 über 800 Seiten umfasst, lässt sich ableiten, dass hier wirklich nur äußerst kurz die für diese Arbeit relevanten Gebiete und Konstrukte der UML erläutert werden. UML ist eine grafische Modellierungssprache zur Spezifikation, Visualisierung, Konstruktion und Dokumentation von Softwaresystemen [OMG 1999]. UML basiert auf objektorientierten Software-Entwicklungskonzepten, die im Rahmen dieser Arbeit nicht näher erläutert werden können. Zur Einführung in objektorientierte Software-Entwicklung sei z. B. verwiesen auf [Meyer 1994]. Die UML unterscheidet Modelle und Diagramme. Modelle stellen bestimmte Aspekte eines Softwaresystems dar. Für diese Arbeit interessanter sind jedoch Diagramme. Diagramme stellen eine (grafische) Sicht auf ein Modell dar, wobei je nach Komplexität ein oder mehrere Diagramme ein Modell bilden können [Hitz et al. 1999]. In der UML-Spezifikation werden 9 verschiedene Diagrammtypen unterschieden [OMG 1999]: Klassendiagramme, Objekt- Diagramme, UseCase-Diagramme, Sequenzdiagramme, Kollaborationsdia- Seite 6
13 Software-Entwicklung Begriffe und Grundkonzepte gramme, Zustandsdiagramme, Aktivitätsdiagramme, Komponentendiagramme und Einsatzdiagramme. Für die weiteren Ausführungen relevant sind jedoch nur das Klassendiagramm, das UseCase-Diagramm und das Aktivitätsdiagramm, da diese drei im Wesentlichen als einzige sinnvolle Anhaltspunkte für eine Kopplung von Geschäftsprozess- und UML-Modellen dienen können. Diese Diagrammtypen und ihre Elemente werden nun genauer betrachtet Klassendiagramme Klassendiagramme (eigentlich static structure diagrams [OMG 1999]) gehören zur Gruppe der Strukturdiagramme, beschreiben also statische Aspekte des zu entwickelnden Systems unter Verwendung von Paketen, Klassen, Objekten, Interfaces (d.h. Schnittstellen) und deren Beziehungen Klassen Eine Klasse (s. Abb. 3 und Abb. 4) repräsentiert ein abstraktes oder konkretes Konzept aus dem Problembereich, also eine Menge von Objekten mit gemeinsamen Attributen und Operationen, wobei Attribute gemäss dem objektorientierten Konzept den Zustand, und Operationen das Verhalten eines Objektes zeigen. In der grafischen Repräsentation ist die Klasse horizontal in drei Abschnitte untergliedert. Im ersten (oberen) Abschnitt befindet sich der Name der Klasse und etwaige Einschränkungen (constraints), auf die hier nicht näher eingegangen wird. Im zweiten (mittleren) Abschnitt befinden sich die Attribute, und im dritten (unteren) Abschnitt befinden sich etwaige Operationen. Die unteren beiden Abschnitte (Attribute und Operationen) können je nach gewünschtem Detaillierungsgrad im Diagramm weggelassen werden. Abb. 3: Klasse Customer (detaillierte Notation) Interfaces Abb. 4: Klasse Customer (vereinfachte Notation) Ein Interface (deutsch "Schnittstelle", grafische Notation s. Abb. 5 und Abb. 6) ist dem Konzept einer abstrakten Klasse ähnlich; sie besitzt jedoch keine Attribute, sondern ausschließlich Operationen, die das Verhalten eines Elementes beschreiben. Interfaces können nicht instanziert werden, d.h. es können keine konkreten Objekte angelegt werden. Daher müssen alle Operationen einer Schnittstelle von einer konkreten Klasse implementiert werden, um ein Objekt mit dem beschriebenen Verhalten erzeugen zu können. Seite 7
14 Software-Entwicklung Begriffe und Grundkonzepte Abb. 5: Interface SecureInformation (detaillierte Notation) Abb. 6: Interface SecureInformation (vereinfachte Notation) Beziehungen Die wichtigsten Beziehungen innerhalb eines Klassendiagramms seien anhand eines kleinen Beispiels erläutert (s. Abb. 7). Abb. 7: Beispiel eines UML-Klassendiagramms Abb. 7 zeigt den stark vereinfachten Aufbau eines Unternehmens. Die Klasse Unternehmen ist über eine Aggregation mit der Klasse Abteilungen verknüpft. Das heißt, ein Unternehmen besteht aus mehreren Abteilungen, wobei die Abteilungen auch ohne das Unternehmen existieren können. Wären die Abteilungen vom Unternehmen existenzabhängig, so würde es sich um eine Komposition im Sinne der UML handeln. In diesem Fall wäre für die Notation anzumerken, dass die Raute am Ende der Beziehung ausgefüllt werden müsste. Seite 8
15 Software-Entwicklung Begriffe und Grundkonzepte Die Abteilung ist mit dem Angestellten über eine (binäre) Assoziation verbunden. Eine Assoziation beschreibt die gemeinsame Struktur einer Menge von Beziehungen zwischen Objekten zweier (binäre Assoziation) oder mehrerer Klassen. Sie hat in der Regel einen Namen, im dargelegten Fall ist das works in, d.h. Angestellte arbeiten in Abteilungen. An den Enden der Assoziation können nun Kardinalitäten (synonym auch Multiplizitäten) angegeben werden, welche die Anzahl der an einer Beziehung beteiligten Objekte festlegen. Typische Ausprägungen für Kardinalitäten sind 1 (genau ein Objekt), x..y (mindestens x, maximal y Objekte, z.b ). Ein Stern ( * ) deutet jeweils auf Beliebigkeit hin, was nur alleinstehend (weder Ober- noch Untergrenze), oder als beliebige Obergrenze wie in 1..* Sinn macht. Für obiges Beispiel bedeutet das, dass an einer Beziehung works in mit einer Abteilung mindestens ein Angestellter (1..*) vorkommen muss, umgekehrt es für jeden Angestellten nur eine works in -Beziehung mit einer Abteilung gibt. Umgangssprachlich formuliert: Ein Angestellter arbeitet in genau einer Abteilung, in einer Abteilung arbeitet mindestens ein Angestellter. Optional können an den Enden der Assoziationen auch die Rollen, welche die beteiligten Objekte an der Beziehung spielen, notiert werden. Die Klassen Angestellter und Kunde sind über eine Generalisierung mit der Klasse Person verbunden. Die Generalisierung stellt eine taxonomische Beziehung zwischen einer spezialisierten Klasse (Unter- oder Subklasse) und einer allgemeineren Klasse (Ober-, Basis- oder Superklasse) dar, wobei die Subklasse die Charakteristika der Superklasse erbt und weitere Merkmale hinzufügen kann [Hitz et al. 1999]. In der grafischen Notation zeigt die Generalisierung von der Subklasse über einen Pfeil mit unausgefülltem Dreieck zur Superklasse. Für das Beispiel bedeutet dies, dass sowohl Angestellte als auch Kunden (logischerweise) Personen mit Namen und anderen Eigenschaften sind. Der Kunde erweitert die geerbten Merkmale um eine Kundennummer, der Angestellte um ein Gehalt. Eine Person besitzt spezifische Personaldaten, die über die Operation "GetPersonalData" ermittelt werden können. Daraus resultiert die Abhängigkeitsbeziehung zur Klasse Personaldaten. Sie wird als gestrichelter Pfeil mit offener Spitze dargestellt. Die Klasse Personaldaten realisiert (Realisierungsbeziehung) das Interface SecureInformation, das heißt, dass die Personaldaten eine Operation zur Übertragung der Daten (Operation "Transmit") anbieten. Als alternative Notationsform dieses Beziehungstyps kann ein gestrichelter Pfeil mit geschlossener Spitze verwendet werden UseCase-Diagramme UseCase-Diagramme (deutsch auch Anwendungsfalldiagramme) beschreiben die Kernfunktionalität eines Systems und bestehen aus drei wesentlichen Bestandteilen: UseCases, Akteure (actors) und deren Beziehungen untereinander. Sie bilden einen wesentlichen Teil der Beschreibung der Anforderungen an ein System und sind durch recht einfache Notation sowohl von Entwicklern, als auch von Benutzern inhaltlich zu verstehen und bilden damit eine wichtige Austauschbasis zwischen Entwicklern und Kunden. Die Bestandteile sollen anhand eines kleinen Beispieldiagramms erklärt werden (s. Abb. 8). Seite 9
16 Software-Entwicklung Begriffe und Grundkonzepte System Abb. 8: UseCase-Diagramm Das zu entwickelnde System wird in der grafischen Notation durch ein Rechteck dargestellt, in dem die Anwendungsfälle platziert werden. Die Kanten des Rechtecks zeigen somit die Grenzen des Systems UseCases UseCases beschreiben einen Ausschnitt des Systemverhaltens. Im Beispiel oben beschreibt der UseCase Konto eröffnen jene Aktionen, die nötig sind, um ein neues Konto anzulegen. Im Allgemeinen sollte die Gesamtheit der identifizierten UseCases auch die Gesamtsystemfunktionalität dokumentieren, was sich in der Praxis bei größeren Projekten als sehr schwierig erweisen kann [Hitz et al. 1999]. Zur grafischen Notation von UseCases s. Abb Akteure Abb. 9: UseCase Kundendaten erfassen Die im Diagramm modellierten Akteure legen fest, wer mit dem System interagiert. Sie sind daher per definitionem außerhalb der Systemgrenzen platziert. Durch die Darstellung als Strichmännchen kommt die falsche Vermutung auf, dass Akteure ausschließlich menschlich sind. Es kann sich auch um Seite 10
17 Software-Entwicklung Begriffe und Grundkonzepte externe Systeme handeln, wie z.b. Datenbanken oder Mailsysteme. Menschliche Akteure befinden sich meist in der Benutzerrolle, das heißt, sie initiieren Anwendungsfälle, hingegen werden nicht-menschliche Akteure eher vom System benützt. Im Beispiel ist gut erkennbar, das Kunden und Angestellte das Eröffnen eines Kontos initiieren, die Kunden-Datenbank jedoch benützt wird, um die Kundendaten zu erfassen. Zur grafischen Notation s. Abb Beziehungen Abb. 10: Akteur Benutzer Anwendungsfalldiagramme können vier verschiedene Beziehungstypen beinhalten: Kommunikationsbeziehung (communicates relationship): Diese beschreibt eine Beziehung zwischen genau einem Akteur und genau einem UseCase und ist ungerichtet. Eine Kommunikationsbeziehung besagt entweder, dass der Akteur den UseCase initiiert (Kunde initiiert Kontoinformationen abrufen), oder dass der UseCase externe Akteure benützt (Teilnehmer verständigen benützt -System). Grafische Notation als Linie. Include-Beziehung (include relationship): Die include-beziehung ist gerichtet, verbindet genau zwei UseCases und besagt, dass der inkludierte UseCase in den inkludierenden UseCase eingefügt wird. Der inkludierte UseCase kommt zwingend im Ablauf des inkludierenden UseCases vor (Konto eröffnen inkludiert Kundendaten erfassen). Grafische Notation als Pfeil mit Beschriftung <<include>>. Extend-Beziehung (extend relationship): Die extend-beziehung besitzt eine ähnliche Semantik wie die include-beziehung, die Richtung ist jedoch umgekehrt und die zwingende Einschließung bedeutet hier eine mögliche Erweiterung (Geld abheben erweitert möglicherweise das Abrufen der Kontoinformationen). Grafische Notation als Pfeil mit Beschriftung <<extend>>. Generalisierung (generalization): Die Generalisierungsbeziehung zwischen zwei UseCases definiert, dass der erbende UseCase das gesamte Verhalten des Super-UseCases erbt und gegebenenfalls erweitern und überschreiben kann (Geschäftskonto eröffnen und Privatkonto eröffnen erben von Konto eröffnen). "Generalization between UseCases means that the child is a more specific form of the parent. The child inherits all Features and Associations of the parent, and may add new Features and Associations" [OMG 1999, Kap. 2 S. 120]. Grafische Darstellung erfolgt als Pfeil mit unausgefülltem gleichseitigen Dreieck als Spitze; zeigt vom Sub- zum Super-UseCase. Seite 11
Grundlagen Software Engineering
Grundlagen Software Engineering Rational Unified Process () GSE: Prof. Dr. Liggesmeyer, 1 Rational Unified Process () Software Entwicklungsprozess Anpassbares und erweiterbares Grundgerüst Sprache der
MehrUse Cases. Use Cases
Use Cases Eigenschaften: Ein Use Case beschreibt einen Teil des Verhaltens eines Systems aus externer Sicht (Formuliert in der der Fachsprache der Anwendung) Dies geschieht, indem ein Systemdialog beschrieben
MehrProjektmodell Softwareentwicklung: Unified Software Development Process / Unified Process (Teil I)
Projektmodell Softwareentwicklung: Unified Software Development Process / Unified Process (Teil I) Historisch Kulturelle Informationsverarbeitung Hauptseminar: KLIPS 2.0 Dozent: Prof. Dr. Thaller Referent:
MehrInformationswirtschaft II Rational Unified Process (RUP)
Informationswirtschaft II Rational Unified Process (RUP) Wolfgang H. Janko, Michael Hahsler und Stefan Koch Inhalt Historische Entwicklung Kennzeichen von RUP Lebenszyklus und Phasen Arbeitsabläufe Das
MehrInformationswirtschaft II
Rational Unified Process (RUP) Informationswirtschaft II Wolfgang H. Janko, Michael Hahsler und Stefan Koch Seite 1 Inhalt Historische Entwicklung Kennzeichen von RUP Lebenszyklus und Phasen Arbeitsabläufe
MehrKlassendiagramm. Kurzer Überblick über UML - Stand 2006. BlaBla
BlaBla Diese Kennzeichnungen sind nur Erläuterungen und nicht Bestandteil des Diagramms Quelle: P.Grässle, H.Baumann, P.Baumann, UML projektorientiert, Galileo Verlag, 2003 21 Primäre Begriffe Kapselung
Mehr09.01.14. Vorlesung Programmieren. Unified Modeling Language (UML) Unified Modeling Language (UML) Unified Modeling Language (UML)
Vorlesung Programmieren Unified Modeling Language (UML) Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Unified Modeling Language (UML)
MehrVorlesung Programmieren
Vorlesung Programmieren Unified Modeling Language (UML) Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Unified Modeling Language (UML)
MehrFachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer
Fachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer Klassendiagramme Ein Klassendiagramm dient in der objektorientierten Softwareentwicklung zur Darstellung von Klassen und den Beziehungen,
MehrFragenkatalog Geschäftsmodellierung Grundlagen
Fragenkatalog Geschäftsmodellierung Grundlagen 1. Erläutern Sie den Begriff der Geschäftsmodellierung - Erfassung und Spezifikation von Geschäftsprozessen für die Analyse und Gestaltung betrieblicher Systeme
MehrEINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel.
EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel.de/~mtr FRAGEN / ANMERKUNGEN Vorlesung Neue Übungsaufgaben MODELLIERUNG
MehrHandbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken
Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Dateiname: ecdl5_01_00_documentation_standard.doc Speicherdatum: 14.02.2005 ECDL 2003 Basic Modul 5 Datenbank - Grundlagen
MehrRequirements Engineering I
Norbert Seyff Requirements Engineering I UML Unified Modeling Language! 2006-2012 Martin Glinz und Norbert Seyff. Alle Rechte vorbehalten. Speicherung und Wiedergabe für den persönlichen, nicht kommerziellen
MehrVgl. Kapitel 5 aus Systematisches Requirements Engineering, Christoph Ebert https://www.sws.bfh.ch/studium/cas/swe-fs13/protected/re/re_buch.
Vgl. Kapitel 5 aus Systematisches Requirements Engineering, Christoph Ebert https://www.sws.bfh.ch/studium/cas/swe-fs13/protected/re/re_buch.pdf 2 Nach derbefragung aller Stakeholder und der Dokumentation
MehrSystemen im Wandel. Autor: Dr. Gerd Frenzen Coromell GmbH Seite 1 von 5
Das Management von Informations- Systemen im Wandel Die Informations-Technologie (IT) war lange Zeit ausschließlich ein Hilfsmittel, um Arbeitsabläufe zu vereinfachen und Personal einzusparen. Sie hat
MehrArbeiten mit UMLed und Delphi
Arbeiten mit UMLed und Delphi Diese Anleitung soll zeigen, wie man Klassen mit dem UML ( Unified Modeling Language ) Editor UMLed erstellt, in Delphi exportiert und dort so einbindet, dass diese (bis auf
MehrUnified Modeling Language (UML)
Kirsten Berkenkötter Was ist ein Modell? Warum Modellieren? Warum UML? Viele, viele Diagramme UML am Beispiel Was ist ein Modell? Ein Modell: ist eine abstrakte Repräsentation eines Systems, bzw. ist eine
MehrAgile Vorgehensmodelle in der Softwareentwicklung: Scrum
C A R L V O N O S S I E T Z K Y Agile Vorgehensmodelle in der Softwareentwicklung: Scrum Johannes Diemke Vortrag im Rahmen der Projektgruppe Oldenburger Robot Soccer Team im Wintersemester 2009/2010 Was
MehrSuche schlecht beschriftete Bilder mit Eigenen Abfragen
Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere
MehrBPMN. Suzana Milovanovic
BPMN Suzana Milovanovic 2 Übersicht Klärung von Begriffen, Abkürzungen Was ist BPMN? Business Process Diagram (BPD) Beispielprozess Entwicklung von BPMN BPMN in der Literatur 3 Grundlegende Begriffe Business
MehrL10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016
L10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016 Referentin: Dr. Kelly Neudorfer Universität Hohenheim Was wir jetzt besprechen werden ist eine Frage, mit denen viele
MehrInformationssystemanalyse Problemstellung 2 1. Trotz aller Methoden, Techniken usw. zeigen Untersuchungen sehr negative Ergebnisse:
Informationssystemanalyse Problemstellung 2 1 Problemstellung Trotz aller Methoden, Techniken usw. zeigen Untersuchungen sehr negative Ergebnisse: große Software-Systeme werden im Schnitt ein Jahr zu spät
MehrSoftwaretechnologie -Wintersemester 2013/2014 - Dr. Günter Kniesel
Übungen zur Vorlesung Softwaretechnologie -Wintersemester 2013/2014 - Dr. Günter Kniesel Übungsblatt 3 - Lösungshilfe Aufgabe 1. Klassendiagramme (9 Punkte) Sie haben den Auftrag, eine Online-Videothek
MehrZENITY - Die Software für Ihre Unternehmens-Releaseplanung
ZENITY - Die Software für Ihre Unternehmens-Releaseplanung RELEASEPLANUNG HEUTE Heutige Anwendungen in in Grossunternehmen sind sind keine keine alleinstehenden alleinstehenden Insel-Applikationen Insel-Applikationen
MehrFehler und Probleme bei Auswahl und Installation eines Dokumentenmanagement Systems
Fehler und Probleme bei Auswahl und Installation eines Dokumentenmanagement Systems Name: Bruno Handler Funktion: Marketing/Vertrieb Organisation: AXAVIA Software GmbH Liebe Leserinnen und liebe Leser,
MehrIntegration mit. Wie AristaFlow Sie in Ihrem Unternehmen unterstützen kann, zeigen wir Ihnen am nachfolgenden Beispiel einer Support-Anfrage.
Integration mit Die Integration der AristaFlow Business Process Management Suite (BPM) mit dem Enterprise Information Management System FILERO (EIMS) bildet die optimale Basis für flexible Optimierung
MehrKlassendiagramm. (class diagram)
: Klassendiagramm http:///topic95.html Klassendiagramm (class diagram) Klassendiagramm Objektdiagramm Komponentendiagramm Kompositionsstrukturdiagramm Verteilungsdiagramm Einstieg Paketdiagramm Aufbau
MehrUpToNet Workflow Workflow-Designer und WebClient Anwendung
UpToNet Workflow Workflow-Designer und WebClient Anwendung Grafische Erstellung im Workflow-Designer 1 Grafische Erstellung im Workflow-Designer Bilden Sie Ihre Arbeitsvorgänge im Workflow-Designer von
MehrVgl. Oestereich Kap 2.7 Seiten 134-147
Vgl. Oestereich Kap 2.7 Seiten 134-147 1 Sequenzdiagramme beschreiben die Kommunikation/Interaktion zwischen den Objekten (bzw. verschiedenen Rollen) eines Szenarios. Es wird beschrieben, welche Objekte
MehrProzessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements. von Stephanie Wilke am 14.08.08
Prozessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements von Stephanie Wilke am 14.08.08 Überblick Einleitung Was ist ITIL? Gegenüberstellung der Prozesse Neuer
MehrWintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 22
Kapitel 19 Vererbung, UML Seite 1 von 22 Vererbung - Neben der Datenabstraktion und der Datenkapselung ist die Vererbung ein weiteres Merkmal der OOP. - Durch Vererbung werden die Methoden und die Eigenschaften
MehrSoftwaretechnik (Allgemeine Informatik) Überblick
Softwaretechnik (Allgemeine Informatik) Überblick 1 Einführung und Überblick 2 Abstraktion 3 Objektorientiertes Vorgehensmodell 4 Methoden der Anforderungs- und Problembereichsanalyse 5 UML-Diagramme 6
MehrWarum sich das Management nicht für agile Softwareentwicklung interessieren sollte - aber für Agilität
Warum sich das Management nicht für agile Softwareentwicklung interessieren sollte - aber für Agilität Marcus Winteroll oose GmbH Agenda I. Ziele und Zusammenarbeit II. Was wir vom agilen Vorgehen lernen
Mehr3.4 Unified Process. 1999 Ivar Jacobson, Grady Booch, James Rumbaugh: The Unified Software Development Process.
1999 Ivar Jacobson, Grady Booch, James Rumbaugh: The Unified Software Development Process. 1996 Philippe Kruchten: Rational Unified Process Produkt der Firma Seit 2002 Teil des IBM Konzerns Objektorientiertes
MehrInstallationsanleitung CLX.PayMaker Home
Installationsanleitung CLX.PayMaker Home Inhaltsverzeichnis 1. Installation und Datenübernahme... 2 2. Erste Schritte Verbindung zur Bank einrichten und Kontoinformationen beziehen... 4 3. Einrichtung
MehrSoftwaretechnik. Fomuso Ekellem WS 2011/12
WS 2011/12 Inhalt Projektvorstellung Übung 1 Wiederholung zusammengefasst Planungsphase Lernziele Ziele und Inhalt der Planungsphase Anlass und Aufgabestellung(Was ist dabei erförderlich) Requirement Engineering
MehrSoftwaretechnologie -Wintersemester 2011/2012 - Dr. Günter Kniesel
Übungen zur Vorlesung Softwaretechnologie -Wintersemester 2011/2012 - Dr. Günter Kniesel Übungsblatt 3 - Lösungshilfe Aufgabe 1. Klassendiagramme (9 Punkte) Sie haben den Auftrag, eine Online-Videothek
MehrUse Cases. Die Sicht des Nutzers. Fortgeschrittenenpraktikum SS 2004
Use Cases Die Sicht des Nutzers Fortgeschrittenenpraktikum SS 2004 Gunar Fiedler Lehrstuhl für Technologie der Informationssysteme Kontakt: fiedler@is.informatik.uni-kiel.de Use Cases 2 Was ist ein Use
MehrEinfÅhrung in die objektorientiere Programmierung (OOP) unter Delphi 6.0. EDV Kurs 13/2
EinfÅhrung in die objektorientiere Programmierung (OOP) unter Delphi 6.0 EDV Kurs 13/2 Inhaltsverzeichnis 1 Objekte... 1 2 Klassen... 3 2.1 Beziehungen zwischen Klassen... 4 2.1.1 Vererbung... 4 2.1.2
Mehretutor Benutzerhandbuch XQuery Benutzerhandbuch Georg Nitsche
etutor Benutzerhandbuch Benutzerhandbuch XQuery Georg Nitsche Version 1.0 Stand März 2006 Versionsverlauf: Version Autor Datum Änderungen 1.0 gn 06.03.2006 Fertigstellung der ersten Version Inhaltsverzeichnis:
MehrGliederung des Vortrages
Gliederung des Vortrages Unified Modeling Language Rational Rose Sergej Schwenk Oktober 1999 0. Einführung 1. Historie 2. Der Entwicklungsprozeß 3. UML 3.1 Anwendungsfalldiagramme 3.2 Klassendiagramme
MehrInstallationsanleitung CLX.PayMaker Office
Installationsanleitung CLX.PayMaker Office Inhaltsverzeichnis 1. Installation und Datenübernahme... 2 2. Erste Schritte Verbindung zur Bank einrichten und Kontoinformationen beziehen... 4 3. Einrichtung
MehrDr. Hanno Schauer Mons-Tabor-Gymnasium Montabaur. UML-Klassendiagramme als Werkzeug im Unterricht
Dr. Hanno Schauer Mons-Tabor-Gymnasium Montabaur UML-Klassendiagramme als Werkzeug im Unterricht Blitzlicht? In welcher Programmiersprache(n) unterrichten Sie?? In welchem Umfang unterrichten Sie Objektorientierung??
MehrMicrosoft Office Visio 2007 Infotag SemTalk Thema: Prozessmodellierung
Microsoft Office Visio 2007 Infotag SemTalk Thema: Prozessmodellierung Dr.-Ing. Frauke Weichhardt, Semtation GmbH Christian Fillies, Semtation GmbH Claus Quast, Microsoft Deutschland GmbH Prozessmodellierung
MehrKlassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java
Objektorientierte Programmierung mit Java Eine praxisnahe Einführung mit BlueJ Klassenentwurf Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? 1.0 Zentrale Konzepte
MehrBedienung von BlueJ. Klassenanzeige
Im Folgenden werden wichtige Funktionen für den Einsatz von BlueJ im Unterricht beschrieben. Hierbei wird auf den Umgang mit Projekten, Klassen und Objekten eingegangen. Abgeschlossen wird dieses Dokument
Mehr.. für Ihre Business-Lösung
.. für Ihre Business-Lösung Ist Ihre Informatik fit für die Zukunft? Flexibilität Das wirtschaftliche Umfeld ist stärker den je im Umbruch (z.b. Stichwort: Globalisierung). Daraus resultierenden Anforderungen,
MehrSWE5 Übungen zu Software-Engineering
1 Übungen zu Software-Engineering 1) Klassen und Objekte 2) Telefonanlage 3) Objekt- und Klassendiagramme 4) Assoziationen 5) Telefonanlage (Erweiterung) 6) Fahrzeuge 7) Familien 2 Aufgabe 1: Klassen und
MehrSoftware Engineering. Sommersemester 2012, Dr. Andreas Metzger
Software Engineering (Übungsblatt 2) Sommersemester 2012, Dr. Andreas Metzger Übungsblatt-Themen: Prinzip, Technik, Methode und Werkzeug; Arten von Wartung; Modularität (Kohäsion/ Kopplung); Inkrementelle
Mehr1 Mathematische Grundlagen
Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.
MehrMicrosoft SharePoint 2013 Designer
Microsoft SharePoint 2013 Designer Was ist SharePoint? SharePoint Designer 2013 Vorteile SharePoint Designer Funktionen.Net 4.0 Workflow Infrastruktur Integration von Stages Visuelle Designer Copy & Paste
MehrSoftwaretechnologie Wintersemester 2009/2010 Dr. Günter Kniesel, Pascal Bihler
Übungen zur Vorlesung Softwaretechnologie Wintersemester 2009/2010 Dr. Günter Kniesel, Pascal Bihler Übungsblatt 4 Lösungshilfe. Aufgabe 1. Zustandsdiagramm (8 Punkte) Geben Sie ein Zustandsdiagramm für
MehrSoftwaretechnologie Wintersemester 2009/2010 Dr. Günter Kniesel, Pascal Bihler
Übungen zur Vorlesung Softwaretechnologie Wintersemester 2009/2010 Dr. Günter Kniesel, Pascal Bihler Übungsblatt 3 Lösungshilfe Aufgabe 1. Klassendiagramme (9 Punkte) Sie haben den Auftrag, eine Online
Mehr1. Einführung. 2. Weitere Konten anlegen
1. Einführung In orgamax stehen Ihnen die gängigsten Konten des Kontenrahmens SKR03 und SKR04 zur Verfügung. Damit sind im Normalfall alle Konten abgedeckt, die Sie zur Verbuchung benötigen. Eine ausführliche
MehrErfolgreiche Webseiten: Zur Notwendigkeit die eigene(n) Zielgruppe(n) zu kennen und zu verstehen!
Erfolgreiche Webseiten: Zur Notwendigkeit die eigene(n) Zielgruppe(n) zu kennen und zu verstehen! www.wee24.de. info@wee24.de. 08382 / 6040561 1 Experten sprechen Ihre Sprache. 2 Unternehmenswebseiten
Mehr1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:
Zählen und Zahlbereiche Übungsblatt 1 1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Für alle m, n N gilt m + n = n + m. in den Satz umschreiben:
MehrPrüfung Software Engineering I (IB)
Hochschule für angewandte Wissenschaften München Fakultät für Informatik und Mathematik Studiengruppe IB 3 A Wintersemester 2014/15 Prüfung Software Engineering I (IB) Datum : 21.01.2015, 14:30 Uhr Bearbeitungszeit
MehrÜbungsaufgaben zum Software Engineering: Management
Übungsaufgaben zum Software Engineering: Management Grundbegriffe: Aufgabe 1: Aus welchen Disziplinen setzt sich das Software Engineering zusammen? a. Informatik b. Physik c. Psychologie d. Chemie e. Geologie
MehrC++11 C++14 Kapitel Doppelseite Übungen Musterlösungen Anhang
Einleitung Dieses Buch wendet sich an jeden Leser, der die Programmiersprache C++ neu lernen oder vertiefen möchte, egal ob Anfänger oder fortgeschrittener C++-Programmierer. C++ ist eine weitgehend plattformunabhängige
MehrEberhard Lehmann: Projekte im Informatik-Unterricht Software Engineering, Ferd. Dümmlers Verlag, Bonn 1995. Inhaltsverzeichnis.
3 Eberhard Lehmann: Projekte im Informatik-Unterricht Software Engineering, Ferd. Dümmlers Verlag, Bonn 1995 Inhaltsverzeichnis Vorwort 5 1. Komplexe Software - Projekte - Software-Engineering 7 1.1 Komplexe
MehrInstallation SQL- Server 2012 Single Node
Installation SQL- Server 2012 Single Node Dies ist eine Installationsanleitung für den neuen SQL Server 2012. Es beschreibt eine Single Node Installation auf einem virtuellen Windows Server 2008 R2 mit
MehrIshikawa-Diagramm. 1 Fallbeispiel 2. 2 Was ist ein Ishikawa-Diagramm 2. 3 Vorgehen bei der Erstellung eines Ishikawa-Diagramms 2.
Ishikawa-Diagramm 1 Fallbeispiel 2 2 Was ist ein Ishikawa-Diagramm 2 3 Vorgehen bei der Erstellung eines Ishikawa-Diagramms 2 4 Vorteile 5 5 Nachteile 5 6 Fazit 5 7 Literaturverzeichnis 6 1 Fallbeispiel
MehrEinführung in die Informationsverarbeitung Teil Thaller. Stunde VII: Planen und Realisieren
Einführung in die Informationsverarbeitung Teil Thaller Stunde VII: Planen und Realisieren Manfred Thaller, Universität zu Köln Köln 18. Dezember 2014 Rekapitulation Der Gang der Argumentation 1. Der Rohstoff:
MehrDie Lernumgebung des Projekts Informationskompetenz
Beitrag für Bibliothek aktuell Die Lernumgebung des Projekts Informationskompetenz Von Sandra Merten Im Rahmen des Projekts Informationskompetenz wurde ein Musterkurs entwickelt, der den Lehrenden als
MehrDie Zukunft der Zukunftsforschung im Deutschen Management: eine Delphi Studie
Die Zukunft der Zukunftsforschung im Deutschen Management: eine Delphi Studie Executive Summary Zukunftsforschung und ihre Methoden erfahren in der jüngsten Vergangenheit ein zunehmendes Interesse. So
Mehr4. AuD Tafelübung T-C3
4. AuD Tafelübung T-C3 Simon Ruderich 17. November 2010 Arrays Unregelmäßige Arrays i n t [ ] [ ] x = new i n t [ 3 ] [ 4 ] ; x [ 2 ] = new i n t [ 2 ] ; for ( i n t i = 0; i < x. l e n g t h ; i ++) {
MehrDiese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.
Anmeldung http://www.ihredomain.de/wp-admin Dashboard Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress. Das Dashboard gibt Ihnen eine kurze Übersicht, z.b. Anzahl der Beiträge,
MehrKlausur Software-Engineering SS 2005 Iwanowski 23.08.2005
Klausur Software-Engineering SS 2005 Iwanowski 23.08.2005 Hinweise: Bearbeitungszeit: 90 Minuten Erlaubte Hilfsmittel: im Anhang, sonst keine Bitte notieren Sie Ihre Antworten ausschließlich auf dem Aufgabenblatt!
MehrDruckvorlagen Als Druckvorlagen sind dafür vorhanden:!liste1.ken (Kennzahlen)!Liste2.KEN (Kontennachweis)
Kennzahlen und Kennzeichen Dieses Dokument zeigt Ihnen in wenigen kurzen Schritten die Logik und Vorgehensweise der Definition der Kennzahlen und Kennzeichen und deren Auswertung in eigens dafür vorhandenen
Mehretermin Einbindung in Outlook
etermin Einbindung in Outlook 1. Einführung Über etermin gebuchte Termine können bei Bedarf auch mit externen Terminkalendern, wie zum Beispiel Outlook, ical oder Google synchronisiert werden. Dieses Dokument
MehrRequirements Engineering für IT Systeme
Requirements Engineering für IT Systeme Warum Systemanforderungen mit Unternehmenszielen anfangen Holger Dexel Webinar, 24.06.2013 Agenda Anforderungsdefinitionen Von der Herausforderung zur Lösung - ein
MehrSoftware Engineering. Bibliographisches Institut & F. A. Brockhaus AG, Mannheim; Spektrum Akademischer Verlag GmbH, Heidelberg, 2003
Software Engineering Softwaretechnik Softwaretechnologie, Software Engineering (engl.) das, -, Teilgebiet der Informatik, das sich mit Methoden und Werkzeugen für das ingenieurmäßige Entwerfen, Herstellen
MehrDie Softwareentwicklungsphasen!
Softwareentwicklung Die Softwareentwicklungsphasen! Die Bezeichnungen der Phasen sind keine speziellen Begriffe der Informatik, sondern den allgemeinen Prinzipien zur Produktion integrierter Systeme entliehen.
MehrHandbuch zum Excel Formular Editor
Handbuch zum Excel Formular Editor Mit diesem Programm können Sie die Zellen von ihrer Excel Datei automatisch befüllen lassen. Die Daten können aus der Coffee Datenbank, oder einer weiteren Excel Datendatei
MehrDiplomarbeit. Konzeption und Implementierung einer automatisierten Testumgebung. Thomas Wehrspann. 10. Dezember 2008
Konzeption und Implementierung einer automatisierten Testumgebung, 10. Dezember 2008 1 Gliederung Einleitung Softwaretests Beispiel Konzeption Zusammenfassung 2 Einleitung Komplexität von Softwaresystemen
MehrVerhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...
PIWIN I Kap. 8 Objektorientierte Programmierung - Vererbung 31 Schlüsselwort: final Verhindert, dass eine Methode überschrieben wird public final int holekontostand() {... Erben von einer Klasse verbieten:
MehrObjektorientierte Programmierung für Anfänger am Beispiel PHP
Objektorientierte Programmierung für Anfänger am Beispiel PHP Johannes Mittendorfer http://jmittendorfer.hostingsociety.com 19. August 2012 Abstract Dieses Dokument soll die Vorteile der objektorientierten
MehrKapitel 2: Der Software-Entwicklungsprozess
Wie konstruiert man Software? Kapitel 2: Der Software-Entwicklungsprozess SoPra 2008 Kap. 2: Der Software-Entwicklungsprozess (1/10) Der Software-Entwicklungs-Prozess Historisches 1960JJ adhoc Techniken
MehrEinführung und Motivation
Einführung und Motivation iks-thementag: Requirements Engineering 16.11.2010 Autor Carsten Schädel Motto Definiere oder Du wirst definiert. Seite 3 / 51 These Im Privatleben definiert jeder (seine) Anforderungen.
MehrEinfache und effiziente Zusammenarbeit in der Cloud. EASY-PM Office Add-Ins Handbuch
Einfache und effiziente Zusammenarbeit in der Cloud EASY-PM Office Add-Ins Handbuch Inhaltsverzeichnis 1. Einführung... 3 2. Ribbonmenü... 4 3. Dokument... 5 3.1 Öffnen... 5 3.2 Speichern... 6 3.3 Speichern
MehrMobile Intranet in Unternehmen
Mobile Intranet in Unternehmen Ergebnisse einer Umfrage unter Intranet Verantwortlichen aexea GmbH - communication. content. consulting Augustenstraße 15 70178 Stuttgart Tel: 0711 87035490 Mobile Intranet
MehrHandbuch Groupware - Mailserver
Handbuch Inhaltsverzeichnis 1. Einführung...3 2. Ordnerliste...3 2.1 E-Mail...3 2.2 Kalender...3 2.3 Kontakte...3 2.4 Dokumente...3 2.5 Aufgaben...3 2.6 Notizen...3 2.7 Gelöschte Objekte...3 3. Menüleiste...4
MehrSICHERN DER FAVORITEN
Seite 1 von 7 SICHERN DER FAVORITEN Eine Anleitung zum Sichern der eigenen Favoriten zur Verfügung gestellt durch: ZID Dezentrale Systeme März 2010 Seite 2 von 7 Für die Datensicherheit ist bekanntlich
MehrUpgrade auf die Standalone Editionen von Acronis Backup & Recovery 10. Technische Informationen (White Paper)
Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10 Technische Informationen (White Paper) Inhaltsverzeichnis 1. Über dieses Dokument... 3 2. Überblick... 3 3. Upgrade Verfahren... 4
MehrDokumentation zur Versendung der Statistik Daten
Dokumentation zur Versendung der Statistik Daten Achtung: gem. 57a KFG 1967 (i.d.f. der 28. Novelle) ist es seit dem 01. August 2007 verpflichtend, die Statistikdaten zur statistischen Auswertung Quartalsmäßig
MehrVermeiden Sie es sich bei einer deutlich erfahreneren Person "dranzuhängen", Sie sind persönlich verantwortlich für Ihren Lernerfolg.
1 2 3 4 Vermeiden Sie es sich bei einer deutlich erfahreneren Person "dranzuhängen", Sie sind persönlich verantwortlich für Ihren Lernerfolg. Gerade beim Einstig in der Programmierung muss kontinuierlich
MehrObjektorientierter Software-Entwurf Grundlagen 1 1. Analyse Design Implementierung. Frühe Phasen durch Informationssystemanalyse abgedeckt
Objektorientierter Software-Entwurf Grundlagen 1 1 Einordnung der Veranstaltung Analyse Design Implementierung Slide 1 Informationssystemanalyse Objektorientierter Software-Entwurf Frühe Phasen durch Informationssystemanalyse
MehrVgl. Kapitel 4 aus Systematisches Requirements Engineering, Christoph Ebert https://www.sws.bfh.ch/studium/cas/swe-fs13/protected/re/re_buch.
Vgl. Kapitel 4 aus Systematisches Requirements Engineering, Christoph Ebert https://www.sws.bfh.ch/studium/cas/swe-fs13/protected/re/re_buch.pdf Nachdem die Projekt-Vision und die Stakeholder bekannt sind,
MehrSkript Pilotphase em@w für Arbeitsgelegenheiten
Die Pilotphase erstreckte sich über sechs Meilensteine im Zeitraum August 2011 bis zur EMAW- Folgeversion 2.06 im August 2013. Zunächst einmal musste ein grundsätzliches Verständnis für das Verfahren geschaffen
MehrNovell Client. Anleitung. zur Verfügung gestellt durch: ZID Dezentrale Systeme. Februar 2015. ZID Dezentrale Systeme
Novell Client Anleitung zur Verfügung gestellt durch: ZID Dezentrale Systeme Februar 2015 Seite 2 von 8 Mit der Einführung von Windows 7 hat sich die Novell-Anmeldung sehr stark verändert. Der Novell Client
MehrKomponenten- und ereignisorientierte Softwareentwicklung am Beispiel von Borland-Delphi
Komponenten- und ereignisorientierte Softwareentwicklung am Beispiel von Borland-Delphi Dr. Henry Herper Otto-von-Guericke-Universität Magdeburg Institut für Simulation und Graphik Lisa-Weiterbildung -
MehrNeue Funktionen in Innovator 11 R5
Neue Funktionen in Innovator 11 R5 Innovator for Enterprise Architects, Java Harvester und Prüfassistent 12.11.2013 Agenda 1 2 3 Einführung Was ist neu in Innovator 11 R5? Szenario Enterprise Architektur
MehrÖKB Steiermark Schulungsunterlagen
ÖKB Steiermark Schulungsunterlagen Fotos von Online-Speicher bereitstellen Da das hinzufügen von Fotos auf unsere Homepage recht umständlich und auf 80 Fotos begrenzt ist, ist es erforderlich die Dienste
MehrVorlesung "Software-Engineering"
Vorlesung "Software-Engineering" Rainer Marrone, TUHH, Arbeitsbereich STS Vorige Vorlesung Pflichtenheft (requirements specification document) Charakterisierung von Software-Qualität Detaillierte Anforderungsanalyse
MehrAnforderungen an die HIS
Anforderungen an die HIS Zusammengefasst aus den auf IBM Software basierenden Identity Management Projekten in NRW Michael Uebel uebel@de.ibm.com Anforderung 1 IBM Software Group / Tivoli Ein Feld zum
MehrEs sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.
Schritt 1: Installation des Javacompilers JDK. Der erste Start mit Eclipse Bevor Sie den Java-Compiler installieren sollten Sie sich vergewissern, ob er eventuell schon installiert ist. Gehen sie wie folgt
MehrKonsolidierung und Neuimplementierung von VIT. Aufgabenbeschreibung für das Software Engineering Praktikum an der TU Darmstadt
Konsolidierung und Neuimplementierung von VIT Aufgabenbeschreibung für das Software Engineering Praktikum an der TU Darmstadt Inhaltsverzeichnis 1 Was ist der Kontext?... 1 2 VIT: Ein sehr erfolgreiches
MehrEntwicklung und Dokumentation eines Klausurorganisationssystems mit Microsoft Access
Informatik Werner Schehler Entwicklung und Dokumentation eines Klausurorganisationssystems mit Microsoft Access Diplomarbeit FACHHOCHSCHULE DORTMUND FACHBEREICH WIRTSCHAFT Studiengang Wirtschaft ENTWICKLUNG
MehrUML (Unified Modelling Language) von Christian Bartl
UML (Unified Modelling Language) von Inhaltsverzeichnis Inhaltsverzeichnis... 2 1 UML Unified Modelling Language... 3 2 Diagrammtypen... 3 2.1 Aktivitätsdiagramm... 3 2.1.1 Notation... 4 2.1.2 Beispieldiagramm...
MehrFachbericht zum Thema: Anforderungen an ein Datenbanksystem
Fachbericht zum Thema: Anforderungen an ein Datenbanksystem von André Franken 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis 1 2 Einführung 2 2.1 Gründe für den Einsatz von DB-Systemen 2 2.2 Definition: Datenbank
Mehr