JAX 08: 20 Grundkonzepte der Softwarearchitektur

von Thomas Bahn,
assono GmbH, Standort Kiel,



Markus Völter:
20 Grundkonzepte der Softwarearchitektur

Concepts

Modularize
Procedures, Classes, Components, Services, Users Stories

Encapsulate
Private Members, Frameworks, Facade Pattern, Components, Layers/Rings/Levels, Packed Data Wrapper

Contracts
Interfaces, Pre/Post Conditions, Protocol State Machines, Message Exchange Patterns, Published APIs

Handle
Crosscuts
Aspect Orientation, Interceptors, Application Servers, Exception Handling


Scaling things up

Bootstrapping
(erst Minimalsystem bauen, das nutzen, um größeres zu bauen)
Languages, Compilers (z. B. gcc), IDEs

Standard Library
(kleiner Kern , z. B. Linux-Kernel, plus Standardbibliotheken)
Lisp (Grow a language), Autosar Sys Components, Microkernel OSs

Orthogonality
Closures, Program As Data, Macros, Higher-Order Functions


Conceptualization

Formalize
Language, Contracts, Models, State Machines

Types & Instances
Programming Languages, (Hierarch.) Components, Models & Metamodels, RDBMS/XML Schemas

Spezialize
Currying, Inheritance, State Machines

Notation
UML, Lisp, Java, Ruby,

Go Meta
Translators, Reflection, Meta Programming, AOP

Translate
Compilers, Transformers, Generators, Macros (Lisp, Converge, Boo)

Interpret
Business Process Engines, Data Driven Systems, (Dynamic) Languages

Automate
Build, Test, Translate


Dos and Dont's

Protocols
Transactions, Locking/Synchronization, Resource Access

Limit Freedom
Software Architecture, DSL: expressiveness, MDSD: skeletons, Scade/SystemC

Declaration over Implementation
App Servers (EJB), Plugin RT (Eclipse), Models, Transactional Mamory

Don't Overspecify
Test semantics, not syntax (code gen), Higher Order Functions (map, foreach), Transactional Memory

Avoid Sideeffects
Functional Programming, Concurrency (Sharing), Distribution

Veranstaltung Fachbeitrag JavaScript Java Sonstiges

Sie haben Fragen zu diesem Artikel? Kontaktieren Sie uns gerne: blog@assono.de

Sie wollen eine individuelle Lösung? Kontaktieren Sie uns

Weitere interessante Artikel

Sie haben Fragen? Wir sind für Sie da.

Wir verwenden Ihre Daten, um Sie einmalig per E-Mail zu kontaktieren. Wir geben Ihre Daten nicht an Dritte weiter. Siehe: Datenschutzhinweise
assono GmbH

Standort Kiel (Zentrale)
assono GmbH
Lise-Meitner-Straße 1–7
24223 Schwentinental

Standort Hamburg
assono GmbH
Bornkampsweg 58
22761 Hamburg

Telefonnummern:
Zentrale: +49 4307 900 407
Techn. Hotline: +49 4307 900 403
Vertrieb: +49 4307 900 402

E-Mail-Adressen:
kontakt@assono.de
bewerbung@assono.de