Oft höre ich PMs (Projektmanager) über Eigenschaften und Funktionen sprechen. Und ich bin nur so verwirrt, sie zu unterscheiden. Manchmal denke ich an eine Funktion, die einer User Story entspricht. So etwas wie "Als Benutzer sollte Bob in der Lage sein, eine Liste seiner Zahlungen anzuzeigen", und sie nennen es eine Funktion. Manchmal wird es so groß wie ein Subsystem, so etwas wie "die Fähigkeit, SMS über eine Webanwendung zu senden". Andererseits wird die Funktion manchmal so klein wie eine Aufgabe, "Implementieren einer Zifferngruppierung für Zahleneingaben", während es Fälle gibt, in denen sie so groß wie eine ganze CRUD-Operation wird.
Meine Frage ist, wie wir Merkmal von Funktion unterscheiden können?
design
terminology
requirements
functions
features
Saeed Neamati
quelle
quelle
Antworten:
Features sind das, was Verkäufer verkaufen.
Funktionen sind das, was Programmierer entwickeln.
quelle
Funktionen passen nicht gut in den Kontext einer User Story und sind größtenteils für einen Benutzer transparent. Es kann sich um einen Backend-Prozess oder eine Art von eindeutiger oder allgemeiner Anwendungsfunktionalität handeln, mit der andere Features oder möglicherweise andere Funktionen in geeigneter Weise implementiert werden können.
Aufgaben hingegen sind einzelne Arbeitseinheiten, die abgeschlossen werden müssen, um ein Feature oder eine Funktion bereitzustellen.
In meinen Projekten unterscheide ich in der Regel nicht zwischen einem Feature und einer Funktion und schreibe User Stories für Features und füge Funktionen hinzu oder überarbeite die Aufgaben, um ein einzelnes Feature fertigzustellen.
Dies lässt manchmal bestimmte Features unnötig aufgebläht im Projektplan aussehen, aber das ist in Ordnung, denn wenn die Funktionen 1 und 2 sowie die Funktion 3 überarbeitet werden müssen, um Feature 1 ordnungsgemäß bereitzustellen, ist mein einziges Ergebnis für diesen Sprint möglicherweise Feature 1 oder Möglicherweise überhaupt keine Ergebnisse.
Solange ich bis zum Ende des Sprints noch funktionierende Software habe, ist mein Projekt Agile.
quelle
Funktionen, die Ihr Programm ausführen kann. Funktionen sind eine direkte Folge von Benutzeranforderungen und Geschäftszielen. Daher sind die Funktionen eines Programms hauptsächlich vorhanden, um die Benutzeranforderungen zu erfüllen .
Funktionalität ist andererseits, wie die zuvor genannten Merkmale tatsächlich implementiert werden .
quelle
Für eine PM ist "Funktion" ein Zweck und "Feature" ein Produktverhalten, mit dem ein Benutzer interagieren kann. Allerdings bekommen die Leute oft die beiden rückwärts (was meiner Meinung nach in Ihrer Frage der Fall ist).
Es ist eine Schlüsselfunktion eines Autos, mich von Platz A zu Platz B zu bringen. Es ist der Grund (Zweck), den es gibt. Das Lenkrad ist ein Merkmal, ebenso wie der Schalthebel. Der Fahrer interagiert mit mehreren Funktionen, um die Funktion des Fortbewegens zu erreichen.
"Funktion" ist hier nicht mit einer Programmiersprachenfunktion (Methode) zu verwechseln, die von der Implementierung einer Feature-Software handelt. Das ist höchstwahrscheinlich nicht das, worüber ein PM sprechen würde, wenn er sich auf "Merkmale und Funktionen" bezieht.
Es gibt keine gute Hierarchie für Funktionen und Merkmale, da ein Merkmal zur Unterstützung mehrerer Produktfunktionen verwendet werden kann.
quelle
Ich glaube, dass für eine bestimmte Methodik oder eine bestimmte Anforderungskultur eine korrekte Unterscheidung getroffen werden muss. Das Folgende ist meine eigene Interpretation.
Funktion: Eine zentrale Anforderung, die den Wert der Software dramatisch beeinflusst und die der Benutzer zu einem bestimmten Zeitpunkt haben muss. Beispiel: Funktion in einem Texteditor speichern.
Feature: Eine nette Funktion der Software, die der Software einen Mehrwert verleiht, aber kein absolutes Muss ist, damit die Software ordnungsgemäß funktioniert und ihre Funktionen ausführt. Sie können beispielsweise eine Funktion zum Rückgängigmachen in einem Dateneingabeformular verwenden oder ein Dokument als GIF-Datei für einen Texteditor speichern (verkabelt!).
quelle
Hinter jeder Funktion steht die Funktionalität, die erforderlich ist, um dem Benutzer den beabsichtigten Zweck der Funktion zu bieten.
Beispiel: Das Registrierungssystem einer Universität verfügt über die Funktion "Studentenregister für Klassen". Diese Aufgabe erfordert einiges an Funktionalität sowie Zugriff auf eine Datenbank. Das Design für das Feature würde ein Verständnis der tatsächlichen Aufgabe des Benutzers beinhalten - das Registrieren für Klassen. Dies wäre eine Voraussetzung für das "Interaktionsdesign", das zur Erleichterung der Benutzeraufgabe erforderlich ist. Die Funktionalität würde entworfen, um die Interaktionsanforderungen zu implementieren.
Programmierer suchen nach Funktionen zum Codieren. Interaktionsdesigner suchen nach dem besten Weg, diese erforderliche Funktionalität durch die Gestaltung der Interaktion der Software mit dem Benutzer bereitzustellen. Das Verständnis, wie der Benutzer sein Ziel am besten erreichen kann, steht an erster Stelle. Die Identifizierung der benötigten Funktionalität folgt.
Das obige ist nicht wissenschaftlich, es ist nur meine Meinung.
quelle
Es ist wichtig, die Unterscheidung zwischen Produktfunktionen und Produkteigenschaften zu berücksichtigen. Funktionen sind die „Antwort des Produkts auf die Benutzeraufgaben“. Features sind die "Anwenderprogramme" des Produkts, mit denen die Funktionen ausgeführt werden. Das Tätigen eines Telefonanrufs ist eine Funktion. Der Wählton und die Tastentastatur sind Funktionen, mit denen die Funktion ausgeführt wird.
quelle
Ich würde zustimmen, dass es sich nicht lohnt, darüber nachzudenken, da die Begriffe in einigen Zusammenhängen oft synonym verwendet werden. Im breiteren Managementkontext gibt es jedoch meiner Meinung nach einige wichtige Punkte. Zum einen kann PM auch Produktmanager sein. Jemand muss die Verantwortung dafür übernehmen, zu entscheiden, was der Markt in Bezug auf Preis, Liefertermin und Ausstattung unterstützt. Ich finde im Allgemeinen, dass diese Funktion bevorzugt wird, wenn Sie sich in einem Marketingkontext befinden. Die Rolle des Projektmanagers besteht darin, das Projekt so zu verwalten, dass das gewünschte Produkt pünktlich und innerhalb des Budgets geliefert wird. Für den Architekten und Designer sind die Funktionen gegeben und können als gelieferte Funktionen in der menschlichen Organisation angesehen werden, die Datenumwandlung und -speicherung ermöglichen. Sie müssen jedoch angepasst werden, bis das Design auf delegierbare Arbeitseinheiten reduziert wurde, die Entwicklern zugewiesen werden können . Es ist häufig der Fall, dass ein Merkmal einem Satz von Funktionen im Maschinensystem nicht sauber zugeordnet wird. Beispielsweise sind schnelle und sichere Funktionen von Verbrauchern gewünscht, können jedoch nicht im Code getrennt werden. Diese neuen Eigenschaften machen es so schwierig, nichtfunktionale Anforderungen zu erfüllen.
quelle