A process of improving Process Improvement Processess in academic research

This thesis presents a new process based approach to software engineering designed to meet the needs of academic computer science researchers. The core objective was to examine whether software engineering approaches could be adapted for the research environment so that they gain acceptance and enable improvement of the research process. The approach included the provision of selected process descriptors (software, tools, and guidelines) to support research. Inter-researchers support, and support between researchers and a departmental Software Engineer were examined. A new working paradigm for computer science departments was simulated in our experiments; this involves the integration of a software engineer working on projects across the department. The approach encourages researcher’s reflection and conscious engagement with their research process. For researchers, our approach provides novel ways of documenting the research and research process and sharing this information in a low cost manner. Selected software engineering tools and approaches were evaluated for both their benefits and acceptability to the academic community. A framework for judging academic capability maturity is presented. Five-month research projects by MSc students form the experimental basis. Data was collected over three years. About half the students opted for the experimental approach. Data collection ranged from inspection of outputs, interviews, and surveys to software engineering approaches like Formal Technical Reviews. In a case study approach we present information on the attitudes, approaches and rationale of the researchers, such understanding is needed for new approaches to be both helpful and acceptable.

[1]  W. W. Royce,et al.  Managing the development of large software systems: concepts and techniques , 1987, ICSE '87.

[2]  Eliot R. Smith,et al.  Research methods in social relations , 1962 .

[3]  B. Randell,et al.  Software Engineering: Report of a conference sponsored by the NATO Science Committee, Garmisch, Germany, 7-11 Oct. 1968, Brussels, Scientific Affairs Division, NATO , 1969 .

[4]  Yingxu Wang SOFTWARE ENGINEERING STANDARDS: REVIEW AND PERSPECTIVES , 2002 .

[5]  Mark C. Paulk,et al.  How ISO 9001 Compares With The CMM , 1995, IEEE Softw..

[6]  Joseph W. Yoder,et al.  Big Ball of Mud , 1997 .

[7]  Watts S. Humphrey,et al.  A method for assessing the software engineering capability of contractors , 1987 .

[8]  Peter J. Denning,et al.  Computing as a discipline , 1989, Computer.

[9]  Adam A. Porter,et al.  Empirical studies of software engineering: a roadmap , 2000, ICSE '00.

[10]  Barry W. Boehm,et al.  Software Engineering Economics , 1993, IEEE Transactions on Software Engineering.

[11]  Edsger W. Dijkstra,et al.  Go To Statement Considered Harmful , 2022, Software Pioneers.

[12]  Claes Wohlin,et al.  Experimentation in Software Engineering , 2000, The Kluwer International Series in Software Engineering.

[13]  Robert F. Coyne,et al.  Software doesn't transfer, people do , 1993 .

[14]  Serge Demeyer,et al.  The FAMOOS Object-Oriented Reengineering Handbook , 1999 .

[15]  Victor R. Basili,et al.  The role of experimentation in software engineering: past, current, and future , 1996, Proceedings of IEEE 18th International Conference on Software Engineering.

[16]  F. Roberts Measurement Theory with Applications to Decisionmaking, Utility, and the Social Sciences: Measurement Theory , 1984 .

[17]  A. Turing On Computable Numbers, with an Application to the Entscheidungsproblem. , 1937 .

[18]  B. Randell,et al.  Software Engineering Techniques: Report of a conference sponsored by the NATO Science Committee, Rome, Italy, 27-31 Oct. 1969, Brussels, Scientific Affairs Division, NATO , 1970 .

[19]  Joel Spolsky,et al.  The Law of Leaky Abstractions , 2004 .

[20]  Charles W. Krueger,et al.  Software reuse , 1992, CSUR.

[21]  Kevin B. Korb,et al.  Software engineering for computer science research: facilitating improved research outcomes , 2004 .

[22]  W. W. Royce,et al.  Managing the development of large software systems , 1970 .

[23]  William G. Griswold,et al.  Automated assistance for program restructuring , 1993, TSEM.

[24]  A. M. Turing,et al.  Computing Machinery and Intelligence , 1950, The Philosophy of Artificial Intelligence.

[25]  Watts S. Humphrey,et al.  A discipline for software engineering , 2012, Series in software engineering.

[26]  Michael Hammer,et al.  Beyond Reengineering: How the Process-Centered Organization Is Changing Our Work and Our Lives , 1996 .

[27]  E. Mayo The Human Problems of an Industrial Civilization , 1934, Nature.

[28]  Mauri Laitinen,et al.  Thinking objectively: software process improvement in the small , 2001, CACM.

[29]  Philip M. Johnson Project LEAP: lightweight, empirical, anti-measurement dysfunction, and portable software developer improvement , 2000, SOEN.

[30]  B. Jack Copeland The Modern History of Computing , 2006 .

[31]  Majed Al-Mashari,et al.  Revisiting BPR: a holistic review of practice and development , 2000, Bus. Process. Manag. J..

[32]  Mary Shaw,et al.  What makes good research in software engineering? , 2002, International Journal on Software Tools for Technology Transfer.

[33]  Mark Dowson,et al.  Software process themes and issues , 1993, [1993] Proceedings of the Second International Conference on the Software Process-Continuous Software Process Improvement.

[34]  R. Belfield The process of innovation. , 1977, Science.

[35]  Venkataraman Ramesh,et al.  An analysis of research in computing disciplines , 2004, CACM.

[36]  Rachel Harrison,et al.  Software evolution and software evolvability , 2003 .

[37]  Venkataraman Ramesh,et al.  Research in computer science: an empirical study , 2004, J. Syst. Softw..

[38]  Philip M. Johnson,et al.  Beyond the Personal Software Process: Metrics collection and analysis for the differently disciplined , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[39]  M. Patton,et al.  Qualitative evaluation and research methods , 1992 .

[40]  Watts S. Humphrey The Personal Software Process , 1997, Proceedings Frontiers in Education 1997 27th Annual Conference. Teaching and Learning in an Era of Change.

[41]  Robert L. Glass,et al.  Science and substance: a challenge to software engineers , 1994, IEEE Software.

[42]  Martin P. Robillard,et al.  Improving academic software engineering projects: A comparative study of academic and industry projects , 1998, Ann. Softw. Eng..

[43]  Richard W. Hamming,et al.  Numerical Methods for Scientists and Engineers , 1962 .

[44]  Barry W. Boehm,et al.  A spiral model of software development and enhancement , 1986, Computer.

[45]  R. Yin Case Study Research: Design and Methods , 1984 .

[46]  Watts S. Humphrey Why don't they practice what we preach? , 1998, Ann. Softw. Eng..

[47]  N. Kock CHANGING THE FOCUS OF BUSINESS PROCESS REDESIGN FROM ACTIVITY FLOWS TO INFORMATION FLOWS : A DEFENSE ACQUISITION APPLICATION , 2001 .

[48]  Glenn Zorpette Breaking the enemy's code , 1987 .

[49]  Jeffrey C. Carver,et al.  Understanding the impact of assumptions on experimental validity , 2004, Proceedings. 2004 International Symposium on Empirical Software Engineering, 2004. ISESE '04..

[50]  W. Bodmer Principles of Scientific Management , 1993, FASEB journal : official publication of the Federation of American Societies for Experimental Biology.

[51]  Barry W. Boehm,et al.  Bayesian Analysis of Empirical Software Engineering Cost Models , 1999, IEEE Trans. Software Eng..

[52]  Jürgen Börstler,et al.  Teaching the PSP: Challenges and Lessons Learned , 2002, IEEE Softw..

[53]  Jacques Lonchamp,et al.  A structured conceptual and terminological framework for software process engineering , 1993, [1993] Proceedings of the Second International Conference on the Software Process-Continuous Software Process Improvement.

[54]  D. L. Flarey Reengineering the Corporation , 1994 .

[55]  Sigurd Thunem,et al.  Process Modeling for Process Improvement - A Process Conformance Approach , 1997 .

[56]  Ian Sommerville,et al.  Targetted Improvements Focusing improvement to maximize benefits and minimize impact , 2007 .

[57]  Frederick P. Brooks,et al.  No Silver Bullet: Essence and Accidents of Software Engineering , 1987 .

[58]  Paul Lukowicz,et al.  Experimental evaluation in computer science: A quantitative study , 1995, J. Syst. Softw..

[59]  A. R. Ilersic,et al.  Research methods in social relations , 1961 .

[60]  Meir M. Lehman Programs, life cycles, and laws of software evolution , 1980 .

[61]  Rory O'Connor,et al.  Strategies for personal process improvement a comparison , 2002, SAC '02.

[62]  Mark C. Paulk,et al.  Capability Maturity Model , 1991 .

[63]  B. I. Blum,et al.  Characterizing the software process , 1994 .

[64]  Rene R Klosch,et al.  Reverse Engineering: Why and How to Reverse Engineer Software , 1996 .

[65]  Philip Johnson You can’t even ask them to push a button: Toward ubiquitous, developer-centric, empirical software engineering , 2001 .

[66]  Fred P. Brooks,et al.  The Mythical Man-Month , 1975, Reliable Software.

[67]  W.S. Humphrey,et al.  The personal process in software engineering , 1994, Proceedings of the Third International Conference on the Software Process. Applying the Software Process.

[68]  Robert L. Glass Searching for the holy grail of software engineering , 2002, CACM.

[69]  Ian Warren,et al.  The Renaissance of Legacy Systems , 1999, Practitioner Series.

[70]  Ian Sommerville,et al.  Reflection: Improving Research through Knowledge Transfer , 2006, 2006 International Conference on Software Engineering Advances (ICSEA'06).

[71]  Robert L. Glass,et al.  The software-research crisis , 1994, IEEE Software.

[72]  M.M. Lehman,et al.  Programs, life cycles, and laws of software evolution , 1980, Proceedings of the IEEE.

[73]  H. Zimmermann,et al.  OSI Reference Model - The ISO Model of Architecture for Open Systems Interconnection , 1980, IEEE Transactions on Communications.

[74]  D. Ross Jeffery,et al.  Has twenty-five years of empirical software engineering made a difference? , 2002, Ninth Asia-Pacific Software Engineering Conference, 2002..

[75]  Venkataraman Ramesh,et al.  Research in software engineering: an analysis of the literature , 2002, Inf. Softw. Technol..

[76]  M. Patton Qualitative evaluation and research methods, 2nd ed. , 1990 .

[77]  Ian Sommerville,et al.  Research Documentation Guidelines - Capturing knowledge, improving research , 2007, Fourth International Conference on Information Technology (ITNG'07).

[78]  Michael Hammer,et al.  Reengineering Work: Don’t Automate, Obliterate , 1990 .

[79]  B. Kitchenham,et al.  Case Studies for Method and Tool Evaluation , 1995, IEEE Softw..

[80]  Leon J. Osterweil,et al.  Software processes are software too , 1987, ISPW.