Grin logo
de en es fr
Shop
GRIN Website
Publish your texts - enjoy our full service for authors
Go to shop › Computer Science - Software

Analyse eines effizienten Werkzeuges zur Modellierung von Software Systemen

Title: Analyse eines effizienten Werkzeuges zur Modellierung von Software Systemen

Diploma Thesis , 2003 , 155 Pages , Grade: GUT +

Autor:in: Mustafa Toktas, DI. (Author)

Computer Science - Software
Excerpt & Details   Look inside the ebook
Summary Excerpt Details

Software – Engineering, das sich mit dem Entwickeln von Software – Systemen beschäftigt, hat sich seit dem Entstehen der ersten Programmiersprachen bis hin zur heutigen Softwareentwicklung sehr rasch weiterentwickelt.
Die immerzu steigende Komplexität von Softwaresystemen und die hohen Erwartungen an eine Software sind zwei Hauptgründe für diese rasche Weiterentwicklung. Während in der Zeit von 1942 – 1945 (Entwicklung des ersten Computers und der ersten Programmiersprache durch Konrad Zuse), vornehmlich einzelne Recheneinheiten programmiert wurden, wird heute unter Software – Engineering die Fähigkeit verstanden, komplexe Zusammenhänge in Teilprobleme zu unterteilen, jedes Teilproblem zu lösen und alle Teilprobleme wieder zusammenzusetzen, sodass schlussendlich die Lösung des komplexen Problems entsteht.
Vorliegende Arbeit beschäftigt sich einführend mit dem Begriff Software – Engineering und versucht einen Einblick in Modellierung resp. Modellbildungen in der Software – Technik zu geben. Es wird dabei aufgezeigt, wie essentiell Modellbildungen (=die komplexe Umwelt in Computermodellen wiederzugeben) für die Informatik resp. für das Software – Engineering sind.
Für solche Modellbildungen gibt es verschiedene Modellierungssprachen, welche diese Modelle versuchen zu standardisieren.
Die UML (Unified Modelling Language) ist die wichtigste Modellierungssprache und weltweit von Wissenschaft und Wirtschaft als Industriestandard anerkannt.
Nicht nur die UML mit all ihren Diagrammen werden in vorliegender Arbeit detailliert beschrieben, sondern auch die Wichtigkeit der Modellierung von Software – Systemen in den beiden Softwareentwicklungsphasen Analyse und Entwurf aufgezeigt [vgl. Suzu99].
Unterstützend zur Modellierung werden sog. UML Werkzeuge eingesetzt. Aus den unzähligen sich auf dem Markt befindenden UML Werkzeugen werden drei detailliert untersucht:
Anhand einer Aufgabenstellung im Bereich Flughafenleitsystem werden diese drei Werkzeuge evaluiert und abschließend bewertet. Ausgehend von diesen Bewertungen wird schließlich ein Kriterienkatalog für ein zukünftiges professionelles UML Werkzeug definiert.

Excerpt


Inhaltsverzeichnis

1 Einleitung

1.1 Motivation

1.2 Vorgangsweise

1.3 Gliederung der Arbeit

1.4 Schreibweise und Modellierung der Diagramme

2 Software –Engineering und Modellierung

2.1 Einleitung

2.2 Software – Engineering

2.2.1 Historie der Software – Engineering

2.2.2 Definition des Begriffs „Software – Engineering“

2.3 Prinzipien des Software Engineering

2.3.1 Vorgehensmodelle in der Softwareentwicklung

2.3.2 Die Analyse – und Entwurfsphase in der Objektorientierung

2.3.3 Personen in Softwareprojekten

2.3.4 Dokumente und Produkte eines Softwareprojektes

2.4 Modelle in der Software Engineering

2.4.1 Modellierung in der Informatik

2.5 Zusammenfassung

3 UML (Unified Modelling Language)

3.1 Einleitung

3.2 Historie der UML

3.3 Diagrammarten in der UML

3.3.1 Anwendungsfalldiagramm

3.3.1.1 Anwendungsfallbeschreibung

3.3.2 Klassendiagramm

3.3.2.1 Klassen

3.3.2.2 Attribute

3.3.2.3 Methoden

3.3.2.4 Abstrakte Klassen

3.3.2.5 Schnittsellenklasse

3.3.2.6 Assoziationen

3.3.2.7 Binäre Assoziation

3.3.2.8 Aggregation

3.3.2.9 Komposition

3.3.2.10 Weitere Assoziationsformen

3.3.2.11 Objekte

3.3.3 Verhaltensdiagramme

3.3.4 Implementierungsdiagramme

4 UML Werkzeuge

4.1 Einleitung

4.1.1 Aufbau der folgenden Evaluierung:

4.1.2 Aufgabenstellung

4.1.3 Zur Auswahl der UML Tools

4.2 Visio

4.2.1 Einleitung

4.2.2 Modellierung

4.2.3 Evaluierung

4.3 Rational Rose

4.3.1 Einleitung

4.3.2 Modellierung

4.3.3 Evaluierung

4.4 ArgoUML

4.4.1 Einleitung

4.4.2 Modellierung

4.4.3 Evaluierung

4.5 Auswertung der Evaluierungen

5 Anforderungen an ein professionelles UML Werkzeug

5.1 Einleitung

5.2 Erwerb und Installation der Software

5.3 UML Konformität

5.4 Zwingende Reihenfolge bei der Modellierung

5.5 Konsistenzprüfung

5.6 Diagrammdarstellung am Bildschirm

5.7 Roundtripengineering

5.8 Reports und Dokumentation über UML

5.9 Verlinkung der Diagramme

5.10 Druckausgabe

5.11 Repository

5.12 Benutzerschnittstelle

5.12.1 Online Hilfe

5.12.2 Interaktion zwischen Anwender und Werkzeug

5.13 Multiuserfähigkeit

5.14 Erweiterungsmöglichkeiten

5.15 Erstellung von Softwareprojektmanagement – Diagrammen

5.16 Schlussfolgerung

6 Zusammenfassung und Ausblick

6.1 Zusammenfassung

6.2 Ausblick

Zielsetzung & Themen

Die vorliegende Arbeit untersucht die Effizienz und Eignung verschiedener UML-Werkzeuge für die Modellierung von Softwaresystemen, um einen Kriterienkatalog für zukünftige professionelle Softwarelösungen zu entwickeln. Die zentrale Forschungsfrage befasst sich mit der Frage, wie Softwarewerkzeuge den Softwareentwicklungsprozess in den Phasen Analyse und Entwurf am effektivsten unterstützen können.

  • Grundlagen des Software Engineering und der Modellierung
  • Einführung und Analyse der Unified Modelling Language (UML)
  • Evaluierung der UML-Werkzeuge Visio, Rational Rose und ArgoUML
  • Anforderungskatalog für professionelle UML-Werkzeuge
  • Methoden zur Qualitätssicherung und Codegenerierung

Auszug aus dem Buch

2.2.1 Historie des Software – Engineering

Eng verbunden mit der Geschichte der Softwareentwicklung ist die Entstehung und Entwicklung der ersten Programmiersprache:

Im Zeitraum von 1942 bis 1945 wurde nicht nur der erste Computer (Z3) gebaut, sondern auch die damit verbundene erste textbasierende „richtige“ Programmiersprache (Plankalkül) durch Konrad Zuse entwickelt. Der heutige Begriff des modernen „Software – Engineering“ (siehe weiter unten) ist allerdings nicht mit der damaligen Bedeutung gleichzusetzen. Während man damals vornehmlich Recheneinheiten codierte, umfasst der heutige Begriff der Softwareentwicklung einen weit größeren Aspekt (siehe Abschnitt 2.2.2, Definition des Begriffs der Softwareentwicklung).

Ein Weiterer Meilenstein in der Softwareentwicklung ist die Entwicklung von imperativen Programmiersprachen in den 60er Jahren (COBOL im kaufmännischen und Fortran im wissenschaftlichen Bereich). Auch die Sprachen Pascal, C, Simula und ADA entstanden zu dieser Zeit.

Die Weiterentwicklung dieser imperativen Sprachen in den 70er Jahren führte schließlich zu den ersten objektorientierten (OO) Ansätze. Die Verwendung von Klassen und Objekte wurde mit der ersten objektorientierten Programmiersprachen (OOP) Simula und Smalltalk eingeführt. Sogar die heute bekannten OOP wie C++ und Java lehnen sich stark an Smalltalk an [vgl. Pich02].

Als Geburtsstunde des Software – Engineering gilt allgemein die NATO „Software – Engineering“ - Konferenz in Garmisch. 1968 trafen unter der NATO – Initiative Experten aus den Bereichen Militär, Universitäten und anderen Organisationen zusammen, um den aktuellen Forschungs – und Entwicklungsstand im Softwarebereich zu erarbeiten und Lösungen für eine strukturierte Vorgehensweise bei der Entwicklung von Software darzulegen. Aufgrund der immerzu steigenden Kosten und Dauer von Softwareprojekten, der hohen Anzahl von fehlerhaften Softwaresystemen und vor allem der Zunahme von Software im militärischen Bereich, führte dazu, dass man zum ersten Mal von der sog. „Softwarekrise“ sprach [Thei02]. Es wurde versucht, eine allgemein gültige Richtlinie zu definieren, die solche Fehler erst gar nicht entstehen lassen.

Zusammenfassung der Kapitel

1 Einleitung: Beschreibt die Motivation zur Automatisierung im Softwareentwicklungsprozess und die zentrale Bedeutung der Modellierung.

2 Software –Engineering und Modellierung: Vermittelt Grundlagen über historische Entwicklungen, Prinzipien und Vorgehensmodelle im modernen Software-Engineering.

3 UML (Unified Modelling Language): Erläutert die Geschichte und die verschiedenen Diagrammtypen der UML als Industriestandard.

4 UML Werkzeuge: Führt eine detaillierte Evaluierung der Werkzeuge Visio, Rational Rose und ArgoUML anhand praktischer Aufgabenstellungen durch.

5 Anforderungen an ein professionelles UML Werkzeug: Definiert einen Kriterienkatalog basierend auf Funktionalität, Usability und technischer Konformität.

6 Zusammenfassung und Ausblick: Resümiert die Ergebnisse der Arbeit und gibt einen Ausblick auf die notwendige Verifizierung der Anforderungen durch Prototypen.

Schlüsselwörter

Software Engineering, Modellierung, UML, Unified Modelling Language, Softwareentwicklung, Analyse, Entwurf, Case Tools, Rational Rose, Visio, ArgoUML, Projektmanagement, Softwarekrise, Codegenerierung, Systemarchitektur.

Häufig gestellte Fragen

Worum geht es in dieser Diplomarbeit grundsätzlich?

Die Arbeit analysiert die Unterstützung von Softwareentwicklungsprozessen durch Software-Werkzeuge, insbesondere im Kontext von Modellierungssprachen wie UML.

Was sind die zentralen Themenfelder der Untersuchung?

Die zentralen Themen umfassen die Geschichte des Software-Engineerings, die Prinzipien objektorientierter Modellierung, die Evaluierung von UML-Werkzeugen und die Definition eines Anforderungskatalogs für professionelle Entwicklungsumgebungen.

Welches primäre Ziel verfolgt die Arbeit?

Das Ziel ist es, den Nutzen und die Funktionalität verschiedener UML-Werkzeuge kritisch zu bewerten und allgemeingültige Kriterien für die nächste Generation professioneller UML-Werkzeuge zu definieren.

Welche wissenschaftliche Methode wird zur Evaluierung verwendet?

Die Arbeit nutzt ein praktisches Szenario (Flughafenleitsystem), um die Funktionalität, Benutzerfreundlichkeit und Konformität der ausgewählten Werkzeuge (Visio, Rational Rose, ArgoUML) exemplarisch zu testen.

Welche Aspekte werden im Hauptteil der Arbeit behandelt?

Im Hauptteil werden nach einer theoretischen Einführung in Software-Engineering und UML die Werkzeuge hinsichtlich UML-Konformität, Benutzerfreundlichkeit und technischer Features evaluiert.

Welche Schlüsselbegriffe charakterisieren diese Arbeit?

Die Arbeit wird durch Begriffe wie Software-Engineering, UML, Modellierung, Codegenerierung, Anforderungsanalyse und Werkzeugevaluierung charakterisiert.

Wie unterscheiden sich die drei untersuchten Werkzeuge?

Visio wird als benutzerfreundliches Zeichentool für kleinere Projekte, Rational Rose als mächtiges, professionelles Werkzeug für komplexe Systeme und ArgoUML als kosteneffiziente Open-Source-Alternative eingestuft.

Warum ist eine "Konsistenzprüfung" in UML-Werkzeugen so wichtig?

Eine Konsistenzprüfung verhindert, dass widersprüchliche oder doppelte Definitionen von Klassennamen oder Assoziationen im Modell entstehen, was andernfalls zu Fehlern bei der automatisierten Codegenerierung führen würde.

Excerpt out of 155 pages  - scroll top

Details

Title
Analyse eines effizienten Werkzeuges zur Modellierung von Software Systemen
College
Vienna University of Technology  (rise Insitut Wien)
Grade
GUT +
Author
Mustafa Toktas, DI. (Author)
Publication Year
2003
Pages
155
Catalog Number
V42837
ISBN (eBook)
9783638407748
Language
German
Tags
Analyse Werkzeuges Modellierung Software Systemen
Product Safety
GRIN Publishing GmbH
Quote paper
Mustafa Toktas, DI. (Author), 2003, Analyse eines effizienten Werkzeuges zur Modellierung von Software Systemen, Munich, GRIN Verlag, https://www.grin.com/document/42837
Look inside the ebook
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
  • Depending on your browser, you might see this message in place of the failed image.
Excerpt from  155  pages
Grin logo
  • Grin.com
  • Shipping
  • Contact
  • Privacy
  • Terms
  • Imprint