Kapitel 2: Der Software-Entwicklungsprozess



Ähnliche Dokumente
Objektorientierter Software-Entwurf Grundlagen 1 1. Analyse Design Implementierung. Frühe Phasen durch Informationssystemanalyse abgedeckt

Das Pflichtenheft. Dipl.- Ing. Dipl.-Informatiker Dieter Klapproth Ains A-Systemhaus GmbH Berlin

IT-Projekt-Management

Informationswirtschaft II Rational Unified Process (RUP)

Informationswirtschaft II

3.4 Unified Process Ivar Jacobson, Grady Booch, James Rumbaugh: The Unified Software Development Process.

Informationssystemanalyse Lebenszyklusmodelle 3 1. Lebenszyklusmodelle sollen hauptsächlich drei Aufgaben erfüllen:

Softwaretechnik (Allgemeine Informatik) Überblick

Projektmodell Softwareentwicklung: Unified Software Development Process / Unified Process (Teil I)

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

Software Engineering

Vgl. Kapitel 5 aus Systematisches Requirements Engineering, Christoph Ebert

Kapitelübersicht. Was ist So#waretechnik? Historische Entwicklung der So9waretechnik Prinzipien, Methoden, Werkzeuge. Was bedeutet Objektorien+erung?

Objektorientierte Programmierung OOP

FACHHOCHSCHULE MANNHEIM

Vortrag von: Ilias Agorakis & Robert Roginer

Software Engineering. Bibliographisches Institut & F. A. Brockhaus AG, Mannheim; Spektrum Akademischer Verlag GmbH, Heidelberg, 2003

Grundlagen Software Engineering

Software-Engineering

Fachdidaktik der Informatik Jörg Depner, Kathrin Gaißer

Abschnitt 16: Objektorientiertes Design

Übungen zur Softwaretechnik

Probeklausur. Lenz Belzner. January 26, Lenz Belzner Probeklausur January 26, / 16

16 Architekturentwurf Einführung und Überblick

Reference Migration Process ReMiP

Warum sich das Management nicht für agile Softwareentwicklung interessieren sollte - aber für Agilität

2. Workshop: Vorgehensmodelle in der Praxis Reife und Qualität

INNOVATOR im Entwicklungsprozess

Requirements Engineering I

Taking RM Agile. Erfahrungen aus dem Übergang von traditioneller Entwicklung zu Scrum

Rahmenbedingungen und Integrationsvoraussetzungen

Die Softwareentwicklungsphasen!

Software Systems Engineering

Leseprobe. Thomas Konert, Achim Schmidt. Design for Six Sigma umsetzen ISBN: Weitere Informationen oder Bestellungen unter

Agile Prozessverbesserung. Im Sprint zu besseren Prozessen

Requirements Engineering

Fragebogen zur Anforderungsanalyse

Softwareentwicklungsprozess im Praktikum. 23. April 2015

Entwicklung und Dokumentation eines Klausurorganisationssystems mit Microsoft Access

Übung 6: Feinentwurf. Prof. Dr. Dr. h.c. Manfred Broy Dr. Herbert Ehler, Martin Feilkas 6. Juli 2006 Bernd Spanfelner, Sebastian Winter

Agiles Design. Dr.-Ing. Uwe Doetzkies Gesellschaft für Informatik mail:

Einführung und Motivation

StuPro-Seminar Dokumentation in der Software-Wartung. StuPro-Seminar Probleme und Schwierigkeiten in der Software-Wartung.

Software-Entwicklungsprozesse zertifizieren

Eberhard Lehmann: Projekte im Informatik-Unterricht Software Engineering, Ferd. Dümmlers Verlag, Bonn Inhaltsverzeichnis.

Traceability-Modell als Erfolgsfaktor für Process Enactment. Paul-Roux Wentzel, SEE 2008

Fassade. Objektbasiertes Strukturmuster. C. Restorff & M. Rohlfing

Software-Engineering

The Rational Unified Process. Eine Einführung von T. Langer und A. Nitert

Wir beraten Sie. Wir unterstützen Sie. Wir schaffen Lösungen. Wir bringen Qualität. Wir beraten Sie. Wir unterstützen Sie. Wir schaffen Lösungen

Informationssystemanalyse Use Cases 11 1

Daniel Warneke Ein Vortrag im Rahmen des Proseminars Software Pioneers

Übungsaufgaben zum Software Engineering: Management

Softwareentwicklung aus Sicht des Gehirns

Klassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java

Requirements-Traceability in der industriellen Praxis Ziele und Einsatz

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 22

Vorgehensmodelle zur Softwareentwicklung

Ohne Fehler geht es nicht Doch wie viele Fehler sind erlaubt?

Oktober 2014 PRODUKTENTWICKLUNG. Dr. Ralf Lauterbach

Some Software Engineering Principles

Wir erledigen alles sofort. Warum Qualität, Risikomanagement, Gebrauchstauglichkeit und Dokumentation nach jeder Iteration fertig sind.

Projektmanagement. Dokument V 1.1. Oliver Lietz - Projektmanagement. Wie kommt es zu einem Projektauftrag? Ausführung

GeFüGe Instrument I07 Mitarbeiterbefragung Arbeitsfähigkeit Stand:

Softwareentwicklungsprozesse. 18. Oktober 2012

Praktikant / Abschlussarbeit im Bereich Softwareentwicklung / Mechatronik (m/w)

Einreichung zum Call for Papers

Data Mining-Projekte

Vgl. Kapitel 4 aus Systematisches Requirements Engineering, Christoph Ebert

EinfÅhrung in die objektorientiere Programmierung (OOP) unter Delphi 6.0. EDV Kurs 13/2

Use Cases. Use Cases

SWE5 Übungen zu Software-Engineering

Systemdenken und Gestaltungsmethodik Einführung und Grundlagen II

Einführung in die Informationsverarbeitung Teil Thaller. Stunde VII: Planen und Realisieren

Agile Software-Entwicklung im Kontext der EN50128 Wege zum Erfolg

IKP Uni Bonn Medienpraxis EDV II Internet Projekt

Requirements Management mit RequisitePro. Rational in der IBM Software Group. Der Rational Unified Process als Basis für die Projektarbeit

Informationssystemanalyse Problemstellung 2 1. Trotz aller Methoden, Techniken usw. zeigen Untersuchungen sehr negative Ergebnisse:

Dokumentation Typo3. tt - news - Nachrichtenmodul

Klausur Software-Engineering SS 2005 Iwanowski

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Übungsbuch für den Grundkurs mit Tipps und Lösungen: Analysis

Qualitätsmanagement im Projekt

Wirtschaftsinformatik 2 Modellierung betrieblicher Informationssysteme - MobIS

Agile Softwareentwicklung

Kapitel 10: Dokumentation

Software-Entwicklung

Software Engineering. Dokumentation. Wintersemester 2005/06. Kapitel 21. Universität Zürich Institut für Informatik

Die Zeit ist reif. Für eine intelligente Agentursoftware.

SEP 114. Design by Contract

WS 2002/03. Prof. Dr. Rainer Manthey. Institut für Informatik III Universität Bonn. Informationssysteme. Kapitel 1. Informationssysteme

Präsentation Von Laura Baake und Janina Schwemer

Über den Unterschied zwischen Business Analysis und Requirements Engineering & Management

1. Management Summary. 2. Grundlagen ERP. 3. ERP für die Produktion. 4. ERP für den Handel. 5. EPR für Dienstleistung. 6.

10 größten SLA Irrtümer. Seminar: 8663 Service-Level-Agreement. Qualified for the Job

Prozess-Modelle für die Softwareentwicklung

Fragebogen ISONORM 9241/110-S

PRÜFUNG FÜR ELEKTROINGENIEURE. Softwaretechnik I. Musterlösung SS Ohne Gewähr -

Transkript:

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 führen in die sogenannte Softwarekrise. 1970JJ von Ingenieursdisziplinen abgeleitete Entwicklungsprozesse Wasserfallansatz Strukturierte Analyse und Programmierung Prototyping 1990JJ Objektorientiere Software-Entwicklung Unified Method (Booch, Rumbaugh) FUSION (HP) RATIONAL UNIFIED PROCESS (RUP) heute dominiert UML/UP die objektorientierte SW-Konstruktion SoPra 2008 Kap. 2: Der Software-Entwicklungsprozess (2/10)

Der klassische Software-Life-Cycle Iteriertes Wasserfallmodell nach Boehm [1977]: Analyse und Definition der Anforderungen Design von System und Software Implementierung und Modultest Integration und Systemtest Einsatz und Wartung SoPra 2008 Kap. 2: Der Software-Entwicklungsprozess (3/10)

Vorteile einer Methodik in der Analysephase Verbesserte Kommunikation zwischen den Entwicklern Modelle erlauben präzise, aber abstrakte Kommunikation Analysemodell kann (und soll) mit dem Kunden besprochen werden, um das Problemverständnis zu prüfen Klarere Konzepte besseres Verständnis des Problem-Bereichs Modelle robuster gegen Änderungen in den Anforderungen Wiederverwendbarkeit der Analyseergebnisse für andere Anforderungen im selben Problem-Bereich SoPra 2008 Kap. 2: Der Software-Entwicklungsprozess (4/10)

Vorteile einer Methodik in der Designphase Weniger Redesign Problem kann auf verschiedenen Abstraktionsebenen betrachtet werden Alternativen können studiert werden, bevor man sich auf ein spezielles Design festlegt Bessere Arbeitsteilung große Projekte erfordern Teamarbeit Teamarbeit erfordert die Zerlegung des Problems in unabhängige Teile Analyse- und Designphase helfen beim Finden einer geeigneten Zerlegung SoPra 2008 Kap. 2: Der Software-Entwicklungsprozess (5/10)

Vorteile einer Methodik für den Projektverlauf und Dokumentation bessere Planbarkeit Verwendung einer anerkannten Methode schafft Vertrauen in die Durchführbarkeit Abschätzung des Aufwands wird einfacher leichtere Einbindung neuer Entwickler Einarbeitung neuer Mitarbeiter anhand der Entwicklungsdokumentation leichter ggf. Übergabe an ein neues Entwicklerteam möglich Einfachere Wartung Software wird oft nicht von den Entwicklern selbst gewartet Analyse- und Designdokumente helfen beim Verständnis des (fremden) Codes, bilden eine Entwicklungsdokumentation SoPra 2008 Kap. 2: Der Software-Entwicklungsprozess (6/10)

Vorteile... eines objektorientierten Ansatzes in der Analyse die Objekte der realen Welt finden sich 1:1 in den Modellen wieder durch die Betonung von Objekten statt Prozessen tritt das Was in den Vordergrund bessere Verständlichkeit durch Strukturierungsmöglichkeiten (z. B. Generalisierung und Aggregation) im Design Abstraktion (ADT, Datenkapselung) in der Implementierung kein Bruch: Übernahme der Ergebnisse aus Analyse & Design bessere Wiederverwendbarkeit von Code SoPra 2008 Kap. 2: Der Software-Entwicklungsprozess (7/10)

Kurzüberblick FUSION Was ist FUSION? Entwicklungsmethode der 2. Generation für objektorientierte Software erlaubt systematischen Entwurf der Objektstruktur integriert und erweitert bestehende Ansätze (vor UP) FUSION kann man an seine Bedürfnisse anpassen FUSION ist kompatibel mit UML Wissen über FUSION übertragbar auf andere Methoden In dieser Veranstaltung: FUSION light SoPra 2008 Kap. 2: Der Software-Entwicklungsprozess (8/10)

Kurzüberblick FUSION Die drei Phasen von FUSION Analyse Objekte und Konzepte im System finden Beziehungen zwischen diesen beschreiben Operationen definieren, die im System möglich sein sollen Design Entwurf der Benutzeroberfläche Anbindung an die Systemoperationen Realisierung der einzelnen Systemoperationen Interaktion der beteiligten Objekte wie können diese auf einander zugreifen? Implementierung Umsetzung des Designs in eine OO-Programmiersprache SoPra 2008 Kap. 2: Der Software-Entwicklungsprozess (9/10)

Kurzüberblick FUSION Was wann erstellt wird Anforderungsdokument Analyse Design Objektmodell Operationsmodell Interaktions modell Lebenszyklen Objektinteraktions graphen Klassen Beschreibungen Data Dictionary (Glossar) Implementierung Programm SoPra 2008 Kap. 2: Der Software-Entwicklungsprozess (10/10)