Responsibility-based Transformation from Feature Model to Software Architecture Haiyan Zhao (Joint work with Wei Zhang, Hong Mei) 1st workshop on bi-trans.

Slides:



Advertisements
Similar presentations
Pulan Yu School of Informatics Indiana University Bloomington Web service based Varuna.Net.
Advertisements

Language Specification using Metamodelling Joachim Fischer Humboldt University Berlin LAB Workshop Geneva
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
IEC Substation Configuration Language and Its Impact on the Engineering of Distribution Substation Systems Notes Dr. Alexander Apostolov.
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
Creating And Maintaining A Database. 2 Learn the guidelines for designing databases When designing a database, first try to think of all the fields of.
Modeling & Designing the Database
Object Linking and Embedding A tool which allows different software application packages to share data.
© 2006 IBM Corporation SOA on your terms and our expertise Discovering the Value of SOA SOA In Action SOA & End-2-End Business Driven Development using.
Database Software Application
Information storage: Introduction of database 10/7/2004 Xiangming Mu.
Interoperability Scenario Producing summary versions of compound multimedia historical documents.
C Copyright © 2009, Oracle. All rights reserved. Appendix C: Service-Oriented Architectures.
A centre of expertise in digital information managementwww.ukoln.ac.uk QA And The IWMW Web Site: A Case Study (flaws and all) Brian Kelly UKOLN University.
Calculation BIM Curriculum 07. Topics  Calculation with BIM  List Types  Output.
2.00 Understand Computer Fundamentals Unit Objective: 2.01 Software.
1 Introduction to Database Systems. 2 Database and Database System / A database is a shared collection of logically related data designed to meet the.
Methodology - Conceptual Database Design Transparencies
Software School of Hunan University Database Systems Design Part III Section 5 Design Methodology.
9/14/2012ISC329 Isabelle Bichindaritz1 Database System Life Cycle.
Understand Computer Fundamentals Unit Objective: 2.01B Computer Software.
A+ Guide to Managing and Maintaining Your PC Fifth Edition Chapter 13 Understanding and Installing Windows 2000 and Windows NT.
© DATAMAT S.p.A. – Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.
Methodology - Conceptual Database Design. 2 Design Methodology u Structured approach that uses procedures, techniques, tools, and documentation aids to.
1/26/2004TCSS545A Isabelle Bichindaritz1 Database Management Systems Design Methodology.
Design of a Search Engine for Metadata Search Based on Metalogy Ing-Xiang Chen, Che-Min Chen,and Cheng-Zen Yang Dept. of Computer Engineering and Science.
© 2008 The McGraw-Hill Companies, Inc. All rights reserved. ACCESS 2007 M I C R O S O F T ® THE PROFESSIONAL APPROACH S E R I E S Lesson 2 – Viewing and.
CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 6 System Engineering Overview of System Engineering.
Methodology - Conceptual Database Design
MS-WORD MS-Word is a word processing software. it helps you to create letters, memo, reports etc. HOW TO OPEN WORD click start menu button write Ms-word.
A Use Case Based Approach to Feature Models’ Construction Bo Wang, Wei Zhang, Haiyan Zhao, Zhi Jin, Hong Mei Key Laboratory of High Confidence Software.
Database Architecture Course Orientation & Context.
Lesson 13 Databases Unit 2—Using the Computer. Computer Concepts BASICS - 22 Objectives Define the purpose and function of database software. Identify.
Test Automation For Web-Based Applications Portnov Computer School Presenter: Ellie Skobel.
 Programming - the process of creating computer programs.
Test Automation For Web-Based Applications Portnov Computer School 1 Selenium HP Web Test Tool Training.
Software Reuse Course: # The Johns-Hopkins University Montgomery County Campus Fall 2000 Session 4 Lecture # 3 - September 28, 2004.
Robert Aydelotte ExxonMobil - Upstream Technical Computing 13 May 2004 Standardizing Fluid Property Reporting.
Requirements Management Overview NIGMS Software Development.
Essentials of Modeling with IBM Rational Software Architect V7.5
Jemerson Pedernal IT 2.1 FUNDAMENTALS OF DATABASE APPLICATIONS by PEDERNAL, JEMERSON G. [BS-Computer Science] Palawan State University Computer Network.
ANALYSIS PHASE OF BUSINESS SYSTEM DEVELOPMENT METHODOLOGY.
Chapter – 8 Software Tools.
Metadata Driven Aspect Specification Ricardo Ferreira, Ricardo Raminhos Uninova, Portugal Ana Moreira Universidade Nova de Lisboa, Portugal 7th International.
CASE Tools and their Effect on Software Quality
1 Copyright © 2008, Oracle. All rights reserved. Repository Basics.
Microsoft Office XP Illustrated Introductory, Enhanced Documents Editing.
1 Process activities. 2 Software specification Software design and implementation Software validation Software evolution.
Methodology Conceptual Databases Design
Methodology Conceptual Database Design
Web Ontology Language for Service (OWL-S)
Basic Microsoft Word 2013.
Graduation Project Kick-off presentation - SET
Overview of System Engineering
The Extensible Tool-chain for Evaluation of Architectural Models
Service Metadata Registry (COSMOS)
The Re3gistry software and the INSPIRE Registry
Patterns.
Basic Editing Show and Hide formatting Marks Select Text
ACS Architecture
2. An overview of SDMX (What is SDMX? Part I)
Software Design Lecture : 15.
CS 8532: Advanced Software Engineering
ACS Architecture.
Copyright 2007 Oxford Consulting, Ltd
Methodology Conceptual Databases Design
DATABASES WHAT IS A DATABASE?
DEPLOYING SECURITY CONFIGURATION
Executable Specifications
Presentation transcript:

Responsibility-based Transformation from Feature Model to Software Architecture Haiyan Zhao (Joint work with Wei Zhang, Hong Mei) 1st workshop on bi-trans on ABC Dec. 7, 2007, PKU, Beijing

1st Workshop on Bi-Trans in ABC 2 Why Transformation? Requirement Analysis model  design model Feature Model  software architecture Feature Oriented Requirements Analysis Design of Software Architecture Based Component Composition Architecture Based Application Deployment FMTool (Feature Modeling Tool) FDDItool ( Feature driven domain Implementation Tool)

1st Workshop on Bi-Trans in ABC 3 Source : Feature Model

1st Workshop on Bi-Trans in ABC 4 Target : component model

1st Workshop on Bi-Trans in ABC 5 How transformation? Depends heavily on designers’ personal creativity and experience  Two fundamental problems to address : How to address the m-n relationship between features and components; How to construct the software architecture based on the feature model Responsibility-based approach  Just a disciplined way  Not fully automated

1st Workshop on Bi-Trans in ABC 6 Responsibility A cluster of specifications Responsibility-based Transformation Take advantage of the information in feature models in the design stage Operationalized into Assigned to Features Interactions between Features Components Interactions between Components GAP (THE PROBLEM SPACE)(THE SOLUTION SPACE)

1st Workshop on Bi-Trans in ABC 7 In intension, a responsibility is a cohesive set of program specifications. In extension, a responsibility is a basic unit for work assignment to software developers. What is Responsibility ? 7/45 N-to-N 1-to-N N-to-1

1st Workshop on Bi-Trans in ABC 8 Decouple the relationship between Features and Components A feature is decomposed into a set of responsibilities > A > B > C decomposed R1 R2 R3 R4 R5 R6 R7

1st Workshop on Bi-Trans in ABC 9 Decouple the relationship between Features and Components A component can implemented a set of responsibilities R1 R2 R3 R4 R5 R6 R7 Clustered R1 R3 R2 R4 R6 R5 R7 > D > E > F

1st Workshop on Bi-Trans in ABC 10 Relations between components Identified from  Interaction between responsibilities Responsibilities from same feature assigned to different component  Constraints on features R1 R2 > D > E R1 R2

1st Workshop on Bi-Trans in ABC 11 Special responsibility Resource container is  to structure resources related to features  to be assigned responsibilities of passively accepting requests from environment for resource storing, querying and retrieving  To be identified by analyzing the description of features analyzing constraints on features

1st Workshop on Bi-Trans in ABC 12 From Feature Model to Software Architecture: responsibility centric

1st Workshop on Bi-Trans in ABC 13 Example: document editor Feature1: Save  Save a document into a disk. Feature2: Copy  Copy the selected text to the clipboard. Feature3: Cut  Cut the selected text to the clipboard. Feature4: Paste  Paste text from the clipboard to the current position in the document. Feature5: Un/Re-do  Redo or undo unsaved edit operations (i.e. copy, cut, paste) according to users’ requests. > Edit > Copy > Cut > Paste > Save > Un/re-do > Undo > Redo

1st Workshop on Bi-Trans in ABC 14 Example: document editor > Save > Copy > Cut > Paste > Un/Re-do

1st Workshop on Bi-Trans in ABC 15 Example: document editor > Save > Copy > Cut > Paste > Un/Re-do Copy Cut Paste Save > Clipboard : Core Responsibility: Added Responsibility

1st Workshop on Bi-Trans in ABC 16 Example: document editor > Save > Copy > Cut > Paste > Un/Re-do Copy Cut Paste Save > Clipboard write read : Core Responsibility: Added Responsibility

1st Workshop on Bi-Trans in ABC 17 Example: document editor > Save > Copy > Cut > Paste > Un/Re-do Copy Cut Paste Save Inform Saved Undo Redo Clear URI Record URI > Clipboard write read <<Resource Container>> Un/Re-do Info (URI) : Core Responsibility: Added Responsibility

1st Workshop on Bi-Trans in ABC 18 Example: document editor > Save > Copy > Cut > Paste > Un/Re-do Copy Cut Paste Save Inform Saved Undo Redo Clear URI <<Resource Container>> Un/Re-do Info (URI) Record URI > Clipboard inform write read write consume clear : Core Responsibility: Added Responsibility

1st Workshop on Bi-Trans in ABC 19 Example: document editor > Save > Copy > Cut > Paste > Un/Re-do Copy Cut Paste Save Inform Saved Undo Redo Clear URI <<Resource Container>> Un/Re-do Info (URI) Record URI > Clipboard inform write read write consume clear : Core Responsibility: Added Responsibility

1st Workshop on Bi-Trans in ABC 20 Example: document editor > Clipboard > Clipboard > Edit > Copy > Cut > Paste > URI > URI > Save > Save > Un/Re-do > Un/Re-do

1st Workshop on Bi-Trans in ABC 21 Example: document editor > Save > Copy > Cut > Paste > Un/Re-do Copy Cut Paste Save Inform Saved Undo Redo Clear URI <<Resource Container>> Un/Re-do Info (URI) Record URI > Clipboard inform write read write consume clear : Core Responsibility: Added Responsibility

1st Workshop on Bi-Trans in ABC 22 > Un/Re-do Example: document editor > Clipboard > Clipboard > Edit > Clipboard > Clipboard > Clipboard > URI > Save > Un/Re-do > Save

1st Workshop on Bi-Trans in ABC 23 > Clipboard > Clipboard > Clipboard Component (Provided by OS) > URI > URI > Stack Component (Provided by API) Depend-on > Save > Save > I/O Component (Provided by OS) Depend-on Example: document editor

1st Workshop on Bi-Trans in ABC 24 Supporting tool Provide  Import the feature model  Operationalize feature into responsibilities  Construct the component model  Cluster responsibilities into component  Identify the interaction between components

1st Workshop on Bi-Trans in ABC 25

1st Workshop on Bi-Trans in ABC 26 Traceability between FM and SA Responsibility centric  Xml files to trace relation between feature and responsibilities between responsibilities and components

1st Workshop on Bi-Trans in ABC 27 To investigate How to take advantage of the bi-Trans results  Rule to decompose feature into responsibilities is case by case  Rule to cluster responsibilities into component is case by case Bi-Trans for documents ?