FOSD, Building Automated Software Factories

640 views

Published on

Feature oriented software development may described as paradigm for creating automated software product lines

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

No Downloads
Views
Total views
640
On SlideShare
0
From Embeds
0
Number of Embeds
18
Actions
Shares
0
Downloads
0
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

FOSD, Building Automated Software Factories

  1. 1. Feature Oriented Software Development ( FO SD) Building Automated Software Factories Ahmed Gaber
  2. 2. Content <ul><li>Software Product Lines (SPLs) </li><ul><li>Basic Software Factory Components
  3. 3. Understanding the SPL Variability </li></ul><li>Feature Model
  4. 4. Feature Oriented Software Development </li><ul><li>AHEAD
  5. 5. FOMDD </li></ul><li>Conclusion
  6. 6. References </li></ul>
  7. 7. Software Product Lines
  8. 8. Software Product Lines
  9. 9. Software Product Lines Objectives : 1. Capitalize on Commonalities 2. Manage Variations
  10. 10. Software Product Lines <ul><li>Understanding Variability in SPL </li><ul><li>The composition of features identified in the SPL Decision Model defines new Product.
  11. 11. Scope of the SPL identified by all possible output products come from this SPL's Decision Model. </li></ul><li>So, You've variability in the features that identifies the produced software. </li></ul>
  12. 12. Feature Model <ul><li>Feature
  13. 13. prominent or distinctive user-visible aspect, quality, or characteristic in the SPL .
  14. 14. Feature Model
  15. 15. model that define features and features dependencies in for of feature diagram . </li></ul>
  16. 16. Feature Oriented Software Development <ul><li>A Paradigm for composing program in terms of feature s
  17. 17. The paradigm for program design and synthesis was recognized to be a generalization of relational query optimization .
  18. 18. Features implemented by cross-cuts that are modifications or extensions to multiple classes, not Aspect OP
  19. 19. You can think about it as OO frameworks, when adding feature, it is a cross-cut not quantitive . </li></ul>
  20. 20. Feature Oriented Software Development <ul><li>Evoluted, several paradigms developed since 1990, </li><ul><li>AHEAD (Algebric Hierarical Equations for Applicatio Design)
  21. 21. FOMMD (Feature Oriemted Model-Driven Design)
  22. 22. Metamodels ,
  23. 23. Program Cubes , </li></ul></ul>
  24. 24. FOSD : AHEAD <ul><li>a methodology that advocates that complex systems can be built by adding features incrementally
  25. 25. “ The future of software engineering lies in automation ”
  26. 26. Domain models are contants and functions, programs represented as expressions
  27. 27. Both code and non-code components are treated uniformally </li></ul>
  28. 28. FOSD : AHEAD <ul><li>AHEAD tool suite, java-based tool that helps implement compositional programming.
  29. 29. ATS composed to ease AHEAD implmentation for automate programming , Its GNU and open for you. </li></ul>
  30. 30. FOSD : FOMDD <ul><li>Blend of FOP and MDD shows how programs in SPL can be synthesized in an MDD way by composing models from features, and then transforming these models into executables. </li></ul>
  31. 31. Conclusion <ul><li>SPL concerns to create software factories,
  32. 32. Variability is key feature in SPL.
  33. 33. Feature Variablility management required to produce effective SPLs.
  34. 34. Feature Oriented Software Development helps in manage feature of the SPL products.
  35. 35. In my research :
  36. 36. I'm going to discuss and compare AHEAD and FOMDD as two FOSD aspects that help building Automated Software Factories </li></ul>
  37. 37. References <ul><li>Software Product Lines: http://www.softwareproductlines.com/
  38. 38. AHEAD Composer: http://www.cs.utexas.edu/users/schwartz/
  39. 39. Feature Model: http://en.wikipedia.org/wiki/Feature_Model
  40. 40. SPLOT: http://www.splot-research.org/
  41. 41. FOSD: http://en.wikipedia.org/wiki/FOSD
  42. 42. Collection of papers from these sites :) </li></ul>
  43. 43. THANK YOU :-)

×