Abstract
At the risk of being condemned as a software engineering heretic, it seems to me that notions of accuracy and correctness of software have intuitive appeal, but are difficult if not impossible to achieve in practice. The search for this chimera of "correctness" has misled many highly intelligent and technically capable developers into the quest for rigour in design, rather than rigour in requirements. But what does rigour in requirements mean? If we believe, with Boehm and colleagues [1] that "There is no complete and well defined set of requirements ready to be discovered in system development", what then is the requirements correctness criterion? And furthermore what is the correctness criterion for an implemented software system.
- Boehm, B., Grunbacher, P. and Briggs, R. Developing Groupware for Requirements Negotiation: Lessons Learned. IEEE Software, May/June (2001), 46--55. Google ScholarDigital Library
- Cumberlege, R., Green, J. and Clear, T., Client Relationships - A Proven Approach. in 17th Annual NACCQ Conference, (Christchurch, New Zealand, 2004), NACCQ, 488.Google Scholar
- Fowler, M. and Highsmith, J. The Agile Manifesto. Software Development, 9, 8 (2001), 28--32.Google Scholar
- Highsmith, J. Agile Project Management. Addison-Wesley, Boston, 2004. Google ScholarDigital Library
- Hirschheim, R. and Klein, H. Four Paradigms of Information Systems Development. Communications of the ACM, 32, 10 (1989), 1199--1216. Google ScholarDigital Library
- Hirscheim, R. and Newman, M. Symbolism and information systems development: myth, metaphor and magic. Information Systems Research, 2 (1991), 29--62.Google ScholarDigital Library
- Luca, J. D. FDD - Feature Driven Development. Nebulon Pty., 2003: http://www.featuredrivendevelopment.com/Google Scholar
- Myers, M. Dialectical hermeneutics: a theoretical framework for the implementation of information systems. Information Systems Journal, 5, 1 (1995), 51--70.Google ScholarCross Ref
Recommendations
Students becoming political and "incorrect" through agile methods
ITiCSE-WGR '04: Working group reports from ITiCSE on Innovation and technology in computer science educationAt the risk of being condemned as a software engineering heretic, it seems to me that notions of accuracy and correctness of software have intuitive appeal, but are difficult if not impossible to achieve in practice. The search for this chimera of "...
Becoming agile: a grounded theory of agile transitions in practice
ICSE '17: Proceedings of the 39th International Conference on Software EngineeringAgile adoption is typically understood as a one-off organizational process involving a staged selection of agile development practices. This view of agility fails to explain the differences in the pace and effectiveness of individual teams transitioning ...
Comments