Developing Families of Method-Oriented Architecture <br />MohsenAsadi, BardiaMohabbati, DraganGašević, EbrahimBagheri<br /...
Introduction<br />Research Challenges <br />Contribution Overview<br />Main Contribution <br />Conclusion & Future Work<br...
<ul><li>Software Product Line</li></ul>Developing set of similar software systems <br />Commonality and variability <br />...
Variability Modeling,
Expressing interdependencies of features,
permissible variants
Configuration
Select best and allowable combination of features
Staged Configuration (Consecutive Specialization Steps) </li></ul>Introduction<br />3<br />Simon Fraser University <br />M...
<ul><li>The lack of a standard model for describing method components:</li></ul>limits sharing, discovering, and retrievin...
Main Contribution of the paper<br />Employing Software Product Line principles (Feature Modeling)<br />Adapting SPL lifecy...
Development Lifecycles <br />Method Domain Engineering<br />Method Application Engineering<br />Development Strategies<br ...
Feature Model<br />7<br />Agile Software Development Methods<br />Design<br />Code<br />Requirements Specification<br />Te...
Method Services and Feature Modeling<br />Case Based Strategy <br />Actor Based<br />Use-case and Actor Identification<br ...
<ul><li>Concerns: the high-level strategic objectives of the application domain and product family stakeholders.
CMMI, SPICE, development approaches,  final application domains and method types
Qualifier tag e.g. CMMI-1, CMMI-2, CMMI-3, CMMI-4, CMMI 4</li></ul>Feature Model Extension <br />9<br />Simon Fraser Unive...
Feature Model Annotation<br />10<br />Project Management<br />Planning<br />Justify<br />Define Infrastructure <br />Revie...
Domain Engineering Process (1)<br />11<br />Feature Model<br />Method Services Lists<br />Method Family Project Definition...
Domain Engineering Process (2)<br />12<br />Feature Model<br />Method Services Lists<br />Method Family Project Definition...
Upcoming SlideShare
Loading in …5
×

ME2011 presentation by Asadi

756 views

Published on

Developing Families of Method-Oriented Architectures

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
756
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • With out change the semantic current feature models
  • ME2011 presentation by Asadi

    1. 1. Developing Families of Method-Oriented Architecture <br />MohsenAsadi, BardiaMohabbati, DraganGašević, EbrahimBagheri<br />1<br />
    2. 2. Introduction<br />Research Challenges <br />Contribution Overview<br />Main Contribution <br />Conclusion & Future Work<br />Agenda<br />2<br />Simon Fraser University <br />ME 2011<br />
    3. 3. <ul><li>Software Product Line</li></ul>Developing set of similar software systems <br />Commonality and variability <br /><ul><li>Feature Model
    4. 4. Variability Modeling,
    5. 5. Expressing interdependencies of features,
    6. 6. permissible variants
    7. 7. Configuration
    8. 8. Select best and allowable combination of features
    9. 9. Staged Configuration (Consecutive Specialization Steps) </li></ul>Introduction<br />3<br />Simon Fraser University <br />ME 2011<br />
    10. 10. <ul><li>The lack of a standard model for describing method components:</li></ul>limits sharing, discovering, and retrieving distributed method components<br />Proposed Solution: Using Service Oriented principles (MOA)<br />Systematically configure and tailor Reference methodology<br />Proposed Solution: Using Software Product Line Principles<br />Challenges in Method Engineering <br />4<br />Simon Fraser University <br />ME 2011<br />
    11. 11. Main Contribution of the paper<br />Employing Software Product Line principles (Feature Modeling)<br />Adapting SPL lifecycle for method engineering <br />Contribution Overview<br />5<br />Simon Fraser University <br />ME 2011<br />
    12. 12. Development Lifecycles <br />Method Domain Engineering<br />Method Application Engineering<br />Development Strategies<br />Proactive<br />Extractive<br />Reactive<br />Developing Families of MOA<br />6<br />Simon Fraser University <br />ME 2011<br />
    13. 13. Feature Model<br />7<br />Agile Software Development Methods<br />Design<br />Code<br />Requirements Specification<br />Testing<br />Project Management<br />…<br />…<br />Test In the Large<br />Unit Testing<br />Detailed Requirements Specification<br />High Level Requirement Specification <br />…<br />Planning<br />Justify<br />Define Infrastructure <br />Review<br />…<br />Requirement<br />Documentation<br />Requirement Verification<br />Requirement Modeling<br />Capture Requirements<br />CRC Modeling<br />Refining Requirements<br />Use-Case Modeling<br />Requirements Prioritizing<br />Defining Requirements<br />Alternative<br />Or<br />Mandatory<br />Optional<br />And<br />Simon Fraser University <br />ME 2011<br />
    14. 14. Method Services and Feature Modeling<br />Case Based Strategy <br />Actor Based<br />Use-case and Actor Identification<br />1<br />Use Case Model<br />*<br />1<br /> Software <br />Development <br />Methods<br /> Feature Model<br />1..*<br />Extends<br />*<br />Initialize<br />Functional Strategy<br />Extend-based Strategy<br />UseCase<br />Actor<br />Stop<br />Start<br />-Name<br />-Description<br />-Name<br />-Description<br />Include-based Strategy<br />0..1<br />Free prose strategy<br />Support<br />Uses<br />…<br />Completeness<br />1<br />Template Based<br />*<br />*<br />Exception-based Strategy <br />Use-Case Modeling<br />Workflow<br />Model Use-case<br />Write Use-case<br />Includes<br />-Description<br />Manually<br />Extend Flow<br />Basic Flow<br />Include flow<br />Tool Support<br />Process model Fragment (map-driven notation)<br />Product Model Fragment<br />Feature Model<br />Method Chunk/Service<br />adapted from [16]<br />Simon Fraser University <br />ME 2011<br />
    15. 15. <ul><li>Concerns: the high-level strategic objectives of the application domain and product family stakeholders.
    16. 16. CMMI, SPICE, development approaches, final application domains and method types
    17. 17. Qualifier tag e.g. CMMI-1, CMMI-2, CMMI-3, CMMI-4, CMMI 4</li></ul>Feature Model Extension <br />9<br />Simon Fraser University <br />ME 2011<br />
    18. 18. Feature Model Annotation<br />10<br />Project Management<br />Planning<br />Justify<br />Define Infrastructure <br />Review<br />CMMI-3<br />Method Type: Agile<br />Simon Fraser University <br />ME 2011<br />
    19. 19. Domain Engineering Process (1)<br />11<br />Feature Model<br />Method Services Lists<br />Method Family Project Definition<br />Method Family Requirements Specification<br />Product Road-map, Variability Table<br />Method Family Requirements Model<br />Refine Requirements<br />Domain Scoping<br />Feature Driven Method ServiceDiscovery<br />Feature Model Development<br />Modeling Requirements <br />Create a standardized description of a method product line, technical domains<br />systematizes the method product information, identifies the main features of the product line .<br />Capture Family Requirements<br />Method Portfolio Scoping<br />Asset Analysis<br />Validation and Verification<br />Method Family Realization <br />Method Family Requirements Analysis<br />Method Family Scoping Phase<br />Production/<br />Revision<br />Artifact<br />Stage<br />Legend<br />Control Flow<br />Simon Fraser University <br />ME 2011<br />
    20. 20. Domain Engineering Process (2)<br />12<br />Feature Model<br />Method Services Lists<br />Method Family Project Definition<br />Method Family Requirements Specification<br />Product Road-map, Variability Table<br />Method Family Requirements Model<br />Refine Requirements<br />Domain Scoping<br />Feature Driven Method ServiceDiscovery<br />Feature Model Development<br />Modeling Requirements <br />Identify and group the major functional areas in terms of technical domains which belong to the current method family<br />The benefits and risks pertaining to the various domains are analyzed<br />Capture Family Requirements<br />Method Portfolio Scoping<br />Asset Analysis<br />Validation and Verification<br />Method Family Realization <br />Method Family Requirements Analysis<br />Method Family Scoping Phase<br />Production/<br />Revision<br />Artifact<br />Stage<br />Legend<br />Control Flow<br />Simon Fraser University <br />ME 2011<br />
    21. 21. Domain Engineering Process (3)<br />13<br />Feature Model<br />Method Services Lists<br />Method Family Project Definition<br />Method Family Requirements Specification<br />Product Road-map, Variability Table<br />Method Family Requirements Model<br />Refine Requirements<br />Domain Scoping<br />Feature Driven Method ServiceDiscovery<br />Feature Model Development<br />Modeling Requirements <br />Describe precise functionality of the method components <br />determines which assets should be developed for reuse (commonality) and which ones as project-specific (variability).<br />Capture Family Requirements<br />Method Portfolio Scoping<br />Asset Analysis<br />Validation and Verification<br />Method Family Realization <br />Method Family Requirements Analysis<br />Method Family Scoping Phase<br />Production/<br />Revision<br />Artifact<br />Stage<br />Legend<br />Control Flow<br />Simon Fraser University <br />ME 2011<br />
    22. 22. Domain Engineering Process (4)<br />14<br />Feature Model<br />Method Services Lists<br />Method Family Project Definition<br />Method Family Requirements Specification<br />Product Road-map, Variability Table<br />Method Family Requirements Model<br />Refine Requirements<br />Domain Scoping<br />Feature Driven Method ServiceDiscovery<br />Feature Model Development<br />Modeling Requirements <br />elicitand document Requirements<br />Refinedthrough decomposition, aggregation, and grouping<br />Requirements verification and Validation<br />Capture Family Requirements<br />Method Portfolio Scoping<br />Asset Analysis<br />Validation and Verification<br />Method Family Realization <br />Method Family Requirements Analysis<br />Method Family Scoping Phase<br />Production/<br />Revision<br />Artifact<br />Stage<br />Legend<br />Control Flow<br />Simon Fraser University <br />ME 2011<br />
    23. 23. Domain Engineering Process (5)<br />15<br />Feature Model<br />Method Services Lists<br />Method Family Project Definition<br />Method Family Requirements Specification<br />Product Road-map, Variability Table<br />Method Family Requirements Model<br />Refine Requirements<br />Domain Scoping<br />Feature Driven Method ServiceDiscovery<br />Feature Model Development<br />Modeling Requirements <br />Common and variable functionalities of methods of the family are managed by representing them in a feature model<br />Annotate the features with required information.<br />Discover method services for features<br />Capture Family Requirements<br />Method Portfolio Scoping<br />Asset Analysis<br />Validation and Verification<br />Method Family Realization <br />Method Family Requirements Analysis<br />Method Family Scoping Phase<br />Production/<br />Revision<br />Artifact<br />Stage<br />Legend<br />Control Flow<br />Simon Fraser University <br />ME 2011<br />
    24. 24. Method Application Engineering Process<br />16<br />Feature Configuration<br />Application Method Project Definition<br />Application Method Requirements Specification<br />Target Method<br />Application Method Requirements Model<br />Method Deployment<br />Refine Method Requirements<br />Assemble Method Services<br />Feature Model Configuration<br />Modeling Method Requirements <br />Capture Method Requirements<br />Identify and define requirements of situated method<br />Configure feature model<br />Validation and Verification<br />Application Method Development<br />Application Method Requirements Analysis<br />Simon Fraser University <br />ME 2011<br />
    25. 25. Representing both feature model<br />Tooling Support<br />17<br />Simon Fraser University <br />ME 2011<br />
    26. 26. Tooling Support<br />18<br />Simon Fraser University <br />ME 2011<br />
    27. 27. Applying Software product line engineering principles in method engineering<br />Defining new approach for method engineering<br />Developing tooling support<br />Enrich the framework with semantic web for better discovery<br />Perform real case-study and report the results<br />Conclusion and Future Work<br />19<br />Simon Fraser University <br />ME 2011<br />
    28. 28. Thank you<br />Questions? <br />20<br />Simon Fraser University <br />ME 2011<br />

    ×