A practical high volume software product line

  • Authors:
  • Peter Bell

  • Affiliations:
  • SystemsForge, Edinburgh, United Kngdm

  • Venue:
  • Companion to the 22nd ACM SIGPLAN conference on Object-oriented programming systems and applications companion
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Many Software Product Line case studies focus on the fact that an ROI can be achieved in 3-5 projects. This paper asks the question "what has to be done differently to be able to generate 10,000 custom applications a year?". As wholesalers of custom web applications for Small to Medium Sized Businesses, we have to create highly customizable web applications in minutes -- not months. After 18 months of research and experimentation we have developed a layered system that focuses on the reuse of declarative executable specifications rather than the reuse of imperative code, allowing us to blend speed of development with flexibility of the generated solutions. The system uses a feature modeler to select common functionality and a decision support system to de-skill the customization process. It has a collection of Domain Specific Languages for describing the vast majority of custom functionality required by our clients and an extensible framework allowing any system functionality to be overloaded/extended using custom code if necessary. In this paper we provide an introduction to the key theoretical concepts required to understand the system. We then introduce our domain specific languages for describing web applications. We then look at the process of building applications using SystemsForge and then we highlight our conclusions to date and document some of the outstanding issues that we are still investigating relating to managing Domain Specific Language evolution and interactions.