Der Weg vom Einzelkämpfer zum Entwicklungsteam



Ähnliche Dokumente
SPI-Seminar : Interview mit einem Softwaremanager

Projektmanagement in der Spieleentwicklung

«PERFEKTION IST NICHT DANN ERREICHT, WENN ES NICHTS MEHR HINZUZUFÜGEN GIBT, SONDERN DANN, WENN MAN NICHTS MEHR WEGLASSEN KANN.»

Einführung von Test-Prozessen laut TMMi. Egon Valentini 1. März 2010

Grundlagen Software Engineering

Informationssystemanalyse People Capability Maturity Model 6 1

ISO 9001 und CMM im Vergleich

Fotoprotokoll / Zusammenfassung. des Seminars Methodik der Gesprächsführung und Coaching. Vertriebs- & Management - Training

DIE SICHERE ENTSCHEIDUNG!

Erfahrungen mit Hartz IV- Empfängern

Speicher in der Cloud

CMM Level 5 Markus Mattes. Markus Mattes CMM Level 5 1

Kapitel 10: Dokumentation

Prozess-Modelle für die Softwareentwicklung

Software Engineering

Workshop-Unterlagen Leitbildentwicklung

STRATEGISCHE PERSONALPLANUNG FÜR KLEINE UND MITTLERE UNTERNEHMEN. Fachtagung CHANGE Papenburg Kathrin Großheim

Projekt- Management. Landesverband der Mütterzentren NRW. oder warum Horst bei uns Helga heißt

Test: Sind Sie ein Unternehmertyp?

Ist Excel das richtige Tool für FMEA? Steve Murphy, Marc Schaeffers

Klausur zu den Teilgebieten Software-Management und Software-Qualitätsmanagement

Software Engineering. Dokumentation! Kapitel 21

Projektstart für Auftraggeber und Entscheider. Bern, 27. August 2013

ONLINE-AKADEMIE. "Diplomierter NLP Anwender für Schule und Unterricht" Ziele

Lösungen mit Strategie

RUPLAN BRANCHENLÖSUNG WASSERWIRTSCHAFT

Entrepreneur. Der Aufbruch in eine neue Unternehmenskultur

Agile Software-Entwicklung im Kontext der EN50128 Wege zum Erfolg

Abschnitt 16: Objektorientiertes Design

Softwareentwicklung aus Sicht des Gehirns


Benötigen wir einen Certified Maintainer?

Management Summary. Was macht Führung zukunftsfähig? Stuttgart, den 21. April 2016

Die Zukunft der Zukunftsforschung im Deutschen Management: eine Delphi Studie

Informationen zum neuen Studmail häufige Fragen

Einführung und Motivation

Prozessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements. von Stephanie Wilke am

mit attraktiven visuellen Inhalten

Organisation des Qualitätsmanagements

Selbsttest Prozessmanagement

Erläuterungen zur Untervergabe von Instandhaltungsfunktionen

The Software Quality Challenge

Produktionsplanung und steuerung (SS 2011)

Welches Übersetzungsbüro passt zu mir?

Arbeitshilfe "Tipps für Gespräche mit Vorgesetzten und KollegInnen" Was gilt für mich?

ZIELE erreichen WERTSTROM. IDEEN entwickeln. KULTUR leben. optimieren. KVP und Lean Management:

Effiziente Prozesse. Die Formel 1 und die Druckindustrie

Functional Safety. Systems Engineering als Schlüsseldisziplin in Projekten mit funktionaler Sicherheit

Scaling Scrum Nexus professionell umsetzen

Liebe Interessierte an technischen Lösungen für die Sicherheit zu Hause,

Wissensmanagement. in KMU. Beratung und Produkte GmbH

CMMI und SPICE im Automotive Umfeld

Führungsstile Überblick. Ihr Führungsstil bestimmt Ihren Erfolg

Was sind Jahres- und Zielvereinbarungsgespräche?

Einführung Qualitätsmanagement 2 QM 2

Was macht Layer2 eigentlich? Erfahren Sie hier ein wenig mehr über uns.

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

Nutzung dieser Internetseite

BÜV-ZERT NORD-OST GMBH Zertifizierungsstelle für Managementsysteme der Baustoffindustrie

Version smarter mobile(zu finden unter Einstellungen, Siehe Bild) : Gerät/Typ(z.B. Panasonic Toughbook, Ipad Air, Handy Samsung S1):

Software Engineering. Organisation von Softwareentwicklungsprojekten

9.6 Korrekturmaßnahmen, Qualitätsverbesserung

2.1 Präsentieren wozu eigentlich?

1 Einleitung. Lernziele. automatische Antworten bei Abwesenheit senden. Einstellungen für automatische Antworten Lerndauer. 4 Minuten.

Business Solutions for Services

Welche Gedanken wir uns für die Erstellung einer Präsentation machen, sollen Ihnen die folgende Folien zeigen.

Örtliche Angebots- und Teilhabeplanung im Landkreis Weilheim-Schongau

Reden wir über Blech! Dahinter steckt viel mehr: Fertigung, Abwicklung und weitere Vorteile.

SWOT Analyse zur Unterstützung des Projektmonitorings

N N O B O X E N C H E C K. Learn more about (your) Innovation Management and how to make it even better! M A R I A T A G W E R K E R - S T U R M

Überblick: Einführung und betriebliche Umsetzung der Weiterbildung zu Prozess- oder Applikationsexperten in der Produktionstechnologie

Christian Kühnel, BMW Group AGILE ENTWICKLUNG VON FAHRERASSISTENZSOFTWARE. AGILE CARS 2014.

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

Kompetenz. rund um. Ihren. Entwicklungsprozess. Über uns. Technische Software. Modellbasierter Test. Prüfplätze. Automatisierung.

Online-Befragungen. cogitaris GmbH, Eltville. Online-Befragungen

1. DAS PRAKTIKUM IM UNTERNEHMEN: ein Leitfaden.

Der Kopf ist rund, damit das Denken die Richtung

Psychologie im Arbeitsschutz

Programmmoduls für die CEMES-Plattform zur onlinebasierten Ermittlung der Leistungspunkte

DAS PARETO PRINZIP DER SCHLÜSSEL ZUM ERFOLG

Free your work. Free your work. Wir wollen Ihnen die Freiheit geben, sich auf Ihr Geschäft zu konzentrieren.

ITIL und Entwicklungsmodelle: Die zwei Kulturen

Unsere These: Meilensteindefinitionen sind wichtig für die Projektplanung und die Bewertung des Projektstatus.

2.1 An welchen Weiterbildungsmaßnahmen haben Sie bisher teilgenommen? Beurteilen Sie bitte rückblickend deren Relevanz für Ihr Tätigkeitsfeld?

Agiles Testen. Gedankensammlung. 17. November Patrick Koglin

ascom ASCOM WIRELESS SOLUTIONS PARTNER PROGRAMM MISSION-CRITICAL COMMUNICATION UNSERE STÄRKE IHR VORTEIL [ ]

Das Wasserfallmodell - Überblick

Sehr geehrter Herr Pfarrer, sehr geehrte pastorale Mitarbeiterin, sehr geehrter pastoraler Mitarbeiter!

FRAGEBOGEN ANWENDUNG DES ECOPROWINE SELBSTBEWERTUNG-TOOLS

ÜBUNG. Einführung in das IT- Projektmanagement WS 2012/13. Dr. The Anh Vuong

Vertriebspartner. Wer hat sie nicht gerne.

Chancen 2014: Erfolgsfaktor Bibliotheksstrategie

Kulturelle Evolution 12

Übungsklausur vom 7. Dez. 2007

Lehrer: Einschreibemethoden

SCHALTEN SIE DEN DATENSCHUTZ EIN. EINFACH & EFFEKTIV.

Marktanalyse Industrial Ethernet. - Überblick -

Komplettpaket Coaching. Arbeitsmittel & Checklisten

Warum Projektmanagement?

Transkript:

Softwaremanagement Der Weg vom Einzelkämpfer zum Entwicklungsteam

Übersicht Motivation Einführung Das Software-Entwicklungsteam Der Software-Entwicklungsprozess...... und wie er mit Leben erfüllt wird Dokumente - nicht nur für Bürokraten CMM - was steckt dahinter? Zusammenfassung

Übersicht Motivation Einführung Das Software-Entwicklungsteam Der Software-Entwicklungsprozess...... und wie er mit Leben erfüllt wird Dokumente - nicht nur für Bürokraten CMM - was steckt dahinter? Zusammenfassung

Software Automatisierungstechnik Software Antriebstechnik Software ist (fast) überall... Software Software Software Software Software Software Software Software Software Software Software Software Software Software Software Software Automobil Telekommunikation SoftwareHausgeräte Software Verkehrstechnik

Software als Wettbewerbsfaktor [...] Mit der Studie "Analyse und Evaluation der Softwareentwicklung in Deutschland" liegt jetzt eine umfangreiche Untersuchung zur wirtschaftlichen und technologischen Bedeutung von Software und von Softwareentwicklung in Deutschland vor. [...] Die Studie zeigt, dass Software und Softwareentwicklung für nahezu alle Produkte und Prozesse quer durch alle Branchen der deutschen Volkswirtschaft zunehmend zum wettbewerbsbestimmenden Faktor wird. [...] Zuverlässigkeit und Funktionalität sind aus Sicht der Unternehmen die wichtigsten Qualitätseigenschaften von Software. Bisher ist aber die ingenieurmäßige Entwicklung qualitativ hochwertiger Software in Deutschland noch zu gering verbreitet. [...] Quelle: Pressemitteilung Nr. 206/2000 des bmb+f vom 29.12.2000

Software gewinnt an Bedeutung... Anteil der Softwareentwicklung an Neuentwicklungskosten Maschinenbau 14% Elektrotechnik 25% Fahrzeugbau 7% Telekommunikation 23% Durchschnitt 17% Quelle: Studie "Analyse und Evaluation der Softwareentwicklung in Deutschland"

Übersicht Motivation Einführung Das Software-Entwicklungsteam Der Software-Entwicklungsprozess...... und wie er mit Leben erfüllt wird Dokumente - nicht nur für Bürokraten CMM - was steckt dahinter? Zusammenfassung

Softwaremanagement warum? Software wird heute auch in Branchen entwickelt, die (noch) über geringe oder keine Erfahrung auf diesem Gebiet verfügen Software wird immer komplexer Zunahme der Leistungsfähigkeit der Hardware (schneller, mehr Speicher) Neuere Methoden im Bereich der Softwaretechnik finden Verbreitung (z.b. Objektorientierung) Kürzere Entwicklungszyklen Time to market von 1-2 Jahren keine Seltenheit Bildung großer Entwicklungsteams ist erforderlich

Worum geht es eigentlich? Software-Entwicklungsprozess... Wie definiere ich ihn? Wie kann er umgesetzt werden? Organisation... Welche Aufgaben (Rollen) gibt es im Projekt? Welche Qualifikationen sind notwendig? Wie organisiere ich ein Entwicklungsteam? Planung... Was plane ich? Wie plane ich?

Scope SW-Zwischenstände neue Anforderungen Fehlermeldungen Lastenheft Software Produktdefinition Softwareentwicklung Systemtest

Übersicht Motivation Einführung Das Software-Entwicklungsteam Der Software-Entwicklungsprozess...... und wie er mit Leben erfüllt wird Dokumente - nicht nur für Bürokraten CMM - was steckt dahinter? Zusammenfassung

Rollen im Entwicklungsteam Softwaremanager Qualitätsmanager Konfigurationsmanager Softwarearchitekt Technologiepate Toolmaker Entwickler Tester

Der Softwaremanager... Leitet das Entwicklungsteam Ist verantwortlich für... die Planung und die Einhaltung von Terminen das Budget den Aufbau des Entwicklungsteams Erstattet dem Management Bericht über den Projektfortschritt Bildet die Schnittstelle zu Hardwareentwicklung Systemtest Marketing / Vertrieb

Der Softwaremanager Wie soll er sein? Der Softwaremanager sollte nie gleichzeitig auch Architekt sein! Wissen über SW ist gut und wichtig aber die Architektur bestimmt der Architekt! Wichtig sind... Kommunikationsfähigkeit Durchsetzungsvermögen Planungsvermögen und Eine Menge Verständnis für die (gar nicht so seltene) Spezies der Software-Entwickler und deren Bedürfnisse und Eigenheiten!

Der Softwarearchitekt... Erstellt das Design (die Architektur) der SW Ist verantwortlich für... Die Lebensfähigkeit des Designs (Wartbarkeit, Erweiterbarkeit, Realisierbarkeit,...) Auswahl der Programmiersprache, Toolkette usw. Coding-Standards und deren Einhaltung Die Durchführung von Codeinspektionen / Reviews Berät und unterstützt den Softwaremanager bei der Planung Ist immer gleichzeitig auch Entwickler

Der Softwarearchitekt Was zeichnet ihn aus? An architect always implements! Entwicklungserfahrung Sehr gutes Systemwissen und verständnis Fundiertes Wissen im Bereich Softwaretechnik Überzeugungskraft, Durchsetzungsvermögen Gute pädagogische Fähigkeiten Soziale Kompetenz und Teamfähigkeit Menschliche Kompatibilität zum Softwaremanager ist ausgesprochen hilfreich!

Der Konfigurationsmanager... Überwacht die gesamte Versionskontrolle Erlässt projektspezifische KM-Richtlinien Ist verantwortlich für... Auswahl und Bereitstellung geeigneter Werkzeuge (Versionsverwaltungssystem) Backup-Strategien, Datensicherung usw. Die Erzeugung und Verwaltung der unterschiedlichen Softwarestände Die Versionskontrolle von Software Tools Dokumenten

Der Konfigurationsmanager Was muss er können? Gute Kenntnis der Entwicklungsumgebung Guter Überblick über das Gesamtprojekt Der KM muss selbst absolut von der Wichtigkeit seiner Aufgabe überzeugt sein! Überzeugen, überzeugen, überzeugen! Wichtige Eigenschaften sind: Organisationstalent Konsequenz Belastbarkeit Ruhe bewahren in Stresssituationen

Der Entwickler... Entwickelt Softwarekomponenten und erstellt deren Design (unter Beachtung der Gesamtarchitektur des Systems) Ist verantwortlich für... Die Funktionalität Die Qualität Die termingerechte Fertigstellung seiner Komponenten bzw. Funktionen Führt Codeinspektionen / Reviews durch Beseitigt Fehler in der Software

Der Entwickler...... und seine Eigenschaften Gute Kenntnisse in Softwaretechnik allgemein Sehr gute Beherrschung der verwendeten Sprache und Entwicklungsumgebung Gute sprachliche Ausdrucksfähigkeit Belastbarkeit Hohe Teamfähigkeit Verantwortungsbewusstsein Selbständigkeit (!) Lebenslanges Lernen ist absolut notwendig

Der Toolmaker... Erstellt Hilfsmittel für die Entwickler Werkzeuge, die neben der Toolkette für die Generierung der Software erforderlich sind Wartet und pflegt Compiler, Editor usw. Ist Ansprechpartner bei Problemen Organisiert Updates und hält Kontakt zu den Herstellern der verwendeten Tools Konfiguriert diese, soweit erforderlich, entsprechend den Bedürfnissen der Entwickler

Der Tester... Testet die Software vor der Übergabe an den Systemtest Die Tests können von Hand oder Automatisch (Testautomatisierung) durchgeführt werden. Erstellt Testpläne und Testprotokolle Meldet gefundene Fehler an die Entwickler und / oder trägt sie in die Fehlerdatenbank ein Hält die Testaufbauten auf aktuellem Stand

Der Tester Woran erkennt man ihn? Der Tester braucht destruktive Energie! Der Tester verfügt über ein gutes Technikverständnis. Systemverständnis erleichtert den Entwicklern die Arbeit! In der Praxis gilt oft Entwickler = Tester (aber bitte nicht für die eigene Software ;-) ) Wichtig sind Geduld und Ausdauer Verantwortungsbewusstsein Arbeitsorganisation

Der Technologiepate... Berät das Entwicklungsteam in technischen Fragen Kennt oder erfragt spezielle Wünsche und Anforderungen der zukünftigen Kunden Berät den Softwaremanager bei der Planung der Produktstufen (Prioritäten beim Kunden!) Beurteilt ggf. die Relevanz und Dringlichkeit geforderter Fehlerbehebungen Kommt evtl. aus Marketing oder Service

Der Technologiepate Experte und Ratgeber... sollte die Sprache der Kunden und die Sprache der Entwickler sprechen.... muss sich durch hohe Fachkompetenz auszeichnen.... muss dem Entwicklungsteam jederzeit für Fragen zur Verfügung stehen (kurze Reaktionszeiten!)... sollte das Projekt bis zur Markteinführung begleiten.

Der Qualitätsmanager... Überwacht die Einhaltung des Software- Entwicklungsprozesses und der projektspezifischen Richtlinien Erstellt Statistiken rund um das Thema Qualität Hat ausschließlich eine beratende Funktion, d.h. keine direkte Weisungsbefugnis gegenüber dem Entwicklungsteam Berichtet direkt an das Management

Qualitätsmanager... werden selten geliebt! Der QM ist ein Experte in allen Fragen des Entwicklungsprozesses. Er muss sich durch Überzeugung durchsetzen. Er muss einen guten Draht zu den Entwicklern und zum Softwaremanager haben. Nützliche Eigenschaften: Gute Kommunikationsfähigkeit Ausstrahlung von Autorität Eine gehörige Portion Idealismus schadet nicht

Übersicht Motivation Einführung Das Software-Entwicklungsteam Der Software-Entwicklungsprozess...... und wie er mit Leben erfüllt wird Dokumente - nicht nur für Bürokraten CMM - was steckt dahinter? Zusammenfassung

Der Software-Entwicklungsprozess???

Der Software-Entwicklungsprozess Wasserfall vs. Inkrementell klassisches Prozessmodell für kleine Projekte sinnvoll 3 Phasen: -Design - Implementierung - Test neueres Prozessmodell für fast alle Projekte sinnvoll Aufteilung des Entwicklungszeitraums in N Inkremente innerhalb der Inkremente: Wasserfallmodell

Das Wasserfallmodell Design Implementierung Test Vorteile Prozess ist sehr einfach zu implementieren läuft quasi von selbst geringer Management- Aufwand Zeit Nachteile Fehler werden spät erkannt Reaktion auf geänderte Anforderungen schwierig Verfolgung des Projektfortschritts schlecht möglich Entwickler geraten zum Zieltermin hin stark unter Zeitdruck

Der inkrementelle Entwicklungsprozess Grobarchitektur Projektplanung Infrastruktur // KM KM Planung I1 I1 Inkrement 1 Inkrement 2 Inkrement N Gesamtprojekt Feindesign Integration Readiness Review Test Readiness Review Implementierung Inkrement Modultest Integrationsphase Integrationstest Fehlerbehebung

Der inkrementelle Entwicklungsprozess Bewertung Vorteile Flexible Reaktion auf geänderte Anforderungen Reduktion der Personenabhängigkeit (!) Detailliertes Tracking des Projektfortschritts möglich Frühes Erkennen von Designfehlern möglich Fehlerbehebung schon während der Entwicklung gleichmäßigere Belastung der Entwickler Nachteile Leicht erhöhter Managementaufwand Umgang mit dem Prozess muss geübt werden Kaum Erholungsphasen für die Entwickler Detaillierte Planung erforderlich

Arbeitseinsatz der Entwickler Inkrementelles Modell Arbeitsvolumen Wasserfallmodell Arbeitsvolumen Projektdauer Projektdauer

Projektablauf in der Software-Entwicklung Startphase wer... Softwarearchitekt Softwaremanager Konfigurationsmanager Qualitätsmanager Wenige (!) Entwickler / Tester macht was... Grobdesign Toolkette auswählen (wenn HW bekannt!) Projektplanung Planung des 1. Inkrements Aufbau des Entwicklungsteams Planung des Konfigurationsmanagements Planung der notwendigen Infrastruktur Planung des Qualitätsmanagements Coding-Standards erstellen Entwicklungsumgebung bereitstellen Testumgebung / Testautomatisierung

Projektablauf in der Software-Entwicklung Integrationsphasen wer... Konfigurationsmanager Softwaremanager Softwarearchitekt Qualitätsmanager Tester / Entwickler macht was... Hat während der Integration die Kontrolle über das Projekt Bestimmt Zeitpunkte für die Integrationen Entscheidung über das Inkrementende Zuweisung von Fehlern an die Entwickler Planung des folgenden Inkrements Unterstützung des Softwaremanagers Integrationstest und Fehlerbehebung Überwachung des Integrationstests Fehlerstatistik Durchführung von IRR und TRR Integrationstest und Fehlerbehebung

Übersicht Motivation Einführung Das Software-Entwicklungsteam Der Software-Entwicklungsprozess...... und wie er mit Leben erfüllt wird Dokumente - nicht nur für Bürokraten CMM - was steckt dahinter? Zusammenfassung

Wie alles beginnt... Wir brauchen ein Produkt, das... Unser Konkurrent XY hat das ja auch schon... Es muss auf jeden Fall dies und das und noch etwas können... Und billiger sein als...

Auftakt Softwarearchitekt Softwaremanager Erste Budgetplanung Entwicklungsteam aufbauen Koordination mit Hardware, Systemtest usw. Anforderungen sammeln Grobdesign erstellen Programmiersprache, Toolkette auswählen Coding-Standards Entwickler Entwickler

Planungsphase Inkrement: Entwicklungsabschnitt, Ziel: nach außen sichtbare Teilfunktionalität Inhaltliche Definition des ersten Inkrements Schätzklausur mit verdeckter Abgabe der Schätzungen Grobe Festlegung der Inkremente (Anzahl und Ziele) Aufwandsabschätzung für die einzelnen WPs Grobdesign Definition von Workpackages (WPs) logische Softwarekomponente, z.b. externe Kommunikation

Inkrementablauf Feindesign Geplante Zeit abgelaufen Integration sinnvoll möglich? Wenn ja: Beginn der Integrationsphase Implementierung Integration Readiness Review Modultest Test Readiness Review Integrationsphase Integrationstest Fehlerbehebung Konfigurationsmanager übernimmt die Kontrolle Sperrung des Archivs erste Integration

Übersicht Motivation Einführung Das Software-Entwicklungsteam Der Software-Entwicklungsprozess...... und wie er mit Leben erfüllt wird Dokumente - nicht nur für Bürokraten CMM - was steckt dahinter? Zusammenfassung und Ausblick

Allgemeine Dokumente Übergeordnete Dokumente Übergeordnete Dokumente Gültigkeit für alle SW-Projekte in der Organisation, dienen der Prozessdefinition Softwaremanagementplan Konfigurationsmanagement- Plan Qualitätsmanagement-Plan...

Projektspezifische Dokumente Gültigkeit über die gesamte Dauer eines Software-Projektes Grobdesign Software-Entwicklungsplan KM-Plan (projektspezifisch) QM-Pan (projektspezifisch) Coding-Standards... Projektspezifische Dokumente Gültigkeit für jeweils ein Inkrement Inkrementplan Testplan Testprotokolle Releasenotes Feindesigndokumente...

Übersicht Motivation Einführung Das Software-Entwicklungsteam Der Software-Entwicklungsprozess...... und wie er mit Leben erfüllt wird Dokumente - nicht nur für Bürokraten CMM - was steckt dahinter? Zusammenfassung

Capability Maturity Model (SW-CMM ) for Software Entwickelt vom Software Engineering Institute (SEI) der Carnegie Mellon Universität CMM umfasst: Kriterien zur Bewertung des Istzustands Fragenkataloge zur Durchführung von Audits Aufzeigen von Wegen, wie der Software- Entwicklungsprozess schrittweise verbessert werden kann Unterscheidung von 5 Reifegraden des Prozesses

CMM die 5 Bewertungsstufen Geordneter Prozess 1 Initial Voraussagbarer Prozess 2 Repeatable 3 Defined 4 Managed Standardisierter, konsistenter Prozess 5 Optimizing Sich kontinuierlich selbst verbessernder Prozess

Struktur des Capability Maturity Models Process Capability indicate Maturity Levels Key Key Process Areas Goals Goals achieve organized by Common Features Implementation or or Institutionalization address contain Key Key Practices Infrastructure or or Activities describe

Key Process Areas Level 2 (Repeatable) Anforderungsmanagement Kontrolle der Beziehung zum Kunden ( Change Control) Software Projektplanung Realistische Planung des Ablaufs der Softwareentwicklung Software Projektverfolgung und Aufsicht Fortschrittskontrolle Software Unterauftragsmanagement Selektion qualifizierter Unterauftragnehmer Software Qualitätssicherung Management erhält Einblick in den Entwicklungsprozess Software Konfigurationsmanagement Vollständigkeit und Reproduzierbarkeit sicherstellen

Key Process Areas Level 3: Defined Prozessaktivitäten in Organisationsstruktur verankern Organisatorische Verantwortung für das Thema Entwicklungsprozess verankern Organisationsweite Prozessdefinition Trainingsprogramm Training als organisatorische Verantwortung Integriertes Softwaremanagement Engineering und Managementaktivitäten bilden einen Prozess Software Produkt-Engineering Engineering Prozess (Ablauf technischer Aktivitäten im Projekt) Koordination zwischen Gruppen Peer Reviews Fehler erkennen, Code besser verstehen (!)

Key Process Areas Level 4: Managed Quantitatives Prozessmanagement Quantitative Kontrolle der Erfüllung Prozesses des Projekts Ermittlung der speziellen Ursachen für Abweichungen innerhalb eines messbar stabilen Prozesses ggf. Korrektur der Umstände, die zu der vorübergehenden Abweichung geführt haben Software Qualitätsmanagement Ziel: quantitative Bewertung der Qualität der Software eines Projekts Erreichen spezifischer Qualitätsziele Erfordert umfassende statistische Erhebungen

Key Process Areas Level 5: Optimizing Fehlerverhütung Ursachen für Fehler identifizieren, erneutes Auftreten verhindern Fehleranalyse im Projekt, Ursachenforschung Änderung des Software Prozesses Technology Change Management Identifizierung neuer Technologien (Tools, Methoden, Prozesse) Geordnete Einführung in der Organisation Process Change Management Kontinuierliche Verbesserung des Software Prozesses Ziele: Verbesserung der Softwarequalität, Produktivitätssteigerung, Verkürzung der Entwicklungszeiten

Übersicht Motivation Einführung Das Software-Entwicklungsteam Der Software-Entwicklungsprozess...... und wie er mit Leben erfüllt wird Dokumente - nicht nur für Bürokraten CMM - was steckt dahinter? Zusammenfassung

Zusammenfassung Softwaremanagement wird immer wichtiger Ein stabiler, reproduzierbarer Software- Entwicklungsprozess hilft... Termine einzuhalten Produktentwicklungszyklen zu verkürzen Weitgehende Unabhängigkeit von einzelnen Personen zu schaffen Qualität zu sichern Jeder, der sich mit Software beschäftigt, muss sich auch mit diesem Thema auseinandersetzen!

Wer mehr zu dem Thema wissen möchte... http://www.sei.cmu.edu/cmm/cmm.html Humphrey, Watts S. Managing the Software Process SEI Series in Software-Engineering Addison Wesley Longman Inc., 1990 Kruchten, Philippe From Waterfall to Iterative Lifecycle A tough transition for project managers Rational Software White Paper Brooks, Frederick P. The mythical man-month essays on software engineering Anniversary edition Addison Wesley Longman Inc., 1995

Wer mehr zu dem Thema wissen möchte... Zachary, G. Pascal Show-Stopper!: The Breakneck Race to Create Windows NT and the next Generation at Microsoft Free Press, 1994 Yourdon, Edward Death March - The Complete Software Developer s Guide to Surviving Mission Impossible Projects Prentice Hall, 1997