Managing variability in software applications - scandev12
Upcoming SlideShare
Loading in...5
×
 

Managing variability in software applications - scandev12

on

  • 1,290 views

 

Statistics

Views

Total Views
1,290
Views on SlideShare
1,253
Embed Views
37

Actions

Likes
1
Downloads
5
Comments
0

3 Embeds 37

http://servidor1.i2e.es 31
http://lanyrd.com 5
http://tweetedtimes.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Managing variability in software applications - scandev12 Managing variability in software applications - scandev12 Presentation Transcript

  • Managing variability insoftware applications
  • Managing variability in software applications About me  Stephan Hochdörfer, bitExpert AG  Department Manager Research Labs  S.Hochdoerfer@bitExpert.de  @shochdoerfer
  • 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 families, reusable implementation components and configuration knowledge.
  • Managing variability in software applications Generative Programming: The workflow Generator Generator
  • Managing variability in software applications Generative Programming: The workflow Configuration Configuration (DSL) (DSL) Generator Generator
  • Managing variability in software applications Generative Programming: The workflow Configuration Configuration (DSL) (DSL) Implementation- Implementation- components Generator Generator components
  • Managing variability in software applications Generative Programming: The workflow Configuration Configuration (DSL) (DSL) 1..n Implementation- Implementation- components Generator Generator Product components Product
  • Managing variability in software applications Generative Programming: The workflow Configuration Configuration (DSL) (DSL) Implementation- Implementation- components Generator Generator Customer 11 components Customer
  • 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
  • Managing variability in software applications Focus on the (software system) family!
  • Managing variability in software applications Software System Family Set of applications with similar properties as well as special properties for each individual member.
  • 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 Domain- analysis Domain- design Domain- implementation
  • 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
  • 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, quality, and time-to-market.
  • Managing variability in software applications Generative Programming: The goal Create an optimized application on demand!
  • Managing variability in software applications Generative Programming: The goal Automate the assembling of the components!
  • Managing variability in software applications Generative Programming: Bonus points
  • Managing variability in software applications Generative Programming: Bonus points Less error-prone, due to the automation.
  • 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: The software generator
  • Managing variability in software applications Generative Programming: Bonus points Reduce maintenance support.
  • Managing variability in software applications Generative Programming: Bonus points Implementation Feature component
  • Managing variability in software applications Generative Programming: Bonus points Feature Customer
  • Managing variability in software applications Generative Programming: Bonus points Customer Feature Implementation component
  • 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/