SOFTWARE LÖSUNGEN
Software Architektur Beratung
Bevor jemals eine Zeile Code geschrieben werden kann, muss der/die Softwarearchitekt:in das Zielbild des Features definieren. Bei komplexen oder gewachsenen Software Entwicklungsprojekten entsteht eventuell bei Fehlplanungen und Nichteinhaltung von modularen Prinzipien, schnell eine sehr schwere wartbare Softwarelösung mit dem Effekt, dass diese einem Architektur Software Monolithen entspricht, welcher schlecht verteilbar und skalierbar ist, letztlich ein geschlossenes System darstellt, das untrennbar miteinander agiert. Während der Planungsphase sollte die Architekturdefinition immer Komponenten trennen und Risiken des Softwaremonolithen vermeiden.
Eine Softwarearchitektur ist einer der Architekturtypen in der Informatik und beschreibt die grundlegenden Komponenten und deren Zusammenspiel.
Architekturtypen:
Worauf es bei moderner Software-Architektur ankommt – und worauf nicht (mehr)
Moderne Software-Architektur bietet als wichtigstes Kriterium die Flexibilität von nachträglichen Veränderungen und Anpassungen. Darüber hinaus trägt sie dazu bei, dass die Softwarelösung möglichst allen Kriterien des Qualitätsbaums entspricht und die drei Qualitätsszenarien aus Anwendung, Änderung und Ausfall in ihren Auswirkungen erfolgreich gemessen werden können.
Architekturtypen:
- Client-Server
- Peer-to-Peer
- Serviceorientierte Architektur (SOA)
- Model View Controller (MVC)
- Schichtenarchitektur
- Microservice Architektur
- Pipes und Filter
Worauf es bei moderner Software-Architektur ankommt – und worauf nicht (mehr)
Moderne Software-Architektur bietet als wichtigstes Kriterium die Flexibilität von nachträglichen Veränderungen und Anpassungen. Darüber hinaus trägt sie dazu bei, dass die Softwarelösung möglichst allen Kriterien des Qualitätsbaums entspricht und die drei Qualitätsszenarien aus Anwendung, Änderung und Ausfall in ihren Auswirkungen erfolgreich gemessen werden können.
Vorteile
- Klarer Entwurf der Softwarekomponenten passend zur Applikation und UseCases
- Bessere Eingrenzung der Framework Auswahl
- Implementierungsaufwand kann sich an Komponenten orientieren
- Microservice Architekturen sind flexibler und können Ressourcen effektiver nutzen
- Quellcode wird transparenter und somit wartbarer und anpassungsfähiger
Konsequenz
Um diese höchste Qualitätsstufe zu erreichen, rücken zunehmend das Wie der Software-Architektur und Software-Entwicklung und damit agile Projektmanagementmethoden in den Fokus. Die wichtigste Verfahrensweise beschreibt dabei das Rahmenwerk SCRUM, das die hierarchiefreie Teamarbeit in den Vordergrund stellt. Durch Instrumente wie zum Beispiel Sprint oder Daily Scrums ermöglicht das Framework eine iterativ-inkrementelle Produktentwicklung in Time und in Budget.
Software Entwicklung
Die Softwareentwicklung ist immer stark von den eingesetzten Frameworks und Programmiersprachen abhängig. Dennoch haben sich diverse Frameworks für genaue Aufgabenstellungen etabliert. Welche Software entwickelt wird, hängt ganz davon ab, was der Kunde benötigt…
Software Testing
Test getriebene Softwareentwicklung vermeidet besser unerwartete Fehler und führt nachhaltig zu qualitativ besserem Class Code…
Previous
Next