Softwarearchitekt

Softwarearchitekt

Softwarearchitekt ist ein Begriff zur Stellenbeschreibung für Menschen, die – egal mit welcher Ausbildung – im Bereich der Softwaretechnik an der Softwarearchitektur und deren Implementierung arbeiten.

Der Begriff "Softwarearchitekt" entstand aus der empfundenen Ähnlichkeit zwischen der technischen Planung einer Software und der architekturellen Planung von Gebäuden.[1]

Mit der Verbreitung der Objektorientierten Programmierung in der Informatik Ende der 1990er Jahren etablierte sich der Begriff zusehends. Die Objektorientierung erlaubte wesentlich größere und komplexere Softwarearchitekturen, welche einen Überblick und Entscheidungen auf Architekturebene nötig machten. Das Aufkommen von Open Source Frameworks und die damit notwendige Entscheidung zwischen möglichen Alternativen wurde eine weitere Aufgabe, die das Berufsbild der Softwarearchitekten ergänzte.

Inhaltsverzeichnis

Aufgaben

Trotz Fehlens einer gemeinhin akzeptierten Definition der Rolle eines Softwarearchitekten kann davon ausgegangen werden, dass diese üblicherweise für einen Teil der Prozesse der Softwaretechnik zuständig sind:

Planung

Bei der Planung von Softwareentwicklungsprojekten sind Architekten üblicherweise bei der Erstellung von Pflichtenheften, insbesondere der Findung, Beschreibung und Begründung der für die Umsetzung gewählten technischen Ansätze, beteiligt. Darüber hinaus werden Architekten oft federführend in der Aufwandsschätzung und Bestimmung des Vorgehensmodelles eingesetzt.

Analyse

Bei der Analyse kommen Softwarearchitekten üblicherweise nur bei der etwaig notwendigen Erstellung von Mock-ups zum Einsatz. Diese dienen dazu bestimmte Techniken und Technologien der Architektur genauer kennen zulernen um entscheiden zu können, inwieweit diese praktikabel sind.

Entwurf

Softwarearchitekten sind üblicherweise für alle Prozesse des Entwurfes verantwortlich. Insbesondere verantworten sie die Erstellung, Beschreibung und Kommunikation der Softwarearchitektur, beispielsweise unter Verwendung der Unified Modeling Language und geeigneten Entwurfsmustern. Architekten haben meist noch ein Mitspracherecht bei der zu verwendenden Laufzeitumgebung, selten auch bei der Plattform. In den wenigsten Fällen befassen sich Architekten aber mit der Systemarchitektur der Hardware.

Programmierung

Bei der Programmierung verantworten Architekten üblicherweise die korrekte Umsetzung der definierten Architektur, sowie den geeigneten Einsatz von Programmbibliotheken und Frameworks. Zudem sind sie oft für den zu verwendenden Programmierstil verantwortlich und geben die zu verwendenden Tools für die Entwicklung wie IDE, Build-Management-Tool, Versionsverwaltungs-Tool vor bzw. haben bei deren Auswahl ein bedeutendes Mitspracherecht.

Test

Im Rahmen des Tests verantworten Architekten meist den Modultest und seltener auch den Integrationstest. System- und Akzeptanztests unterstützen sie zumeist nur durch Entwurf und Umsetzung von Testtreibern und -Schnittstellen.

Unterstützungsprozesse

Bei den Unterstützungsprozessen der Softwaretechnik sind Architekten meist nur für einzelne technische Aufgaben und nie für ganze Prozesse verantwortlich. Meistens sind Architekten für die Statische Code-Analyse, sowie die Software- und Technische Dokumentation sowie das Betriebshandbuch verantwortlich.

Arten von Software- Architekten

Enterprise- Architekten treffen organisationsweite, meist Software-System-übergreifende Software Entscheidungen. Diese Entscheidungen betreffen meist mehrere Entwicklungsteams bzw. Standorte. Beispiele für solche Entscheidungen sind:

  • Einführung von systemübergreifenden Architekturen wie Serviceorientierte Architektur
  • Entscheidung für den Einsatz von systemübergreifenden Entwicklungsumgebungen oder Frameworks

Applikationsarchitekten treffen architekturelle Entscheidungen für eine bestimmte Applikation und somit genau ein Entwicklungsteam. Beispiele für solche Entscheidungen sind:

  • Entscheidung für einen bestimmten OR-Mapper (so diese Entscheidung nicht global vom Enterprise Architekten vorgegeben ist)
  • Definition der Applikationsarchitektur

Ähnliche Stellenbeschreibungen sind im Umlauf, so beispielsweise:

  • Solutions Architekt, beschreibt meist die Rolle einer Person, die eine bestimmte Business Lösung über mehrere Softwaresysteme hinweg betreut.
  • Systemarchitekt, wird meist als Synonym für Applikationsarchitekt verwendet.
  • Systems Architect (Plural), wird meist als Synonym für Enterprise Architekt oder Solutions Architekt verwendet.

Die folgende Tabelle zeigt die meisten der Unterschiede zwischen den unterschiedlichen Arten von Software- Architekten:

Art Strategische Ausrichtung System Interaktionen Kommunikation Design
Enterprise Architekt projektübergreifende Architekturen Hoch Abstrakt Organisationsweit Wenn, dann high level Design
Solutions Architekt Architekturen für eine Lösung Detailliert Über mehrere Teams Grobes bis detailliertes Design
Applikationsarchitekt Komponenten, Wiederverwendung, Wartbarkeit Auf eine Applikation fokussiert Innerhalb eines Projektes Detailliertes Design

In der Praxis gibt es auf Grund der unklaren Trennung der Bereiche der unterschiedlichen Architekten oft unterschiedliche Auffassungen bezüglich der Ziele der Architekten[2].

Ausbildung

Softwarearchitekten haben meist ein Studium in einem Informatikstudiengang an einer Hochschule oder einer Berufsakademie absolviert. Auch ein Studium in einem ingenieur- bzw. naturwissenschaftlichen Studiengang bietet Einstiegsmöglichkeiten in die Softwareentwicklung.

Des Weiteren gibt es die Möglichkeit, sich über eine Ausbildung in einem informationstechnischen Ausbildungsberuf z. B. zum Fachinformatiker für Anwendungsentwicklung an einer Berufsfachschule, an einer Fachschule für Datenverarbeitung und Organisation (z. B. ADV Böblingen) oder einem Berufskolleg zum Softwareentwickler, Softwareingenieur oder Software-Architekten zu qualifizieren.

Die schulische oder akademische Ausbildung alleine befähigt meist noch nicht zur Ausübung des Berufsbildes eines Softwarearchitekten. Die meisten Softwarearchitekten müssen jahre- bis jahrzehntelange Praxiserfahrung aufweisen, bevor sie die Rolle des Softwarearchitekten in größeren Entwicklungsprojekten wahrnehmen können.

Beschränkungen

In Deutschland ist die Verwendung des Begriffes "Softwarearchitekt" als Berufsbezeichnung nicht erlaubt. Aufgrund der Bestimmungen der Landesgesetze darf den Titel Architekt oder sprachliche Abwandlungen davon nur führen, wer in die Architektenliste einer Architektenkammer eingetragen ist.[3]

In Österreich darf die Berufsbezeichnung Architekt nur von Ziviltechnikern geführt werden. Ziviltechniker sind mit öffentlichem Glauben versehene Personen gemäß Paragraph 292 der österreichischen Zivilprozessordnung.

In der Schweiz ist die Verwendung des Begriffs „Softwarearchitekt“ keinen Restriktionen unterworfen und von keiner Berufsordnung oder Gesetzgebung geschützt.

Metapher

Der Begriff Softwarearchitekt wurde Anfang der 2000er Jahre auch außerhalb der IT-Welt bekannt als Bill Gates, damals President und CEO von Microsoft, sich auf die Rolle Chief Software Architect zurückzog. Dieser Titel reflektierte seine neue Aufgabe als Überwacher und Berater für viele Softwareentwicklungsprojekte bei Microsoft, Aufgaben die sonst einem Chief Technical Officer zufallen.

Siehe auch

Weblinks

Einzelnachweise

  1. WWISA Philosophy
  2. Anecdote about an interaction between Solution and Enterprise Architect
  3. beispielsweise Architektengesetz Baden Württemberg § 2 Berufsbezeichnung

Wikimedia Foundation.

Игры ⚽ Поможем написать курсовую

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Jeffrey Snover — (* in Seattle) ist ein US amerikanischer Softwareentwickler und Softwarearchitekt. Seit Dezember 1999 arbeitet er für das Softwareunternehmen Microsoft. Nach dem Studium der Physik an der Universität von New Hampshire arbeitete Snover unter… …   Deutsch Wikipedia

  • Kevin Lynch — ist der Name folgender Personen: Kevin Lynch (INLA) (1956–1981), nordirischer Widerstandskämpfer Kevin Lynch (Adobe), US amerikanischer Manager und Softwarearchitekt Kevin A. Lynch (1918–1984), US amerikanischer Stadtplaner und Autor Kevin G.… …   Deutsch Wikipedia

  • Klaus Pohl (Informatiker) — Klaus Pohl (* 1960 als Klaus Mussgnug ) ist ein deutscher Informatiker und Hochschullehrer. Leben Klaus Pohl studierte von 1984 bis 1989 Informatik an der Fachhochschule Karlsruhe und Informationswissenschaft an der Universität Koblenz. Vor… …   Deutsch Wikipedia

  • Liste der Biografien/Je — Biografien: A B C D E F G H I J K L M N O P Q …   Deutsch Wikipedia

  • Lynch — ist der Familienname folgender Personen: Benny Lynch (1913–1946), schottischer Boxer Bobby Lynch (1935–1982), irischer Musiker, Mitglied der Folk Band „The Dubliners“ (1964–1965) Brendan Lynch, irischer Politiker Brian Lynch (Musiker) (* 1956),… …   Deutsch Wikipedia

  • Schröder — Verteilung des Namens in Deutschland (2005) Schröder oder Schroeder ist ein deutscher Familienname. Herkunft und Bedeutung Mit dem Namen ist im Allgemeinen der Schneider (von niederdeutsch schrôden für „schneiden“) gemeint. Da …   Deutsch Wikipedia

  • Softwarearchitektur — Eine Softwarearchitektur ist eine der Architekturtypen in der Informatik und beschreibt die grundlegenden Komponenten und deren Zusammenspiel innerhalb eines Softwaresystems. Inhaltsverzeichnis 1 Definition 2 Beispiel 3 Kontext der… …   Deutsch Wikipedia

  • Softwareentwickler — ist ein Begriff zur Stellenbeschreibung für Menschen, die – egal mit welcher Ausbildung – im Bereich der Softwaretechnik, also am Design und der Implementierung der Software arbeiten. Der Begriff wird synonym mit Softwareingenieur (engl. software …   Deutsch Wikipedia

  • Weiss (Familienname) — Weiss ist ein Familienname. Herkunft und Bedeutung Weiss ist ein Übername (Eigenschaftsname) zu mittelhochdeutsch weise oder mittelniederdeutsch we(i)se mit den Bedeutungen „Waise, Waisenkind“. Für weitere Bedeutungen siehe Weiß (Familienname).… …   Deutsch Wikipedia

  • Denny Dias — (* Dezember 1946 in Philadelphia) ist ein US amerikanischer Gitarrist, bekannt aus der Anfangszeit von Steely Dan. Inhaltsverzeichnis 1 Werdegang 2 Diskographie 2.1 CD 2.2 …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”