Download presentation
Presentation is loading. Please wait.
1
Designing software applications
Lection 3 Documenting software architectures
2
Aspects styles Crosscutting functionality / crosscutting concerns
Logging Security Data validation
3
Aspects styles Implementation of crosscutting functionality
Inheritance Attribute-oriented programming
4
Layered style Crosscutting functionality Logging Security
Data validation
5
Aspects styles: Notation
UML class diagramm with stereotype „Aspect”
6
Dependency injection Software design pattern implementing Inversion of Control principle
7
Inversion of Dependency
Traditionally high-level modules consume (depend on) low-level modules
8
Inversion of Dependency
High level modules should not depend on low level modules. They should depend on abstraction (interfaces)
9
Dependency Injection Class library Dependency container Configuration
XML Runtime
11
Component views Software component is a unit of deployment or an executable unit Notations: UML Component Diagram notation Box&line informal notation
12
Component views P2P style Data flow style Client-server style
Multi-tier style
13
Allocation views Connection between your software and external environment
14
Allocation views Deployment view Task assignment vie
Deployment diagram Task assignment vie
15
TASK 3 Requirements: 5 DBMSs, 8 interfaces + Sources list Part 1.
Create a list of interfaces and database management systems (software components) implementing them. Find out what interface is mostly used by DBMSs (best compatibility) Requirements: 5 DBMSs, 8 interfaces + Sources list DBMS Interfaces
16
TASK 3 Create your own notation for component diagram (at least 4 component types). Relations – dependency arrow and dependcy-interface arrow. Create your diagram for mentined below software system using your notation (at least 5 components, 4 component types). Weather and wind map / Voice-over-IP Bus timetable / Client exchange broker app
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.