Design as Contract and Blueprint – Tackling Maturity Level 1 Software Vendors in an e-School Project

Process improvements have drawn much attention in practical software engineering. The capability maturity levels from CMMI have become an important index to assess a software company-s software engineering capability. However, in countries like Taiwan, customers often have no choices but to deal with vendors that are not CMMI prepared or qualified. We call these vendors maturitylevel- 1 (ML1) vendors. In this paper, we describe our experience from consulting an e-school project. We propose an approach to help our client tackle the ML1 vendors. Through our system analysis, we produce a design. This design is suggested to be used as part of contract and a blueprint to guide the implementation.




References:
[1] B. Boehm. Anchoring the software process. IEEE Software,
13(4):73-82, July 1996.
[2] B. W. Boehm, A. Egyed, D. Port, A. Shah, J. Kwan, and
R. J. Madachy. A stakeholder win-win approach to software
engineering education. Annals of Software Engineering, 6:295-
321, 1998.
[3] A. Cockburn. Writing Effective Use Cases. Addison Wesley,
2004.
[4] A. Dardenne, A. van Lamsweerde, and S. Fickas. Goal-directed
requirements acquisition. Science of Computer Programming,
20(1-2):3-50, 1993.
[5] A. H. Eden and R. Kazman. Architecture, design, implementation.
In ICSE 2003, pages 149-159, 2003.
[6] S. J. Greenspan, J. Mylopoulos, and A. Borgida. On formal requirements
modeling languages: RML revisited. In International
Conference on Software Engineering, pages 135-147, 1994.
[7] I. f. I. I. J. S. Ke, President. Software industry in taiwan. In The
Seventeenth International Conference on Software Engineering
and Knowledge Engineering, 2005.
[8] I. Jacobson, G. Booch, and J. Rumbaugh. The Unified Software
Development Process. Addison Wesley, 1999.
[9] P. Krutchen. The Rational Unified Process: An Introduction, 2nd
ed. Prentice Hall, 2000.
[10] R. C. Martin. Agile Software Development, Principles, Patterns,
and Practices. Prentice Hall, 2004.
[11] M. Weiss. Patterns for web applications. In The 10th Pattern
Languages of Programs (PLop 2003), 2003.