ebook img

Software-Entwicklungswerkzeuge: Methodische Grundlagen PDF

378 Pages·1992·12.356 MB·German
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Software-Entwicklungswerkzeuge: Methodische Grundlagen

Leitfaden der angewandten Informatik F. Schonthaler/T. Nemeth Software-Entwicklungswerkzeuge: Methodische Grundlagen Leitfaden der angewandten Informatik Herausgegeben von Prof. Dr. Hans-Jiirgen Appelrath, Oldenburg Prof. Dr. Lutz Richter, Ziirich Prof. Dr. Wolffried Stucky, Karlsruhe Die Bande dieser Reihe sind allen Methoden und Ergebnissen der Infor matik gewidmet, die fUr die praktische Anwendung von Bedeutung sind. Besonderer Wert wird dabei auf die Darstellung dieser Methoden und Er gebnisse in einer allgemein verstandlichen, dennoch exakten und prazisen Form gelegt. Die Reihe solI einerseits dem Fachmann eines anderen Ge bietes, der sich mit Problemen der Datenverarbeitung beschaftigen muG, selbst aber keine Fachinformatik-Ausbildung besitzt, das fUr seine Praxis relevante Informatikwissen vermitteln; andererseits solI dem Informatiker, der auf einem dieser Anwendungsgebiete tatig werden will, ein Oberblick iiber die Anwendungen der Informatikmethoden in diesem Gebiet gege ben werden. Fiir Praktiker, wie Programmierer, Systemanalytiker, Organi satoren und andere, stellen die Bande Hilfsmittel zur Losung von Proble men der taglichen Praxis bereit; dariiber hinaus sind die VerOffentlichun gen zur Weiterbildung gedacht. Software-Entwicklungswerkzeuge : Methodische Grundlagen Von Dr. rer. pol. Frank Schonthaler PROMATIS Informatik, Straubenhardt und Dipl.-Wi.-Ing. Tibor Nemeth PROMATIS Informatik, Straubenhardt 2., iiberarbeitete Auflage EI3 B. G. Teubuer Stuttgart 1992 Dr. rer. pol. Frank Schonthaler 1959 geboren in Birkenfeld (Enzkreis). Von 1980-1984 Studium des Wirt schaftsingenieurwesens, Fachrichtung Informatik/Operations Research, an der UniversiUit Karlsruhe (TH). In dieser Zeit freier Mitarbeiter im Un ternehmensbereich Datenverarbeitung der Schroff GmbH, Straubenhardt b. Pforzheim. Von 1985-1990 wissenschaftlicher Mitarbeiter im von der DFG geforderten Projekt INCOME am Institut fOr Angewandte Informa tik und Formale Beschreibungsverfahren der Universitat Karlsruhe (TH). 1989 Promotion bei W. Stucky. Seit April 1990 GeschaftsfOhrer der PROMAT IS Informatik, Straubenhardt. Dipl.-Wirtschafts-Ing. Tibor Nemeth 1959 geboren in Heidelberg. Von 1980-1986 Studium des Wirtschaftsinge nieurwesens, Fachrichtung Informatik/Operations Research, an der Uni versitat Karlsruhe (TH). Seit 1986 wissenschaftlicher Mitarbeiter im von der DFG geforderten Projekt INCOME am Institut fOr Angewandte Infor matik und Formale Beschreibungsverfahren der Universitat Karlsruhe (TH). Seit Januar 1992 als Projektleiter CASE bei der PROMATIS Infor matik, Straubenhardt. Die Deutsche Bibliothek - CIP-Einheitsaufnahme Das Werk eilischliel3lich aller seiner Teile ist urheberrechtlich geschiitzt. Jede Verwertung au13erhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Verlages unzuHissig und stratbar. Das gilt besonders fUr Vervielfliltigungen, Ubersetzungen, Mikroverfilmungen und die Ein speicherung und Verarbeitung in elektronischen Systemen. © B. G. Teubner Stuttgart 1990 ISBN-13: 978-3-519-12417-7 e-ISBN-13: 978-3-322-89206-5 DOl: 10.1007/978-3-322-89206-5 Vorwort "Was verstehen Sie unter Software Engineering?" Stellen Sie diese Frage zehn verschiedenen Personen, werden Sie sicher ebensoviele verschiedene Antworten bekommen. Der Grund liegt darin, daB sich in dieser vergleichs weise jungen Disziplin bisher weder eine einheitliche Begriffswelt noch eine allgemein anerkannte Menge von Grundlagenwissen ausgebildet hat. Pro blematisch ist auch die Kluft zwischen Forschung und Praxis, die eine ziigi ge Weiterentwicklung des Software Engineering geradezu blockiert. Dies fiihrt dazu, daB vielerorts in der Software-Entwicklung heute erst mit dem Einsatz von Methoden begonnen wird, die noch aus den 70er Jahren stam men und ffir modeme Software- und Hardware-Umgebungen vollig inad aquat sind. Das vorliegende Buch mochte einen Beitrag zur Uberbriickung dieses Gefal les liefem. Es beschaftigt sich mit den methodischen Grundlagen aktueller Software-Entwicklungswerkzeuge, die heute zumeist mit dem Begriff CASE-Tool bezeichnet werden. Um hier keine unnotigen sprachlichen Bar rieren aufzubauen - auch die Definition von CASE ist nicht eindeutig -, haben wir auf diesen Begriff im Titel des Buches bewuBt verzichtet. Das Buch wendet sich an Fach- und Fiihrungskrafte, die sich im Rahmen eines Innovationsprojekts oder auch in ihrer taglichen Arbeit mit Software Entwicklungsmethoden und -werkzeugen beschaftigen. Es versteht sich aber auch als Grundlage fur die praxisnahe Ausbildung von Studenten der Informatik und Wirtschaftsinformatik. An dieser Stelle mochten wir uns bei all denen bedanken, die uns bei der Anfertigung dieses Buches unterstiitzt haben: Zunachst bei Andrea Geisel und Gudrun Volz, die unsere handschriftlichen Skizzen der Abbildungen und den Text mit Zeichen- und Textverarbeitungsprogrammen erfaBt haben. Desweiteren bei unserem Kollegen Andreas Oberweis fur eine kriti sche Durchsicht des Manuskripts und eine Vielzahl wertvoller Hinweise. 6 Vorwort SchlieBlich bei Prof. Wolffried Stucky, der als Mitherausgeber dieser Reihe und als unser Chef am Institut fur Angewandte Informatik und Formale Beschreibungsverfahren der Universitat Karlsruhe (TH) die Verwirkli chung dieses Buchprojekts ermoglichte. Bedanken mochten wir uns aber auch fur seine abschlieBende und, wie gewohnt, konstruktive Kritik. Karlsruhe, im August 1990 F. Schonthaler T.Nemeth V orwort zur zweiten Auflage In den eineinhalb Jahren seit Erscheinen der ersten Auflage unseres Buchs hat sich die Einstellung zum Thema CASE grundlegend verandert: CASE hat sich yom Spielzeug fUr besonders innovationsfreudige Informatiker zum MuS fur alle Systemanalytiker und -entwickler gewandelt. Als Berater bei der Einfiihrung und Anwendung von CASE-Produkten spiiren wir das in unserer taglichen Praxis ganz deutlich. Aber auch der Erfolg unseres Buchs scheint diese Ansicht zu bestatigen. Fiir die nun vorliegende zweite Auflage wurden einige Korrekturen im Text vorgenommen. AuBerdem wurden einige miBverstandliche Formulierungen ersetzt, auf die wir aus der Leserschaft aufmerksam gemacht worden sind. Herzlichen Dank fUr diese wertvollen Hinweise. Wir hoffe n und wUnschen, daB auch diese zweite Auflage unseres Buchs wieder mit Interesse aufgenommen wird. Sollte es uns gelingen, damit einen bescheidenen Beitrag zur Durchsetzung modemer CASE-Technolo gien in der Praxis leisten zu konnen, hatte sich unser Aufwand sicher gelohnt. KarlsruhelStraubenhardt, im Miirz 1992 F. Schonthaler T. Nemeth Inhalt 1 Einleitung 13 1.1 CASE 13 1.2 Vorgehensmodelle - Methoden - Tools 15 1.3 Grundlegende Entwicklungsstrategien 16 1.3.1 Abstraktion und Konkretisierung 16 1.3.2 Funktions- und Datenorientierung 19 1.4 Phasen eines Entwicklungsprojekts 20 1.4.1 Vorstudie 21 1.4.2 Anforderungsanalyse 22 1.4.3 System- und Software-Entwurf 23 1.4.4 Implementation und Komponententest 24 1.4.5 Systemtest 27 1.4.6 Betrieb und Wartung 27 1.5 Uberblick 28 2 Universell einsetzbare Techniken 33 2.1 Dekompositionsdiagramme 33 2.1.1 Graphische Reprasentation 33 2.1.2 Gebrauchliche Erweiterungen 36 2.1.3 Praktische Anwendung 41 2.2 Entscheidungstabellen und -baume 43 2.2.1 Grundlagen der Entscheidungstabellen-Technik 43 2.2.2 Erweiterungen 47 2.2.3 Entscheidungsbaume 51 2.3 Endliche Automaten 53 8 Inhalt 3 Methoden und Sprachen fur die Strukturierte Analyse 58 3.1 Structured Analysis 58 3.2 Datenflul3diagramme nach DeMarco 62 3.2.1 Graphische Elemente 62 3.2.2 Ebenenbildung 65 3.2.3 Detailspezifikation von Prozessen und Daten 69 3.3 Datenflul3diagramme nach Gane und Sarson 72 3.3.1 Graphische Elemente 72 3.3.2 Ebenenbildung 76 3.4 Objektflul3diagramme 79 3.4.1 Graphische Elemente 80 3.4.2 Ebenenbildung 83 4 Datenmodellierung 86 4.1 Grundlagen der Datenmodellierung 86 4.1.1 Ebenenarchitektur eines Datenbanksystems 86 4.1.2 Prinzipien der Konzeptuellen Modellierung 90 4.1.3 Datenmodelle 91 4.2 Semantisch-hierarchisches Objektmodell 93 4.2.1 Abstraktionen 93 4.2.2 Vererbung 97 4.2.3 Identifikation von Objekten 100 4.3 Enti ty-Relationship-Modelle 102 4.3.1 Grundlegende Konzepte 102 4.3.2 Krahenful3-Notation 109 4.3.3 Zusatzliche Konzepte 112 4.4 Methodische Aspekte 115 4.4.1 Die Datenmodellierung im Life-Cycle-Modell 115 4.4.2 Informationsbedarfsanalyse 118 4.4.3 Strategische Informationsplanung 132 Inhalt 9 5 Spezifikation des Systemverhaltens 135 5.1 Voriiberlegungen 135 5.2 Structured AnalysislReal-Time 137 5.2.1 Der Ansatz von Hatley und Pirbhai 138 5.2.2 Der Ansatz von Ward und Mellor 153 5.3 Petri-Netze 156 5.3.1 BedingungslEreignis-N etze 158 5.3.2 Stelle!I'ransitions-N etze 161 5.3.3 PradikatfI'ransitions-Netze 164 5.3.4 Spezifikation weiterer Systemaspekte 169 5.3.5 Anmerkungen zum Einsatz von Petri-Netzen 171 5.3.6 Analyse 175 6 Entwurf von Benutzerschnittstellen 178 6.1 Begriffe 179 6.1.1 Dialogklassen 180 6.1.2 Dialogunabhangigkeit 183 6.2 Werkzeugunterstiitzung 185 6.2.1 User-interface Toolkits 185 6.2.2 User-interface Development Systems 187 6.3 Sprachen 188 6.3.1 Kontextfreie Grammatiken 188 6.3.2 Zu standsdiagramme 190 6.3.3 Ereignisbasierte Darstellungen 191 6.3.4 Spezifikation durch Bildschirmentwiirfe 193 6.3.5 Wissensbasierte Reprasentation 195 6.4 Zustandsdiagramme nach Wasserman 196 7 Funktionsorientierter Programmentwurf 200 7.1 Composite/Structured Design 201 7.1.1 Modularisierung 201 7.1.2 Structure Charts 202 7.1.3 Organisation modularer Systeme 208 7.1.4 Entwurf modularer Systeme 211 7.2 Pseudo-Code 214 7.3 Struktogramme 220 10 Inhalt 8 Datenorientierter Programmentwurf 226 8.1 J ackson-strukturierte Programmierung 226 8.1.1 Entwurfsidee 226 8.1.2 Jackson-DiagraD1D1e 229 8.1.3 Entwurfsschritte 232 8.1.4 Strukturkonflikte 238 8.2 PrograD1D1entwurfnach Wamier und Orr 242 8.2.1 Entwurfsidee 242 8.2.2 Wamier/Orr-DiagraD1D1e 243 8.2.3 Entwurfsschritte 246 8.3 Uberlegungen ZUD1 datenorientierten PrograD1D1entwurf 252 9 Objektorientierter Entwurf 255 9.1 Voriiberlegungen und Begriffe 255 9.1.1 Objekt 256 9.1.2 Vererbung 259 9.2 PrograD1D1entwurfD1it Eiffel 262 9.2.1 Objektorientierte SysteD1e 263 9.2.2 BestiD1D1ung der Objektklassen 263 9.2.3 Beschreibung der Objektklassen 264 9.2.4 Klassenbeziehungen: Wiederverwendung und Erweiterung von Eigenschaften 269 9.2.5 Deferred Classes 271 9.2.6 Ausfiihrbarer PrograD1D1entwurf 272 9.3 Objektorientierter strukturierter Entwurf 275 9.3.1 Klassendefinition 275 9.3.2 Behandlung von Ausnahmesituationen 277 9.3.3 Instanziierung von Objekten 277 9.3.4 Vererbung 278 9.3.5 Generische Einheiten 280 9.3.6 Weitere Notationen 281 9.3.7 Entwurf objektorientierter SysteD1e 282

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.