Systems Architectures System Integration & Architecture.

Slides:



Advertisements
Similar presentations
Ch:8 Design Concepts S.W Design should have following quality attribute: Functionality Usability Reliability Performance Supportability (extensibility,
Advertisements

Lecture # 2 : Process Models
Virtual University - Human Computer Interaction 1 © Imran Hussain | UMT Imran Hussain University of Management and Technology (UMT) Lecture 16 HCI PROCESS.
Chapter 2 – Software Processes
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall A.1.
Sixth Hour Lecture 10:30 – 11:20 am, September 9 Framework for a Software Management Process – Artifacts of the Process (Part II, Chapter 6 of Royce’ book)
OASIS Reference Model for Service Oriented Architecture 1.0
Object-Oriented Analysis and Design
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
The Architecture Design Process
Chapter 1 Software Development. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 1-2 Chapter Objectives Discuss the goals of software development.
Analysis Concepts and Principles
© Copyright Eliyahu Brutman Programming Techniques Course.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix.
1 Computer Systems & Architecture Lesson 1 1. The Architecture Business Cycle.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Introduction to Software Design Chapter 1. Chapter 1: Introduction to Software Design2 Chapter Objectives To become familiar with the software challenge.
Software Architecture. Agenda " Why architect? " What is architecture? " What does an architect do? " What principles guide the process of architecting?
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Architectural Design.
What is Software Architecture?
Introduction To System Analysis and design
Chapter 10 Architectural Design
UML - Development Process 1 Software Development Process Using UML (2)
S/W Project Management Software Process Models. Objectives To understand  Software process and process models, including the main characteristics of.
Chapter 6 System Engineering - Computer-based system - System engineering process - “Business process” engineering - Product engineering (Source: Pressman,
Software Project Management Introduction to Project Management.
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 A Discipline of Software Design.
Foundations of Geospatial System Development Todd S. Bacastow Professor of Practice for Geospatial Intelligence John A. Dutton e-Education Institute The.
ITEC 3220M Using and Designing Database Systems
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix A Object-Oriented.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
High Level Architecture Overview and Rules Thanks to: Dr. Judith Dahmann, and others from: Defense Modeling and Simulation Office phone: (703)
Role-Based Guide to the RUP Architect. 2 Mission of an Architect A software architect leads and coordinates technical activities and artifacts throughout.
SOFTWARE DESIGN.
Software Architecture and Design Dr. Aldo Dagnino ABB, Inc. US Corporate Research Center October 23 rd, 2003.
1 Systems Analysis and Design in a Changing World, Thursday, January 18, 2007.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
1 Introduction to Software Engineering Lecture 1.
Illustrations and Answers for TDT4252 exam, June
Information Systems Engineering. Lecture Outline Information Systems Architecture Information System Architecture components Information Engineering Phases.
Chapter 10 Analysis and Design Discipline. 2 Purpose The purpose is to translate the requirements into a specification that describes how to implement.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 05. Review Software design methods Design Paradigms Typical Design Trade-offs.
Notes of Rational Related cyt. 2 Outline 3 Capturing business requirements using use cases Practical principles  Find the right boundaries for your.
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
1 Software Development Software Engineering is the study of the techniques and theory that support the development of high-quality software The focus is.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:
1-1 Software Development Objectives: Discuss the goals of software development Identify various aspects of software quality Examine two development life.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 10a: Architectural Design Software Engineering: A Practitioner’s Approach, 6/e Chapter 10a:
Chapter 2 – Software Processes Lecture 1 Chapter 2 Software Processes1.
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
INFORMATION SYSTEM ANALYSIS & DESIGN
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Chapter 2 – Software Processes Lecture 1 1Chapter 2 Software Processes.
Foundations of Geospatial System Development Todd S. Bacastow Professor of Practice for Geospatial Intelligence John A. Dutton e-Education Institute The.
Chapter 1: Introduction Omar Meqdadi SE 3860 Lecture 1 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
 CMMI  REQUIREMENT DEVELOPMENT  SPECIFIC AND GENERIC GOALS  SG1: Develop CUSTOMER Requirement  SG2: Develop Product Requirement  SG3: Analyze.
Search Engine Optimization © HiTech Institute. All rights reserved. Slide 1 Click to edit Master title style What is Business Analysis Body of Knowledge?
From Use Cases to Implementation 1. Structural and Behavioral Aspects of Collaborations  Two aspects of Collaborations Structural – specifies the static.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Wrap up. Structures and views Quality attribute scenarios Achieving quality attributes via tactics Architectural pattern and styles.
The Software Lifecycle Stuart Faulk. Definition Software Life Cycle: evolution of a software development effort from concept to retirement Life Cycle.
Unified Modeling Language
Presentation transcript:

Systems Architectures System Integration & Architecture

Architecture SE Tutorial Sys Architectures - 2 System Integration & Architecture The word “architecture” is derived from the Greek word “architecton”, which means master mason or master builder Webster’s Dictionary defines architecture as: The art or science of designing or building structures The structure (in terms of components, connections, and constraints) of a product, process, or element – The Art of Systems Architecting An Architecture is the highest-level concept of a system in its environment - IEEE

Architecture Architecture – The fundamental organization of a system embodied in its components, their relationships to each other and to the environment and the principles guiding its design and evolution - P141 Standard Systems Architecture – The fundamental and unifying system structure defined in terms of system elements, interfaces, processes, constraints, and behaviors – INCOSE SAWG Architecture – The organizational structure of a system of CSCIs, identifying its components, their interfaces and a concept of execution among them System Integration & Architecture 3

Architecture The architecture of a system defines its high- level structure, exposing its gross organization as a collection of interacting components. Components needed to model a software architecture include: – Components, Connectors, Systems, Properties and Styles. System Integration & Architecture 4

IT Architecture Concepts Components – The computational elements and data stores of the system – May have multiple interfaces, called ports – Ports define a point of interaction between a component and its environment Connectors – Model interactions among components – Runtime perspective: connectors mediate the communication and coordination activities between components – Connectors may have interfaces that define the roles played by the participants in the interaction System Integration & Architecture 5

IT Architecture Concepts Systems – Graphs of components and connectors – Tend to be hierarchical – components and connectors may represent subsystems that have their own internal architectures – Bindings map the interfaces of one level of a system to another Properties – Represent the non-structural information about the parts of an architecture description – Example: a connector can be a function call, or a network interaction – Properties can be attached to any architectural element System Integration & Architecture 6

IT Architecture Concepts Style – An architectural style represents a family of related systems – Defines the design vocabulary (and constraints) for the components, connectors, ports, roles, bindings and properties. System Integration & Architecture 7

System Architect The architect is a member of the team that is responsible for designing and building a system The architect’s contribution comes in the very early stages of the systems engineering process – When the operational concept is defined – The basic structure of the system is conceptualized A system architect, not only knows about the individual components, but also understands the interrelationships among the components System Integration & Architecture 8

Systems Architecting Systems Architecting has been defined as the process of creating complex, unprecedented systems Building systems in today’s world is tenuous at best – Requirements of the marketplace are ill-defined – Rapidly evolving technology provides new services at a global level instantly – Uncertainty is increasing about they way the system will be used, the components that will be incorporated and the interconnections that will be made System Integration & Architecture 9

Systems Architecting - 2 Generating a system architecture as part of the systems engineering process can be seen as a deliberate approach to deal with the uncertainty that characterizes these complex, unprecedented systems System Integration & Architecture 10

Traditional Approach to System Architecting Many methodologies have been developed to support a traditional system development model – Define the requirements – Consider several options – Emerge with a well-defined design through a process of elimination – Based on structured analysis and design System Integration & Architecture 11

Traditional Approach to System Architecting - 2 Effective when the requirements are well defined and remain essentially constant during the system development period – Cannot handle change well If the implementation of the system is long – on the order of years – the requirements change because of changing needs and new technology offers different alternatives and opportunities System Integration & Architecture 12

The Traditional Approach System Integration & Architecture 13

Evolutionary Approach New approach that is emerging with roots in software systems engineering Deals with uncertainty in requirements and in technology, especially for systems with a long development time and expected long life cycle – Evolutionary development – Build-a-little, Test-a-little Requirements are allowed to be more abstract and therefore subject to interpretation Alternative solutions are explored and pursued further as new technology options become available System Integration & Architecture 14

Evolutionary Approach - 2 Intermediate designs are saved Some intermediate designs are implemented as prototypes but not operationally implemented while others are implemented in traditional ways Advantages of Object-Oriented approach: – Allows flexibility in the design as it evolves over time Disadvantages of Object-Oriented approach: – Requires some early elimination of technology alternatives in the absence of reliable information System Integration & Architecture 15

Evolutionary Approach System Integration & Architecture 16

Select, Build, and Field At any time in the development process, when there is a need to build a system, the available solution that best meets the current requirements is selected and implemented using any systems engineering approach System Integration & Architecture 17

Select, Build, and Field System Integration & Architecture 18

The Challenge of Coping With Change If the implementation is long, then the situation shown next prevails, with the unfortunate consequences that very little, if any, from the work on Option A is used for Option B System Integration & Architecture 19

The Challenge of Coping With Change System Integration & Architecture 20

How to Define an Architecture Defining an architecture, especially of an information system, requires the following items to be described: – Processes exist that need to take place in order that the system accomplish its intended functions – The individual processes transform either data or materials that “flow” between them – The processes or activities or operations follow rules that establish the conditions under which they occur – The components that will implement the design (hardware, software, personnel, and facilities must be described) System Integration & Architecture 21

How to Define an Architecture - 2 Define the Functional Architecture – A functional architecture is: A set of activities or functions that are arranged in a specific order and when activated, achieves a set of requirements Divide and allocate the functional requirements into different sub-functions and modes of operation System Integration & Architecture 22

How to Define an Architecture - 3 Define the Physical Architecture – A physical architecture is: A representation of the physical resources Expressed as nodes that constitute the system and their connectivity Expressed in the form of links System Integration & Architecture 23

How to Define an Architecture - 4 Define the technical architecture – A minimal set of rules governing the arrangement, interaction, and interdependence of the parts or elements that must ensure that a conformant system satisfies a specified set of requirements – Provides the framework upon which engineering specifications can be derived, guiding the implementation of the system – Analogous to the building code that provides guidance for new buildings to be able to connect to the existing infrastructure by characterizing the attributes of that infrastructure System Integration & Architecture 24

Operational Concept An important task in the architecture development process is to define the operational concept – A concise statement that describes how the goal will be met – How will the system look and act in the operational environment Operational Concept Definition Parts – How the system operates – Where in the operating environment the system will be distributed – How long the system must operate – How effective the system’s performance must be System Integration & Architecture 25

Operational Concept - 2 An operational concept is a shared vision from the perspective of the system’s stakeholders of how the system will be: – Developed – Produced – Deployed – Trained – Used and maintained – Refined – Retired System Integration & Architecture 26

Operational Concept - 3 ᴥ The operational concept includes a collection of scenarios – one for each group of stakeholders for each relevant phase of the system’s lifecycle – Each scenario addresses one way that a particular stakeholder will want to use, deploy, fix, etc., the system and how the system will respond to a produce a desired end – Scenario - a sequence of events which might occur that includes the interaction of the product with its environment and users, as well as the interaction among its product components System Integration & Architecture 27

Executable Model ᴥ The functional, physical, and technical architectures are static representations that attempt to describe the dynamic behavior of the architecture ᴥ In order to analyze the behavior of the architecture and evaluate the performance characteristics, an executable model is needed System Integration & Architecture 28

Architecture Development Process ᴥ The architecture development process consists of three phases:  Analysis Phase – The static representatives of the functional and physical architectures are obtained using the operational concept to drive the process and the technical architecture to guide it  Synthesis Phase – The static constructs are used, together with descriptions of the dynamic behavior of the architecture to obtain the executable operational X- architecture (X = executable property)  Evaluation Phase – Measures of performance (MOP) and measures of effectiveness (MOE) are obtained System Integration & Architecture 29

The Three-Phase Process of Architecture Development System Integration & Architecture 30

Summary ᴥ Architecture – The fundamental organization of a system embodied in its components, their relationships to each other and to the environment and the principles guiding its design and evolution ᴥ A system architect, not only knows about the individual components, but also understands the interrelationships among the components System Integration & Architecture 31

Summary - 2 ᴥ A functional architecture is:  A set of activities or functions that are arranged in a specific order and when activated, achieves a set of requirements ᴥ A physical architecture is:  A representation of the physical resources  Expressed as nodes that constitute the system and their connectivity  Expressed in the form of links System Integration & Architecture 32

Summary - 3 ᴥ An important task in the architecture development process is to define the operational concept  A concise statement that describes how the goal will be met  How will the system look and act in the operational environment ᴥ A technical architecture is a minimal set of rules governing the arrangement, interaction, and interdependence of the parts or elements that must ensure that a conformant system satisfies a specified set of requirements System Integration & Architecture 33

Summary - 4 ᴥ The functional, physical, and technical architecture are static representations that attempt to describe the dynamic behavior of the architecture ᴥ In order to analyze the behavior of the architecture and evaluate the performance characteristics, an executable model is needed System Integration & Architecture 34