Presentation is loading. Please wait.

Presentation is loading. Please wait.

CoDesign A Highly Extensible Collaborative Software Modeling Framework SoftArch, USC March, 2010 Jae young George.

Similar presentations


Presentation on theme: "CoDesign A Highly Extensible Collaborative Software Modeling Framework SoftArch, USC March, 2010 Jae young George."— Presentation transcript:

1 CoDesign A Highly Extensible Collaborative Software Modeling Framework SoftArch, USC March, 2010 Jae young Bang(jaeyounb@usc.edu)jaeyounb@usc.edu George Edwards(gedwards@usc.edu)gedwards@usc.edu Daniel Popescu (dpopescu@usc.edu)dpopescu@usc.edu Prof. Nenad Medvidovic (neno@usc.edu)neno@usc.edu Naveen Kulkarni (Naveen_Kulkarni@infosys.com)Naveen_Kulkarni@infosys.com Girish Maskeri Rama(Girish_Rama@infosys.com)Girish_Rama@infosys.com Dr. Srinivas Padmanabhuni (srinivas_p@infosys.com)srinivas_p@infosys.com

2 Outline Motivation Overview of the project System Architecture of CoDesign Analysis in Design-time Issues upon Collaboration Conflict Categorization Conflict Detection Techniques Future Work Video Demonstration

3 Motivation Large, multinational SW companies off-shore To emerging economies such as India and China Many stakeholders remain in developed countries Results in globally distributed software development teams Communication challenges must be overcome Current collaborative IDEs have shortfalls Traditional “check-in” SCM tools have to check-in Collaborative IDEs primarily focused on distributed programming, architecture design and modeling are not readily supported

4 Overview: CoDesign Research Objectives 1.Designs, patterns and frameworks for a highly extensible conflict detection framework for collaborative modeling 2.Novel methods and algorithms to detect and resolve syntactic and semantic conflicts of modeling language Project Summary Collaborative, extensible software modeling framework Real-time synchronization & conflict detection Efficiency and scalability among geographically distributed software system designers CoDesign: A tool that captures design decisions CoWare: Lightweight integration infrastructure

5 Design-time Issues upon Collaboration 1.Conflicts Occur due to latency between distributed architects Cannot be applied to the model without violating model syntax or semantics 2.Parallel Modification Multiple architects modify the same or related object(s) Not necessarily a syntactic or semantic error, but indicates the possibility of conflicts due to uncoordinated work Model Object Architect A Destroy Architect B Move Model Object Architect A Change Location Architect B Modify Name

6 Conflicts Categorization 1.Synchronization Conflicts Can be resolved with little or no human intervention Simple conflicts caused by synchronization latency e.g., delete-move conflict 2.Syntactic Conflicts Violate a modeling tool’s or language’s meta-model constraints e.g., cardinality constraints violation 3.Semantic Conflicts Unlike the two above, reflect violations in the intended, implicit rules that a system’s model should abide e.g., violations against the style of the model

7 CoDesign Architecture High-Level Architecture of CoDesign Event-based architecture Exchanges messages via implicit invocation Pair the most appropriate consistency checkers

8 CoDesign Architecture The double-lined polygons represent off-the-shelf software. Generic Modeling Environment From Vanderbilt University Software Modeling Tool Generic Modeling Environment From Vanderbilt University Software Modeling Tool Drools From JBoss Community Business Logic Integration Platform Drools From JBoss Community Business Logic Integration Platform Prism-MW From SoftArch, USC Lightweight Middleware Prism-MW From SoftArch, USC Lightweight Middleware

9 Summary Collaborative Software Modeling Infrastructure Architecture Design-time Issues: Conflicts, Parallel Modification Categories of Conflicts Synchronization, Syntactic, Semantic

10 Future Work Exploration of the type and nature of conflicts Causes of conflicts and relationships between conflict types and modeling activities Conflicts caused by complex event sequences (e.g., 3 or more parallel events) Conflict Resolution Toward automated conflict resolution over conflict identification Continue implementation of the architecture Testing under globally distributed settings Testing in scalability

11 Features: Demonstration Video Settings CoWare Server and the Drools engine at USC Two CoDesign Instances Along with the modeling tool: GME 9 Features Synchronization between CoDesign instances Conflict Detection Process

12

13 Contacts & References Jae young Bang jaeyounb@usc.edu Nenad Medvidovic neno@usc.edu Jae young Bang, Daniel Popescu, George Edwards, Nenad Medvidovic, Naveen Kulkarni, Girish M. Rama, and Srinivas Padmanabhuni, CoDesign – A Highly Extensible Collaborative Software Modeling Framework, Proceedings of the Research Demonstration Track at the 32nd International Conference on Software Engineering (ICSE10)CoDesign – A Highly Extensible Collaborative Software Modeling Framework Thank you!

14 Appendix: CoDesign GME List of Verbs Destroy Create Change Properties Change Location Move (to another object) Create Connection Destroy Connection Create Reference Remove Reference Change Reference Add to Set Remove from Set

15 Appendix: CoDesign GME List of Objects Object Project Folder Model Atom Reference Set

16 Appendix: CoDesign GME Found Conflict Sequences (1) DESTROY – DESTROY DESTROY – CHANGE PROPERTIES DESTROY – CHANGE LOCATION DESTROY – CREATE CONNECTION DESTROY – CREATE PORT DESTROY – DESTROY PORT DESTROY – CREATE REFERENCE DESTROY – REMOVE REFERENCE DESTROY – CHANGE REFERENCE DESTROY – ADD TO SET DESTROY – REMOVE FROM SET CREATE – CREATE (Duplication Object IDs)

17 Appendix: CoDesign GME Found Conflict Sequences (2) MOVE – DESTROY MOVE – CHANGE PROPERTIES MOVE – CHANGE LOCATION MOVE – CREATE CONNECTION MOVE – DESTROY CONNECTION MOVE – CREATE PORT MOVE – DESTROY PORT MOVE – CREATE REFERENCE MOVE – REMOVE REFERENCE MOVE – CHANGE REFERENCE MOVE – ADD TO SET MOVE – REMOVE FROM SET


Download ppt "CoDesign A Highly Extensible Collaborative Software Modeling Framework SoftArch, USC March, 2010 Jae young George."

Similar presentations


Ads by Google