Softwarearchitektur ist eine Reihe von Strukturelementen mit einer bestimmten Form, dh eine Sammlung von Komponenten, einschließlich Verarbeitungskomponenten, Datenkomponenten und Verbindungskomponenten, die für die Verarbeitung von Daten verantwortlich sind, Datenkomponenten sind verarbeitete Informationen und Verbindungskomponenten Kombinieren Sie die Architektur. Verschiedene Kombinationen von Teilen werden miteinander verbunden.
Die Betriebsumgebung dieses Tutorials: Windows 10-System, DELL G3-Computer.
Softwarearchitektur ist eine Reihe von Strukturelementen mit einer bestimmten Form, dh eine Sammlung von Komponenten, einschließlich Verarbeitungskomponenten, Datenkomponenten und Verbindungskomponenten.
Die Verarbeitungskomponente ist für die Verarbeitung von Daten verantwortlich. Die Verbindungskomponente kombiniert und verbindet verschiedene Teile der Architektur. Diese Definition konzentriert sich auf die Unterscheidung von Verarbeitungskomponenten, Datenkomponenten und Verbindungskomponenten, ein Ansatz, der im Wesentlichen in anderen Definitionen und Methoden beibehalten wird. Im Vergleich zu „Softwarearchitektur“ wird der Begriff „Softwarearchitektur“ hauptsächlich im Bereich der akademischen Forschung verwendet, während „Softwarearchitektur“ hauptsächlich im Bereich der Ingenieurpraxis verwendet wird. Die ausländischen Namen für beide sind „Softwarearchitektur“ und Ihre Definitionen in IEEE sind beides: „Die grundlegende Organisation eines Systems, einschließlich jeder Komponente, die Beziehung zwischen Komponenten und der Umgebung und die Prinzipien, die seinen Entwurf und seine Entwicklung leiten.“
Einführung in die Definition
Obwohl Software-Architektur ein breites Anwendungsspektrum im Bereich Software-Engineering hat, gibt es bisher keine allgemein akzeptierte Definition. Viele Experten und Wissenschaftler haben Softwarearchitektur aus verschiedenen Blickwinkeln und Aspekten charakterisiert. Die typischeren Definitionen sind:
(1) Mary Shaw und David Garlan glauben, dass Softwarearchitektur eine Ebene im Softwaredesignprozess ist. Diese Ebene geht über Algorithmendesign und Daten hinaus Strukturdesign im Rechenprozess. Zu den Fragen der Architektur gehören die allgemeine Organisation und globale Steuerung, Kommunikationsprotokolle, Synchronisierung, Datenzugriff, die Zuweisung spezifischer Funktionen zu Designelementen, Organisation, Größe und Leistung von Designelementen, die Wahl zwischen Designalternativen usw. Die Softwarearchitektur befasst sich mit einigen Fragen im Zusammenhang mit dem Entwurf und der Beschreibung der Gesamtsystemstruktur auf der Grundlage von Algorithmen und Datenstrukturen, wie z. B. globaler Organisation und globaler Kontrollstruktur, Protokollen für Kommunikation, Synchronisierung und Datenzugriff, Funktionsdefinition von Entwurfskomponenten, physischer Verteilung usw Synthese, Auswahl, Bewertung und Implementierung von Designlösungen usw.
(2) Kruchten wies darauf hin, dass Softwarearchitektur vier Perspektiven hat, die das System aus unterschiedlichen Aspekten beschreiben: Die konzeptionelle Perspektive beschreibt die Hauptkomponenten des Systems und die Beziehungen zwischen ihnen sie; Module Die Perspektive umfasst die funktionale Zerlegung und die hierarchische Struktur; die Code-Perspektive beschreibt die Organisation verschiedener Codes und Bibliotheksfunktionen in der Entwicklungsumgebung.
(3) Hayes Roth glaubt, dass Softwarearchitektur eine abstrakte Systemspezifikation ist, die hauptsächlich funktionale Komponenten und die durch ihr Verhalten beschriebenen Verbindungen, Schnittstellen und Beziehungen zwischen Komponenten umfasst.
(4) David Garlan und Dewne Perry haben 1995 in IEEE Transactions on Software Engineering die folgende Definition übernommen: Softwarearchitektur ist die Struktur der Komponenten eines Programms/Systems, ihre Beziehungen untereinander sowie die Prinzipien und Richtlinien für ihren Entwurf die sich im Laufe der Zeit entwickeln.
(5) Barry Boehm und seine Studenten schlugen vor, dass eine Softwarearchitektur eine Reihe von Software- und Systemkomponenten, Verbindungen und Einschränkungen umfasst; um die Systemanforderungen zu erfüllen.
(6) 1997 gaben Bass, Ctements und Kazman im Buch „Using Software Architecture“ folgende Definition: Die Softwarearchitektur eines Programms oder Computersystems umfasst eine oder eine Gruppe von Softwarekomponenten sowie die externen Komponenten des Softwarekomponenten und ihre Zusammenhänge. Unter diesen beziehen sich „sichtbare Merkmale außerhalb der Software“ auf die von den Softwarekomponenten bereitgestellten Dienste, Leistung, Funktionen, Fehlerbehandlung, gemeinsame Ressourcennutzung usw.
Weitere Informationen zu diesem Thema finden Sie in der Spalte „FAQ“!
Das obige ist der detaillierte Inhalt vonWas ist das Konzept der Softwarearchitektur?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!