CpSc 875 John D. McGregor Class 5 – Driving requirements.

Slides:



Advertisements
Similar presentations
Lecture # 2 : Process Models
Advertisements

SEP1 - 1 Introduction to Software Engineering Processes SWENET SEP1 Module Developed with support from the National Science Foundation.
Mastering Object-Oriented Analysis and Design with UML Module 4: Analysis and Design Overview.
Lesson-10 Information System Building Blocks(2)
Computer Engineering 203 R Smith Requirements Management 6/ Requirements IEEE Standard Glossary A condition or capability needed by a user to solve.
Copyright 2002 Prentice-Hall, Inc. Chapter 1 The Systems Development Environment 1.1 Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer.
MSIS 110: Introduction to Computers; Instructor: S. Mathiyalakan1 Systems Design, Implementation, Maintenance, and Review Chapter 13.
The Process of Interaction Design. What is Interaction Design? It is a process: — a goal-directed problem solving activity informed by intended use, target.
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
Irwin/McGraw-Hill Copyright © 2000 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS5th Edition.
Chapter 2: IS Building Blocks Objectives
Iterative development and The Unified process
Lecture Nine Database Planning, Design, and Administration
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
Architecture and Requirements
Object Oriented Analysis and Design Using the UML
The Vision Document 1. Importance of a Vision Document  It describes the application in general terms, including descriptions of the target market, the.
Software Architecture premaster course 1.  Israa Mosatafa Islam  Neveen Adel Mohamed  Omnia Ibrahim Ahmed  Dr Hany Ammar 2.
Enterprise Architecture
The BIM Project Execution Planning Procedure
® IBM Software Group © 2006 IBM Corporation PRJ480 Mastering the Management of Iterative Development v2 Module 3: Phase Management - Inception.
Principles of Object Technology Module 1: Principles of Modeling.
Bina Nusantara 2 C H A P T E R INFORMATION SYSTEM BUILDING BLOCKS.
Database System Development Lifecycle © Pearson Education Limited 1995, 2005.
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
CPSC 871 John D. McGregor Module 4 Session 3 Architecture Evaluation.
Engineering, Operations & Technology | Information TechnologyAPEX | 1 Copyright © 2009 Boeing. All rights reserved. Architecture Concept UG D- DOC UG D-
Copyright 2002 Prentice-Hall, Inc. Chapter 1 The Systems Development Environment 1.1 Modern Systems Analysis and Design.
Architecture Evaluation Evaluation Factors Evaluation by the designer Every time the designer makes a key design decision or completes a design milestone,
Demystifying the Business Analysis Body of Knowledge Central Iowa IIBA Chapter December 7, 2005.
1 Process Engineering A Systems Approach to Process Improvement Jeffrey L. Dutton Jacobs Sverdrup Advanced Systems Group Engineering Performance Improvement.
Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition Irwin/McGraw-Hill.
2131 Structured System Analysis and Design By Germaine Cheung Hong Kong Computer Institute Lecture 2 (Chapter 2) Information System Building Blocks.
BMAN Integrative Team Project Week 2 Professor Linda A Macaulay.
Principles of Information Systems, Sixth Edition Systems Design, Implementation, Maintenance, and Review Chapter 13.
Role-Based Guide to the RUP Architect. 2 Mission of an Architect A software architect leads and coordinates technical activities and artifacts throughout.
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
1-1 System Development Process System development process – a set of activities, methods, best practices, deliverables, and automated tools that stakeholders.
Software Engineering Principles Principles form the basis of methods, techniques, methodologies and tools Principles form the basis of methods, techniques,
CHECKPOINTS OF THE PROCESS Three sequences of project checkpoints are used to synchronize stakeholder expectations throughout the lifecycle: 1)Major milestones,
Copyright 2002 Prentice-Hall, Inc. 1.1 Modern Systems Analysis and Design Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 1 The Systems Development.
ISO 9001:2008 to ISO 9001:2015 Summary of Changes
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Assessing the influence on processes when evolving the software architecture By Larsson S, Wall A, Wallin P Parul Patel.
Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition Irwin/McGraw-Hill.
Chapter 10 Analysis and Design Discipline. 2 Purpose The purpose is to translate the requirements into a specification that describes how to implement.
Notes of Rational Related cyt. 2 Outline 3 Capturing business requirements using use cases Practical principles  Find the right boundaries for your.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Systems Analysis and Design in a Changing World, Fourth Edition
Project X Group Y Presenters: (indicate roles). Part I: Project Overview System provides functionality X Motivation for project –Address problem with…
McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 2 Information System Building Blocks.
Software Engineering 1 Object-oriented Analysis and Design Applying UML and Patterns An Introduction to Object-oriented Analysis and Design and Iterative.
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
Principles of Information Systems, Sixth Edition 1 Systems Design, Implementation, Maintenance, and Review Chapter 13.
CpSc 875 John D. McGregor Class 4 – Driving requirements.
Overview of RUP Lunch and Learn. Overview of RUP © 2008 Cardinal Solutions Group 2 Welcome  Introductions  What is your experience with RUP  What is.
Requirements Workshop Techniques for E-Business Projects
John D. McGregor Architecture Evaluation
An Agile Requirements Approach 1. Step 1: Get Organized  Meet with your team and agree on the basic software processes you will employ.  Decide how.
Software Engineering Lecture 10: System Engineering.
1 IBM Software Group ® Mastering Object-Oriented Analysis and Design with UML 2.0 Module 4: Analysis and Design Overview.
CpSc 875 John D. McGregor Class 4 – Driving requirements.
Enterprise Architectures Course Code : CPIS-352 King Abdul Aziz University, Jeddah Saudi Arabia.
The Components of Information Systems
Introduction to Software Engineering
The Components of Information Systems
Information System Building Blocks
Presentation transcript:

CpSc 875 John D. McGregor Class 5 – Driving requirements

Driving requirements There are always too many requirements for the team to consider. The driving requirements are those things that are most important to the most important stakeholders. We will look at a specific technique: the Quality Attribute Workshop.

NOAA architecture document This paper presents a software architecture for the Integrated Hydrologic Forecast System (IHFS). The IHFS goal is to support the Hydrologic Research Laboratory mission and vision by the providing a more effective system of tools and techniques for use at River Forecast Centers (RFCs), Weather Forecast Offices (WFOs), and supporting Headquarters Offices to allow the easy introduction of new science that costs less to enhance and maintain. cture_doc/ihfscnts.php cture_doc/ihfscnts.php The next couple of slides give an overview

Table of Contents Section 1 Introduction – 1.1 PurposePurpose – 1.2 Characterization of the IHFS ArchitectureCharacterization of the IHFS Architecture Interactive Interface LayerInteractive Interface Layer IHFS Applications LayerIHFS Applications Layer IHFS Infrastructure LayerIHFS Infrastructure Layer AWIPS LayerAWIPS Layer Section 2 IHFS Architectural Requirements – 2.1 Driving RequirementsDriving Requirements – 2.2 Architectural ConstraintsArchitectural Constraints – 2.3 Architectural RequirementsArchitectural Requirements Section 3 Target IHFS Architecture – 3.1 Interactive Interface LayerInteractive Interface Layer – 3.2 IHFS Infrastructure Layer Architecture.IHFS Infrastructure Layer Architecture Application Control ServicesApplication Control Services Application Communication ServicesApplication Communication Services Data Access ServicesData Access Services – 3.3 IHFS Applications Layer ArchitectureIHFS Applications Layer Architecture

Table of Contents Section 4 Transitional IHFS Architectures and Strategies – 4.1 IHFS InfrastructureIHFS Infrastructure – 4.2 IHFS Interactive InterfaceIHFS Interactive Interface – 4.3 IHFS ApplicationsIHFS Applications Section 5 Implementation Technologies and Standards Section 5 Implementation Technologies and Section 6 Architecture Requirements Satisfaction Section 6 Architecture Requirements Section 7 Open Issues Section Section 7 Open IssuesSection 8 Currently Defined IHFS Services Interfaces – 8.1 IHFS Infrastructure Layer APIs for Data Access ServicesIHFS Infrastructure Layer APIs for Data Access Services – 8.2 IHFS Infrastructure Layer APIs for Application Control and CommunicationIHFS Infrastructure Layer APIs for Application Control and Communication Section 9 Discussion of Other Options Considered – 9.1 Data Structure Storage and Synchronization: RFC and WFOData Structure Storage and Synchronization: RFC and WFO – 9.2 D2D Architectural IssuesD2D Architectural Issues – 9.3 Informix Architectural IssuesInformix Architectural Issues – 9.4 Application Data Access Services Function InterfaceApplication Data Access Services Function Interface Data RetrievalData Retrieval Data StorageData Storage Logical Data Storage OrganizationLogical Data Storage Organization

Architecture At the top level the dominant structure is layers 2.1 Driving Requirements – 1. Provide for easy and cost-effective enhancement and maintenance of systems used for river forecasting. – 2. Support efficient operations and information sharing between the RFCs and WFOs. – 3. Support the current functions of NWSRFS, WHFS, and other functions supporting hydrologic analysis and forecasting. – 4. Preserve the current NWSRFS science. – 5. Simplify the addition of new science and techniques.

QAW - 1 QAW Steps Description Step 1 – QAW Presentation and Introductions QAW facilitators describe the motivation for the QAW and explain each step of the method. Next, the facilitators introduce themselves and the stakeholders do likewise, briefly stating their background, their role in the organization, and their relationship to the system being built. Step 2 – Business/Programmatic Presentation A stakeholder representing the business and/or programmatic concerns presents the system’s business/programmatic context, highlevel functional requirements, constraints, and quality attribute requirements.

QAW - 2 Step 3 – Architectural Plan Presentation A technical stakeholder presents the system architectural plans including (1) plans and strategies for how key business/programmatic requirements will be satisfied; (2) key technical requirements, risks, and constraints—such as mandated operating systems, hardware, middleware, and standards—that will drive architectural decisions; (3) existing context diagrams, highlevel system diagrams, and other written descriptions; (4) operational and system architectures, and architectural frameworks, tools, and architectural life-cycle processes being used; and (5) the prototyping and engineering studies underway to mitigate known risks.

QAW - 3 Step 4 – Identification of Architectural Drivers The facilitators share their list of key architectural drivers that include high-level requirements, business drivers, constraints, and quality attributes. Step 5 – Scenario Brainstorming The facilitators ask the stakeholders to brainstorm scenarios that are operationally meaningful with respect to the stakeholders’ individual roles. Step 6 – Scenario Consolidation Similar scenarios are consolidated when reasonable.

QAW - 4 Step 7 – Scenario Prioritization Stakeholders vote to establish the priorities of the scenarios. Step 8 – Scenario Refinement The high-priority scenarios are refined in more detail. Facilitators further elaborate each one, documenting the following: the six parts of the scenario, the business/programmatic goals that are affected by this scenario, the relevant quality attributes associated with this scenario, and the questions and issues regarding the scenario.

Scenario Format for a scenario

Output from QAW a list of architectural drivers the raw scenarios the prioritized list of raw scenarios the refined scenarios

QAW Roles QAW lead: The lead ensures that the steps of the method are carried out during the workshop. The lead facilitates discussions, and ensures that the method is carried out in a timely fashion and that the required QAW artifacts are produced. QAW scribe: The scribe captures the raw scenarios, their prioritization, the refined scenarios, and any relevant issues that emerge during the workshop. The scribe uses the standard QAW template shown below as a guide during the workshop to ensure that the appropriate information is captured in a consistent manner.

The executive The executive is trying to achieve business goals The architecture (and the product) are tools The executive wants customers satisfied and few repairs

The architect The architect wants to keep everyone happy (and quiet). Wants trade-offs to be explicit and widely communicated Reduces complexity everywhere including desk and home Wants input but also wants authority

The developer The developer wants to make progress quickly, to stay interested Wants to turn out a quality product that will not need lots of testing and debugging Wants clear direction so that it can be once and done Wants to focus on new, interesting design problems, not yet another …

The customer Our customer is the automotive original equipment manufacturer (OEM). They want several models with different features and different price points After the features, the most important attribute is cost They have to install the equipment, repair when necessary, and occasionally add a custom piece.

Next steps Read about the Quality Attribute Workshop Read this last one by Thursday. Build a capability pattern for the QAW in EPF