Der Programmierentwurf spielt auf die Schlüsselstrukturen eines Softwaresystems und die Kontrolle der Herstellung solcher Strukturen und Systeme an. Jede Struktur beinhaltet Programmierkomponenten, Beziehungen zwischen ihnen und Eigenschaften der beiden Komponenten und Beziehungen. Das Engineering eines Produktsoftwaresystems ist eine Illustration, die praktisch dem Engineering eines Gebäudes entspricht. Es funktioniert wie ein Diagramm für das System und das schöpferische Unterfangen, indem es die Besorgungen verteilt, die nicht wichtig sind und von den Planungsteams ausgeführt werden müssen.

Das Programmier-Engineering ist damit verbunden, sich auf wichtige Hilfsentscheidungen zu einigen, deren Änderung nach der Realisierung teuer ist. Programmiertechnische Entscheidungen beziehen explizite Basisalternativen aus potenziellen Ergebnissen in den Plan der Programmierung ein. Zum Beispiel mussten die Rahmenwerke, die das Raumtransport-Dispatching-Fahrzeug steuerten, schnell und wirklich zuverlässig sein. Auf diese Weise würde eine passende konstante Verarbeitungssprache gewählt werden. Darüber hinaus konnte zur Erfüllung der Forderung nach gleichbleibender Qualität die Entscheidung getroffen werden, verschiedene überschüssige und autonom erstellte Duplikate des Programms zu haben und diese Duplikate auf freier Ausrüstung laufen zu lassen, während die Ergebnisse gegengeprüft wurden.

Das Recording Programming Engineering fördert die Korrespondenz zwischen den Partnern, fängt frühe Entscheidungen über die Struktur der erhöhten Ebene auf und erlaubt die Wiederverwendung von Plansegmenten zwischen Projekten.

Programmiertechnik zeigt die begleitenden:

Eine große Anzahl von Partnern: Softwaresysteme müssen eine Vielzahl von Partnern berücksichtigen, zum Beispiel Geschäftsleiter, Eigentümer, Kunden und Administratoren. Diese Partner haben alle ihre eigenen Sorgen bezüglich der Rahmenbedingungen. Diese Sorgen auszugleichen und zu zeigen, wie sie gehandhabt werden, ist ein Teil der Planung des Systems.:29-31 Daraus lässt sich ableiten, dass das Engineering die Verwaltung einer breiten Palette von Anliegen und Partnern umfasst und einen multidisziplinären Charakter hat.

Teilung der Sorgen: Um die Unvorhersehbarkeit zu verringern, müssen die Planer die Sorgen isolieren, die die Struktur antreiben. Aus den technischen Unterlagen geht hervor, dass alle Bedenken der Partner berücksichtigt werden, indem der Entwurf aus isolierten Perspektiven in Bezug auf die verschiedenen Bedenken der Partner dargestellt und veranschaulicht wird. Diese verschiedenen Darstellungen werden als Gebäudesichten bezeichnet (siehe zum Beispiel das 4+1-Strukturansichtsmodell).

Qualitätsgetrieben: Beispielhafte Programmierkonfigurationen nähern sich an (z.B. Jackson Organized Writing Computerprogramme) wurden von der erforderlichen Nützlichkeit und dem Informationsfluss durch das Framework getrieben, doch die aktuelle Einsicht:26-28 ist, dass das Design eines Produkt-Frameworks um so stärker mit seinen Qualitätsmerkmalen identifiziert wird, z.B. Anpassung an internes Versagen, in umgekehrter Ähnlichkeit, Erweiterbarkeit, Zuverlässigkeit, Praktikabilität, Zugänglichkeit, Sicherheit, Benutzerfreundlichkeit und andere – lichkeiten. Die Anliegen der Partner wandeln sich häufig in Voraussetzungen zu diesen Qualitätsmerkmalen um, die unterschiedlich als nicht-nützliche Notwendigkeiten, extra-praktische Voraussetzungen, soziale Voraussetzungen oder Voraussetzungen für Qualitätseigenschaften bezeichnet werden.

Wiederholungsstile: Wie beim Strukturdesign hat die Disziplin des Produktingenieurwesens Standardansätze geschaffen, um sich wiederholende Probleme anzugehen. Diese “Standard-Ansätze” werden in unterschiedlichen Abwägungsgraden mit unterschiedlichen Namen bezeichnet. Normale Ausdrücke für sich wiederholende Anordnungen sind Baustil,:273-277 Taktik,:70-72 Referenzarchitektur und Strukturmuster.:203-205

Theoretische Aufrichtigkeit: ein Begriff, der von Fred Creeks in The Legendary Man-Month vorgestellt wurde, um die Möglichkeit zu bezeichnen, dass das Design eines Produktrahmens eine allgemeine Vorstellung davon widerspiegelt, was er tun sollte und wie er es tun sollte. Diese Vision sollte von ihrer Verwendung isoliert werden. Der Planer erwartet die Aufgabe eines “Hüters der Vision”, der sicherstellt, dass die Erweiterungen des Rahmens mit dem Design übereinstimmen, um so die theoretische Integrität zu wahren.:41-50

Psychologische Einschränkungen: eine Auffassung, die bereits 1967 in einem Papier des Software-Ingenieurs Melvin Conway geäußert wurde, wonach Vereinigungen, die Rahmenwerke planen, verpflichtet sind, Strukturen zu liefern, die Duplikate der entsprechenden Strukturen dieser Vereinigungen sind. Ebenso war es Fred Streams, der es mit angemessener Ehrlichkeit mit einer umfangreicheren Menge bekannt machte, als er sich in seinem exquisiten großen The Legendary Man-Month auf das Papier und den Gedanken bezog und es “Conways Gesetz” nannte.

Architektur-Aktivitäten

Es gibt zahlreiche Übungen, die der Produktarchitekt durchführt. Ein Produktzeichner arbeitet normalerweise mit Venture-Administratoren zusammen, prüft strukturkritische Notwendigkeiten mit Partnern, plant ein Produkt-Engineering, beurteilt eine Konfiguration, spricht mit Planern und Partnern, archiviert den Kompositionsplan und vieles mehr. Es gibt vier zentrale Übungen im Programmierdesign. Diese Center-Engineering-Übungen werden iterativ und in verschiedenen Phasen des zugrundeliegenden Programmierfortschritts-Lebenszyklus durchgeführt, ebenso wie bei der Entwicklung eines Rahmenwerks.

Die Gebäudeuntersuchung ist der Weg zum Verständnis der Natur, in der ein vorgeschlagener Rahmen oder Rahmen funktionieren wird, und die Entscheidung über die Voraussetzungen für den Rahmen. Die Informationen oder Voraussetzungen für die Untersuchungsaktion können aus einer beliebigen Anzahl von Partnern hervorgehen und z.B. Dinge einbeziehen,

was das System tun wird, wenn es einsatzbereit ist (die praktischen Voraussetzungen)

wie gut das System nicht utilitaristische Notwendigkeiten zur Laufzeit erfüllen wird, z.B. unerschütterliche Qualität, Funktionsfähigkeit, Ausführungsproduktivität, Sicherheit, Ähnlichkeit, die in der Norm ISO/IEC 25010:2011 charakterisiert sind

Fortschrittszeit nicht-praktische Notwendigkeiten, z.B. Lebensfähigkeit und Übertragbarkeit, die in der Norm ISO 25010:2011 charakterisiert sind

geschäftliche Notwendigkeiten und natürliche Rahmenbedingungen eines Rahmens, der sich nach einiger Zeit ändern kann, z.B. gesetzliche, soziale, geldbezogene, aggressive und innovative Belange[26].

Die Ergebnisse der Prüfungsbewegung sind jene Voraussetzungen, die sich messbar auf die Konstruktion eines Produktrahmens auswirken, die als kompositorisch bemerkenswerte Anforderungen bezeichnet werden.

Eine strukturelle Mischung oder Konfiguration ist der Weg zum Ingenieurwesen. Angesichts der kompositionskritischen Notwendigkeiten, die durch die Untersuchung kontrolliert werden, des gegenwärtigen Zustands der Struktur und der Folgen etwaiger Bewertungsübungen wird der Plan erstellt und verbessert.:311-326

Die ingenieurwissenschaftliche Beurteilung ist der Weg zur Entscheidung, wie gut die gegenwärtige Struktur oder ein Segment davon die bei der Prüfung ermittelten Voraussetzungen erfüllt. Eine Beurteilung kann zu jedem Zeitpunkt erfolgen, an dem ein Konstrukteur über die Wahl eines Plans nachdenkt, sie kann nach der Fertigstellung eines Teils der Struktur, nach der Fertigstellung der letzten Konfiguration oder nach der Entwicklung des Rahmens erfolgen. Ein Teil der zugänglichen Beurteilungsverfahren der Programmiertechnik umfasst die Design Tradeoff Investigation Strategy (ATAM) und die TARA.[28] Strukturen zur Kontrastierung der Strategien werden in Systemen besprochen, zum Beispiel im SARA-Bericht[16] und in Design-Audits: Praxis und Erfahrung[29].

Designfortschritt ist der Weg zur Aufrechterhaltung und Anpassung einer aktuellen Programmiertechnik an veränderte Bedürfnisse und Bedingungen. Da die Programmiertechnik eine Grundstruktur eines Produktrahmens vorgibt, würde ihre Entwicklung und Unterstützung die Grundstruktur im Wesentlichen beeinflussen. In dieser Eigenschaft ist der Designfortschritt darauf bedacht, neue Nützlichkeit ebenso wie die Aufrechterhaltung der bestehenden Nützlichkeit und des Rahmenverhaltens zu berücksichtigen.

Engineering erfordert grundlegende unterstützende Übungen. Diese unterstützenden Übungen finden während des gesamten Engineering-Prozesses der zentralen Programmierung statt. Sie beinhalten Informationen über den Vorstand und die Korrespondenz, Planen und grundlegende Führung sowie Dokumentation.

Architektur unterstützende Aktivitäten

Übungen zur Unterstützung der Programmiertechnik werden während der Konstruktionsübungen für das Programmierzentrum durchgeführt. Diese unterstützenden Übungen helfen einem Produktingenieur bei der Untersuchung, Zusammenführung, Bewertung und Weiterentwicklung. Beispielsweise muss ein Modellierer während der Untersuchungsphase Informationen zusammenstellen, Entscheidungen treffen und aufzeichnen.

Informationen über den Vorstand und die Korrespondenz ist die Demonstration der Untersuchung und Überwachung von Informationen, die für die Planung eines Produktdesigns grundlegend sind. Ein Produktdesigner arbeitet nicht in Rassentrennung. Er erhält Inputs, utilitaristische und nicht-praktische Voraussetzungen und Planungssettings von verschiedenen Partnern und gibt den Partnern Erträge. Informationen zum Programmdesign werden häufig abgeleitet und in den Köpfen der Partner aufbewahrt. Bei der Programmierung von Design-Informationen ist die Board-Bewegung an das Entdecken, Übermitteln und Halten von Informationen gebunden. Da Konfigurationsprobleme im Bereich der Programmiertechnik verwirrend und abhängig sind, kann eine Informationslücke im Konfigurationsdenken zu fehlerhaftem Programmiertechnikdesign führen.[23][30] Bei den Informationsinstanzen des Gremiums und den Korrespondenzübungen geht es darum, nach Konfigurationsdesigns zu suchen, Prototypen zu erstellen, erfahrene Ingenieure und Planer zu befragen, die Strukturen von Vergleichsrahmen zu bewerten, Informationen an verschiedene Urheber und Partner weiterzugeben und über die Beteiligung an einer Wiki-Seite zu berichten.

Konfigurationsdenken und grundlegende Führung ist die Handlung der Beurteilung von Planentscheidungen. Diese Handlung ist grundlegend für jede der drei Aktivitäten des Zentrums für Programmiertechnik[9][31] Sie umfasst das Zusammenstellen und die Auswahl von Partnern, die Detaillierung von Fragen der Strukturwahl, die Entdeckung von Anordnungsalternativen und die Bewertung von Kompromissen vor der Entscheidung. Dieses Verfahren erfolgt in verschiedenen Granularitätsgraden der Auswahl, während bemerkenswerte strukturelle Notwendigkeiten und Programmierungsentwurfsentscheidungen bewertet werden und die programmtechnische Untersuchung, Zusammenführung und Bewertung erfolgt. Zu den Denkübungen gehören das Verständnis der Auswirkungen einer Voraussetzung oder eines Plans auf Qualitätsmerkmale, die Untersuchung der Probleme, die eine Struktur verursachen kann, die Untersuchung denkbarer Anordnungsalternativen und die Bewertung der Kompromisse zwischen den Anordnungen.

Dokumentation ist die Demonstration der Aufzeichnung der während des Produktentwurfsprozesses erstellten Struktur. Eine Rahmenkonfiguration wird dargestellt, indem einige wenige Sichten verwendet werden, die zumeist eine statische Sicht, die die Codestruktur des Rahmens anzeigt, eine einzigartige Sicht, die die Aktivitäten des Rahmens während der Ausführung demonstriert, und eine Organisationssicht, die anzeigt, wie ein Rahmen für die Ausführung auf die Ausrüstung gesetzt wird, enthalten. Kruchtens 4+1-Ansicht schlägt eine Darstellung der üblicherweise verwendeten Perspektiven für die Berichterstattung über die Programmierarchitektur vor;[32] Archivierung von Programmierstrukturen: Perspectives and Past hat Darstellungen der Arten von Dokumentationen, die innerhalb der Ansichtsbeschreibung verwendet werden könnten;[1] Beispiele für Dokumentationsübungen sind das Zusammenstellen einer Bestimmung, die Aufzeichnung eines Rahmenkonfigurationsmodells, die Archivierung einer Planungsmethode der Argumentation, der Aufbau einer Perspektive, die Archivierung von Ansichten.