Diesmal bei der Teilnahme am Projekt der Planer
Ich werde diesen Artikel als Referenz verwenden, um mein eigenes Wissen über die Definition von Anforderungen zu vertiefen.
→ ** Spezifisches Vorausversprechen, auf das sich sowohl der Kunde als auch die Entwicklungsseite bei der Lieferung einigen können ** (Der Prozess, durch den die Entwicklungsseite klarstellt, was der Kunde als Antwort auf die Anfrage des Kunden tun soll)
Die meisten Kunden und Benutzer sind mit dem System und der Entwicklung nicht vertraut, daher werden wir uns die Ideenphase anhören.
Nachdem wir die Idee zu einem gewissen Grad gehört haben, werden wir sie unter Berücksichtigung der Fähigkeiten und des Liefertermins der Entwicklungsseite prüfen und der Idee vorschlagen, wo sie grob als Funktion realisiert werden kann.
Wir werden uns schließlich auf die als System zu implementierenden Funktionen und die Implementierungsmethode einigen.
Als grobes Beispiel habe ich mir das folgende Beispiel selbst gedacht. Vielleicht ist es nicht wirklich so locker, aber ich hoffe, Sie verzeihen mir, dass ich den Prozess im Detail überprüft habe.
Nach der Prüfung wird es der eigentliche Geschäftsprozess sein, daher werde ich dieses Mal nur die Elemente aus dem Originalartikel weglassen, was zu tun ist. Übrigens ist es derzeit technisch unmöglich, aber es basiert auf dem Konzept der Anwendung, die ich in Zukunft machen möchte. Bitte beachten Sie, dass wir diesmal die Machbarkeit und Details nicht berücksichtigen werden.
Bsp. Ich besitze einige Mietstudios und freien Platz in der Präfektur, aber die Nutzung ist nicht gut und ich möchte sie verbessern.
ex. 30% Steigerung der Auslastung gegenüber dem Vorjahr
・ Das Geschäftsmodell von Mietstudios ist ein passives Geschäft mit Kunden, die es nutzen möchten. In vielen Fällen ist die Sicherung eines Platzes und die Anzahl der Personen ein Engpass für die Kunden.
・ Das vorhandene System zur Registrierung der Nutzung ist für Kunden nicht einfach zu bedienen.
・ Bereiten Sie bei der Registrierung zur Verwendung einen Kalender und einen Zeitplan vor, damit der aktuelle Reservierungsstatus für jedes Studio oder jeden freien Platz auf einen Blick angezeigt wird.
・ Für den passiven Geschäftsteil werden wir Matching-Funktionen, Bulletin Boards und SNS-Funktionen hinzufügen, um ein Mittel vorzuschlagen, mit dem Kunden einen Platz erhalten und die Probleme beim Sammeln von Personal beseitigt werden können.
Mit anderen Worten, ich denke, dies ist eine Szene, in der wir darüber diskutieren, welche Art von Systemen und Diensten wir benötigen sollten, um die Lücke zwischen der aktuellen Situation und unseren Zielen zu schließen. Wenn wir Unternehmen um Interviews bitten und über den Inhalt ihrer Arbeit sprechen, geht die Entwicklungsseite natürlich davon aus, wie die Lücke auf der Systemseite geschlossen werden kann. In den letzten Jahren wurde jedoch zusätzlich der eigentliche Service, d. H. Ich habe gehört, dass wir uns in einer Zeit befinden, in der wir uns auch von der Geschäftsseite her nähern müssen, und wenn wir das nicht können, steigt möglicherweise die Wahrscheinlichkeit, ein brennendes Projekt zu werden (es entsteht eine Lücke zwischen dem Kunden und der Entwicklungsseite). ich fühle Bitte weisen Sie darauf hin, wenn es falsch ist.
-Datenauswahlfunktion in der Kalender-Benutzeroberfläche
・ Wenn Sie das zu verwendende Datum und die zu verwendende Einrichtung auswählen, wird ein Zeitplan angezeigt. Sie können den Reservierungsstatus des Tages anzeigen und eine Reservierung vornehmen, indem Sie die Zeitzone auswählen.
・ CRUD-Funktion für die Registrierung
-Eine Funktion zur Berechnung der endgültigen Nutzungsgebühr gemäß der Anwendung basierend auf der Nutzungsgebühr in der ausgewählten Zeitzone und dem Nutzungsplan
・ Mitgliederregistrierungsfunktion (Social Login) zur Verwendung der Matching-Funktion
・ Matching-Funktion (einschließlich Bulletin-Board-Funktion für die Rekrutierung von Mitgliedern)
……etc
Organisieren nach Warum / Was / Wie
→ Siehe oben unter.
・ Wie ist der Geschäftsfluss überhaupt?
Eine Visualisierung des Flusses des gesamten Unternehmens als Flussdiagramm. Wird für die Entwicklung großer Systeme wie z. B. interne Systeme verwendet. Bereiten Sie auf der horizontalen Achse Spalten für Abteilungen vor, die das System und Geschäftsdetails verwenden, und verwenden Sie diese als Spuren. Dann wird in jeder Spur beschrieben, welche Funktion des Systems von welcher Abteilung und in welcher Reihenfolge verwendet wird. Schließlich werden die im Voraus in der Spalte mit den Arbeitsdetails zugewiesenen Nummern als Index verknüpft und die Details der Arbeit in jeder Arbeit beschrieben. Danach werden die Geschäftsregeln und Funktionshandbücher mit der Fahrspur verknüpft.
Übrigens habe ich diesmal einen toC-Dienst als Beispiel eingerichtet, und da es sich nicht um ein großes System handelt, hielt ich es für wünschenswert, stattdessen ein Anwendungsfalldiagramm zu erstellen.
・ Was zu machen → Geschäftsablaufdiagramm, Anwendungsfalldiagramm
・ Was sind funktionale Anforderungen?
→ Anforderungen an zu implementierende Funktionen (= Liste der im System zu installierenden Funktionen)
Dieses Mal empfehle ich, mit dem Hauptteil der Implementierung aller in der Prozessunterteilung offenbarten Teile zu sprechen.
・ Was sind nicht funktionale Anforderungen?
→ Andere Leistungsteile als der Hauptzweck des Systems wie Verarbeitungsgeschwindigkeit und Sicherheit. Mit anderen Worten, es ist eine Anforderung, dass ein anderes System als die Funktion implementiert wird.
Beispielsweise wird gesagt, dass Kunden eine Funktion implementieren möchten, um den Reservierungsstatus der Einrichtung durch Zeitplansuche zu klären (funktionale Anforderung). Die Suchzeit (nicht funktionale Anforderung) ist nicht erforderlich, daher kann nicht gesagt werden, dass dies der Hauptzweck des Systems ist. Daher hatte ich das Gefühl, dass die Entwicklungsseite darüber nachdenken musste, wie sie den Kunden nach eigenem Ermessen von den folgenden Kategorien überzeugen kann, während sie ihn mit dem Liefertermin vergleicht.
** · Verfügbarkeit **
→ Anforderungen wie Backup-System und Wiederherstellungsmethode im Fehlerfall. Die Perspektive, wie das System verfügbar gemacht werden kann.
** ・ Leistung und Erweiterbarkeit **
→ Anfragen zum Umgang mit Spitzenlast und erhöhter Arbeitslast. Zum Beispiel aus der Perspektive, wie viel wir auf Änderungen des für das System erforderlichen Arbeitsaufwands oder das Hinzufügen von Hardware reagieren können, wenn die Anzahl der Systembenutzer zunimmt.
** ・ Betrieb und Wartbarkeit **
→ Anfragen bezüglich der Betriebsrate während des Systembetriebs und der Reaktion bei auftretenden Problemen. Im Gegensatz zu der Perspektive, wie die Zeit verkürzt werden kann, in der ein System, das für die Verfügbarkeit verfügbar war, ausfällt und nicht mehr verfügbar ist. Dies ist die Perspektive, wie das System verfügbar gehalten werden kann. Erwähnt werden kann die Überwachung der Systemnutzung, die Erstellung / Erweiterung von Bedienungsanleitungen, die Wartung usw.
** · Migration **
→ Anforderungen zur Installation des erstellten Systems oder zur Migration vom alten System. Formulieren Sie Pläne wie Zeitplananpassungen und Proben bis zum Übergang.
·Sicherheit
→ Sicherheitsanforderungen wie Benutzereinschränkungen und unbefugter Zugriff. Zugriffsbeschränkungen ・ Bereiten Sie Funktionen zur Überwachung und Erkennung nicht autorisierter Benutzer und Handbücher für die Sicherheitsschulung für Kunden vor.
** ・ Systemumgebung **
→ Anforderungen an die Systeminstallationsumgebung und den Energieverbrauch. Berücksichtigen Sie die Auswahl der für die Ausrüstung geeigneten Ausrüstung und die Konfiguration des Systems, um die Umweltbelastung zu verringern.
・ Was ist nach Abschluss der Prüfung der funktionalen Anforderungen zu tun? → Wenn sich die Funktion ändert, ändern sich auch die Anforderungen für Betrieb und Wartung. Daher ist es nicht sinnvoll, dies zu berücksichtigen, es sei denn, die Funktion wird entschieden.
・ Vorschläge werden von der Entwicklungsseite gemacht → Wie oben erwähnt, fehlt den meisten Kunden das Wissen über Systeme und Entwicklung.
・ Hören Sie den Grund für die Einstellung der Anforderungen
→ Alternativen präsentieren können.
Zitat [Wie man funktionale und nicht funktionale Anforderungen schreibt Beispiel verfügbar
Es ist wichtig, den Grund für die Anforderung zu notieren und zu notieren. Beispiel) Grund für die Betriebsstunden von 6:00 bis 22:00 Uhr ・ Weil es Leute gibt, die beim ersten Zug zur Arbeit gehen ・ Weil die Endzeit für Überstunden 22:00 Uhr ist Wenn Sie den Grund für die Anforderung nicht notieren, haben Sie keine andere Wahl, als die vom Kunden angegebene Anforderung zu übernehmen, und Sie können keine Alternative anbieten. Einige Kunden antworten auch mit ihren eigenen Ideen. Fragen Sie am besten nach dem Grund.
Nochmals zitiert aus demselben Artikel
Bei nicht funktionalen Anforderungen variieren die erforderlichen Kosten je nach Anforderung. Zum Beispiel. ① System mit Betriebsstunden von 6:00 bis 22:00 Uhr ② 24-Stunden-Vollbetriebssystem → Natürlich ist ② teurer. · Datensicherung ・ Notwendigkeit der Werkzeugentwicklung ・ Erhöhte Betriebs- und Wartungslast Es ist natürlich zu denken, dass "je besser die Qualität, desto besser". Machen wir die Kunden jedoch darauf aufmerksam, dass die Kosten umso höher sind, je mehr nicht funktionale Anforderungen angereichert werden, und wählen Sie die Anforderungen aus.
Mit anderen Worten, wenn gesagt wird, dass ein System, das 24 Stunden am Tag mit voller Kapazität arbeitet, zunächst gut ist und der Grund nicht gehört wird, besteht die Möglichkeit, dass die Entwicklung nutzlos ist. Dies kann auch den Kunden belasten, der es betreibt. Wenn Sie jedoch bei der Prüfung nach dem Grund fragen und kein gewisses Bedürfnis danach verspüren, können Sie von der Entwicklungsseite nach einem schlanken Kompromiss in Bezug auf Entwicklung und tatsächliche Betriebskosten suchen.
Es ist grob in die folgenden drei Punkte eingeteilt.
Sobald die Funktion festgelegt wurde, müssen wir uns überlegen, wie die Funktion verwendet werden soll. Und es sollte nicht an Perspektive mangeln, um das Dienstsystem für Benutzer zugänglicher zu machen. In diesem Sinne sollte das UI-Design zuerst durchgeführt werden.
Als ich das Portfolio tatsächlich erstellt habe, habe ich die Mindestbenutzeroberfläche entworfen, für die die Funktion funktioniert → Betriebstest → Saubere Kopie der Benutzeroberfläche. Wenn es sich jedoch nicht um einen vollständigen Stapel im tatsächlichen Feld handelt, ist ein Designer oder eine Front-End-Person verantwortlich In einigen Fällen, in diesem Fall, in Form einer Beratung mit solchen Personen?
・ Was zu machen
→ Bildschirmübergangsdiagramm
Zitat
Bitte haben Sie Verständnis dafür, dass funktionales Design die Phase ist, in der "Verarbeitung hinter den Kulissen, notwendige Daten" definiert wird. (Weggelassen) Auf diese Weise kann sich jeder vorstellen, welche Art von Programm geschrieben werden soll. Da auch die Zusammensetzung der Teile, aus denen das System besteht, geklärt ist, wird die Rollenverteilung innerhalb des Teams einfach.
Beispielsweise sind eine Registrierung der Mitgliedschaft, beispielsweise die Erfassung von Reservierungsinformationen und die Kommunikation mit der DB, unabhängig davon, ob es sich um ein System oder eine Anwendung handelt, absolut unvermeidlich. Wenn Sie daher die folgenden drei Punkte für jede Funktion als Satz mit der Benutzeroberfläche kurz zusammenfassen, können Sie zum Zeitpunkt der Implementierung mehr tun.
Zitat
Backside-Verarbeitung (Funktionsname und Verarbeitungsinhalt) Für die Verarbeitung erforderliche Daten, Datenerfassungsquelle (Eingabe vom Bildschirm, Erfassung von der Datenbank usw.) Übermittlungsziel der verarbeiteten Daten (Bildschirmanzeige, Speichern in der Datenbank usw.)
Ich war mir dessen nicht wirklich bewusst, als ich das Portfolio tatsächlich erstellte, aber da ich dies vernachlässigte und Reservierungsinformationen austauschte, musste ich das DB-Design einmal überprüfen. Weil es sein sollte Ich fand es sehr wichtig.
・ Was zu machen
→ GUI-Entwurfszeichnung usw.
Zitat
Es gibt drei Dinge zu entscheiden. Spezifischer Inhalt von Daten Datenbank Design Datenfluss (Datenfluss)
Es ist das letzte Element, das im Design ausgeführt wird, und es ist der Teil, der nicht überholt werden sollte. Da ich wenig über dieses Teil wusste, musste ich mich von der Mitte der Produktion zurücksetzen, und vor allem hatte ich eine bittere Erfahrung damit, viel Zeit damit zu verbringen, nur dieses Teil zu entwerfen. Wie oben erwähnt, besteht unabhängig von Ihrer Tätigkeit eine Interaktion mit der Datenbank. Wenn Sie sich hier also nicht richtig entscheiden, können Sie die nachfolgende Verarbeitung nicht ordnungsgemäß implementieren.
Erstens den Inhalt der Daten. In der Quelle
Hier sollten Sie beachten, dass es vier Arten von Daten gibt. Entwerfen Sie, wie diese vier Arten von Daten im System fließen. Daten, die in das Programm "eingegeben" werden sollen (Argument) Vom Benutzer über den Webbildschirm eingegebene Daten Aus der Datenbank gelesene Daten Vom Programm "zurückgegebene" Daten (Rückgabewert) Daten, die auf dem Webbildschirm angezeigt werden sollen In der Datenbank zu speichernde Daten
es ist so geschrieben. Es ist eine Schlange, aber wenn Sie Wörter zur persönlichen Bestätigung hinzufügen
-Wert, der das Argument der Verarbeitung sein sollte
Vom Benutzer über den Webbildschirm eingegebene Daten (zB Name und E-Mail-Adresse des Mitgliedsregistrierungsformulars)
Aus der Datenbank gelesene Daten (zB Status der Anlagenreservierung)
Die obigen zwei sind Daten zum Ausführen der Verarbeitung mit diesem Wert als Argument. Im ersten Beispiel ist es denkbar, dass diese Werte als Argumente zum Zusammenstellen der Datenbank verwendet werden und die Anmeldebeurteilung durchgeführt wird, und im zweiten Beispiel werden die durch Durchsuchen der Datenbank zurückgegebenen Werte als Argumente für die weitere Verarbeitung verwendet.
Daten, die zurückgegeben werden sollen
Daten, die auf dem Webbildschirm angezeigt werden sollen (zB meine Reservierungsinformationen)
In der Datenbank zu speichernde Daten
Wird dies der Fall sein? Während wir uns dieser vier Daten bewusst sind, werden wir den Inhalt und den Typ der Daten konkret festlegen und versuchen, sie zu normalisieren.
Als nächstes wird die Datenbank entworfen.
Für das Datenbankdesign sind drei Aufgaben erforderlich. Teilen Sie die Rolle der Tabelle in "Meister" und "Geschichte". Organisieren Sie Referenzbeziehungen zwischen Tabellen Übertragen Sie die Referenzbeziehung in das ER-Diagramm
Tabellenbeziehungen sind wahrscheinlich der verwirrendste Teil beim erstmaligen Entwerfen. Ich war wirklich verwirrt. Wenn die Beziehung jedoch nicht ordnungsgemäß hergestellt wird, stolpern Sie in der Implementierungsphase. Vernachlässigen Sie sie daher nicht.
Es scheint, dass es verschiedene Namen für Beziehungen gibt, wie Eltern-Kind-Beziehungen und Meister und Geschichten an der Quelle des Zitierens, aber wenn man darüber nachdenkt, ist es leicht zu verstehen, dass es am besten ist, es zuerst zu klassifizieren, je nachdem, ob es referenziert wird oder nicht.
Hier ist das ER-Diagramm, das ich tatsächlich erstellt habe (das Design ist in erster Linie nicht so gut, aber vorerst).
Wie Sie sehen können, ist die Benutzertabelle hier beispielsweise eine Tabelle, die Benutzerregistrierungsinformationen verwaltet, während die Reservierungsinformationstabelle eine Tabelle ist, die Reservierungsinformationen verwaltet. Wenn Sie beispielsweise beide Tabellen aus der Perspektive von "Wer ist Reservierungsinformation" betrachten, können Sie sehen, dass die Reservierungsinformationstabelle mit user_id auf die Benutzertabelle verweist. Deshalb,
・ Für Eltern-Kind-Beziehungen
→ Übergeordnete Benutzertabelle Informationstabelle für Kinderreservierungen
・ Für Meister und Geschichte
→ Hauptbenutzertabelle Tabelle mit Informationen zur Verlaufsreservierung
・ Siehe, falls angegeben
→ Referenzreservierungsinformationstabelle Referenzierte Benutzertabelle
Es stellt sich heraus, dass. Erstellen und definieren Sie so viele Tabellen wie nötig entsprechend der Funktion solcher Beziehungen. Wenn dies in der Systemanwendungsproduktion nicht der Fall ist, wird alles zerstört. Wenn einer der gleichen Anfänger diesen Artikel liest, empfehlen wir daher, das Tischdesign erneut mit der Quelle oder dem Buch zu überprüfen.
・ Was zu machen → ER-Diagramm (Es ist auch wichtig, die Referenzbeziehung der Tabelle vor dem Schreiben mit einem einfachen Diagramm anzuzeigen.) Datenflussdiagramm (Verarbeitungsdiagramm)
Wie oben erwähnt, habe ich basierend auf dem Referenzartikel versucht, mein Wissen über die Anforderungsdefinition zu festigen. Es ist eine verwirrende Sache, aber als ich das Portfolio erstellt habe, habe ich die Anforderungen definiert, aber wenn ich das versuche, muss ich mir dessen immer noch bewusst sein. Ich bestätigte erneut, dass ich viel Wissen hatte, das ich in meiner eigentlichen Arbeit nicht tun konnte, und ich hatte das Gefühl, dass ich noch viel zu tun hatte. Ich werde niemals die Anforderungsdefinition im Entwicklungsplan leiten, und obwohl ich überhaupt nicht PG bin, gibt es auch die Lehre der Vorfahren, die Ingenieure nur so nennen können, wenn sie überhaupt die Anforderungen und das Design definieren können. Es gibt Vor allem weiß ich nichts, solange ich an dem Projekt beteiligt bin, deshalb bin ich froh, dass ich es diesmal erneut bestätigen konnte.
Anforderungsdefinition - Artikel, bei denen es sich um Personalressourcen handeln kann, die Systeme entwerfen können Kannst du es leicht erklären? Funktionale und nicht funktionale Anforderungen [Einfach in 3 Schritten! ] So erstellen Sie ein Business-Flow-Handbuch
Recommended Posts