Was ist der Unterschied zwischen funktionalen und nicht funktionalen Anforderungen beim Entwurf eines Softwaresystems?
Nennen Sie Beispiele für jeden Fall.
Was ist der Unterschied zwischen funktionalen und nicht funktionalen Anforderungen beim Entwurf eines Softwaresystems?
Nennen Sie Beispiele für jeden Fall.
Antworten:
Eine funktionale Anforderung beschreibt , was ein Software - System tun soll, während nicht-funktionale Anforderungen stellen Beschränkungen auf , wie das System so tun.
Lassen Sie mich näher darauf eingehen.
Ein Beispiel für eine funktionale Anforderung wäre:
Eine verwandte nicht funktionale Anforderung für das System kann sein:
Die funktionale Anforderung beschreibt das Verhalten des Systems in Bezug auf die Funktionalität des Systems. Die nicht funktionale Anforderung erarbeitet ein Leistungsmerkmal des Systems.
Typischerweise fallen nicht funktionale Anforderungen in Bereiche wie:
Eine vollständigere Liste finden Sie im Wikipedia-Eintrag für nicht funktionale Anforderungen .
Nicht funktionale Anforderungen werden manchmal in Form von Metriken definiert (dh etwas, das über das System gemessen werden kann), um sie greifbarer zu machen. Nicht funktionale Anforderungen können auch Aspekte des Systems beschreiben, die sich nicht auf seine Ausführung, sondern auf seine zeitliche Entwicklung beziehen (z. B. Wartbarkeit, Erweiterbarkeit, Dokumentation usw.).
Funktionsanforderungen sind die wichtigsten Dinge, die der Benutzer von der Software erwartet. Wenn es sich bei der Anwendung beispielsweise um eine Bankanwendung handelt, sollte die Anwendung in der Lage sein, ein neues Konto zu erstellen, das Konto zu aktualisieren, ein Konto zu löschen usw. Die Funktionsanforderungen sind detailliert und spezifiziert im Systemdesign
Nicht funktionale Anforderungen sind nicht einfach die Anforderungen des Systems, sondern hängen (in gewisser Weise) mit der Benutzerfreundlichkeit zusammen. Beispielsweise ist für eine Bankanwendung eine wichtige nicht funktionale Anforderung verfügbar. Die Anwendung sollte rund um die Uhr ohne Ausfallzeiten verfügbar sein wenn möglich.
Die funktionalen Anforderungen geben eine Funktion an, die ein System oder eine Systemkomponente ausführen muss. Es kann auf verschiedene Arten dokumentiert werden. Die häufigsten sind schriftliche Beschreibungen in Dokumenten und Anwendungsfälle.
Anwendungsfälle können Textaufzählungslisten sowie Diagramme sein, die Benutzeraktionen beschreiben. Jeder Anwendungsfall veranschaulicht Verhaltensszenarien anhand einer oder mehrerer funktionaler Anforderungen. Oft beginnt ein Analyst jedoch damit, eine Reihe von Anwendungsfällen zu ermitteln, aus denen der Analyst die funktionalen Anforderungen ableiten kann, die implementiert werden müssen, damit ein Benutzer jeden Anwendungsfall ausführen kann.
Funktionale Anforderungen ist das, was ein System erfüllen soll . Es kann sein
Eine typische funktionale Anforderung enthält einen eindeutigen Namen und eine eindeutige Nummer, eine kurze Zusammenfassung und eine Begründung. Diese Informationen werden verwendet, um dem Leser zu helfen, zu verstehen, warum die Anforderung benötigt wird, und um die Anforderung durch die Entwicklung des Systems zu verfolgen.
LBushkin hat bereits mehr über nicht funktionale Anforderungen erklärt. Ich werde mehr hinzufügen.
Nichtfunktionale Anforderungen sind andere Anforderungen als funktionale Anforderungen. Dies sind die Anforderungen, die Kriterien angeben, anhand derer der Betrieb eines Systems beurteilt werden kann, und nicht bestimmte Verhaltensweisen .
Nichtfunktionale Anforderungen bestehen in Form von "System muss sein" , einer Gesamteigenschaft des Systems als Ganzes oder eines bestimmten Aspekts und nicht einer bestimmten Funktion. Die Gesamteigenschaften des Systems kennzeichnen üblicherweise den Unterschied zwischen dem Erfolg oder dem Misserfolg des Entwicklungsprojekts.
Nichtfunktionale Anforderungen - können in zwei Hauptkategorien unterteilt werden:
- Leistungsanforderungen
- Schnittstellenanforderungen
- Betriebsanforderungen
- Ressourcenanforderungen
- Überprüfungsanforderungen
- Akzeptanzanforderungen
- Dokumentationsanforderungen
- Sicherheitsanforderungen
- Portabilitätsanforderungen
- Qualitätsanforderungen
- Zuverlässigkeitsanforderungen
- Wartbarkeitsanforderungen
- Sicherheitsanforderungen
Ob eine Anforderung als funktionale oder nicht funktionale Anforderung ausgedrückt wird oder nicht, kann abhängen:
Ex. Möglicherweise muss ein System dem Benutzer eine Anzeige der Anzahl der Datensätze in einer Datenbank anzeigen. Dies ist eine funktionale Anforderung. Wie aktuell [Aktualisierung] diese Nummer sein muss, ist eine nicht funktionale Anforderung. Wenn die Anzahl in Echtzeit aktualisiert werden muss, müssen die Systemarchitekten sicherstellen, dass das System in der Lage ist, die Anzahl der [angezeigten] Datensätze innerhalb eines akzeptabel kurzen Intervalls nach der Anzahl der sich ändernden Datensätze zu aktualisieren.
Verweise:
Funktionale Anforderungen sind solche, die sich auf die technische Funktionalität des Systems beziehen.
Eine nicht funktionierende Anforderung ist eine Anforderung, die Kriterien angibt, anhand derer der Betrieb eines Systems unter bestimmten Bedingungen und nicht unter bestimmten Verhaltensweisen beurteilt werden kann.
Wenn Sie beispielsweise eine Einkaufsseite in Betracht ziehen, unterliegt das Hinzufügen von Artikeln zum Warenkorb, das Durchsuchen verschiedener Artikel, das Anwenden von Angeboten und Angeboten und das erfolgreiche Aufgeben von Bestellungen funktionalen Anforderungen.
Während als Leistung des Systems in Spitzenzeiten, Zeit, die das System benötigt, um Daten aus der Datenbank abzurufen, Sicherheit der Benutzerdaten, Fähigkeit des Systems zu verarbeiten, wenn eine große Anzahl von Benutzeranmeldungen unter nicht funktionale Anforderungen fällt.
FUNKTIONSANFORDERUNGEN Die Aktivitäten, die das System ausführen muss
Ich denke, die funktionale Anforderung ist von Client zu Entwickler, was die Funktionalität für den Benutzer durch die Software betrifft, und die nicht funktionale Anforderung ist von Entwickler zu Client, dh die Anforderung wird nicht vom Client gegeben, sondern vom Entwickler bereitgestellt, um das System reibungslos auszuführen, z Sicherheit, Flexibilität, Skalierbarkeit, Verfügbarkeit usw.