Abstract
In this article, we describe an approach to empirical software engineering based on a combined software factory and software laboratory. The software factory develops software required by an external customer while the software laboratory monitors and improves the processes and methods used in the factory. We have used this approach during a period of four years to define and evaluate a software process that combines practices from Extreme Programming with architectural design and documentation practices in order to find a balance between agility, maintainability and reliability.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Back, R.J., Milovanov, L., Porres, I., Preoteasa, V.: XP as a Framework for Practical Software Engineering Experiments. In: Proceedings of the Third International Conference on eXtreme Programming and Agile Processes in Software Engineering – XP 2002 (2002)
Beck, K.: Extreme Programming Explained: Embrace Change. Addison-Wesley, Reading (1999)
Abrahamsson, P.: Extreme Programming: First Results from a Controlled Study. In: Proceedings of the 29th EUROMICRO Conference “NewWaves in System Architecture”. IEEE, Los Alamitos (2003)
Back, R.J., Milovanov, L., Porres, I., Preoteasa, V.: An Experiment on Extreme Programming and Stepwise Feature Introduction. Technical Report 451, TUCS (2002)
Back, R.J., Milovanov, L., Porres, I.: Software Development and Experimentation in an Academic Environment: The Gaudi Experience. Technical Report 641, TUCS (2004)
Basili, V., Caldiera, G., Rombach, D.: The Goal Question Metric Approach. Encyclopedia of Software Engineering. John Wiley and Sons, Chichester (1994)
Back, R.J., Hirkman, P., Milovanov, L.: Evaluating the XP Customer Model and Design by Contract. In: Proceedings of the 30th EUROMICRO Conference. IEEE Computer Society, Los Alamitos (2004)
Korkala, M.: Extreme Programming: Introducing a Requirements Management Process for an Offsite Customer. Department of Information Processing Science research papers series A, University of Oulu (2004)
Korkala, M., Abrahamsson, P.: Extreme Programming: Reassessing the Requirements Management Process for an Offsite Customer. In: Dingsøyr, T. (ed.) EuroSPI 2004. LNCS, vol. 3281, pp. 12–22. Springer, Heidelberg (2004)
Palmer, S.R., Felsing, J.M.: A Practicel Guide to Feature-Driven Development. The Coad Series. Prentice Hall PTR, Englewood Cliffs (2002)
Beck, K.: Embracing Change with Extreme Programming. Computer 32, 70–73 (1999)
Nosek, J.: The Case for Collaborative Programming. Communications of the ACM 41, 105–108 (1998)
Meyer, B.: Eiffel: The Language, 2nd edn. Prentice-Hall, Englewood Cliffs (1992)
Meyer, B.: Object-Oriented Software Construction, 2nd edn. Prentice-Hall, Englewood Cliffs (1997)
Feldman, Y.A.: Extreme Design by Contract. In: Marchesi, M., Succi, G. (eds.) XP 2003. LNCS, vol. 2675. Springer, Heidelberg (2003)
Heinecke, H., Noack, C.: Integrating Extreme Programming and Contracts. Addison Wesley Professional, Reading (2002)
Back, R.J.: Software Construction by Stepwise Feature Introduction. In: Proceedings of the ZB 2001 – Second International Z and B Conference. LNCS. Springer, Heidelberg (2002)
Williams, L., Kessler, R.: Pair Programming Illuminated. Addison-Wesley Longman Publishing Co, Amsterdam (2002)
Cockburn, A., Williams, L.: The Costs and Benefits of Pair Programming. In: Proceedings of eXtreme Programming and Flexible Processes in Software Engineering XP 2000 (2000)
Constantine, L.L.: Constantine on Peopleware. Prentice Hall, Englewood Cliffs (1995)
Johnson, D.H., Caristi, J.: Extreme Programming and the Software Design Course. In: Proceedings of XP Universe (2001)
Müller, M.M., Tichy, W.F.: Case study: Extreme programming in a university environment. In: Proceedings of the 23rd Conference on Software Engineering. IEEE Computer Society, Los Alamitos (2001)
Williams, L.A., Kessler, R.R.: Experimenting with Industry’s Pair-Programming Model in the Computer Science Classroom. Journal on Software Engineering Education (2000)
Hulkko, H.: Pair programming and its impact on software quality. Master’s thesis, Electrical and Information Engineering department, University of Oulu (2004)
Salo, O., Abrahamsson, P.: Evaluation of Agile Software Development: The Controlled Case Study approach. In: Bomarius, F., Iida, H. (eds.) PROFES 2004. LNCS, vol. 3009. Springer, Heidelberg (2004)
Institute of Electrical and Electronics Engineers: IEEE Standard Computer Dictionary: A Compilation of IEEE Standard Computer Glossaries. New York (1990)
Fowler, M.: Refactoring: Improving the Design of Existing Code. Object Technology Series. Addison-Wesley, Reading (1999)
Roberts, D.B.: Practical Analysis of Refactorings. PhD thesis, University of Illinois at Urbana-Champaign (1999)
Asklund, U., Bendix, L., Ekman, T.: Software Configuration Management Practices for eXtreme Programming Teams. In: Proceedings of the 11th Nordic Workshop on Programming and Software Development Tools and Techniques NWPER 2004 (2004)
Ilieva, S., Ivanov, P., Stefanova, E.: Analyses of an Agile Methodology Implementation. In: Proceedings of the 30th EUROMICRO Conference. IEEE Computer Society, Los Alamitos (2004)
Rumpe, B., Schröder, A.: Quantitative survey on extreme programming projects. In: Third International Conference on Extreme Programming and Flexible Processes in Software Engineering, XP 2002, May 26-30, Alghero, Italy, pp. 95–100 (2002)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Back, RJ., Milovanov, L., Porres, I. (2005). Software Development and Experimentation in an Academic Environment: The Gaudi Experience. In: Bomarius, F., Komi-Sirviö, S. (eds) Product Focused Software Process Improvement. PROFES 2005. Lecture Notes in Computer Science, vol 3547. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11497455_33
Download citation
DOI: https://doi.org/10.1007/11497455_33
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-26200-8
Online ISBN: 978-3-540-31640-4
eBook Packages: Computer ScienceComputer Science (R0)