Improving the customer configuration update process by explicitly managing software knowledge

The implementation and continuous support of a software product at a customer with evolving requirements is a complex task for a product software vendor. There are many customers for the vendor to serve, all of whom might require their own version or variant of the application. Furthermore, the software application itself will consist of many (software) components that depend on each other to function correctly. On top of that, these components will evolve over time to meet the changing needs of customers. To alleviate this problem we propose to alleviate the software release and deployment effort and reduce risks associated with it. This will be achieved by explicitly managing typical knowledge about the software product, such as configuration and dependency information, thereby allowing software vendors to improve the customer configuration updating process. The proposed solution of knowledge management at both the customer and vendor site, is validated through industrial case studies.

[1]  Merijn de Jonge,et al.  Imposing a memory management discipline on software deployment , 2004, Proceedings. 26th International Conference on Software Engineering.

[2]  Slinger Jansen,et al.  A process model and typology for software product updaters , 2005, Ninth European Conference on Software Maintenance and Reengineering.

[3]  Richard S. Hall,et al.  A Characterization Framework for Software Deployment Technologies , 1998 .

[4]  Reidar Conradi,et al.  Version models for software configuration management , 1998, CSUR.

[5]  Slinger Jansen,et al.  Modelling Deployment Using Feature Descriptions and State Models for Component-Based Software Product Families , 2005, Component Deployment.

[6]  Tijs van der Storm Variability and Component Composition , 2004, ICSR.

[7]  Richard S. Hall,et al.  A cooperative approach to support software deployment using the Software Dock , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[8]  Frantisek Plasil,et al.  SOFA/DCUP: architecture for component trading and dynamic updating , 1998, Proceedings. Fourth International Conference on Configurable Distributed Systems (Cat. No.98EX159).

[9]  Alain Abran,et al.  Software Maintenance Maturity Model (SMmm): the software maintenance process model , 2005, J. Softw. Maintenance Res. Pract..

[10]  Sjaak Brinkkemper,et al.  A process framework and typology for software product updaters. , 2004 .

[11]  Lai Xu,et al.  Concepts of Product Software: Paving the Road for Urgently Needed Research , 2005, CAiSE Workshops.

[12]  Audris Mockus,et al.  Predictors of customer perceived software quality , 2005, ICSE.

[13]  Bertrand Meyer The software knowledge base , 1985, ICSE '85.

[14]  Kyo Chul Kang,et al.  Feature-Oriented Domain Analysis (FODA) Feasibility Study , 1990 .

[15]  Paul Klint,et al.  Enabling the creation of knowledge about software assets , 2002, Data Knowl. Eng..

[16]  Gerco Ballintijn A Case Study of the Release Management of a Health-care Information System , 2005, ICSM.

[17]  Petr Hnětynka Component Model for Unified Deployment of Distributed Component-based Software , 2004 .

[18]  Richard S. Hall,et al.  Specifying the Deployable Software Description Format in XML , 1999 .

[19]  T. Soininen,et al.  State-of-the-practice in product configuration — a survey of 10 cases in the Finnish industry , 1995 .

[20]  Slinger Jansen,et al.  Integrated development and maintenance of software products to support efficient updating of customer configurations: a case study in mass market ERP software , 2005, 21st IEEE International Conference on Software Maintenance (ICSM'05).

[21]  Slinger Jansen,et al.  Definition and Validation of the Key process of Release, Delivery and Deployment for Product Software Vendors: turning the ugly duckling into a swan , 2006, 2006 22nd IEEE International Conference on Software Maintenance.