Managing variability insoftware applications
Managing variability in software applications About me  Stephan Hochdörfer, bitExpert AG  Department Manager Research La...
Managing variability in software applications One customer, optimized solution
Managing variability in software applications     Developer                 vs.         Businessman
Managing variability in software applications Different requirements
Managing variability in software applications Different requirements: intensive workload
Managing variability in software applications Different requirements: Performance
Managing variability in software applications Where will this lead to?
Managing variability in software applications Maintanance nightmare!
Managing variability in software applications                Standardize you should!
Managing variability in software applications Application framework?
Managing variability in software applications Plugin based approach?
Managing variability in software applications Configuration chaos?
Managing variability in software applications No automation?
Managing variability in software applications                 Generalize you should!
Managing variability in software applications Generative Programming       Dealing with software system             famili...
Managing variability in software applications Generative Programming: The workflow                                Generato...
Managing variability in software applications Generative Programming: The workflow                               Configura...
Managing variability in software applications Generative Programming: The workflow                               Configura...
Managing variability in software applications Generative Programming: The workflow                               Configura...
Managing variability in software applications Generative Programming: The workflow                               Configura...
Managing variability in software applications Generative Programming: The workflow                               Configura...
Managing variability in software applications Focus on the (software system) family!
Managing variability in software applications Software System Family      Set of applications with similar       propertie...
Managing variability in software applications Phase 1: Domain analysis
Managing variability in software applications Listen to the customers
Managing variability in software applications Talk to domain experts
Managing variability in software applications Do the requirements make sense?
Managing variability in software applications Does it belong to the family?
Managing variability in software applications Does it belong to the family?
Managing variability in software applications Does it belong to the family?
Managing variability in software applications Does it belong to the family? Maybe...
Managing variability in software applications Does it belong to the family? No!
Managing variability in software applications Does it belong to the family? No!
Managing variability in software applications Phase 2: Domain design
Managing variability in software applications Feature Modelling
Managing variability in software applications Phase 3: Domain implementation
Managing variability in software applications Implementation components
Managing variability in software applications Configuration Knowledge
Managing variability in software applications Generative Programming            Generator        Domain Engineering       ...
Managing variability in software applications Generative Programming            Generator                            Produ...
Managing variability in software applications Technology projection
Managing variability in software applications Implement the generator...
Managing variability in software applications                Standardize you should!
Managing variability in software applications Software generator framework
Managing variability in software applications Generative Programming: The goal        Increasing the productivity,        ...
Managing variability in software applications Generative Programming: The goal    Create an optimized application         ...
Managing variability in software applications Generative Programming: The goal    Automate the assembling of the          ...
Managing variability in software applications Generative Programming: Bonus points
Managing variability in software applications Generative Programming: Bonus points        Less error-prone, due to the    ...
Managing variability in software applications Generative Programming: Bonus points     Reduce application complexity.
Managing variability in software applications Generative Programming: Bonus points          Just one code repository:     ...
Managing variability in software applications Generative Programming: Bonus points      Reduce maintenance support.
Managing variability in software applications Generative Programming: Bonus points                                        ...
Managing variability in software applications Generative Programming: Bonus points            Feature                     ...
Managing variability in software applications Generative Programming: Bonus points                            Customer    ...
Managing variability in software applications Generative Programming: The book
Managing variability in software applications Curious for more?                      http://replicatorframework.org
Thank you!
Flickr Creditshttp://www.flickr.com/photos/andresrueda/3452940751/http://www.flickr.com/photos/andresrueda/3455410635/
Upcoming SlideShare
Loading in...5
×

Managing variability in software applications - scandev12

1,101

Published on

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,101
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
7
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Managing variability in software applications - scandev12

  1. 1. Managing variability insoftware applications
  2. 2. Managing variability in software applications About me  Stephan Hochdörfer, bitExpert AG  Department Manager Research Labs  S.Hochdoerfer@bitExpert.de  @shochdoerfer
  3. 3. Managing variability in software applications One customer, optimized solution
  4. 4. Managing variability in software applications Developer vs. Businessman
  5. 5. Managing variability in software applications Different requirements
  6. 6. Managing variability in software applications Different requirements: intensive workload
  7. 7. Managing variability in software applications Different requirements: Performance
  8. 8. Managing variability in software applications Where will this lead to?
  9. 9. Managing variability in software applications Maintanance nightmare!
  10. 10. Managing variability in software applications Standardize you should!
  11. 11. Managing variability in software applications Application framework?
  12. 12. Managing variability in software applications Plugin based approach?
  13. 13. Managing variability in software applications Configuration chaos?
  14. 14. Managing variability in software applications No automation?
  15. 15. Managing variability in software applications Generalize you should!
  16. 16. Managing variability in software applications Generative Programming Dealing with software system families, reusable implementation components and configuration knowledge.
  17. 17. Managing variability in software applications Generative Programming: The workflow Generator Generator
  18. 18. Managing variability in software applications Generative Programming: The workflow Configuration Configuration (DSL) (DSL) Generator Generator
  19. 19. Managing variability in software applications Generative Programming: The workflow Configuration Configuration (DSL) (DSL) Implementation- Implementation- components Generator Generator components
  20. 20. Managing variability in software applications Generative Programming: The workflow Configuration Configuration (DSL) (DSL) 1..n Implementation- Implementation- components Generator Generator Product components Product
  21. 21. Managing variability in software applications Generative Programming: The workflow Configuration Configuration (DSL) (DSL) Implementation- Implementation- components Generator Generator Customer 11 components Customer
  22. 22. Managing variability in software applications Generative Programming: The workflow Configuration Configuration (DSL) (DSL) Customer 22 Customer Implementation- Implementation- components Generator Generator Customer 11 components Customer
  23. 23. Managing variability in software applications Focus on the (software system) family!
  24. 24. Managing variability in software applications Software System Family Set of applications with similar properties as well as special properties for each individual member.
  25. 25. Managing variability in software applications Phase 1: Domain analysis
  26. 26. Managing variability in software applications Listen to the customers
  27. 27. Managing variability in software applications Talk to domain experts
  28. 28. Managing variability in software applications Do the requirements make sense?
  29. 29. Managing variability in software applications Does it belong to the family?
  30. 30. Managing variability in software applications Does it belong to the family?
  31. 31. Managing variability in software applications Does it belong to the family?
  32. 32. Managing variability in software applications Does it belong to the family? Maybe...
  33. 33. Managing variability in software applications Does it belong to the family? No!
  34. 34. Managing variability in software applications Does it belong to the family? No!
  35. 35. Managing variability in software applications Phase 2: Domain design
  36. 36. Managing variability in software applications Feature Modelling
  37. 37. Managing variability in software applications Phase 3: Domain implementation
  38. 38. Managing variability in software applications Implementation components
  39. 39. Managing variability in software applications Configuration Knowledge
  40. 40. Managing variability in software applications Generative Programming Generator Domain Engineering Domain- analysis Domain- design Domain- implementation
  41. 41. Managing variability in software applications Generative Programming Generator Product Domain Engineering App. Engineering New requirements Domain- Requirements analysis analysis Domain- Product design configuration Components, Domain- DSL, Testing and implementation Generators, Infrastructure integration
  42. 42. Managing variability in software applications Technology projection
  43. 43. Managing variability in software applications Implement the generator...
  44. 44. Managing variability in software applications Standardize you should!
  45. 45. Managing variability in software applications Software generator framework
  46. 46. Managing variability in software applications Generative Programming: The goal Increasing the productivity, quality, and time-to-market.
  47. 47. Managing variability in software applications Generative Programming: The goal Create an optimized application on demand!
  48. 48. Managing variability in software applications Generative Programming: The goal Automate the assembling of the components!
  49. 49. Managing variability in software applications Generative Programming: Bonus points
  50. 50. Managing variability in software applications Generative Programming: Bonus points Less error-prone, due to the automation.
  51. 51. Managing variability in software applications Generative Programming: Bonus points Reduce application complexity.
  52. 52. Managing variability in software applications Generative Programming: Bonus points Just one code repository: The software generator
  53. 53. Managing variability in software applications Generative Programming: Bonus points Reduce maintenance support.
  54. 54. Managing variability in software applications Generative Programming: Bonus points Implementation Feature component
  55. 55. Managing variability in software applications Generative Programming: Bonus points Feature Customer
  56. 56. Managing variability in software applications Generative Programming: Bonus points Customer Feature Implementation component
  57. 57. Managing variability in software applications Generative Programming: The book
  58. 58. Managing variability in software applications Curious for more? http://replicatorframework.org
  59. 59. Thank you!
  60. 60. Flickr Creditshttp://www.flickr.com/photos/andresrueda/3452940751/http://www.flickr.com/photos/andresrueda/3455410635/
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×