2009-08-23 13 views
0

Bei meinem derzeitigen Arbeitgeber wenden wir im Allgemeinen den Old-School-Ansatz an, eine traditionelle funktionale Anforderungsspezifikation zu schreiben und dann ein vollständiges Tech-Design durchzuführen. Wenn die App groß ist, zerlegen wir sie in kleinere Stücke und greifen sie Stück für Stück an, aber folgen demselben Grundmuster.Konkrete Vorteile der Anwendungsfallmodellierung

Diese Technik hat mir im Laufe der Jahre gut gedient. Bei der Use-Case-Modellierung scheint es, dass Sie ziemlich genau die gleichen Informationen sammeln müssen, es ist nur anders organisiert.

Meine Frage ist also: Was sind die greifbaren Vorteile eines anwendungsorientierten Ansatzes bei der Softwareentwicklung?

+0

Diese Frage ist off-topic, weil es nicht im Rahmen dieser Website ist, wie in [Welche Themen kann ich hier fragen?] (//stackoverflow.com/help/on-topic) Siehe auch: [Welche Art von Fragen sollte ich vermeiden zu fragen?] (// stackoverflow.com/help/dont-ask) Möglicherweise können Sie nach [einem anderen Stack Exchange fragen site] (// staplexchange.com/sites#name), * vielleicht * [pm.se] oder [softwareengineering.se]. Lesen Sie auf jeder Seite, auf der Sie eine Frage stellen möchten, auf der entsprechenden Seite des Hilfecenters nach. – Makyen

Antwort

1

Fertig falsch gibt es keine Vorteile. In diesem Ansatz zeichnet man eine Reihe von Bildern von Anwendungsfällen und gibt vor, dass Sie mit UML - der nutzlosen Modellierungssprache - irgendwie Design gemacht haben.

richtig gemacht, Use Cases ist eine gute hohe Maß Art und Weise zu denken, wie eine traditionelle funktionale Spezifikation zu konkretisieren, in Bezug auf:

Was genau der Benutzer versucht, in diesem Fall zu erreichen.

Wie muss die Software dies unterstützen?

Wie sollte die Software dies unterstützen?

Ich sehe gute Use Cases als einfache Möglichkeit, Stakeholder für die Eingabe in die funktionale Spezifikation in Frage zu stellen.

1

Sie haben Recht - es ist das gleiche, aber hat einen sexiereren Namen. In den 1980er Jahren erhielt ich die SSADM-Zertifizierung (erforderlich für einige große NGOs, wie mein damaliger Arbeitgeber BBC) und war überrascht, dass man seine Prozesse relativ einfach auf OO-Designkonzepte abbilden konnte, die mir bereits vertraut waren.

3

Obwohl wir keinen sehr formellen Use-Case-Ansatz verwenden, habe ich festgestellt, dass Use Cases und die weniger formellen User Stories Ihnen dabei helfen, Ihr Produkt aus der Sicht des Benutzers zu betrachten. Am Ende schreiben die meisten von uns Software für Benutzer, die nicht wir sind. Durch die Formulierung von Anwendungsfällen können Sie sich von einer internen Ansicht entfernen und sich auf die Außenansicht des von Ihnen erstellten Systems konzentrieren.

Zusätzlich erhalten Sie vorgefertigte Produktionseinheiten für den agilen Arbeitsablauf. Wenn Sie einen Anwendungsfall implementieren können, gibt es eine Funktion, die Ihr System erfüllt.

Ich gebe zu, dass ich nicht viel Erfahrung mit klassischen Design im Voraus Anforderungen sammeln habe. Ich bin sicher, es gibt andere Leute, die Ihnen eine bessere Antwort auf diese Frage geben können

+1

Darüber hinaus hilft es, dass Sie Akteure in Ihrem Diagramm haben, um sicherzustellen, dass Sie Funktionen aufbauen, die Benutzer wünschen und benötigen. Hier werfen wir ab und zu Funktionen auf den Müll, wenn wir erkennen, dass kein Schauspieler es benutzen würde. –

+0

+1 für die Erwähnung der "Benutzer Sicht". Der größte Fehler, den man bei einem Softwareprojekt begehen könnte, ist nicht aus der Sicht des Kunden zu denken und führt zu einem funktionierenden, aber unbrauchbaren System. –