Presentation is loading. Please wait.

Presentation is loading. Please wait.

Designing software applications

Similar presentations


Presentation on theme: "Designing software applications"— Presentation transcript:

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

10

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


Download ppt "Designing software applications"

Similar presentations


Ads by Google