This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Managing Process Inconsistency Using Viewpoints
November/December 1999 (vol. 25 no. 6)
pp. 784-799

Abstract—This paper discusses the notion of process inconsistency and suggests that inconsistencies in software processes are inevitable and sometimes desirable. We present an approach to process analysis that helps discover different perceptions of a software process and that supports the discovery of process inconsistencies and process improvements stimulated by these inconsistencies. By analogy with viewpoints for requirements engineering that allow multiple perspectives on a software system specification to be managed, we have developed the notion of process viewpoints that provide multiperspective descriptions of software processes. A process viewpoint includes a statement of focus or “world-view,” a set of sources of process information, a process description and a set of organizational concerns that represent goals or constraints on the process analysis. We present a description and rationale of process viewpoints, discuss the process of applying process viewpoints for process understanding and illustrate the overall approach using part of a case study drawn from industrial processes that are part of a safety-critical system development.

[1] A. Finkelstein, J. Kramer, and B. Nuseibeh, eds., Software Process Modelling and Technology. Research Studies Press Limited, John Wiley&Sons, 1994.
[2] A. Fuggetta and A. Wolf, eds., Trends in Software: Software Process. Chichester, U.K.: John Wiley&Sons, 1996.
[3] M. Hammer, “Reengineering Work: Don't Automate, Obliterate,” Harvard Business Review, pp. 104-112, July/Aug. 1990.
[4] W.S. Humphrey, "Characterizing the Software Process," IEEE Software, Vol. 5, No. 2, March 1988, pp. 73-79.
[5] M. Paulk et al., "Capability Maturity Model, Version 1.1," IEEE Software, July 1993, pp. 18-27.
[6] V. Haase, R. Messnarz, G. Koch, H.J. Kugler, and P. Decrinis, “Bootstrap: Fine Tuning Process Assessment,” IEEE Software, vol. 11, no. 4, pp. 25-35, 1994.
[7] K. El Emam, J.-N. Drouin, and W. Melo, SPICE: The Theory and Practice of Software Process Improvement and Capability Determination. K. El Emam, J.-N. Drouin, and W. Melo, eds., IEEE CS Press, 1998.
[8] I. Sommerville and P. Sawyer, Requirements Engineering: A Good Practice Guide, John Wiley&Sons, New York, 1998.
[9] L. Emmet, R. Bloomfield, J. Bowers, and S. Viller, “PERE: Evaluation and Improvement of Dependable Processes,” Proc. Safecomp'96, 1996.
[10] I. Sommerville and P. Sawyer, “Viewpoints: Principles, Problems and a Practical Approach to Requirements Engineering,” Annual Software Eng., vol. 3, 1997.
[11] I. Sommerville, P. Sawyer, and S. Viller, “Viewpoints for Requirements Elicitation: A Practical Approach,” Proc. Int'l Conf. Requirements Eng., 1998.
[12] L.J. Osterweil, "Software Processes are Software, Too," Proc. Ninth Int'l Conf. Software Eng., IEEE Computer Soc. Press, Los Alamitos, Calif., 1987, pp. 2-13.
[13] C. Fernström, "ProcessWEAVER: Adding Process Support to UNIX," Proc. Second Int'l Conf. Software Process: Continuous Software Process Improvement, IEEE Computer Soc. Press, Los Alamitos, Calif., Feb. 1993, pp. 12-26.
[14] S.M. Sutton and L.J. Osterweil, “The Design of a Next-Generation Process Language,” ESEC/FSE'97, pp. 142-58, Springer-Verlag, 1997.
[15] Carnegie Mellon University Software Engineering Institute, The Capability Maturity Model—Guidelines for Improving the Software Process, Addison-Wesley, Reading, Mass., 1994.
[16] I. Sommerville and T. Rodden, “Human, Social and Organizational Influences on the Software Process,” Trends in Software, A. Fuggetta and A. Wolf, eds., pp. 89-110, New York: John Wiley&Sons, 1996.
[17] G. Cugola, E. Di Nitto, A. Fuggetta, and C. Ghezzi, “A Framework for Formalizing Inconsistencies and Deviations in Human-Centered Systems,” ACM Trans. Software Eng. and Methodology, vol. 5, no. 3, pp. 191-230, July 1996.
[18] R. Conradi and C. Liu, “Process Modelling Languages: One or Many,” Proc. Fourth European Workshop Software Process Technology, Springer-Verlag, 1995.
[19] P. Checkland, Systems Thinking, Systems Practice. Chichester U.K.: John Wiley&Sons, 1981.
[20] G. Mullery, "CORE : A Method for Controlled Requirements Expression," Proc. 4th Int'l Conf. Soft. Eng.(ICSE-4), IEEE Comp. Soc. Press, Los Alamitos, Calif., 1979, pp. 126-135.
[21] G. Kotonya and I. Sommerville, “Viewpoints for Requirements Definition,” BCS/IEE Software Eng. J., vol. 7, no. 6, pp. 375-87, 1992.
[22] G. Kontonya and L. Sommerville, "Requirements Engineering with Viewpoints," Software Eng. J., Vol. 11, No. 1, Jan. 1996, pp. 5-18.
[23] I. Sommerville, P. Sawyer, G. Kotonya, and S. Viller, “Process Viewpoints,” Proc. Fifth European Workshop Software Process Technology, Springer-Verlag, 1995.
[24] V.R. Basili and H.D. Rombach, "The TAME Project: Towards Improvement-Oriented Software Environments," IEEE Trans. Software Eng., Vol. 14, No. 6, 1988, pp. 758-773.
[25] P. Checkland and J. Scholes, Soft Systems Methodology in Action. Chichester U.K.: John Wiley&Sons, 1990.
[26] H.D. Rombach, “MVP-L, A Language for Process Modeling In-the-Large,” Inst. for Advanced Computer Studies, Univ. of Maryland, 1991.
[27] A. Bröckers, C.M. Lott, H.D. Rombach, and M. Verlage, “MVP-L Language Report, version 2,” Dept. of Computer Science, Univ. of Kaiserslautern, Germany, 1995.
[28] U. Becker, D. Hamann, J. Münch, and M. Verlage, “MVP-E: A Process Modeling Environment” IEEE Trans. Computer Software Eng. Software Process Newsletter, vol. 10, pp. 10-15, 1997.
[29] M. Verlage, “Multi-View Modeling of Software Processes,” Proc. Third European Workshop Software Process Technology, Springer-Verlag, pp. 123-127, 1994.
[30] S. Bandinelli, A. Fuggetta, L. Lavazza, M. Loi, and G.P. Picco, "Modeling and Improving an Industrial Software Process," IEEE Trans. Software Eng., vol. 21, no. 5, pp. 440-453, 1995.
[31] S. Bandinelli, A. Fuggetta, and C. Ghezzi, “Process Model Evolution in the SPADE Environment,” IEEE Trans. Software Eng., Dec. 1993.
[32] N.H. Madhavji, D. Holtje, H. WonKook, and T. Bruckhaus, “Elicit: A Method for Eliciting Process Models,” Proc. Third Int'l Conf. The Software Process, IEEE CS Press, 1994.
[33] T.G. Heineman, J.E. Botsford, G. Caldiera, G.E. Kaiser, M.I. Kellner, and N.H. Madhavji, “Emerging Technologies that Support a Software Process Life Cycle,” IBM Systems J., vol. 33, no. 3, pp. 501-529, 1994.
[34] J. Turgeon and N.H. Madhavji, “A Systematic View-Based Approach to Eliciting Process Models,” Proc. Fifth Euopean Workshop Software Process Technology, Springer-Verlag, 1996.
[35] A. Finkelstein, J. Kramer, B. Nuseibeh, and M. Goedicke, “Viewpoints: A Framework for Integrating Multiple Perspectives in System Development,” Int'l J. Software Eng. and Knowledge Eng., vol. 2, no. 1, pp. 31-58, 1992.
[36] B. Nuseibeh, J. Kramer, and A. Finkelstein, "A Framework for Expressing the Relationships Between Multiple Views in Requirements Specification," IEEE Trans. Software Eng., vol. 20, no. 10, pp. 760-773, Oct. 1994.
[37] S. Easterbrook and B. Nuseibeh, Using Viewpoints for Inconsistency Management Software Eng. J., vol. 11, no. 1, pp. 31-43, 1996.

Index Terms:
Viewpoints, software process, process improvement.
Citation:
Ian Sommerville, Pete Sawyer, Stephen Viller, "Managing Process Inconsistency Using Viewpoints," IEEE Transactions on Software Engineering, vol. 25, no. 6, pp. 784-799, Nov.-Dec. 1999, doi:10.1109/32.824395
Usage of this product signifies your acceptance of the Terms of Use.