1 / 15

Autonomic Software Product Lines (ASPL)

Autonomic Software Product Lines (ASPL). Nadeem Abbas , Jesper Andersson , Welf Löwe Linnaeus University, Sweden Monday, August 23, 2010 1st International Workshop on Variability in Software Product Line Architectures, ECSA 2010. Introduction. Universal Business Goals High Quality

calla
Download Presentation

Autonomic Software Product Lines (ASPL)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Autonomic Software Product Lines (ASPL) NadeemAbbas, JesperAndersson, WelfLöwe Linnaeus University, Sweden Monday, August 23, 2010 1st International Workshop on Variability in Software Product Line Architectures, ECSA 2010.

  2. Introduction • Universal Business Goals • High Quality • Time-to-Market • Low Cost • Strategic Reuse of Resources • Requirements • Domain Knowledge • Design • Code/Components • Product Line Engineering • Software Product Lines

  3. Dynamic SPLs • Changes & Product Line Evolutions • Dynamic Changes • Goals • Requirements • Context/Environment • Components • New Products • Dynamic SPLs

  4. Software Variability • variability is the ability of a software to be efficiently extended, changed, or configured for use in a specific context • We abstract variability as: • Variants and • Variation Points • Variant Selection/Binding depends on system goals and context Fig 1. Variability: Variants and Variation Points

  5. Q.1: Stakeholders? • Software Producers/Manufacturers • Software Architects • Developers • Users

  6. Q. 2: Architectural Models? • Component and Connector Model • Goal Model • Environment Model

  7. Q. 3 Variability and Views? • “Separation of Concerns” • Variability View on Component-Connector Model

  8. Variability Management - MAPE-K • To manage variability in a product line, product line components are modeled as an Autonomic Elements. • Autonomic elements implement a MAPE-K control loop Fig 2. Autonomic Element

  9. Autonomic SPLs in Practice • There are 3-Key steps to put Autonomic SPLs in action: • System Design • Offline Training • Dynamic Product Instantiation

  10. Offline Training • Training data provides artificial call context. • Each variant is invoked against with all specific context attributes. • Variant’s performance is analyzed against the given goals • Best-fit variants are tagged in the Dispatch Table. Fig 3. Offline Training with AEs

  11. Product Instantiation - Online Learning • Dynamic Product composition by selecting best-fit variants from the Dispatch Table, based on the system context and goals. • Online learning addresses issues of context and core asset evolution Fig 4. Autonomic SPL Instance

  12. Performance Evaluation Fig 5. AutonomicMatrix Multiplication Product Line vs Simple Multiplication Product

  13. Performance Evaluation Fig 6. Self-Optimization of the SPL with On-line Learning

  14. Conclusion • Promising results with short term variability management in SPLs. • Autonomic Elements powered with online learning results in an effective “Variability Management” mechanism in Dynamic Software Product Lines. • Combining Autonomic Computing and SPL research is useful

  15. Future Work • More on Evaluation/Testing, particularly in Open World • Incorporate other learning strategies • ASPL against other classic SPL & DSPL approaches

More Related