Designing software applications

Slides:



Advertisements
Similar presentations
Software Architecture Design Chapter 12 Part of Design Analysis Designing Concurrent, Distributed, and Real-Time Applications with UML Hassan Gomaa (2001)
Advertisements

Ch:8 Design Concepts S.W Design should have following quality attribute: Functionality Usability Reliability Performance Supportability (extensibility,
Implementation Architecture
By Philippe Kruchten Rational Software
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 04. Other.
UML Static diagrams. Static View: UML Component Diagram Component diagrams show the organization and dependencies among software components. Component:
2 Object-Oriented Analysis and Design with the Unified Process Objectives  Explain how statecharts can be used to describe system behaviors  Use statecharts.
DAIMI(c) Henrik Bærbak Christensen1 Software Architecture Views.
Satzinger, Jackson, and Burd Object-Orieneted Analysis & Design
CS 432 Object-Oriented Analysis and Design
Developed by Reneta Barneva, SUNY Fredonia Component Level Design.
1 A Student Guide to Object- Orientated Development Chapter 9 Design.
Logical Architecture and UML Package Diagrams
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Software Architecture. Agenda " Why architect? " What is architecture? " What does an architect do? " What principles guide the process of architecting?
What is Software Architecture?
Objectives Design Class Diagrams Issues in system design Generalization Review UML papers.
Documenting Software Architectures
The Design Discipline.
What is an Architecture?. An Example? Invoice OrderDelivery Customer.
© Drexel University Software Engineering Research Group (SERG) 1 Based on the paper by Philippe Kruchten from Rational Software.
Logical Architecture and UML Package Diagrams 徐迎晓 复旦大学软件学院.
Smith’s Aerospace © P. Bailey & K. Vander Linden, 2005 Architecture: Component and Deployment Diagrams Patrick Bailey Keith Vander Linden Calvin College.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 07. Review Architectural Representation – Using UML – Using ADL.
SAMANVITHA RAMAYANAM 18 TH FEBRUARY 2010 CPE 691 LAYERED APPLICATION.
Unified Modeling Language, Version 2.0
Requirements To Design--Iteratively Chapter 12 Applying UML and Patterns Craig Larman.
Session 26 Modeling the Static View: The Deployment Diagram Written by Thomas A. Pender Published by Wiley Publishing, Inc. October 27, 2011 Presented.
Software Architecture and Design Dr. Aldo Dagnino ABB, Inc. US Corporate Research Center October 23 rd, 2003.
Service Oriented Architectures Presentation By: Clifton Sweeney November 3 rd 2008.
Documenting Software Architectures 1.Uses and Audiences for Architecture Documentation Architecture documentation serves as a means of education Architecture.
Implementation Diagrams
R R R CSE870: UML Component Diagrams Implementation Diagrams.
ECE450 - Software Engineering II1 ECE450 – Software Engineering II Today: Introduction to Software Architecture.
Lecture 18: Object-Oriented Design
Software Architectural Views By the end of this lecture, you will be able to: list and describe the views in the 4+1 view model of software architecture.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Preface IIntroduction Objectives I-2 Course Overview I-3 1Oracle Application Development Framework Objectives 1-2 J2EE Platform 1-3 Benefits of the J2EE.
1 Lecture 3 Major Architectural Models View (Cont’d) Architectural Models/Patterns Architecture Case Study Software Architecture & Design Pattern.
Kansas City Java User’s Group Jason W. Bedell July 12, 2006
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 6 - Essentials of Design an the Design Activities.
Introduction. System Design Hardware/Software Platform Selection Software Architectures Database Design Human-Computer Interaction (HCI) Interface Object.
Building J2EE Applications Based on Design Patterns with Business Components for Java Olivier LE DIOURIS Principal Product Manager Oracle Corporation.
R R R CSE870: UML Component Diagrams Implementation Diagrams.
Design Concepts ch-8
Deployment Diagram.
Designing software applications
CHAPTER
Deployment Diagram.
OO Methodology OO Architecture.
Part 3 Design What does design mean in different fields?
What is an Architecture?
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Object-Oriented Design
More Model Elements.
IMPORTANT NOTICE TO STUDENTS:
Design Tips.
Analysis models and design models
Software Design Lecture : 14.
SAMANVITHA RAMAYANAM 18TH FEBRUARY 2010 CPE 691
4+1 View Model of Software Architecture
What is an Architecture?
Sylnovie Merchant, Ph.D. MIS 161 Spring 2005
4+1 View Model of Software Architecture
Design Yaodong Bi.
CIS 375 Bruce R. Maxim UM-Dearborn
Databases and the MVC Model
Chapter 6: Architectural Design
Software Architecture & Design
Chapter 10 – Component-Level Design
Presentation transcript:

Designing software applications Lection 3 Documenting software architectures

Aspects styles Crosscutting functionality / crosscutting concerns Logging Security Data validation

Aspects styles Implementation of crosscutting functionality Inheritance Attribute-oriented programming

Layered style Crosscutting functionality Logging Security Data validation

Aspects styles: Notation UML class diagramm with stereotype „Aspect”

Dependency injection Software design pattern implementing Inversion of Control principle

Inversion of Dependency Traditionally high-level modules consume (depend on) low-level modules

Inversion of Dependency High level modules should not depend on low level modules. They should depend on abstraction (interfaces)

Dependency Injection Class library Dependency container Configuration XML Runtime

Component views Software component is a unit of deployment or an executable unit Notations: UML Component Diagram notation Box&line informal notation

Component views P2P style Data flow style Client-server style Multi-tier style

Allocation views Connection between your software and external environment

Allocation views Deployment view Task assignment vie Deployment diagram Task assignment vie

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

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