Was ist der Unterschied zwischen technischen Spezifikationen und Konstruktionsunterlagen?

38

Was sind technische Spezifikationen? Entsprechen sie den Konstruktionsunterlagen? Wenn nicht, was ist der Unterschied und einige Beispiele?

John V
quelle
1
Ersteres fehlt das Design und letzteres die technischen Details.

Antworten:

33

Ein Software-Designdokument kann sich auf der Ebene eines Systems oder einer Komponente befinden und umfasst im Allgemeinen:

  • relevante Ziele oder Anforderungen (funktional und nicht funktional);
  • statische Struktur (z. B. Komponenten, Schnittstellen, Abhängigkeiten);
  • dynamisches Verhalten (wie Komponenten interagieren);
  • Datenmodelle oder externe Schnittstellen (außerhalb des im Dokument beschriebenen Systems / der Komponente); und
  • Überlegungen zur Bereitstellung (z. B. Laufzeitanforderungen, Komponenten von Drittanbietern).

Beachten Sie, dass sich alle diese Beschreibungen auf einer abstrakten Ebene befinden. Ziel ist es, dem Leser ein allgemeines Verständnis des Systems oder der Komponente zu vermitteln. Es kann viele Ebenen von Designdokumenten geben (z. B. System- oder Komponentenebene).

Eine technische Spezifikation beschreibt die kleinsten Details aller oder bestimmter Teile eines Entwurfs, wie z.

  • die Signatur einer Schnittstelle einschließlich aller erforderlichen Datentypen / Strukturen (Eingabedatentypen, Ausgabedatentypen, Ausnahmen);
  • detaillierte Klassenmodelle einschließlich aller Methoden, Attribute, Abhängigkeiten und Assoziationen;
  • die spezifischen Algorithmen, die eine Komponente verwendet, und wie sie funktionieren; und
  • physikalische Datenmodelle, einschließlich Attribute und Typen jeder Entität / jedes Datentyps.
miraculixx
quelle
1
Also, wann sollten wir eigentlich technische Spezifikationen schreiben? Vor der Entwicklung? Zusammen mit der Entwicklung? oder danach ..?
Shashwat
2
@ShashwatTripathi Im Allgemeinen werden Spezifikationen vor der Entwicklung geschrieben, damit eine andere Person (oder Sie zu einem späteren Zeitpunkt) die Komponenten implementieren kann. Das Schreiben der Spezifikation nach Abschluss der Entwicklung macht sie irgendwie sinnlos (es sei denn, Sie verwenden sie als technische Dokumentation für die Implementierung).
Miraculixx
Ich bin auf genau dieses Szenario gestoßen, als ich für ein riesiges Unternehmen an einem mehrjährigen Projekt arbeitete. Nachdem das Projekt nach Test und dann nach Prod! Migriert wurde, haben wir rückwärts an der Erstellung eines Geschäftsanforderungsdokuments gearbeitet. Ja, tolles Projektmanagement, ich weiß!
ThinkCode
Werden die technischen Spezifikationen nicht erstellt, nachdem die Details die Softwareanforderungsspezifikation funktional aufgelöst haben? Wie kann ein Architekt einen TS ohne SRS erstellen? Es sieht so aus, als müsste er / sie eine Tonne annehmen.
Oracular Man
Stimmen Sie zu, ein TS sollte einem SRS (System Requirements Specification) folgen. Beachten Sie jedoch, dass diese Begriffe nicht standardisiert sind und ein TS entweder als detaillierte Form eines SRS (typisch für eingebettete Systeme) erstellt oder als Ergänzung eines SRS auf hoher Ebene, dh eines Designdokuments (typisch für kommerzielle Anwendungen), verwendet werden kann ). Entscheidend ist, dass Anforderungs-, Konstruktions- und Spezifikationsdokumente jeweils eine bestimmte Sicht auf ein System und seine Komponenten beschreiben. Es ist wichtiger, dass ein Team den Ansichten und dem Detaillierungsgrad zustimmt, als eine formale Definition einzuhalten.
Miraculixx
7

Technische Spezifikationen, zumindest in Form eines technischen Designs, sind Teil der Designdokumente, zusammen mit beispielsweise Anforderungslisten, Funktionsdesigns, User Stories, Grafikdesign-Mockups, Usability-Studien, UML-Diagrammen, Geschäftsprozessdiagrammen und Daten Modellspezifikationen usw.

Technische Spezifikationen des Typs, den Sie nachträglich schreiben, um das fertige Produkt zu dokumentieren, sind in der Regel nicht Bestandteil der Konstruktionsdokumente, können jedoch in den Satz der Konstruktionsdokumente einer späteren Version (als Referenz) oder eines anderen Produkts aufgenommen werden verlässt sich auf sie.

tdammers
quelle
Vielen Dank. Grundsätzlich brauche ich auch eine funktionale Spezifikation, um zu wissen, was zu tun ist, und dann Dokumente zu entwerfen, um zu wissen, wie zu tun ist, ist das richtig? Nur eine kleine Frage, was ist das funktionale Design Sie bezeichnet (Hoffe , dass es Verwirrung zu meinem Verständnis der funktionellen spec hinzufügen wont)
John V
Ein funktionales Design definiert die beabsichtigte Funktionalität des Produkts aus Sicht des Benutzers, ohne auf Implementierungsdetails einzugehen. Hier gibt es viele Fragen mit hervorragenden Antworten, die ausführlich erklären, was ein funktionales Design ist und was nicht.
tdammers
1
Also, wann sollten wir eigentlich technische Spezifikationen schreiben? Vor der Entwicklung? Zusammen mit der Entwicklung? oder danach ..?
Shashwat