Progress Report on a Proposed Theory for Software Development

Diana Kirk, Stephen MacDonell

2015

Abstract

There is growing acknowledgement within the software engineering community that a theory of software development is needed to integrate the myriad methodologies that are currently popular, some of which are based on opposing perspectives. We have been developing such a theory for a number of years. In this position paper, we overview our theory along with progress made thus far. We suggest that, once fully developed, this theory, or one similar to it, may be applied to support situated software development, by providing an overarching model within which software initiatives might be categorised and understood. Such understanding would inevitably lead to greater predictability with respect to outcomes.

References

  1. Atkinson, R., Crawford, L., and Ward, S. (2006). Fundamental uncertainties in projects and the scope of project management. International Journal of Project Management, 24:687-698.
  2. Avison, D. and Pries-Heje, J. (2008). Flexible information systems development: Designing an appropriate methodology for different situations. In Filipe, J., Cordeiro, J., and Cardoso, J., editors, Enterprise information systems : 9th International Conference, ICEIS 2007, pages 212-224, Berlin, Heidelberg. Springer.
  3. Bajec, M., Vavpotic, D., and Krisper, M. (2007). Practicedriven approach for creating project-specific software development methods. Information and Software Technology, 49:345-365.
  4. Basili, V. R. and Rombach, H. D. (1987). Tailoring the Software Process to Project Goals and Environments. In Proceedings of the Ninth International Conference on Software Engineering. IEEE, IEEE Computer Society Press.
  5. Basili, V. R., Shull, F., and Lanubile, F. (1999). Building Knowledge through Families of Experiments. IEEE Transactions on Software Engineering, 25(4):456- 473.
  6. Beck, K. (2000). eXtreme Programming eXplained - Embrace Change. Addison-Wesley, United States of America.
  7. Boehm, B. W. (1988). A Spiral Model of Software Development and Enhancement. IEEE Computer, May(11).
  8. Bunge, M. A. (1977). Treatise on Basic Philosophy 3. Ontology 1: The Furniture of the World. D.Reidel Publishing Company, Dordrecht, Holland.
  9. Clarke, P. and O'Connor, R. V. (2012). The situational factors that affect the software development process: Towards a comprehensive reference framework. Information and Software Technology, 54:433-447.
  10. Connor, A. (2007). Probabilistic estimation of software project duration. New Zealand Journal of Applied Computing and Information Technology, 11(1):11-22.
  11. Cusumano, M., MacCormack, A., Kemerer, C., and Crandall, B. (2003). Software development worldwide: The state of the practice. IEEE Software, 20(6):28- 34.
  12. de Azevedo Santos, M., de Souza Bermejo, P. H., de Oliveira, M. S., and Tonelli, A. O. (2011). Agile practices: An assessment of perception of value of professionals on the quality criteria in performance of projects. Journal of Software Engineering and Applications, 4:700-709.
  13. Dyba°, T., Sjøberg, D. I., and Cruzes, D. S. (2012). What Works for Whom, Where, When and Why? On the Role of Context in Empirical Software Engineering. In Proceedings of the 6th International Symposium on Empirical Software Engineering and Measurement (ESEM 2012), pages 19-28, Lund, Sweden.
  14. Fettke, P. and Loos, P. (2003). Ontological Evaluation of Reference Models using the Bunge-Wand-Weber Model. In Proceedings of the Ninth Americas Conference on Information Systems (AMCIS 2003), pages 2944-2955. Association for Information Systems.
  15. Fitzgerald, B. (1997). The use of systems development methodologies in practice: a field study. Information Systems Journal, pages 201-212.
  16. Gilmore, D. J. (1990). Methodological Issues in the Study of Programming. In Hoc, J.-M., Green, T., Samurcay, R., and Gilmore, D., editors, Psychology of Programming, pages 83-98. Academic Press Ltd., London, U.K.
  17. Gregor, S. (2006). The nature of theory in Information Systems. MIS Quarterly: Management Information Systems, 30(3):611-642.
  18. Hannay, J. E., Sjøberg, D. I. K., and Dyba°, T. (2007). A systematic review of theory use in software engineering experiments. IEEE Transactions on Software Engineering, 33(2):87-107.
  19. Hansson, C., Dittrich, Y., Gustafsson, B., and Zarnak, S. (2009). How agile are software development practices? Journal of Systems and Software, 79:1295- 1311.
  20. Jacobson, I., Meyer, B., and Soley, R. (2013a). Software Engineering Method and Theory.
  21. Jacobson, I. and Seidewitz, E. (2014). A New Software Engineering. Communications of the ACM, 57(12):49- 54.
  22. Jacobson, I., Spence, I., and Ng, P.-W. (2013b). Agile and SEMAT - Perfect Partners. Communications of the ACM, 56(11):53-59.
  23. Kirk, D. (2007). A Flexible Software Process Model. PhD thesis, University of Auckland, Auckland, New Zealand.
  24. Kirk, D. and MacDonell, S. (2009). A Simulation Framework to Support Software Project (Re)Planning.
  25. Kirk, D. and MacDonell, S. (2013). A model for software contexts. In Proceedings of the Eighth International Conference on Evaluation of Novel Approaches in Software Engineering (ENASE 2013), pages 197- 204.
  26. Kirk, D., MacDonell, S., and Tempero, E. (2009). Modelling software processes - a focus on objectives. In Proceedings of the 24th ACM SIGPLAN conference companion on Object oriented programming systems languages and applications (OOPSLA), Session: Onward short papers session 2., pages 941-948, Orlando, Florida, USA. ACM Press.
  27. Kirk, D. and MacDonell, S. G. (2014a). Categorising software contexts. In Proceedings of 20th Americas Conference on Information Systems, AMCIS 2014.
  28. Kirk, D. and MacDonell, S. G. (2014b). Investigating a conceptual construct for software context. In Proceedings of the Conference on Empirical Assessment in Software Engineering (EASE), number 27.
  29. Kirk, D. and Tempero, E. (2004). Proposal for a Flexible Software Process Model. In Proceedings of the 5th International Workshop on Software Process Simulation and Modeling (ProSim'04), Edinburgh, Scotland.
  30. Kirk, D. and Tempero, E. (2005). A Conceptual Model of the Software Development Process. In Proceedings of the 6th International Workshop on Software Process Simulation and Modeling (ProSim'05), St. Louis, Missouri. Fraunhofer IRB.
  31. Kirk, D. and Tempero, E. (2012a). A lightweight framework for describing software practices. Journal of Systems and Software, 85(3):581-594.
  32. Kirk, D. and Tempero, E. (2012b). Software development practices in New Zealand. In Proceedings of the Nineteenth Asia-Pacific Software Engineering Conference (APSEC 2012), pages 386-395, Hong Kong.
  33. Kitchenham, B. and Linkman, S. (1997). Estimates, Uncertainty and Risk. IEEE Software, 14(3):69-74.
  34. Kitchenham, B. A., Pfleeger, S. L., Hoaglin, D. C., El Emam, K., and Rosenberg, J. (2002). Preliminary Guidelines for Empirical Research in Software Engineering. IEEE Transactions on Software Engineering, 28(8):721-734.
  35. Kruchten, P. (2013). Contextualizing agile software development. Journal of Software: Evolution and Process, 25(4):351-361.
  36. Lakey, P. B. (2003). A Hybrid Software Process Simulation Model for Project Management. In Proceedings of the 2003 International Workshop on Software Process Simulation and Modeling (ProSim'03), Portland, Oregan, U.S.A.
  37. Lehman, M. (1997). Process Modelling - Where Next. In Proceedings of the 1997 Conference on Software Engineering. IEEE Computer Society Press.
  38. MacCormack, A., Crandall, W., Henderson, P., and Toft, P. (2012). Do you need a new productdevelopment strategy? Research Technology Management, 55(1):34-43.
  39. MacDonell, S., Kirk, D., and McLeod, L. (2008). Raising Healthy Software Systems. In The 4th International ERCIM Workshop on Software Evolution and Evolvability (Evol'08), pages 21-24, L'Aquila, Italy. The European Research Consortium for Informatics and Mathematics (ERCIM), IEEE Computer Society Press.
  40. Naur, P. and Randell, B. (1969). NATO Software Engineering Conference 1968. Conference report, NATO Science Committee. Report on a conference sponsored by the NATO SCIENCE COMMITTEE held in Garmisch, Germany, in October 1968.
  41. Opdahl, A. L. and Henderson-Sellers, B. (2002). Ontological Evaluation of the UML Using the Bunge-WandWeber Model. Software and Systems Modeling, 1(1).
  42. Perminova, O., Gustaffson, M., and Wikstrom, K. (2007). Defining uncertainty in projects a new perspective. International Journal of Project Management, 26:73- 79.
  43. Petersen, K. and Wohlin, C. (2009). A comparison of issues and advantages in agile and incremental development between state of the art and an industrial case. Journal of Systems and Software, 82:1479-1490.
  44. Rao, U. S., Kestur, S., and Pradhan, C. (2008). Stochastic Optimization and Modeling and Quantitative Project Management. IEEE Software, May/June:29-36.
  45. Sjøberg, D. I., Dyba°, T., Anda, B. C., and Hannay, J. E. (2008). Building Theories in Software Engineering, pages 312-336. Springer-Verlag.
  46. Stol, K. and Fitzgerald, B. (2013). Uncovering Theories in Software Engineering. In Proceedings of the 2nd Workshop on Grand Theory in Software Engineering (GTSE 2013), colocated with ICSE 2013, pages 5-14, San Francisco, USA.
  47. Stuckenberg, S. and Heinzl, A. (2010). The Impact of the Software-as-a-Service concept on the Underlying Software and Service Development Processes. In Proceedings of the 2010 Pacific Asia Conference on Information Systems (PACIS 2010), pages 1297-1308.
  48. Turner, R., Ledwith, A., and Kelly, J. (2010). Project management in small to medium-sized enterprises: Matching processes to the nature of the firm. International Journal of Project Management, 28:744-755.
  49. Wand, Y., Storey, V. C., and Weber, R. (1999). An Ontological Analysis of the Relationship Construct in Conceptual Modeling. ACM Transactions on Database Systems, 24(4):494-528.
  50. Wieringa, R. (2005). Requirements researchers: are we really doing research? Requirements Engineering, 10:304-306.
  51. Zachman, J. A. (2009). Engineering the Enterprise: The Zachman Framework for Enterprise Architecture.
Download


Paper Citation


in Harvard Style

Kirk D. and MacDonell S. (2015). Progress Report on a Proposed Theory for Software Development . In Proceedings of the 10th International Conference on Software Paradigm Trends - Volume 1: ICSOFT-PT, (ICSOFT 2015) ISBN 978-989-758-115-1, pages 161-167. DOI: 10.5220/0005552401610167


in Bibtex Style

@conference{icsoft-pt15,
author={Diana Kirk and Stephen MacDonell},
title={Progress Report on a Proposed Theory for Software Development},
booktitle={Proceedings of the 10th International Conference on Software Paradigm Trends - Volume 1: ICSOFT-PT, (ICSOFT 2015)},
year={2015},
pages={161-167},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0005552401610167},
isbn={978-989-758-115-1},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 10th International Conference on Software Paradigm Trends - Volume 1: ICSOFT-PT, (ICSOFT 2015)
TI - Progress Report on a Proposed Theory for Software Development
SN - 978-989-758-115-1
AU - Kirk D.
AU - MacDonell S.
PY - 2015
SP - 161
EP - 167
DO - 10.5220/0005552401610167