Software-Architecture Introduction



Ähnliche Dokumente
Softwarequalität: Einführung. 15. April 2015

Agile Softwareprozess-Modelle

Cloud Architektur Workshop

12 Nicht-funktionale Anforderungen

ITIL & TOGAF die Doppelspitze für IT Governance

DIGICOMP OPEN TUESDAY AKTUELLE STANDARDS UND TRENDS IN DER AGILEN SOFTWARE ENTWICKLUNG. Michael Palotas 7. April GRIDFUSION

Testen in KMU Projekten Bern, November 2013

HIR Method & Tools for Fit Gap analysis

ZuuL - Entwicklung eines Adventures

The Master of Science Entrepreneurship and SME Management

Softwareentwicklungsprozesse. 18. Oktober 2012

NEWSLETTER. FileDirector Version 2.5 Novelties. Filing system designer. Filing system in WinClient

There are 10 weeks this summer vacation the weeks beginning: June 23, June 30, July 7, July 14, July 21, Jul 28, Aug 4, Aug 11, Aug 18, Aug 25

Einkommensaufbau mit FFI:

Security Patterns. Benny Clauss. Sicherheit in der Softwareentwicklung WS 07/08

Softwaretechnik Nicht funktionale Anforderungen

Pflichtenheft. 1 Zielbestimmungen Musskriterien Wunschkriterien Abgrenzungskriterien... 2

Pflichtenheft: Wettervorhersagen via Webservice

WAS IST DER KOMPARATIV: = The comparative

Selbstorganisiert ein Ziel erreichen Analyse, Architektur und Design in agilen Software-Projekten

Software development with continuous integration

Unternehmensweite IT Architekturen

Softwarequalität: Zusammenfassung und Ausblick. 17. Juli 2013

Einführung von XP in der Praxis

arlanis Software AG SOA Architektonische und technische Grundlagen Andreas Holubek

Der agile Software Architekt

Challenges for the future between extern and intern evaluation

Validierung von Software-Werkzeugen. Matthias Hölzer-Klüpfel

Number of Maximal Partial Clones

SharePoint 2010 Mobile Access

Praktikum Experience Design From Experience Story to Scheme

Sport Northern Ireland. Talent Workshop Thursday 28th January 2010 Holiday Inn Express, Antrim

Qualitätssicherung. Was ist Qualität?

Mit Legacy-Systemen in die Zukunft. adviion. in die Zukunft. Dr. Roland Schätzle

Readme-USB DIGSI V 4.82

Die UN-Kinderrechtskonvention. Darstellung der Bedeutung (German Edition)

Martin Luther. Click here if your download doesn"t start automatically

Customer-specific software for autonomous driving and driver assistance (ADAS)

English. Deutsch. niwis consulting gmbh ( manual NSEPEM Version 1.0

Was heißt Denken?: Vorlesung Wintersemester 1951/52. [Was bedeutet das alles?] (Reclams Universal-Bibliothek) (German Edition)

EEX Kundeninformation

miditech 4merge 4-fach MIDI Merger mit :

Universität Bielefeld. Softwarepraktikum. Gernot A. Fink SS Rückblick extreme Programming (XP)

Microsoft Azure Fundamentals MOC 10979

Multicriterial Design Decision Making regarding interdependent Objectives in DfX

Praktikum Entwicklung von Mediensystemen mit ios

Rezension des Papers Recovery, Redemption and Extreme Programming von Peter Schuh

Star Trek: die Serien, die Filme, die Darsteller: Interessante Infod, zusammengestellt aus Wikipedia-Seiten (German Edition)

Algorithms for graph visualization

Agile Programmierung: Case Studies

HiOPC Hirschmann Netzmanagement. Anforderungsformular für eine Lizenz. Order form for a license

Grade 12: Qualifikationsphase. My Abitur

Special shower enclosure - Sonderprodukte

Women Entrepreneurship in Germany and Access to Capital

Universal Discovery 10.x, Jython Adapter

ETHISCHES ARGUMENTIEREN IN DER SCHULE: GESELLSCHAFTLICHE, PSYCHOLOGISCHE UND PHILOSOPHISCHE GRUNDLAGEN UND DIDAKTISCHE ANSTZE (GERMAN

EVANGELISCHES GESANGBUCH: AUSGABE FUR DIE EVANGELISCH-LUTHERISCHE LANDESKIRCHE SACHSEN. BLAU (GERMAN EDITION) FROM EVANGELISCHE VERLAGSAN

6 Management der Informationssysteme (2)

Code Retreat Softwerkskammer Stuttgart / JUGS 17. Nov. Oliver Böhm JUGS / Daniel Georges Softwerkskammer Stuttgart

ADVERTISING IMAGES ANZEIGENMOTIVE. Spring/Summer 2014 Frühjahr/Sommer 2014

Eclipse User Interface Guidelines

+++ Bitte nutzen Sie die integrierte Audio-Funktion von WebEx (Menü Audio -> Integrated Voice Conference -> Start auswählen), um uns zu hören!!!.

Modulbeschreibung. The course is principally designed to impart: technical skills 50%, method skills 40%, system skills 10%, social skills 0%.

on Software Development Design

Lehrstuhl für Allgemeine BWL Strategisches und Internationales Management Prof. Dr. Mike Geppert Carl-Zeiß-Str Jena

ReadMe zur Installation der BRICKware for Windows, Version ReadMe on Installing BRICKware for Windows, Version 6.1.2

Mock Exam Behavioral Finance

Ein Stern in dunkler Nacht Die schoensten Weihnachtsgeschichten. Click here if your download doesn"t start automatically

Harry gefangen in der Zeit Begleitmaterialien

Preisliste für The Unscrambler X

MDA auf der Grundlage der OMG Konzepte

Corporate Digital Learning, How to Get It Right. Learning Café

Lehrstuhl für Allgemeine BWL Strategisches und Internationales Management Prof. Dr. Mike Geppert Carl-Zeiß-Str Jena

DATA ANALYSIS AND REPRESENTATION FOR SOFTWARE SYSTEMS

Consultant Profile Anja Beenen (née Weidemann) Experience

DevOps - Entwickelst Du noch oder lieferst Du schon?

Kitty de luxe. Kollektion 2015 Collection Tradition und Lifestyle...

Funktionalität des Tickets: Ticket erstellen, Mitglieder einladen -> annehmen/ablehnen.

HP ALM. Was gibt es Neues und wo geht die Reise hin. Thomas Köppner, Technical Consultant, HP

Firma, Adresse: Company, Adress. Namen der verantwortlichen für die Qualitätssicherung: Names of resposible person for quality assurance:

MES - Manufacturing Execution System: Moderne Informationstechnologie Zur Prozessfähigkeit Der Wertschöpfung (German Edition)

Prozesse als strategischer Treiber einer SOA - Ein Bericht aus der Praxis

FAHRZEUGENTWICKLUNG IM AUTOMOBILBAU FROM HANSER FACHBUCHVERLAG DOWNLOAD EBOOK : FAHRZEUGENTWICKLUNG IM AUTOMOBILBAU FROM HANSER FACHBUCHVERLAG PDF

Word-CRM-Upload-Button. User manual

Software Echtzeitverhalten in den Griff Bekommen

Experts in agile software engineering. Software Architektur andrena objects ag

Qualität 1. 1 Qualität

Listening Comprehension: Talking about language learning

Händler Preisliste Trade Price List 2015

Wie misst man Qualität?

`* Free Download Programmieren: Software entwickeln fr Einsteiger: Lernen Sie die Grundlagen von Java, SQL und C++ (Codierung,...

Level 1 German, 2012

selbst verständlich certainly

Communications & Networking Accessories

Enterprise Anwendungssysteme mit Schwerpunkt auf SCM und RFID Prozesse, Aufgaben und Methoden

DAS ERSTE MAL UND IMMER WIEDER. ERWEITERTE SONDERAUSGABE BY LISA MOOS

Transkript:

Software-Architecture Introduction Prof. Dr. Axel Böttcher Summer Term 2011 3. Oktober 2011

Overview 2 hours lecture, 2 hours lab sessions per week. Certificate ( Schein ) is prerequisite for admittanceto final exam. Written Exam 90 Minutes Practical lessons: Certificate is handed out for successful solution of the assignments.

Module description Goals/Competencies The ability to design, evaluate, implement, and operate modern architectures for complex software systems. More specific: Extend your software craftsmanship skills Integration of large frameworks,libraries and components into a software product Understanding large existing software projects Do things right from the beginning

Literature J. Bloch: Effective Java, 2nd Edition, Addison Wesley 2008 (Absolut Spitze) R. C. Martin Clean Code Prentice Hall 2009 (sehr zu empfehlen) O. Vogel et al.:software-architektur; Grundlagen Konzepte Praxis, Spektrum Akademischer Verlag 2005 E. Freeman et al.: Head First Design Patterns, O Reilly 2004

Some Definitions Software Architecture is the most advanced discipline in Software-Engineering. It deals with the question of how to structure a project with millions of lines of code such tht the result has high quality Every Software has an Architecture. The architecture comprises of all up-front decisions, i.e. every decision that is difficult to change when the software has evolved significantly.

Aufgaben und Abhängigkeiten Mit dem Begriff Architektur wird auch eine gewisse Ästhetik verbunden: Software darf nicht nur daran gemessen werden, ob sie momentan ihre Aufgabe erfüllt (funktionale Anforderungen), sondern, ob sie ästhetisch ist: DIN ISO 9126: Funktionalität: Richtigkeit, Angemessenheit, Interoperabilität, Ordnungsmäßigkeit, Sicherheit Zuverlässigkeit: Reife, Fehlertoleranz, Wiederherstellbarkeit Benutzbarkeit: Verständlichkeit, Erlernbarkeit, Bedienbarkeit Effizienz: Zeitverhalten, Verbrauchsverhalten Änderbarkeit: Analysierbarkeit, Modifizierbarkeit, Stabilität, Prüfbarkeit Übertragbarkeit: Anpassbarkeit, Installierbarkeit, Konformität, Austauschbarkeit All das muss der Architekt berücksichtigen.

Definition (Bass et al.) The software architecture of a program or computing system is a structure or structures of the system, which comprise software elements, the externally visible properties of those elements, and the relationships among them. Thus: Structure or structures Software elements Relationships (Interaktion) Visible properties

Architectural Views You can compare this to different plans of building structure (electricat currency, water, sewerage,...) 1. Conceptual View (Konzeptionelle Sicht) 2. Module View (Modulsicht) 3. Execution View (Ausführungssicht) 4. Code View (Programmsicht)

Agile Techniques Principles that drive agile teams: Short cycles (frequent releases, permanent decissions on next features) Small releases close interaction with the customer automated tests and Test-Driven Development Coding Standards Refactoring Pair Programming Collective Ownership

Patterns (Design Patterns, Architectural Patterns) Code Reuse = Experience Reuse Patterns are template solutions for repeating problems. Architectural Patterns describe fundamental structures, predefined subsystems and their responsibilities (mainly in the conceptional view) Design Patterns describe subsystems (mainly in module and program view). Patterns do not define the concrete architecture itself. Similar to the statement thi schurch is built in Gothic stayle that does not describe the building, but only some fundamental aspects: floorplan is latin cross high walls, huge windows pointed arch (Spitzbogen) vertical emphasis