Sheffield Software Engineering Observatory

Last updated

The Sheffield Software Engineering Observatory (Observatory) was founded in 2005 by an EPSRC grant at the University of Sheffield. The Observatory is a multi-disciplinary collaboration between the Department of Computer Science and the Institute of Work Psychology at the University of Sheffield.

Contents

Overview

Its aim is to understand the processes that makes for good software engineering practice, and how are these needs to combine human and technical factors.

The Software Engineering Observatory is an empirical software engineering research facility where researchers can use a variety of methodologies to study software developers working on real industrial projects. The software developers are students, both undergraduate and postgraduate and up to 20 group projects were undertaken each year. Thus, researchers can investigate how software developers work in teams, deal with industrial clients and handle the plethora of problems that arise in group projects with tight time-scales. A key feature is that the Observatory allows multiple teams to work on identical projects concurrently in competition with each other, which allows comparisons to be made of different software development processes. The Observatory enables researchers to gather data that are relevant to many of the key issues in contemporary software engineering, which will be of interest to both academics and practitioners. The implications of the results so far are that effective software managers must not just understand the technical aspects of the work that their staff are doing, but must also understand their staff as individuals and how they can best work together in teams.

Research areas

The Observatory’s research agenda includes:

  1. Assessing, through controlled experiments, the relative merits of software development methods and methodologies in terms of both the quality of output and the well-being of the developers.
  2. Devising empirically-based models of the processes that developers are observed to use
  3. Identifying the factors that make for good team-based software development, including leadership, the personality, skill, gender and ethnic mix of teams, and how task conflict can contribute, constructively, to enhanced performance.
  4. Investigating the relative importance of (a) the methodology adopted by the team and degree of fidelity to it, (b) the individual’s participant’s motivation and knowledge, and (c) team processes in accounting for variability in the performance of the group.

The data from these experiments will be made available to bona-fide researchers in empirical software engineering.

History

The Observatory was founded in 2005, however prior to that a number of PhD students designed experiments and collected data on the software engineering process.[ citation needed ] These were all based on the pioneering taught courses devised at the University of Sheffield

DateEvent
1985The department of computer science at the University of Sheffield starts to focus resources on industrially orientated opportunities. [1]
1985The "Software Hut" project was initially introduced after reforms inspired by the then head of department Doug Lewin. In the first few years the projects were sourced in the department and the course having a more theoretical perspective than now, with later reforms seeking external clients.
1988Maxi project established for the MSc program by Stan Price. This project was from the start led by a non-academic manager. As with the Software Hut the students work in teams to deliver a solution to an external client. [2] [3]
1998The main project parts of the crossover project are introduced into two modules as part of the new Software Engineering degree programme. [4]
1991The first year Crossover project was established in its current form by Mike Holcombe. It was formed originally by combining elements from two other modules, though the modern form may not have been settled upon until 1993. [4] This internal project teaches theory of software development alongside a practical project. It follows the form of a handover project. [5]
1994 (est)Peter Croll established the Software Hut in its current form with external clients, and a focus on learning through practice. Software Hut is run in the first semester of level 2 for 12 weeks. Marks are allocated 60% on the project and 40% on an exam.

The project was envisaged as student numbers began to grow in computer science departments, such that it became difficult to find enough industrial placements or projects for individual students. This led to the idea of a group of students working with a single client and later to several groups competing to produce a solution. At this time it appears that a single client was sought to work with all the teams. It follows principles of having a competitive development environment that were previously discussed in the 1970s but without the handover requirement. [6]

1995Crossover project reorganized to fill a full half module. [4]
1996Andy Stratton works as a project officer on an FDTL grant to develop the Software Hut, and latter found the 4th year Genesys project.
1996 SeptemberFirst group of undergraduate students reach the fourth year (the Software Engineering MEng having had its first intake three years previously in 1993), they were supposed to follow a module similar to the maxi project but this never actually occurred. [4]
1997Software Hut. The project experiences significant requirements creep, and only 2 of 12 teams deliver working software. It was probably our largest ever failure to deliver.
1997 SeptemberGenesys founded as VICI. Genesys ran during the second year of the MEng with 6 students: Daniel Khan, Grant Bardsley, Daniel East, Paul Todd, Simon Cadd and Adam Howitt. The module was original called "Setting up and running your own IT Company".

Initially there were actually three companies Training, Development, and Consultancy. Where each student at some point played the role of chairman and finance director. In later years this structure was dropped to form a single company consisting of several development teams. [7] [8]

1998Software Hut revised.

Software Hut is run in the second semester of level 2 for 12 weeks. This makes it harder to recruit clients [1] who previously had been found three months before the start of the project, now Christmas gets in the way giving only 5 weeks lead time before the start of the project.

In this year there were for the first time several clients working with the teams. Typically three clients would be found in each year, with 3-6 teams working with each client. This became essential as the number of students grew on the course.

Following the previous years failures all the teams are expected to deliver a requirements document in week 6. This remained a component of the project until 2007.

Students had the option of 100% mark for the project work, or 40% exam 60% project.

1998Helen Parker works as project officer until 2000, taking over from Andy Stratton.
1998 SeptemberGenesys named by two MSc students who completed projects over the summer period. One student was Paul Lyons, the other Tariq Hussain. Both produced dissertations entitled "Genesys Solutions: A Quality-Oriented Software Development and Consultancy Company"
1999Software Hut revised.

Marks were now allocated 100% for the project for all students. [9]

[10]

2001Initial work begins to build the proposal for the Observatory.
2001Genesys.

In this year there were for the first time non-development teams. These were “Research and Development” and “Systems admin”. Until this year these roles had been performed by members of the development teams in an ad hoc manner. The system admin role remains in Genesys but the R&D role was later dropped.

2002Student numbers begin to decline on Computer Science courses nationally. This has an effect on the number of teams (which peaked at 18 in 1998) which begin to decline significantly.
2003Genesys awarded IBM Eclipse (software) innovation grant. This IBM sponsored initiative led to the formation of an “Eclipse Team” which developed Eclipse plugins to support the company.
2003 MarchInstitute of Work Psychology at the University of Sheffield are invited to participate in the research into software engineering.
2004 MarchGenesys awarded IBM Eclipse (software) innovation grant. This IBM sponsored initiative led to the formation of an “Eclipse Team” which developed Eclipse plugins to support the company.
2004 AugustFrancisco Macias completes his PhD with M. Holcombe. “Empirical Assessment of Extreme Programming” [11]
2004 SeptemberA marketing team is established in Genesys.
2005Stephen Wood joins the Observatory team, working in the Institute of Work Psychology at the University of Sheffield.
2005 MarchGenesys awarded second IBM Eclipse (software) innovation grant. The grant was used to employ Bhavnidhi Kalra as a project manager for 6 months.
2005 AprilSharifah Syed-Abdullah completes her PhD with M Holcombe: “Empirical Study on Extreme Programming”. [12]
2005 September EPSRC Grant awarded: £500K over three years to carry out research in the Observatory.
2005 SeptemberGenesys.

The research and development team was dropped and an “Enterprise Team” formed to try to build generic applications for resale. The students did not find this motivating and the team only existed in this year.

2006 MarchGeorge Michaelides, John Karn and Chris Thomson appointed as RAs.
2006 JulyJohn Karn completes his PhD working with Tony Cowling: “Empirical Software Engineering: Developing Behaviour and Preferences”. [13]
2006 SeptemberGenesys, with no Eclipse (software) grant this year, the “Eclipse” team is dropped.
2006 OctoberJoint EPSRC-ESRC trial studentship awarded, to fund a new UK PhD student over three years in the Observatory.
2006 NovemberPhil McMinn appointed as lecturer in Enterprise computing, joins the Observatory staff in teaching Genesys. Steven Murphy appointed as Genesys business manager, to grow Genesys into a larger company.
2007In this year the smallest group passed through Software Hut, there were 9 teams, and 40 students overall.

For the first time in 10 years, with the XP process in use the students are not required to submit a requirements document.

2007 FebruaryChris Thomson completes his PhD with Mike Holcombe: “Defining and Describing Change Events in Software Development Projects”. [14]
2007 SeptemberLiang Huang completes a Masters Thesis with Mike Holcombe:"Analysis and quantification of test first programming". [15]
2007 OctoberepiGenesys is registered as a limited company and spun out of the University. Students projects continue in Genesys which mostly takes projects under outsourcing agreements via epiGenesys. Steve Murphy is transferred to the company and Chris Murray is also employed. Future research may involve tapping into the data created by software development at epiGenesys as the University of Sheffield is the sole shareholder.
2007 OctoberAndrea Corbett née Smith is appointed as the EPSRC-ESRC PhD student, Mike Holcombe and Stephen Wood are join supervisors.
2008 MaySteve Murphy leaves epiGenesys.
2009 MayChris Murray is appointed Managing Director of epiGenesys. The company continues to offer bespoke software development and now specialises in the delivery of information systems for the medical and health research sectors, but retains a passion for enterprise education through which it enhances the learning experience of more than 250 students each year.

Related Research Articles

Software engineering is the systematic application of engineering approaches to the development of software. Software engineering is a direct sub-field of engineering and has an overlap with computer science and management science. It is also considered a part of overall systems engineering.

Fu Foundation School of Engineering and Applied Science Private school in US

The Fu Foundation School of Engineering and Applied Science is the engineering and applied science school of Columbia University. It was founded as the School of Mines in 1863 and then the School of Mines, Engineering and Chemistry before becoming the School of Engineering and Applied Science. On October 1, 1997, the school was renamed in honor of Chinese businessman Z.Y. Fu, who had donated $26 million to the school.

A Master of Engineering is either an academic or professional master's degree in the field of engineering.

The School of Engineering and Applied Science (SEAS) at the George Washington University in Washington, D.C. is a technical school which specializes in engineering, technology, communications, and transportation. The school is located on the main campus of the George Washington University and offers both undergraduate and graduate programs.

Foundation University Islamabad university

The Foundation University Islamabad (FUI), is a private university located in Islamabad, Pakistan. It has two campuses; Islamabad & Rawalpindi.

Donald Bren School of Information and Computer Sciences

The Donald Bren School of Information and Computer Sciences, also known colloquially as UCI's School of ICS or simply the Bren School, is an academic unit of University of California, Irvine (UCI), and the only dedicated school of computer science in the University of California system. Consisting of nearly three thousand students, faculty, and staff, the school maintains three buildings in the South-East section of UCI's undergraduate campus, and maintains student body and research affiliations throughout UCI.

Johannes Aldert "Jan" Bergstra is a Dutch computer scientist. His work has focussed on logic and the theoretical foundations of software engineering, especially on formal methods for system design. He is best known as an expert on algebraic methods for the specification of data and computational processes in general.

The Stream X-machine (SXM) is a model of computation introduced by Gilbert Laycock in his 1993 PhD thesis, The Theory and Practice of Specification Based Software Testing. Based on Samuel Eilenberg's X-machine, an extended finite state machine for processing data of the type X, the Stream X-Machine is a kind of X-machine for processing a memory data type Mem with associated input and output streams In* and Out*, that is, where X = Out* × Mem × In*. The transitions of a Stream X-Machine are labelled by functions of the form φ: Mem × InOut × Mem, that is, which compute an output value and update the memory, from the current memory and an input value.

Elaine Jessica Weyuker is an ACM Fellow, an IEEE Fellow, and an AT&T Fellow at Bell Labs for research in software metrics and testing as well as elected to the National Academy of Engineering. She is the author of over 130 papers in journals and refereed conference proceedings.

Punjab University College of Information Technology (PUCIT) is a college of computer science and information technology at the University of the Punjab located in Lahore, Pakistan. The college is located on the university's Allama Iqbal Campus in Bahawalpur Block near old Anarkali and PUCIT Quaid-i-Azam Campus is located on Syed Kabeer Ali Shah road, Canal Bank, Lahore. PUCIT is one of the top institutes of computer learning with its degree being awarded 'w' category (Highest) by Higher Education Commission of Pakistan.

Victor R. Basili, is an emeritus professor at the Department of Computer Science, which is part of the University of Maryland College of Computer, Mathematical, and Natural Sciences, and the Institute for Advanced Computer Studies. He holds a Ph.D. in computer science from the University of Texas at Austin and two honorary degrees. He is a fellow of both the Association for Computing Machinery (ACM) and of the Institute of Electrical and Electronic Engineers (IEEE).

Volgenau School of Engineering

The Volgenau School of Engineering is located in the Fairfax campus of George Mason University in the Commonwealth of Virginia. The Volgenau School offers programs at the B.S., M.S., and Ph.D. levels.

Carlo Ghezzi is a professor and chair of software engineering at the Politecnico di Milano, Italy and an adjunct professor at the Università della Svizzera italiana (USI), Switzerland. At the Politecnico, he is the Rector's Delegate for research; he has been department chair, head of the PhD program, member of the academic senate and of the board of governors of Politecnico.

Khoury College of Computer Sciences

The Khoury College of Computer Sciences is one of the nine colleges of Northeastern University in Boston, Massachusetts. It specializes in computer science, data science and cybersecurity. Prior to December 16, 2018, Khoury College was known as the College of Computer and Information Science.

Juan Pavón Spanish computer scientist (b.1962)

Juan Pavón is a Spanish computer scientist, full professor of the Complutense University of Madrid (UCM). He is a pioneer researcher in the field of Software Agents, co-creator of the FIPA MESSAGE and INGENIAS methodologies, and founder and director of the research group GRASIA: GRoup of Agent-based, Social and Interdisciplinary Applications at UCM. He is known for his work in the field of Artificial Intelligence, specifically in agent-oriented software engineering.

Arthur Harry Maria ter Hofstede is a Dutch computer scientist, and Professor of Information Systems at the Queensland University of Technology in Australia, and Professor at the Eindhoven University of Technology, known for his work in Workflow patterns, YAWL and Business process management.

Jan Verelst is a Belgian computer scientist, Professor and Dean of the Department of Management Information Systems at the University of Antwerp, and Professor at the Antwerp Management School, known for his work on Normalized Systems.

Christopher (Chris) Verhoef is a Dutch computer scientist, and Professor of Computer Science at the Vrije Universiteit in Amsterdam.

Naomi Sager is an American computational linguistics research scientist. She is a former research professor at New York University, now retired. She is a pioneer in the development of natural language processing for computers.

Tore Dybå is a Norwegian scientist and software engineer in the fields of information systems and computer science. He has been a Chief Scientist at SINTEF ICT since 2003.

References

  1. 1 2 Holcombe, M., Stratton, A., Fincher, S., Griffiths, G., (eds) “Projects in the computing curriculum”, Proceedings of the Project98 workshop, Sheffield, 1998, Springer.
  2. Holcombe, W.M.L and H.H. Lafferty (1992), “Using Computer Professionals for Managing Student Software Projects,” In Proceedings of Developments in the Teaching of Computer Science, April 1992, University of Kent at Canterbury, United Kingdom, pp. 223–229.
  3. Price, S. (1998), “The Sheffield University Maxi Project: The Industrial Project Manager’s Perspective,” In Projects in the Computing Curriculum, W.M.L. Holcombe, A.F. Stratton, S.A. Fincher and G. Griffiths, Eds., Springer Verlag, London, United Kingdom, pp. 184–195.
  4. 1 2 3 4 Cowling, A. J. 1999. The first decade of an undergraduate degree programme in software engineering. Ann. Softw. Eng. 6, 1-4 (Apr. 1999), 61-90.
  5. Fincher, S., Petre, M., Clark, M., “Computer science project work: Principles and Pragmatics”, chapter 1.4, 2001, Springer. (The handover project is confusingly named "Software Hut")
  6. J.J. Horning, D.B. Wortman, "Software Hut: A Computer Program Engineering Project in the Form of a Game," IEEE Transactions on Software Engineering, vol. 3, no. 4, pp. 325-330, Jul/Aug, 1977
  7. Holcombe, W.M.L and A.F. Stratton (1998), “VICI: Experiences in Introducing Student Run Software Companies into the Curriculum,” In Projects in the Computing Curriculum, W.M.L. Holcombe, A.F. Stratton, S.A. Fincher and G. Griffiths, Eds., Springer Verlag, London, United Kingdom, pp. 103–116.
  8. Fincher, S., Petre, M., Clark, M., “Computer science project work: Principles and Pragmatics”, chapter 3.3, 2001, Springer.
  9. Parker, H. and Holcombe, M. (1999). Campus-based industrial software projects: risks and rewards. SIGCSE Bull., 31(3).
  10. Parker, H.E.D., Holcombe, W.M.L. “Keeping our clients happy: myths and management issues in ‘client led; student software projects”, computer science education, 9 (3), pp 230-241, 1999.
  11. Macias, F. (2004). Empirical Assessment of Extreme Programming. PhD thesis, University of Sheffield.
  12. Syed-Abdullah, S. (2005). Empirical Study on Extreme Programming. PhD thesis, University of Sheffield.
  13. Karn, J. S. (2006). Empirical Software Engineering: Developer Behavior and Preferences. PhD thesis, University of Sheffield.
  14. Thomson, C. D. (2007). Defining and Describing Change Events in Software Development Projects. PhD thesis, Department of Computer Science, University of Sheffield.
  15. Huang, L. (2007). Analysis and quantification of test first programming. Masters thesis, University of Sheffield.