SlideShare ist ein Scribd-Unternehmen logo
Qualitätskriterien und Agilität
in der Softwareentwicklung
Rico Fritzsche
• Studium M.A. Philosophie und Germanistik
• Seit 1996 in IT Branche tätig (Freelancer)
• 2006 Gründung VISUAL WORLD
• Tätigkeitsfelder: Software Architektur und
  Development; Technologie Consulting
• Freier Autor und Publizist (z.B. dotnet Magazin,
  Visual Studio One)
Visual World
•   Individuelle, kundenspezifische Softwarelösungen
•   Konzeption und Umsetzung von Softwareprojekten
•   Technologie Consulting
•   Schwerpunkt: Entwicklung von verteilten,
    datengetriebene Anwendungen unter Verwendung
    von Microsofttechnologien (.NET Framework, WCF,
    etc.)
Visual World
• Z.B.: Webportale, HR-Systeme…
• Datengetriebene 2-Tier/ Multi-Tier Anwendungen
• Kunden: Public Sector, Internationale (agierende)
  Organisationen; z.B.: Zentrum für Internationale
  Friedenseinsätze Berlin, NRC Norwegen, … aber auch
  Energieversorger, z.B.: EON Thüringen, Thüringer
  Netkom GmbH
Agenda
•   Voraussetzungen für Projektrealisierung
•   Qualitätskriterien
•   Was bedeutet „Agil“?
•   Das Agile Manifest
Problemstellung
Was ist notwendig, um ein
Softwareentwicklungsprojekt
erfolgreich umzusetzen?
• Fachliche Analyse/ Auseinandersetzung mit
  Thematik/ Anforderungen des Kunden
• Problematik bzw. Prozesse fachlich verstehen
• Geeignete Technologien finden
• Implementierungsstrategie erstellen
• Softwarearchitektur/ Software-Design
• Team zusammenstellen/ Verantwortlichkeiten
  festlegen
• Qualitätssicherung
Die Motivation
Warum muss man sich über den
Entwicklungsprozess, Architektur
und die Softwarequalität im Vorfeld
Gedanken machen?
Die Motivation
• Beherrschung von Komplexität
• Änderungen der Normalfall und nicht die Ausnahme
• Fokus auf Wartbarkeit und Erweiterbarkeit
Qualitätskriterien
Qualitätskriterien
• Korrektheit
  Erfüllt die Software die in der Spezifikation
  beschriebenen Anforderungen?
  Zu beachten: Gibt die Spezifikation nicht die
  Anforderungen korrekt wieder, leistet auch die
  Software nicht das Gewünschte!
Qualitätskriterien
• Zuverlässigkeit
  Fehler sollten nur selten auftreten und nur geringe
  Auswirkungen haben.
Qualitätskriterien
• Robustheit
  Sinnvolle Fehlerbehandlungen;
  Reaktion auf Fehler aus der Umgebung
  (z.B. Bedienungsfehler, Fehler von verknüpften
  System etc.).
Qualitätskriterien
• Usability (Benutzerfreundlichkeit)
  Intuitive Bedienung und leichte Erlernbarkeit.
  Verständliche Hinweise und Fehlermeldungen.
Qualitätskriterien
• Wartbarkeit
  Standardisierte Entwicklung
  (Design Patterns, Richtlinien)
  Beherrschung der Komplexität
  Verständlicher Code, Entkoppelung
Qualitätskriterien
• Effizienz (Performance)
  Angemessenes Laufzeitverhalten und
  Speicherplatzbedarf
Qualitätskriterien
• Dokumentation
 Sowohl für den Benutzer (Handbücher) als auch für
 den (Weiter-)Entwickler
 (Dokumentation der einzelnen Entwicklungsschritte,
 der Implementierung, von Testplänen, ...).
Qualitätskriterien
• Portabilität
  z.B. Übertragbarkeit der Software auf andere
  Rechner.
Wichtigstes Ziel: Wartbarkeit
Zu erreichen durch OOP
(Objektorientierte Programmierung) und
DDD (Domain Driven Design)
Programmierstile
• Prozedurale Programmierung
  – Einfaches „runterprogrammieren“ der
    Anforderung am Stück
  – Dadurch: Vermischung Data Access, Business Logic
    und Presentation
  – Wiederverwendung ist nicht möglich
  – Wartbarkeit: schlecht (viel doppelter oder
    ähnlicher Quellcode an mehreren Stellen)
Programmierstile
• Objektorientierte Programmierung (OOP)
  – Entwicklung auf Basis von OO-Grundsätzen, -
    Praktiken und Design Patterns
  – Setzt Design voraus (OOD)
  – Wiederverwendung und Wartbarkeit
Programmierstile
Verhältnis Aufwand zu Komplexität nach Martin Fowler
Agilität in der Umsetzung
• Agil = lat. agilis “flink, beweglich“
• Ziel: Softwareentwicklung schlanker und flexibler zu
  machen
• Fundament für agile Softwareentwicklung:
  Manifesto for Agile Software Development (2001)
  (17 Autoren, u.a. Kent Beck, Martin Fowler, Robert C.
  Martin…)
Die Prinzipien des Agilen Manifests
Individuen und Interaktionen sind wichtiger als Prozesse und
Werkzeuge. - Zwar sind wohldefinierte Entwicklungsprozesse
und Entwicklungswerkzeuge wichtig, wesentlicher sind jedoch
die Qualifikation der Mitarbeitenden und eine effiziente
Kommunikation zwischen ihnen.
Die Prinzipien des Agilen Manifests
Funktionierende Programme sind wichtiger als ausführliche
Dokumentation. - Gut geschriebene und ausführliche
Dokumentation kann zwar hilfreich sein, das eigentliche Ziel der
Entwicklung ist jedoch die fertige Software.
Die Prinzipien des Agilen Manifests
Die stetige Abstimmung mit dem Kunden ist wichtiger als die
ursprüngliche Leistungsbeschreibung in Verträgen. - Statt sich an
ursprünglich formulierten und mittlerweile veralteten
Leistungsbeschreibungen in Verträgen festzuhalten, steht
vielmehr die fortwährende konstruktive und vertrauensvolle
Abstimmung mit dem Kunden im Mittelpunkt.
Die Prinzipien des Agilen Manifests
Der Mut und die Offenheit für Änderungen stehen über dem
Befolgen eines festgelegten Plans. - Im Verlauf eines
Entwicklungsprojektes ändern sich viele Anforderungen und
Randbedingungen ebenso wie das Verständnis des
Problemfeldes. Das Team muss darauf schnell reagieren können.

Weitere ähnliche Inhalte

Andere mochten auch

Conférence African Business Club : Personal branding et recherche d'emploi
Conférence African Business Club : Personal branding et recherche d'emploiConférence African Business Club : Personal branding et recherche d'emploi
Conférence African Business Club : Personal branding et recherche d'emploi
AnitaOlland
 
Les journées de Chipo - Jour 283
Les journées de Chipo - Jour 283Les journées de Chipo - Jour 283
Les journées de Chipo - Jour 283
Figaronron Figaronron
 
Décret n°2002 9-du_4_janvier_2002
Décret n°2002 9-du_4_janvier_2002Décret n°2002 9-du_4_janvier_2002
Les journées de Chipo - Jour 273
Les journées de Chipo - Jour 273Les journées de Chipo - Jour 273
Les journées de Chipo - Jour 273
Figaronron Figaronron
 
Marktsplits - Tools für das Strategische Management
Marktsplits - Tools für das Strategische ManagementMarktsplits - Tools für das Strategische Management
Marktsplits - Tools für das Strategische Management
Winfried Kempfle Marketing Services
 
8. casos de impunidad
8.  casos de impunidad8.  casos de impunidad
Book événementiel Ferret consulting group
Book événementiel Ferret consulting groupBook événementiel Ferret consulting group
Book événementiel Ferret consulting group
Vincent Herbelet
 
Apres 3e choisir_voie_domaine_mars_2014
Apres 3e choisir_voie_domaine_mars_2014Apres 3e choisir_voie_domaine_mars_2014
Apres 3e choisir_voie_domaine_mars_2014
FCPEAusone
 
Proyecto "Las ideas tienen consecuencias".
Proyecto "Las ideas tienen consecuencias".Proyecto "Las ideas tienen consecuencias".
Proyecto "Las ideas tienen consecuencias".
Edgar Devia Góngora
 
P U M S,
P U M S, P U M S,
P U M S, DFC2011
 
Schaefer10e ppt ch21
Schaefer10e ppt ch21Schaefer10e ppt ch21
Schaefer10e ppt ch21kamran
 
Ebola - Situació actual i material de surport (09/10/2014)
Ebola - Situació actual i material  de surport (09/10/2014)Ebola - Situació actual i material  de surport (09/10/2014)
Ebola - Situació actual i material de surport (09/10/2014)
Col·legi Oficial de Metges de Barcelona
 
Enlace Ciudadano Nro. 256 - Plan de contingencia, Senescyt
Enlace Ciudadano Nro. 256 -  Plan de contingencia, Senescyt Enlace Ciudadano Nro. 256 -  Plan de contingencia, Senescyt
Enlace Ciudadano Nro. 256 - Plan de contingencia, Senescyt
Presidencia de la República del Ecuador
 
Cuento blancanieves
Cuento blancanievesCuento blancanieves
Cuento blancanieves
Ana Rodriguez Martinez
 
Les journées de Chipo - Jour 274
Les journées de Chipo - Jour 274Les journées de Chipo - Jour 274
Les journées de Chipo - Jour 274
Figaronron Figaronron
 
Enlace Ciudadano Nro. 291 - Dalo Bucaram
Enlace Ciudadano Nro. 291 - Dalo BucaramEnlace Ciudadano Nro. 291 - Dalo Bucaram
Enlace Ciudadano Nro. 291 - Dalo Bucaram
Presidencia de la República del Ecuador
 
Violence handbook fr
Violence handbook frViolence handbook fr
Violence handbook fr
norelien
 

Andere mochten auch (20)

Conférence African Business Club : Personal branding et recherche d'emploi
Conférence African Business Club : Personal branding et recherche d'emploiConférence African Business Club : Personal branding et recherche d'emploi
Conférence African Business Club : Personal branding et recherche d'emploi
 
Les journées de Chipo - Jour 283
Les journées de Chipo - Jour 283Les journées de Chipo - Jour 283
Les journées de Chipo - Jour 283
 
Décret n°2002 9-du_4_janvier_2002
Décret n°2002 9-du_4_janvier_2002Décret n°2002 9-du_4_janvier_2002
Décret n°2002 9-du_4_janvier_2002
 
Les journées de Chipo - Jour 273
Les journées de Chipo - Jour 273Les journées de Chipo - Jour 273
Les journées de Chipo - Jour 273
 
Presentation sejour hpi
Presentation sejour hpiPresentation sejour hpi
Presentation sejour hpi
 
Marktsplits - Tools für das Strategische Management
Marktsplits - Tools für das Strategische ManagementMarktsplits - Tools für das Strategische Management
Marktsplits - Tools für das Strategische Management
 
8. casos de impunidad
8.  casos de impunidad8.  casos de impunidad
8. casos de impunidad
 
Book événementiel Ferret consulting group
Book événementiel Ferret consulting groupBook événementiel Ferret consulting group
Book événementiel Ferret consulting group
 
Apres 3e choisir_voie_domaine_mars_2014
Apres 3e choisir_voie_domaine_mars_2014Apres 3e choisir_voie_domaine_mars_2014
Apres 3e choisir_voie_domaine_mars_2014
 
Proyecto "Las ideas tienen consecuencias".
Proyecto "Las ideas tienen consecuencias".Proyecto "Las ideas tienen consecuencias".
Proyecto "Las ideas tienen consecuencias".
 
P U M S,
P U M S, P U M S,
P U M S,
 
Schaefer10e ppt ch21
Schaefer10e ppt ch21Schaefer10e ppt ch21
Schaefer10e ppt ch21
 
L'echo de la plage
L'echo de la plageL'echo de la plage
L'echo de la plage
 
Ebola - Situació actual i material de surport (09/10/2014)
Ebola - Situació actual i material  de surport (09/10/2014)Ebola - Situació actual i material  de surport (09/10/2014)
Ebola - Situació actual i material de surport (09/10/2014)
 
Enlace Ciudadano Nro. 256 - Plan de contingencia, Senescyt
Enlace Ciudadano Nro. 256 -  Plan de contingencia, Senescyt Enlace Ciudadano Nro. 256 -  Plan de contingencia, Senescyt
Enlace Ciudadano Nro. 256 - Plan de contingencia, Senescyt
 
Presentatie krefeld 27032012_duits
Presentatie krefeld 27032012_duitsPresentatie krefeld 27032012_duits
Presentatie krefeld 27032012_duits
 
Cuento blancanieves
Cuento blancanievesCuento blancanieves
Cuento blancanieves
 
Les journées de Chipo - Jour 274
Les journées de Chipo - Jour 274Les journées de Chipo - Jour 274
Les journées de Chipo - Jour 274
 
Enlace Ciudadano Nro. 291 - Dalo Bucaram
Enlace Ciudadano Nro. 291 - Dalo BucaramEnlace Ciudadano Nro. 291 - Dalo Bucaram
Enlace Ciudadano Nro. 291 - Dalo Bucaram
 
Violence handbook fr
Violence handbook frViolence handbook fr
Violence handbook fr
 

Ähnlich wie Agilität und Qualitätskriterien in der Softwareentwicklung

2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität
2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität
2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität
FotiosKaramitsos
 
Erfolgsfaktoren der Wikieinführung in KMU
Erfolgsfaktoren der Wikieinführung in KMUErfolgsfaktoren der Wikieinführung in KMU
Erfolgsfaktoren der Wikieinführung in KMU
Martin Koser
 
Applikationsmodernisierung: Der Weg von Legacy in die Cloud
Applikationsmodernisierung: Der Weg von Legacy in die CloudApplikationsmodernisierung: Der Weg von Legacy in die Cloud
Applikationsmodernisierung: Der Weg von Legacy in die Cloud
Aarno Aukia
 
Xidra 2016 DevOps
Xidra 2016 DevOpsXidra 2016 DevOps
Xidra 2016 DevOps
Eduard van den Bongard
 
Agilität im Systems Engineering – geht das?
Agilität im Systems Engineering – geht das?Agilität im Systems Engineering – geht das?
Agilität im Systems Engineering – geht das?
HOOD Group
 
DACHNUG50 Erfolgreiche Digitalisierung Notes Anwendungen mit Low Code L”sung ...
DACHNUG50 Erfolgreiche Digitalisierung Notes Anwendungen mit Low Code L”sung ...DACHNUG50 Erfolgreiche Digitalisierung Notes Anwendungen mit Low Code L”sung ...
DACHNUG50 Erfolgreiche Digitalisierung Notes Anwendungen mit Low Code L”sung ...
DNUG e.V.
 
Softwerkskammer Chemnitz Special Pecha Kucha Night
Softwerkskammer Chemnitz Special Pecha Kucha NightSoftwerkskammer Chemnitz Special Pecha Kucha Night
Softwerkskammer Chemnitz Special Pecha Kucha Night
ChristinaLerch1
 
Firmenvorstellung der Navigate AG
Firmenvorstellung der Navigate AGFirmenvorstellung der Navigate AG
Firmenvorstellung der Navigate AG
Roland Löffler
 
Dokumentation in agilen Projekten - WebMontag Edition
Dokumentation in agilen Projekten - WebMontag EditionDokumentation in agilen Projekten - WebMontag Edition
Dokumentation in agilen Projekten - WebMontag Edition
Simon Krackrügge
 
Zinit.leistungen.webentwicklung.v1.0.de
Zinit.leistungen.webentwicklung.v1.0.deZinit.leistungen.webentwicklung.v1.0.de
Zinit.leistungen.webentwicklung.v1.0.de
Kenner Soft Service GmbH
 
Soget Broschüre - Deutsch
Soget Broschüre - DeutschSoget Broschüre - Deutsch
Soget Broschüre - Deutsch
SOGET, Multilanguage service provider
 
Softwarequalität - Einführung in eine neue Vorlesung
Softwarequalität - Einführung in eine neue VorlesungSoftwarequalität - Einführung in eine neue Vorlesung
Softwarequalität - Einführung in eine neue Vorlesung
Gerrit Beine
 
Synaptic Network GmbH - Firmenprofil
Synaptic Network GmbH - FirmenprofilSynaptic Network GmbH - Firmenprofil
Synaptic Network GmbH - Firmenprofil
Synaptic Network GmbH
 
Agiles Management für erfolgreiche IT-Projekte
Agiles Management für erfolgreiche IT-ProjekteAgiles Management für erfolgreiche IT-Projekte
Agiles Management für erfolgreiche IT-Projekte
JustRelate
 
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-GroßprojekteAgil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
QAware GmbH
 
Lean development 04
Lean development 04Lean development 04
Lean development 04SuperB2
 
Software-Engineering in der Luft- und Raumfahrt mit Open-Source-Tools
Software-Engineering in der Luft- und Raumfahrt mit Open-Source-ToolsSoftware-Engineering in der Luft- und Raumfahrt mit Open-Source-Tools
Software-Engineering in der Luft- und Raumfahrt mit Open-Source-Tools
Andreas Schreiber
 
Lean Development / Standardisierte Software-Entwicklung
Lean Development / Standardisierte Software-EntwicklungLean Development / Standardisierte Software-Entwicklung
Lean Development / Standardisierte Software-Entwicklung
SuperB2
 
The new job of qa was ein quality engineer zukünftig können muss
The new job of qa   was ein quality engineer zukünftig können mussThe new job of qa   was ein quality engineer zukünftig können muss
The new job of qa was ein quality engineer zukünftig können muss
raezz
 
Individuelle Software Entwicklung
Individuelle Software EntwicklungIndividuelle Software Entwicklung
Individuelle Software Entwicklung
Dorie Fehlmann
 

Ähnlich wie Agilität und Qualitätskriterien in der Softwareentwicklung (20)

2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität
2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität
2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität
 
Erfolgsfaktoren der Wikieinführung in KMU
Erfolgsfaktoren der Wikieinführung in KMUErfolgsfaktoren der Wikieinführung in KMU
Erfolgsfaktoren der Wikieinführung in KMU
 
Applikationsmodernisierung: Der Weg von Legacy in die Cloud
Applikationsmodernisierung: Der Weg von Legacy in die CloudApplikationsmodernisierung: Der Weg von Legacy in die Cloud
Applikationsmodernisierung: Der Weg von Legacy in die Cloud
 
Xidra 2016 DevOps
Xidra 2016 DevOpsXidra 2016 DevOps
Xidra 2016 DevOps
 
Agilität im Systems Engineering – geht das?
Agilität im Systems Engineering – geht das?Agilität im Systems Engineering – geht das?
Agilität im Systems Engineering – geht das?
 
DACHNUG50 Erfolgreiche Digitalisierung Notes Anwendungen mit Low Code L”sung ...
DACHNUG50 Erfolgreiche Digitalisierung Notes Anwendungen mit Low Code L”sung ...DACHNUG50 Erfolgreiche Digitalisierung Notes Anwendungen mit Low Code L”sung ...
DACHNUG50 Erfolgreiche Digitalisierung Notes Anwendungen mit Low Code L”sung ...
 
Softwerkskammer Chemnitz Special Pecha Kucha Night
Softwerkskammer Chemnitz Special Pecha Kucha NightSoftwerkskammer Chemnitz Special Pecha Kucha Night
Softwerkskammer Chemnitz Special Pecha Kucha Night
 
Firmenvorstellung der Navigate AG
Firmenvorstellung der Navigate AGFirmenvorstellung der Navigate AG
Firmenvorstellung der Navigate AG
 
Dokumentation in agilen Projekten - WebMontag Edition
Dokumentation in agilen Projekten - WebMontag EditionDokumentation in agilen Projekten - WebMontag Edition
Dokumentation in agilen Projekten - WebMontag Edition
 
Zinit.leistungen.webentwicklung.v1.0.de
Zinit.leistungen.webentwicklung.v1.0.deZinit.leistungen.webentwicklung.v1.0.de
Zinit.leistungen.webentwicklung.v1.0.de
 
Soget Broschüre - Deutsch
Soget Broschüre - DeutschSoget Broschüre - Deutsch
Soget Broschüre - Deutsch
 
Softwarequalität - Einführung in eine neue Vorlesung
Softwarequalität - Einführung in eine neue VorlesungSoftwarequalität - Einführung in eine neue Vorlesung
Softwarequalität - Einführung in eine neue Vorlesung
 
Synaptic Network GmbH - Firmenprofil
Synaptic Network GmbH - FirmenprofilSynaptic Network GmbH - Firmenprofil
Synaptic Network GmbH - Firmenprofil
 
Agiles Management für erfolgreiche IT-Projekte
Agiles Management für erfolgreiche IT-ProjekteAgiles Management für erfolgreiche IT-Projekte
Agiles Management für erfolgreiche IT-Projekte
 
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-GroßprojekteAgil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
 
Lean development 04
Lean development 04Lean development 04
Lean development 04
 
Software-Engineering in der Luft- und Raumfahrt mit Open-Source-Tools
Software-Engineering in der Luft- und Raumfahrt mit Open-Source-ToolsSoftware-Engineering in der Luft- und Raumfahrt mit Open-Source-Tools
Software-Engineering in der Luft- und Raumfahrt mit Open-Source-Tools
 
Lean Development / Standardisierte Software-Entwicklung
Lean Development / Standardisierte Software-EntwicklungLean Development / Standardisierte Software-Entwicklung
Lean Development / Standardisierte Software-Entwicklung
 
The new job of qa was ein quality engineer zukünftig können muss
The new job of qa   was ein quality engineer zukünftig können mussThe new job of qa   was ein quality engineer zukünftig können muss
The new job of qa was ein quality engineer zukünftig können muss
 
Individuelle Software Entwicklung
Individuelle Software EntwicklungIndividuelle Software Entwicklung
Individuelle Software Entwicklung
 

Agilität und Qualitätskriterien in der Softwareentwicklung

  • 1. Qualitätskriterien und Agilität in der Softwareentwicklung
  • 2. Rico Fritzsche • Studium M.A. Philosophie und Germanistik • Seit 1996 in IT Branche tätig (Freelancer) • 2006 Gründung VISUAL WORLD • Tätigkeitsfelder: Software Architektur und Development; Technologie Consulting • Freier Autor und Publizist (z.B. dotnet Magazin, Visual Studio One)
  • 3. Visual World • Individuelle, kundenspezifische Softwarelösungen • Konzeption und Umsetzung von Softwareprojekten • Technologie Consulting • Schwerpunkt: Entwicklung von verteilten, datengetriebene Anwendungen unter Verwendung von Microsofttechnologien (.NET Framework, WCF, etc.)
  • 4. Visual World • Z.B.: Webportale, HR-Systeme… • Datengetriebene 2-Tier/ Multi-Tier Anwendungen • Kunden: Public Sector, Internationale (agierende) Organisationen; z.B.: Zentrum für Internationale Friedenseinsätze Berlin, NRC Norwegen, … aber auch Energieversorger, z.B.: EON Thüringen, Thüringer Netkom GmbH
  • 5. Agenda • Voraussetzungen für Projektrealisierung • Qualitätskriterien • Was bedeutet „Agil“? • Das Agile Manifest
  • 6. Problemstellung Was ist notwendig, um ein Softwareentwicklungsprojekt erfolgreich umzusetzen?
  • 7. • Fachliche Analyse/ Auseinandersetzung mit Thematik/ Anforderungen des Kunden • Problematik bzw. Prozesse fachlich verstehen • Geeignete Technologien finden • Implementierungsstrategie erstellen • Softwarearchitektur/ Software-Design • Team zusammenstellen/ Verantwortlichkeiten festlegen • Qualitätssicherung
  • 8. Die Motivation Warum muss man sich über den Entwicklungsprozess, Architektur und die Softwarequalität im Vorfeld Gedanken machen?
  • 9. Die Motivation • Beherrschung von Komplexität • Änderungen der Normalfall und nicht die Ausnahme • Fokus auf Wartbarkeit und Erweiterbarkeit
  • 11. Qualitätskriterien • Korrektheit Erfüllt die Software die in der Spezifikation beschriebenen Anforderungen? Zu beachten: Gibt die Spezifikation nicht die Anforderungen korrekt wieder, leistet auch die Software nicht das Gewünschte!
  • 12. Qualitätskriterien • Zuverlässigkeit Fehler sollten nur selten auftreten und nur geringe Auswirkungen haben.
  • 13. Qualitätskriterien • Robustheit Sinnvolle Fehlerbehandlungen; Reaktion auf Fehler aus der Umgebung (z.B. Bedienungsfehler, Fehler von verknüpften System etc.).
  • 14. Qualitätskriterien • Usability (Benutzerfreundlichkeit) Intuitive Bedienung und leichte Erlernbarkeit. Verständliche Hinweise und Fehlermeldungen.
  • 15. Qualitätskriterien • Wartbarkeit Standardisierte Entwicklung (Design Patterns, Richtlinien) Beherrschung der Komplexität Verständlicher Code, Entkoppelung
  • 16. Qualitätskriterien • Effizienz (Performance) Angemessenes Laufzeitverhalten und Speicherplatzbedarf
  • 17. Qualitätskriterien • Dokumentation Sowohl für den Benutzer (Handbücher) als auch für den (Weiter-)Entwickler (Dokumentation der einzelnen Entwicklungsschritte, der Implementierung, von Testplänen, ...).
  • 18. Qualitätskriterien • Portabilität z.B. Übertragbarkeit der Software auf andere Rechner.
  • 19. Wichtigstes Ziel: Wartbarkeit Zu erreichen durch OOP (Objektorientierte Programmierung) und DDD (Domain Driven Design)
  • 20. Programmierstile • Prozedurale Programmierung – Einfaches „runterprogrammieren“ der Anforderung am Stück – Dadurch: Vermischung Data Access, Business Logic und Presentation – Wiederverwendung ist nicht möglich – Wartbarkeit: schlecht (viel doppelter oder ähnlicher Quellcode an mehreren Stellen)
  • 21. Programmierstile • Objektorientierte Programmierung (OOP) – Entwicklung auf Basis von OO-Grundsätzen, - Praktiken und Design Patterns – Setzt Design voraus (OOD) – Wiederverwendung und Wartbarkeit
  • 22. Programmierstile Verhältnis Aufwand zu Komplexität nach Martin Fowler
  • 23. Agilität in der Umsetzung • Agil = lat. agilis “flink, beweglich“ • Ziel: Softwareentwicklung schlanker und flexibler zu machen • Fundament für agile Softwareentwicklung: Manifesto for Agile Software Development (2001) (17 Autoren, u.a. Kent Beck, Martin Fowler, Robert C. Martin…)
  • 24. Die Prinzipien des Agilen Manifests Individuen und Interaktionen sind wichtiger als Prozesse und Werkzeuge. - Zwar sind wohldefinierte Entwicklungsprozesse und Entwicklungswerkzeuge wichtig, wesentlicher sind jedoch die Qualifikation der Mitarbeitenden und eine effiziente Kommunikation zwischen ihnen.
  • 25. Die Prinzipien des Agilen Manifests Funktionierende Programme sind wichtiger als ausführliche Dokumentation. - Gut geschriebene und ausführliche Dokumentation kann zwar hilfreich sein, das eigentliche Ziel der Entwicklung ist jedoch die fertige Software.
  • 26. Die Prinzipien des Agilen Manifests Die stetige Abstimmung mit dem Kunden ist wichtiger als die ursprüngliche Leistungsbeschreibung in Verträgen. - Statt sich an ursprünglich formulierten und mittlerweile veralteten Leistungsbeschreibungen in Verträgen festzuhalten, steht vielmehr die fortwährende konstruktive und vertrauensvolle Abstimmung mit dem Kunden im Mittelpunkt.
  • 27. Die Prinzipien des Agilen Manifests Der Mut und die Offenheit für Änderungen stehen über dem Befolgen eines festgelegten Plans. - Im Verlauf eines Entwicklungsprojektes ändern sich viele Anforderungen und Randbedingungen ebenso wie das Verständnis des Problemfeldes. Das Team muss darauf schnell reagieren können.