Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Software Engineering WS 2009

Ähnliche Präsentationen


Präsentation zum Thema: "Software Engineering WS 2009"—  Präsentation transkript:

1 Software Engineering WS 2009
Grundlagen Was ist Software? Die Programme, Verfahren, zugehörige Dokumentation und Daten, die mit dem Betrieb eines Rechnersystems zu tun haben (IEEE ) Software ist: Computerprogramme Prozeduren Regeln für den Betrieb eines Computers Dokumentation Unterscheidung in: Systemsoftware: Betriebssystem, Compiler, Datenbanken, Kommunikations- und Dienstprogramme Anwendungssoftware: Software, die Probleme des Anwenders löst. Zielgruppen Individualentwicklung für einen Kunden Entwicklung für den allgemeinen Markt (z. B. Spiele) Software Engineering WS 2009

2 Grundlagen Softwarekosten dominieren die Kosten von Informatiksystemen
Software Engineering WS 2009

3 Grundlagen Kostenentwicklung von Software:
Software Engineering WS 2009

4 Grundlagen Vergleich: Kostenentwicklung bei Software und Hardware
Software Engineering WS 2009

5 Software Engineering WS 2009
Grundlagen Realität und Hoffnung: Hoffnung: Softwarefabriken Programmgeneratoren portable Software denkende Maschinen Realität: „Freaks“ CASE-Tools, unterschiedliche Programmiersprachen unterschiedliche Programmierstile (objektorientiert, funktional, strukturiert) Software Engineering WS 2009

6 Software Engineering WS 2009
Grundlagen Softwareentwicklung: Software-Entwicklung bedeutet die Umsetzung der Bedürfnisse von Benutzern in Software. Umfasst Spezifikation der Anforderungen, Konzept der Lösung, Entwurf und Programmierung der Komponenten, Zusammensetzung der Komponenten und ihre Einbindung in vorhandene Software, Inbetriebnahme der Software sowie Überprüfung des Entwickelten nach jedem Schritt. Das Problem verstehen Anwendungsbereich verstehen Anforderungen spezifizieren Lösung entwerfen Lösung umsetzen ( programmieren) Lösung integrieren und in Betrieb nehmen Software Engineering WS 2009

7 Software Engineering WS 2009
Grundlagen Softwarepflege: Die Benutzerbedürfnisse ändern sich schneller, als Software von Grund auf neu entwickelt werden kann.  Bestehende Software muss geändert und weiterentwickelt werden Software-Pflege (oder Software-Wartung), d. h. Modifikation und/oder Ergänzung bestehender Software durch neue Software mit dem Ziel, Fehler zu beheben, die bestehende Software an veränderte Bedürfnisse oder Umweltbedingungen anzupassen oder die bestehende Software um neue Fähigkeiten zu erweitern. Software Engineering WS 2009

8 Software Engineering WS 2009
Grundlagen Probleme bei der Softwareentwicklung Komplexität Komplexität des Anwendungsbereichs Umfang des Systems Zahl beteiligter Personen (mit ganz unterschiedlichen Voraussetzungen) Dynamik Änderungen von Anforderungen Änderungen von Rahmenbedingungen und technischen Voraussetzungen Zeitdruck Kostendruck Software Engineering WS 2009

9 Software Engineering WS 2009
Grundlagen Unterschiede zwischen kleinen und großen Projekten Klein Groß Programme von 1 bis ca. 300 Zeilen Längere Programme Für den Eigengebrauch Für den Gebrauch durch Dritte Vage Zielsetzung genügt Genaue Zielbestimmung erforderlich Ein Schritt vom Problem zur Lösung genügt. Mehrere Schritte erforderlich Lösung direkt Auf jeden Entwicklungsschritt muss ein Prüfschritt folgen Software Engineering WS 2009

10 Software Engineering WS 2009
Grundlagen Unterschiede zwischen kleinen und großen Projekten Klein Groß Komplexität des Problems in der Regel klein Komplexität des Problems größer bis sehr groß Behalten der Übersicht nicht schwierig Maßnahmen zur Strukturierung und Modularisierung erforderlich Software besteht aus wenigen Komponenten Software besteht aus vielen Komponenten; Maßnahmen zur Komponentenverwaltung In der Regel keine Dokumentation Dokumentation zwingend Keine Planung und erforderlich Projektorganisation erforderlich Software Engineering WS 2009

11 Software Engineering WS 2009
Grundlagen Wachstum des Kommunikationsbedarfs Anzahl der beteiligten Personen Kommunikationspfade Bei einer Person: keine Kommunikation ab 4 Personen: mehr Kommunikationspfade als Personen Software Engineering WS 2009

12 Software Engineering WS 2009
Grundlagen Überproportionaler Anstieg des Aufwandes: Software Engineering WS 2009

13 Software Engineering WS 2009
Grundlagen Software Engineering: Technische Disziplin, die sich mit der Bereitstellung und der systematischen, ingenieurmäßigen Anwendung von Prinzipien, Methoden und Werkzeugen zum Entwurf und zur Herstellung von Software befasst. Software Engineering WS 2009

14 Software Engineering WS 2009
Grundlagen Ziele des Software Engineering Funktionstreue Software soll das leisten, was sich die Auftraggeber/Benutzer davon erwarten Qualität Einhalten der Qualitätsanforderungen Termine Kurze Entwicklungszeiten! Einhalten der zugesagten Fertigstellungstermine Kosten Kostengünstige Entwicklung von Software Einhaltung des geplanten Sach- und Personalaufwandes Software Engineering WS 2009

15 Software Engineering WS 2009
Grundlagen Qualität von Software Qualitätsmerkmale für Software (Beispiele) Korrektheit: Software soll das leisten, was sich die Auftraggeber/Benutzer davon erwarten Performance Ressourcenbeanspruchung Wartbarkeit Kompatibilität zu andern Produkten Usability Kosten: Kostengünstige Entwicklung von Software; Einhaltung des geplanten Sach- und Personalaufwandes Termingerechte Lieferung: Einhalten der zugesagten Fertigstellungstermine; Kurze Entwicklungszeiten! After Sales Support verständliche Dokumentation Software Engineering WS 2009

16 Software Engineering WS 2009
Grundlagen Fehler bei der Softwareentwicklung Es wird sofort mit der Codierung begonnen Es wird nicht systematisch und ausreichend getestet; Testergebnisse werden nicht dokumentiert Eine Festlegung der Anforderungen fehlt Akzeptanzkriterien für die Qualitätsanforderungen fehlen Standards und Richtlinien werden nicht beachtet Dokumentation ist veraltet, fehlerhaft, unzureichend Ein Vorgehensmodell fehlt bzw. wird nicht verfolgt Eine Abnahme der Phasenergebnisse erfolgt nicht Schlechte Namensvergabe bei Variablen und Klassen Schulung wird vernachlässigt Falsche Auswahl der Werkzeuge Software Engineering WS 2009

17 Software Engineering WS 2009
Grundlagen Effekte von Fehlern und Entstehungswege der unterschiedlichen Fehlerarten Software Engineering WS 2009

18 Software Engineering WS 2009
Grundlagen Zusammenfassung Die Entwicklung von Software erfordert ein systematisches, ingenieurmäßiges Vorgehen Herausforderungen bei der Software-Entwicklung sind Komplexität, Dynamik, Zeit- und Kostendruck Software Engineering ist die technische Disziplin, die sich mit der Erstellung von Software befasst. Hierfür stellt sie Prinzipien, Methoden und Werkzeuge bereit. Ziele sind Funktionstreue, Qualität, Termine, Kosten Wichtige Phasen eines Software-Projektes sind Planung, Analyse, Entwurf, Implementierung, Abnahme und Einführung, Wartung und Pflege Die Software-Krise überwunden? Nein. Wir haben nach wie vor ... ... häufige Termin- und Kostenüberschreitungen ... ganz oder teilweise gescheiterte Projekte ... zu wenig konsequent gelebtes Software Engineering Also nichts erreicht? Doch, sehr viel sogar. Wir schaffen heute Software einer Größe und Komplexität, die vor 20 Jahren weit jenseits des Machbaren lag Viele Routineprobleme werden heute gut beherrscht Sind wir schlechter als andere? Nein. Software Engineering ist im Mittel schwieriger als das Engineering klassischer Systeme und Produkte In der Beherrschung großer Non-Standardsysteme sind wir heute teilweise besser als klassische Ingenieure zu tun? Auf der Erzeugerseite Software Engineering systematisch lernen ... ... und konsequent in der Praxis umsetzen Weg von der Kultur des Bastelns und Heimwerkens ... ... hin zu einer Kultur professionellen Arbeitens Auf der Kundenseite Bewusstsein für den Zusammenhang zwischen Kosten, Terminen und Qualität stärken Professionelles Software Engineering als Selbstverständlichkeit fordern ... ... und bereit sein, den damit erzielten Mehrwert zu bezahlen Software Engineering WS 2009


Herunterladen ppt "Software Engineering WS 2009"

Ähnliche Präsentationen


Google-Anzeigen