Skip to main content

Techniques for Merging Views of Software Processes

  • Chapter
  • 1540 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 5765))

Abstract

Models of software development processes have many uses such as an aid to understanding, composing, assessing, improving and automating workflows. However, eliciting descriptive models from actual work environments can be quite complex due to multiplicity of roles, activities, artefacts, conditions, distributivity, locations and others. One way to manage this complexity is to elicit, from different sources, partial models (called views) of the subject process and then merge them into a coherent whole. In this paper, we describe “view-merging” algorithms, which form a core part of a view-based model elicitation system. The algorithms aid in identifying overlaps and inconsistencies and in presenting possible resolutions which, by interacting with the model elicitor, leads towards an incrementally built, unified, coherent process model. These algorithms have been implemented in a system called V elicit, which has been validated empirically.

This work was supported in part by the Natural Science and Engineering Research Council of Canada (NSERC).

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Ahonen, J.J., Forsell, M., Taskinen, S.-K.: A Modest but Practical Software Process Modeling Technique for Software Process Improvement. Journal of Software Process Improvement and Practice 7(1), 33–44 (2002)

    Article  Google Scholar 

  2. Alanen, M., Porres, I.: Difference and Union of Models. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, pp. 2–17. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  3. Altmanninger, K.: Models in Conflict - Towards a Semantically Enhanced Version Control System for Models. In: Giese, H. (ed.) MODELS 2008. LNCS, vol. 5002, pp. 293–304. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  4. Barragáns-Martínez, A.B., Arias, J.J.P., Vilas, A.F., Duque, J.G., Nores, M.L., Redondo, R.P.D., Blanco-Fernández, Y.: Composing Multi-perspective Software Requirements Specifications. Int. J. Software Engineering and Knowledge Engineering 18(1), 119–153 (2008)

    Article  Google Scholar 

  5. Barragáns-Martínez, A.B., Arias, J.J.P., Vilas, A.F., Duque, J.G., Nores, M.L., Redondo, R.P.D., Blanco-Fernández, Y.: Composing Requirements Specifications from Multiple Prioritized Sources. J. Requirements Engineering 13, 187–206 (2008)

    Article  Google Scholar 

  6. Brosch, P., Langer, P., Seidl, M., Wimmer, M.: Towards End-User Adaptable Model Versioning: The By-Example Operation Recorder. In: ICSE Workshop on Comparison and Versioning of Software Models, pp. 55–60. IEEE CS Press, Los Alamitos (2009)

    Chapter  Google Scholar 

  7. Bush, M.W.: Process Assessments in NASA. In: 13th Int. Conf. on Software Engineering, pp. 299–304. IEEE CS Press, Los Alamitos (1991)

    Google Scholar 

  8. Cicchetti, A., Di Ruscio, D., Pierantonio, A.: Managing Model Conflicts in Distributed Development. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 311–325. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  9. Curtis, B., Kellner, M.I., Over, J.: Process Modeling. Communications of the ACM 35(9), 75–90 (1992)

    Article  Google Scholar 

  10. Dalkey, N., Helmer, O.: An Experimental Application of the Delphi Method to the Use of Experts. Management Science 9(3), 458–467 (1963)

    Article  Google Scholar 

  11. Deiters, W., Gruhn, V.: Software Process Technology Transfer - A Case Study Based on FUNSOFT Nets and MELMAC. In: 8th Int. Software Process Workshop, pp. 50–52. IEEE CS Press, Los Alamitos (1993)

    Google Scholar 

  12. Easterbrook, S., Nuseibeh, B.: Using Viewpoints for Inconsistency Management. Software Engineering Journal 11(1), 31–43 (1996)

    Article  Google Scholar 

  13. Easterbrook, S., Yu, E., Aranda, J., Fan, Y., Horkoff, J., Leica, M., Qadir, R.A.: Do viewpoints lead to better conceptual models? An exploratory case study. In: 13th IEEE International Conference on Requirements Engineering, pp. 199–208. IEEE CS Press, Los Alamitos (2005)

    Chapter  Google Scholar 

  14. Finkelstein, A., Gabbay, D., Hunter, A., Kramer, J., Nuseibeh, B.: Inconsistency Handling in Multi-Perspective Specifications. IEEE Trans. on Software Engineering 20(8), 569–578 (1994)

    Article  Google Scholar 

  15. Guzman-Arenas, A., Cuevas, A.-D.: Knowledge accumulation through automatic merging of ontologies. Expert Systems with Applications 37(3), 1991–2005 (2010)

    Article  Google Scholar 

  16. Hardgrave, B.C., Armstrong, D.J.: Software Process Improvement: It’s a Journey, Not a Destination. Communications of the ACM 48(11), 93–96 (2005)

    Article  Google Scholar 

  17. Hicks, C.R.: Fundamental concepts in the design of experiments, 4th edn. Saunders College Publishing, Philadelphia (1993)

    MATH  Google Scholar 

  18. Humphrey, W.S.: Managing the Software Process. Addison-Wesley, Reading (1989)

    Google Scholar 

  19. Kellner, M.I., Feiler, P.H., Finkelstein, A., Katayama, T., Osterweil, L.J., Penedo, M.H., Rombach, H.D.: ISPW-6 Software Process Example. In: First Int. Conf. on the Software Process, pp. 176–186. IEEE CS Press, Los Alamitos (1991)

    Chapter  Google Scholar 

  20. Kellner, M.I., Hansen, G.A.: Software Process Modeling: A Case Study. In: 22nd Annual Hawaii Int. Conf. on System Sciences. Software Track, vol. II, pp. 175–188. IEEE CS Press, Los Alamitos (1989)

    Google Scholar 

  21. Kelter, U., Wehren, J., Niere, J.: A Generic Difference Algorithm for UML Models. In: Liggesmeyer, P., Pohl, K., Goedicke, M. (eds.) Software Engineering 2005. LNI, vol. 64, pp. 105–116. GI (2005)

    Google Scholar 

  22. Kolovos, D.S., Paige, R., Polack, F.: Merging Models with the Epsilon Merging Language (EML). In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 215–229. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  23. Küster, J.M., Gerth, C., Förster, A., Engels, G.: Detecting and Resolving Process Model Differences in the Absence of a Change Log. In: Dumas, M., Reichert, M., Shan, M.-C. (eds.) BPM 2008. LNCS, vol. 5240, pp. 244–260. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  24. van Lamsweerde, A., Darimont, R., Letier, E.: Managing Conflicts in Goal-Driven Requirements Engineering. IEEE Trans. on Software Engineering 24(11), 908–926 (1998)

    Article  Google Scholar 

  25. Leite, J.C., Freeman, P.A.: Requirements Validation Through Viewpoint Resolution. IEEE Trans. on Software Engineering 17(12), 1253–1269 (1991)

    Article  Google Scholar 

  26. Madhavji, N.H., Holtje, D., Hong, W., Bruckhaus, T.: Elicit: A Method for Eliciting Process Models. In: 3rd Int. Conf. on the Software Process, pp. 111–122. IEEE CS Press, Los Alamitos (1994)

    Google Scholar 

  27. Nejati, S., Sabetzadeh, M., Chechik, M., Easterbrook, S., Zave, P.: Matching and Merging of Statecharts Specifications. In: 29th International Conference on Software Engineering, pp. 54–64. IEEE CS Press, Los Alamitos (2007)

    Google Scholar 

  28. Noy, N.F., Musen, M.A.: PROMPT: Algorithm and Tool for Automated Ontology Merging and Alignment. In: 17th National Conf. on Artificial Intelligence, Austin, TX, pp. 450–455. American Association for Artificial Intelligence (2000)

    Google Scholar 

  29. Rombach, H.D.: Practical use of formal process models: first experiences. In: 8th Int. Software Process Workshop, pp. 132–134. IEEE CS Press, Los Alamitos (1993)

    Google Scholar 

  30. Sabetzadeh, M., Easterbrook, S.: View Merging in the Presence of Incompleteness and Inconsistency. J. Requirements Engineering 11, 174–193 (2006)

    Article  Google Scholar 

  31. Spanoudakis, G., Constantopoulos, P.: Elaborating Analogies from Conceptual Models. Int. Journal of Intelligent Systems 11(11), 917–974 (1996)

    Article  Google Scholar 

  32. Spanoudakis, G., Finkelstein, A.: Reconciling requirements: a method for managing interference, inconsistency and conflict. In: Annals of Software Engineering, vol. 3, pp. 433–457. Springer, Heidelberg (1997)

    Google Scholar 

  33. Tassé, J., Madhavji, N.H.: View-Based Process Elicitation: a User’s Perspective. Journal of Software Process Improvement and Practice 6(3), 125–139 (2001)

    Article  Google Scholar 

  34. Tullos, R.E.: Assessment of Similarity Indices for Undesirable Properties and a new Tripartite Similarity Index Based on Cost Functions. In: Palm, M.E., Chapela, I.H. (eds.) Mycology in Sustainable Development: Expanding Concepts, Vanishing Borders. Parkway Publishers (1997)

    Google Scholar 

  35. Turgeon, J.: A View-Based System for Eliciting Software Process Models. Ph.D. Thesis, McGill University (1999)

    Google Scholar 

  36. Turgeon, J., Madhavji, N.H.: A Systematic, View-Based Approach to Eliciting Process Models. In: Montangero, C. (ed.) EWSPT 1996. LNCS, vol. 1149, pp. 276–282. Springer, Heidelberg (1996)

    Chapter  Google Scholar 

  37. Turgeon, J., Madhavji, N.H.: View-based vs Traditional Modeling Approaches: Which is Better? In: Conradi, R. (ed.) EWSPT 2000. LNCS, vol. 1780, pp. 131–137. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  38. Verlage, M.: An Approach for Capturing Large Software Development Processes by Integration of Views Modeled Independently. In: 10th Int. Conf. On Software Engineering and Knowledge Engineering. Knowledge Systems Institute, Skokie (1998)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Tassé, J., Madhavji, N.H., Azad, A. (2010). Techniques for Merging Views of Software Processes. In: Engels, G., Lewerentz, C., Schäfer, W., Schürr, A., Westfechtel, B. (eds) Graph Transformations and Model-Driven Engineering. Lecture Notes in Computer Science, vol 5765. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-17322-6_19

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-17322-6_19

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-17321-9

  • Online ISBN: 978-3-642-17322-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics