 An object-oriented program’s structure often bears little resemblance to its code structure.  The code structure is frozen at compile-time; it consists.

Slides:



Advertisements
Similar presentations
Database System Concepts and Architecture
Advertisements

Ch 3 System Development Environment
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
Software Architecture for DSD DSD Team. Overview What is software architecture and why is it so important? The role of architecture in determining system.
Chapter 1 Object-Oriented System Development
Introduction To System Analysis and Design
February 21, 2008 Center for Hybrid and Embedded Software Systems Driving Application: 4D Tele-immersion Future Work Though.
Object Oriented System Development with VB .NET
Software Architecture Design Instructor: Dr. Jerry Gao.
Celsius Tech Bass Ch 15 Lecture by a team from
Database Management Systems Chapter 1. Introduction What is a database? What is a database management system (DBMS)? Remind me to tell you about this:
Instructor: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Software Systems.
© 2006 Pearson Addison-Wesley. All rights reserved2-1 Chapter 2 Principles of Programming & Software Engineering.
1 Computer Systems & Architecture Lesson 1 1. The Architecture Business Cycle.
Software Issues Derived from Dr. Fawcett’s Slides Phil Pratt-Szeliga Fall 2009.
1 A Student Guide to Object- Orientated Development Chapter 9 Design.
Object-oriented design CS 345 September 20,2002. Unavoidable Complexity Many software systems are very complex: –Many developers –Ongoing lifespan –Large.
CSC230 Software Design (Engineering)
Introduction to Software Design Chapter 1. Chapter 1: Introduction to Software Design2 Chapter Objectives To become familiar with the software challenge.
An Architectural Framework for Supporting Distributed Object Based Routing Dhavy Gantsou Department of Computer Science University of Valenciennes France.
Architectural Design.
Software Architecture in Practice (3rd Ed) Introduction
Chapter 1: Introduction to Visual Basic.NET: Background and Perspective Visual Basic.NET Programming: From Problem Analysis to Program Design.
University of Toronto at Scarborough © Kersti Wain-Bantin CSCC40 system design 1 what is systems design? preparation of the system’s specifications with.
Chapter 10 Architectural Design
The Design Discipline.
INFO415 Approaches to System Development: Part 2
Design Patterns OOD. Course topics Design Principles UML –Class Diagrams –Sequence Diagrams Design Patterns C#,.NET (all the course examples) Design Principles.
What is Architecture  Architecture is a subjective thing, a shared understanding of a system’s design by the expert developers on a project  In the.
“Enhancing Reuse with Information Hiding” ITT Proceedings of the Workshop on Reusability in Programming, 1983 Reprinted in Software Reusability, Volume.
The Architecture Business Cycle. Software Architecture Definition The software architecture of a program or computing system is the structure or structures.
1 5/18/2007ã 2007, Spencer Rugaber Software Architecture (Informal Definition) The organization of a system into component subsystems or modules Box and.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Architectural Design l Establishing the overall structure of a software system.
Introduction To System Analysis and Design
OBJECT ORIENTED SYSTEM ANALYSIS AND DESIGN. COURSE OUTLINE The world of the Information Systems Analyst Approaches to System Development The Analyst as.
SOFTWARE DESIGN (SWD) Instructor: Dr. Hany H. Ammar
SOFTWARE DESIGN.
SOFTWARE SYSTEMS DEVELOPMENT 4: System Design. Simplified view on software product development process 2 Product Planning System Design Project Planning.
10 Software Architecture CSCU 411 Software Engineering.
David Weiss Software Product-Line Engineering: A Family-Based Software Development Process: Designing The Family David Weiss
Software Development. Software Developers Refresher A person or organization that designs software and writes the programs. Software development is the.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 05. Review Software design methods Design Paradigms Typical Design Trade-offs.
Design Concepts By Deepika Chaudhary.
Learning Objective The students should be able to: a. state the definition of software b. state the usage of software c. list different types of software.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
Instructor: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Software Systems.
Welcome Experiences in the Use of MDA and UML in Developing NATO Standards 16 July 2008 Chris Raistrick, Kennedy KC.COM.
1 A-7E Case Study CSSE 477 Software Architecture Steve Chenoweth, Rose-Hulman Institute Wk 1, Day 3.
Lecture 2 Intro. To Software Engineering and Object-Oriented Programming (1/2)
Software Development Problem Analysis and Specification Design Implementation (Coding) Testing, Execution and Debugging Maintenance.
9-Dec Dec-15  INTRODUCTION.  FEATURES OF OOP.  ORGANIZATION OF DATA & FUNCTION IN OOP.  OOP’S DESIGN.
Abstract A Structured Approach for Modular Design: A Plug and Play Middleware for Sensory Modules, Actuation Platforms, Task Descriptions and Implementations.
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
Software Engineering and Object-Oriented Design Topics: Solutions Modules Key Programming Issues Development Methods Object-Oriented Principles.
1 Unified Modeling Language, Version 2.0 Chapter 2.
Review of Parnas’ Criteria for Decomposing Systems into Modules Zheng Wang, Yuan Zhang Michigan State University 04/19/2002.
Software Engineering Issues Software Engineering Concepts System Specifications Procedural Design Object-Oriented Design System Testing.
Lesson 1 1 LESSON 1 l Background information l Introduction to Java Introduction and a Taste of Java.
Chapter : 9 Architectural Design
Chapter 2 Principles of Programming and Software Engineering.
Design CS 470 – Software Engineering I Sheldon X. Liang, PH.D.
Lecture 2 Intro. To Software Engineering and Object-Oriented Programming (1/2)
Wrap up. Structures and views Quality attribute scenarios Achieving quality attributes via tactics Architectural pattern and styles.
Lecture 4b Case Study A-7E Avionics System Topics Case Study Information Hiding, Cooperating Seq. Proc. In real-time embedded systems Architecture for.
Lecture 4z Case Study A-7E Avionics System
CHAPTER 2 CREATING AN ARCHITECTURAL DESIGN.
TAL7011 – Lecture 2 Case Study of A-7E Avionics System
Software Architecture in Practice
Overview Activities from additional UP disciplines are needed to bring a system into being Implementation Testing Deployment Configuration and change management.
Presentation transcript:

 An object-oriented program’s structure often bears little resemblance to its code structure.  The code structure is frozen at compile-time; it consists of classes in fixed inheritance relationships.  A program’s runtime structure consists of rapidly changing networks of communicating objects.  The structures are largely independent and nearly impossible to understand one from the other.

 The system is responsible for reading sensors and updating cockpit displays that help the pilot drop weapons on a target.  It does not fly the aircraft.

 The architecture is centered around three structures:  Decomposition, a structure of modules  Uses, a structure of modules  Process, a structure of components and connectors  The module decomposition is based on information hiding

GoalHow Achieved Ease of change to: weapons, platform, symbology, input Information hiding Understand anticipated changesFormal evaluation procedures to take advantage of experience of domain experts Assign work teams so that their interactions were minimized Modules structured as a hierarchy; each work team assigned to a second- level module and all of its descedants

 Hardware-Hiding Module  Extended Computer Module  Device Interface Module  Behavior-Hiding Module  Function Driving Module  Shared Services Module  Software Decision Module  Application Data Type Module  Data Banker Module  Filter Behavior Module  Physical Models Module  Software Utility Module  System Generation Module

GoalHow Achieved Incrementally build and test system functions Create “is-allowed-to-use” structure for programmers that limits procedures each can use Design for platform changeRestrict number of procedures that use platform directly Produce usage guidance of manageable size Where appropriate, define uses to be a relationship among modules

GoalHow Achieved Map input to outputEach process implemented as cycle that samples inputs, computes, and presents output Maintain real-time constraintsIdentify process through process structure and then perform offline scheduling Provide results of time-consuming calculations immediately Perform calculations in background and return most recent value when queried