Definition „Software Development“

Was ist Anwendungsentwicklung?

| Autor / Redakteur: il1411 / Stephan Augsten

In der Anwendungsentwicklung geht nichts ohne gute Vorbereitung und Planung des Software-Projekts.
In der Anwendungsentwicklung geht nichts ohne gute Vorbereitung und Planung des Software-Projekts. (Bild: Helloquence - Unsplash.com / CC0)

Mit dem Begriff „Anwendungsentwicklung“ ist der gesamte Prozess der Herstellung von Software gemeint. Dieser Prozess besteht nämlich aus verschiedenen Aufgaben, zu denen neben der Programmierung auch die Wartung und Aktualisierung zählen.

Laut der Norm ISO/IEC 9126 zur Softwarequalität zeichnet sich eine gute Anwendungsentwicklung durch sechs verschiedene Qualitätsmerkmale aus:

  • Hohe Funktionalität: Eine hohe Funktionalität besitzt die Software dann, wenn sie alle Anforderungen erfüllt, die an sie gestellt werden.
  • Zuverlässigkeit: Als zuverlässig ist das Programm dann anzusehen, wenn es sein Leistungsniveau kontinuierlich aufrechterhalten kann.
  • Einfache Benutzbarkeit: Einfache Benutzbarkeit liegt vor, wenn das Programm anwenderfreundlich ist und sich intuitiv bedienen lässt.
  • Effizienz: Eine Software lässt sich als effizient bezeichnen, wenn der Aufwand, der mit der Lösung einer bestimmten Aufgabe verbunden ist, in einem guten Verhältnis zur Güte des Ergebnisses steht.
  • Wartungsfreundlichkeit: Das Kriterium „wartungsfreundlich“ muss erfüllt sein, damit eine möglichst lange Nutzungsdauer der Software gewährleistet ist.
  • Übertragbarkeit: Mit dem Kriterium der Übertragbarkeit ist gemeint, dass das Programm problemlos auf unterschiedlicher Hardware ausgeführt werden kann.

Die Phasen der Anwendungsentwicklung

Die Entwicklung eines qualitativ hochwertigen Computerprogrammes ist ein sehr langwieriger Prozess, der sich in fünf verschiedene Phasen unterteilen lässt.

  • 1. Der Entwicklungsprozess beginnt mit der Anforderungsanalyse. Während dieser Phase wird gemeinsam mit dem Auftraggeber untersucht, welche Anforderungen das Programm erfüllen muss. Eine Dokumentation bildet den Abschluss der Anforderungsanalyse. Die Anforderungen an das Computerprogramm werden dann in einem Lastenheft festgehalten.
  • 2. Die zweite Phase hat zum Ziel, die Architektur des Programmes zu entwerfen. Diese Phase gilt als wichtiger Zwischenschritt zwischen Theorie in Praxis.
  • 3. Die Praxis steht in der dritten Phase im Mittelpunkt. In dieser Stufe des Entwicklungsprozesses – der sogenannten Development-Phase – übernehmen Programmierer die Implementierung des Programms. Hierzu wird eine Programmiersprache gewählt, mit der sich das geplante Programm möglichst effektiv realisieren lässt.
  • 4. Verschiedene Integrations- und Systemtests bilden den Schwerpunkt der nächsten Phase. Jeder Test hat zum Ziel, Fehler im Programm zu erkennen, um so den Programmierern die Möglichkeit zu geben, diese zu beseitigen.
  • 5. Die fünfte Phase ist zeitlich nach der eigentlichen Entwicklung der Computersoftware angesiedelt. Zu dieser Phase gehören die Auslieferung des Programmes, der Einsatz beim Kunden und die anschließende regelmäßige Wartung.

Weitere Vorgehensmodelle für die Entwicklung von Anwendungen

Für die Entwicklung von Anwendungen haben sich in den vergangenen Jahren weitere Vorgehensmodelle etabliert. Jedes dieser Modelle hat zum Ziel, den Prozess der Anwendungsentwicklung in seiner Komplexität beherrschbarer zu machen und die Programmentwicklung für die Beteiligten übersichtlicher zu gestalten. Zu den bekanntesten Vorgehensmodellen zählen die agile Softwareentwicklung, das Extreme Programming und das V-Modell.

Die agile Entwicklung zielt darauf ab, auf geänderte Rahmenbedingungen rasch reagieren zu können. Diese Agilität wird unter anderem dadurch erreicht, dass in jeder Phase des Entwicklungsprozesses eine enge Kommunikation mit dem Auftraggeber erfolgt. Mit dem Auftraggeber wird jeder einzelne Schritt abgesprochen. Erst dann wird er ausgeführt.

Die Extreme Programmierung (Extreme Programming, XP) greift den Ansatz der agilen Softwareentwicklung auf, geht allerdings noch weiter. Bei der Extremen Programmierung wird nämlich versucht, die Anforderungen, die das Programm zu erfüllen hat, auf eine möglichst einfache Weise zu realisieren. Auch die Extreme Programmierung zeichnet sich durch eine stetige Kommunikation zwischen Entwicklern und Auftraggeber aus. Das Ergebnis ist ein Programm mit einem Funktionsumfang, der sich an den tatsächlichen Anforderungen orientiert und nur möglicherweise nützliche Features nicht berücksichtigt.

Kommentare werden geladen....

Kommentar zu diesem Artikel

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

Wo liegen bei DevOps die Grenzen der Agilität?

Bimodales Release-Management gegen Reibungsverluste

Wo liegen bei DevOps die Grenzen der Agilität?

Fällt das Wort DevOps, so wird per se davon ausgegangen, dass eine hochgradig automatisierte und standardisierte Software-Produktionsstraße existiert. Die Agilität der Software-Entwicklung und -Bereitstellung hängt aber noch von ganz anderen Faktoren ab. lesen

Git-Clients als Alternative zu Git-CLI

In Teams entwickeln und Code verwalten

Git-Clients als Alternative zu Git-CLI

Git-Clients gibt es für eine Vielzahl von Betriebssystemen, von Windows und Linux über macOS, iOS und iPadOS bis hin zu Android. Das ermöglicht einen sehr flexiblen Einsatz, vor allem für Entwickler-Teams, deren Mitglieder gerne verschiedene Geräte einsetzen. lesen

5 häufige Fehler bei Container-Deployments

Technische und organisatorische Stolpersteine

5 häufige Fehler bei Container-Deployments

Je mehr Container in der Softwareentwicklung und -bereitstellung Verwendung finden, desto häufiger macht die Technik dahinter zwangsläufig Probleme. Hier sind die häufigsten fünf Fehler, die es zu vermeiden gilt. lesen

Schwachstellen-Erkennung in dynamischen Laufzeit-Umgebungen

DevSecOps durch Contrast Asses mit Route Intelligence

Schwachstellen-Erkennung in dynamischen Laufzeit-Umgebungen

Contrast Security, Spezialist für den Server-seitigen Schutz von Webanwendungen und APIs, will die Anwendungssicherheit in DevOps-Umgebungen verbessern. Das Feature „Route Intelligence“ soll dabei helfen, Schwachstellen kontinuierlich zu evaluieren und die potenzielle Angriffsfläche der überwachten Anwendungen besser einschätzen zu können. lesen

5 Tipps zur Belebung von Legacy Software

Altanwendungen fit für die Zukunft machen

5 Tipps zur Belebung von Legacy Software

Gezielte Modernisierungsmaßnahmen helfen dabei, Legacy-Anwendungen hinsichtlich Funktionalität und Sicherheit auf dem aktuellen Stand zu halten. Der IT-Dienstleister Avision hat fünf wichtige Aspekte eines „Software Revivals“ für Altanwendungen zusammengefasst. lesen

Security-Trainings auch für Entwickler

Statisches vs. dynamisches Security-Training

Security-Trainings auch für Entwickler

Man könnte denken, „Cybersecurity Compliance“ liegt seit Jahren im Trend mit seinen unzähligen Artikeln, Initiativen und Ausschüssen, in denen diskutiert wird, wie die Welt am besten gegen das gewaltige Multi-Bedrohungs-Biest, die Cyberkriminalität vorgehen soll. Speziell bei der Software-Sicherheit haben Unternehmen aber noch viel zu tun. lesen

Warum sich DevOps perfekt für KMU eignet

Mehr Agilität, weniger festgefahrene Strukturen

Warum sich DevOps perfekt für KMU eignet

Kleine und mittlere Unternehmen (KMU) haben den großen Konzernen eines voraus: Sie arbeiten in der Regel schneller, kosteneffizienter und agiler. Der Einsatz von DevOps passt daher perfekt zur Philosophie der KMU. Dennoch verzichten bisher viele darauf – unverständlicherweise. lesen

Git feiert im April seinen 15. Geburtstag

Jubiläum der Versionsverwaltung

Git feiert im April seinen 15. Geburtstag

Am 7. April feiert die quelloffene Versionsverwaltung namens Git ihren 15. Geburtstag. Damals hob sie Linux-Urgestein Linus Torvalds auf der Taufe – wenngleich nicht ganz freiwillig. lesen

5 Tipps für den Aufbau eines Low-Code-Teams

Citizen Developer und IT-Mitarbeiter sinnvoll einsetzen

5 Tipps für den Aufbau eines Low-Code-Teams

Low-Code steht für effiziente Software-Entwicklung und für agile Arbeitsweisen. Wenn man dies professionell umsetzen möchte, kommt man um eine neue Teamzusammensetzung aber kaum herum. Wie findet man die richtigen Leute und wie arbeiten diese am erfolgreichsten zusammen? lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Kontaktieren Sie uns über: support.vogel.de/ (ID: 44453430 / Definitionen)