Page 1 An Overview of The COTS-Aware Requirements Engineering and Software Architecting Project (CARE/SA) The University of Texas at Dallas Department.

Slides:



Advertisements
Similar presentations
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 1: Introduction.
Advertisements

Systems Analysis and Design in a Changing World, 6th Edition
4+1 View Model of Software Architecture “Software architecture” course Presented By: Mazeiar Salehie October 2004.
Using UML, Patterns, and Java Object-Oriented Software Engineering Royce’s Methodology Chapter 16, Royce’ Methodology.
Towards a Model-based COTS-Aware Requirements Engineering Approach Lawrence Chung and Kendra Cooper MBRE ‘01.
Mastering Object-Oriented Analysis and Design with UML Module 4: Analysis and Design Overview.
IBM Business Consulting Services © Copyright IBM Corporation 2006 Unified Process March 27, 2006 Chris Armstrong.
The Unified Software Development Process - Workflows Ivar Jacobson, Grady Booch, James Rumbaugh Addison Wesley, 1999.
Development Processes UML just is a modeling technique, yet for using it we need to know: »what do we model in an analysis model? »what do we model in.
1 SOFTWARE LIFE-CYCLES Beyond the Waterfall. 2 Requirements System Design Detailed Design Implementation Installation & Testing Maintenance The WATERFALL.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
SE 555 – Software Requirements & Specifications Introduction
Requirement engineering for an online bookstore system
A Combat Support Agency Defense Information Systems Agency Model Based Systems Engineering and Systems Modeling Language Chris Gedo Chief, Architecture.
Software Architecture. Agenda " Why architect? " What is architecture? " What does an architect do? " What principles guide the process of architecting?
3106 Use of UML 2.0 Diagrams for Systems Architecture Modeling Gundars Osvalds Systems of Systems Architect The Boeing Company.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
CS 8532: Adv. Software Eng. – Spring 2007 Dr. Hisham Haddad Tuesday Class will start momentarily. Please Stand By … CS 8532: Advanced Software.
TC Methodology Massimo Cossentino (Italian National Research Council) Radovan Cervenka (Whitestein Technologies)
ArchiMate Authors : eSchoolink Group - ITNLU. Contents 1. What’s ArchiMate ? 2. Why ArchiMate ? 3. Main Benefits of ArchiMate 4. Layers of ArchiMate 5.
Software Engineering Chapter 8 Fall Analysis Extension of use cases, use cases are converted into a more formal description of the system.Extension.
Team Skill 6: Building the Right System From Use Cases to Implementation (25)
RUP Design RUP Artifacts and Deliverables
Experiences from a standardization attempt in AO methodologies Massimo Cossentino (Italian National Research Council)
Architecting Adaptable Software Using COTS: An NFR Approach Lawrence Chung Kendra Cooper Anna Yi Department of Computer Science University of Texas at.
1 SYS366 Lecture Visual Modeling and Business Use Case Diagrams.
Object Management Group (OMG) Specifies open standards for every aspect of distributed computing Multiplatform Model Driven Architecture (MDA)
UML Diagrams: Sequence Diagrams The Requirements Model, and The Dynamic Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical.
Chapter 7 Applying UML and Patterns Craig Larman
IBM Software Group ® Overview of SA and RSA Integration John Jessup June 1, 2012 Slides from Kevin Cornell December 2008 Have been reused in this presentation.
Designing software architectures to achieve quality attribute requirements F. Bachmann, L. Bass, M. Klein and C. Shelton IEE Proceedings Software Tzu-Chin.
Rational Unified Process Fundamentals Module 5: Implementing RUP.
Review of Software Process Models Review Class 1 Software Process Models CEN 4021 Class 2 – 01/12.
ARCH-2: UML From Design to Implementation using UML Frank Beusenberg Senior Technical Consultant.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
1 © 1999 Microsoft Corp.. Microsoft Repository Phil Bernstein Microsoft Corp.
CS 4850: Senior Project Fall 2014 Object-Oriented Design.
CEN5011, Fall CEN5011 Software Engineering Dr. Yi Deng ECS359, (305)
Object-Oriented Software Engineering using Java, Patterns &UML. Presented by: E.S. Mbokane Department of System Development Faculty of ICT Tshwane University.
Rational Unified Process Fundamentals Module 3: Disciplines I.
Systems Analysis and Design in a Changing World, 6th Edition
COTS-Aware Requirements Engineering and Software Architecting
Software Architecting Using Goals, Scenarios, Patterns and Objects Lawrence Chung The University of Texas at Dallas.
4+1 View Model of Software Architecture
Introduction to OPEN Sidney Nogueira 12/11/2003.
Integrating FRs and NFRs: A Use Case and Goal Driven Approach Sam Supakkul Network Surveillance Systems MCI Lawrence Chung Dept. of.
CSIS 4850: CS Senior Project – Spring 2009 CSIS 4850: Senior Project Spring 2009 Object-Oriented Design.
1 IBM Software Group ® Mastering Object-Oriented Analysis and Design with UML 2.0 Module 4: Analysis and Design Overview.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Systems Analysis and Design in a Changing World, 6th Edition
Rational Unified Process Fundamentals Module 5: Implementing Rational Unified Process Rational Unified Process Fundamentals Module 5: Implementing Rational.
SECURE TROPOS Michalis Pavlidis 8 May Seminar Agenda  Secure Tropos  History and Foundation  Tropos  Basics  Secure Tropos  Concepts / Modelling.
Introduction to UML.
Object-Oriented Software Engineering Using UML, Patterns, and Java,
The Web Application Development Process Models
NDIA Architecture Analysis for System-of-System (SoS) Interoperability Assessment Karen L. Lauro, Ph.D Oct 21, 2003.
UAF Seminar
CSE 303 – Software Design and Architecture
Rational Worldwide Software Symposium
Introduction To System Analysis and Design PART 2
Object Oriented Analysis and Design
Introduction to UML.
OO Design and Development
SOFTWARE LIFE-CYCLES Beyond the Waterfall.
CS 8532: Advanced Software Engineering
Use-Case Design in Context
Logical Architecture & UML Package Diagrams
Presentation transcript:

Page 1 An Overview of The COTS-Aware Requirements Engineering and Software Architecting Project (CARE/SA) The University of Texas at Dallas Department of Computer Science Fall 2004

Page 2 Topics COTS-Aware? Issues, Motivation Introduction to COTS-Aware Requirements Engineering and Architecting Overview of the CARE/SA Approach Validation of CARE/SA Digital Library System Summary and Future Work

Page 3 Why COTS-Aware? Current state-of-the-art COTS approach (e.g. Rational Unified Process): Develop Requirements Develop Architecture Develop Detailed Design and Consider COTS COTS Components Must Meet Functional AND Non-functional Requirements AND Fit With the Architecture Detailed design phase is too late Difficult to find COTS components, costly to change requirements, architecture, detailed design, and test cases  Consider the use of COTS components earlier i.e., in the Requirements and Architecting workflows

Page 4 Why COTS-Aware? Software Engineering Issues for CARE/SA Customer “Satisficing” Meet the non-functional goals and requirements in a “good enough” sense Flexibility of Customer Requirements Specification, Matching, Selecting, Integrating COTS Components Goal- and Agent-oriented Model Based Process, product, meta-model Knowledge Based Should Consider the Impact on Entire SDLC

Page 5 Why COTS-Aware? Effective Use of COTS Components is a Complex Problem COTS Issues have been categorized as: Technical Issues Acquisition, Selection, Interactions, Incomplete product information,... Business Issues Loss of Autonomy Costs/benefits: short term vs. long term Legal Issues Licensing

Page 6 Overview of CARE/SA Our Methodology Iterative strategy Define, extend/refine, and validate CARE/SA models and tool support Re-use, extend existing processes, models, standards (e.g., tailor RUP, extend SPEM, re-use OMG MOF, …) Validate using examples from a Digital Library System, Telepresence system, Home Appliance Control System, and Groupware application Large scale, complex systems with a rich set of functional and non-functional requirements

Page 7 Overview of CARE/SA CARE/SA considers how to represent and reason about: Agents Goals Software Requirements Software Architecture COTS Components Relationships Among Artifacts (new traceability required) Mapping System Goals to COTS Components Mapping Software Requirements to COTS Components Mapping Architectural subsystems to COTS Components Tracing Agent to Goals Tracing Goals to Software Requirements Tracing Goals and Requirements to Architecture Subsystems Constraints (or rules) Among Artifacts Defining NFR Framework relationships (makes, helps, hurts, breaks) …

Page 8 High Level View of the Process Model (IDEF0 Notation) Define Architecture (with COTS) 5 SA Architecture, SA Decisions, Update Component Goals, Specs Initial System Concept, System Goals Software Requirements Component Repository RE and CE Expertise System Goals Software Requirements Architecture Component Repository Maintain Component Repository 6 CE Update Component Goals, Update Component Specs. RE and SA Expertise Updated Component Repository, CE Decisions Define Requirements (with COTS) 5 RE Agents, Goals, Requirements RE Decisions, Update Component Goals, Specs Initial System Concept, System Goals Software Requirements Component Repository Architecture SA and CE Expertise Overview of CARE/SA

Page 9 Overview of CARE/SA Mapping Goals, Requirements, and Architecture Subsystems to COTS Components Component Repository (Component Requirements, Architecture, …) System Under Development (System Goals, Requirements, Architecture…) Component 2 Reqs. Architecture Component n Reqs. Architecture … Goal 1 Softgoal 2 Software Requirement Software Requirement … Component 1 Reqs. Architecture Mapping System Goals to Component Goals Mapping Requirements to Component Specification Mapping Architectures to Component Specifications Agent Goal n Subsystem Architecture Software Architecture Elements Architecture Elements Subsystem Architecture Software Requirement …

Page 10 Validation We have applied CARE/SA to part of a Digital Library System (DLS) Partial illustration below is from MPEC 2004 paper

Page 11 Summary and Future Work CARE/SA approach –Supports the definition of agents, goals, software requirements, COTS components and architectural elements –Demonstrated using an example from a Digital Library System –Detailed description of CARE and examples are available in TR UTDCS-11-02, Note. The process model is being ported from IDEF0 to activity diagrams in UML This term? –Additional validation using scenarios –Extend the CARE Assistant Tool (CAT) to support the scenarios and make it widely available to researchers –Investigate alternative reasoning techniques for COTS matching and selection