An industry/university collaboration to upgrade software engineering knowledge and skills in industry
Introduction
When Boeing Australia Limited (BAL) moved its corporate headquarters to Brisbane in 1998, Boeing management made it clear to the local universities that they were keen to establish collaborative partnerships. At the beginning of 2000, BAL asked the University of Queensland for assistance to create an in-house course that provided an overview of software engineering. At this time, BAL was revising its Software Process Manual and introducing an intranet facility known as EngNET, which provides uniform access to information for engineering staff. BAL wanted all technical staff to have a common base of knowledge about software engineering and its corporate best practice. Because the course was intended to be broad in scope, it was given the title “Software Engineering Fundamentals”.
BAL is a wholly owned subsidiary of the Boeing Company, and specialises in the design, installation and support of defence systems, and the development and application of complex systems support and communications solutions for commercial markets. The Boeing Company has been involved in Australian aircraft and defence businesses for more than 60 years. BAL conducts operations at 13 locations throughout Australia and employs more than 1400 Australians. Like most enterprises, BAL recognises the strategic importance of software to its business, and it is keen to identify ways to enhance the skills of its staff.
BAL's Central Engineering department maintains overall control of all engineering activities across the company. As well as providing technical advice for all BAL projects, Central Engineering is responsible for maintaining all engineering processes and providing an interface to external organisations such as the Australian Department of Defence, universities and the Boeing Company's research organisation. The department is also responsible for all aspects of technical staff development, from engineering fundamentals training to the management of Technical Excellence programs.
The University of Queensland established its Bachelor of Engineering (Software) program in 1997 and produced its first graduates in December 2000. It is one of four engineering majors offered by the School of information Technology and Electrical Engineering. The B.E. (Software) received full accreditation from the Institution of Engineers, Australia (I.E. Aust) in 2002.
The course described in this paper is not related to the undergraduate software engineering program offered by the University. Rather, this in-house course is an overview of software engineering designed to establish a common core of knowledge in BAL's technical staff. No academic credit is available for the course because it is introductory and broad in coverage.
The remainder of the paper is organised as follows: Section 2 describes the aims and expected outcomes of the course and Section 3 explains the way in which the course was developed. The content and structure of the course are presented in Section 4, while Section 5 discusses how the course is delivered. Section 6 explains the feedback mechanisms that have been used to gather information from the course participants, the types of feedback received and how this feedback has been used to improve the course. Section 7 discusses related work on collaborations between industry and universities to improve software engineering education and training.
Section snippets
Course aims and expected outcomes
The aims of the Software Engineering Fundamentals course are introduced in the first session of the course, and they are to:
- •
Provide a working understanding of Software Engineering principles.
- •
Introduce all software engineers to accepted software engineering practice within BAL.
- •
Demonstrate the role of the BAL Software Process Manual and EngNET in supporting software engineering at BAL.
We stress that this course is only introductory and that it is not meant to produce experts in any of the areas
Development history
When the software engineering fundamentals course was originally proposed by BAL's technical director early in 2000, BAL already had a successful in-house systems engineering course. An objective was to duplicate the success of that course in the software engineering domain. The intention was that all technical staff would take both courses.
The first author spent several months part-time during his sabbatical in the middle of 2000 at BAL helping to prepare the course, working with Central
Course content and structure
The structure of the course has changed since it was first delivered in September 2000. In this section, we describe the latest version of the course, and in Section 6 we discuss some of the changes that we have made.
Course delivery
To ensure that both the theoretical and practical viewpoints of software engineering are covered, the course is presented by a combination of BAL staff and University academics. Just as guest lecturers from industry can have high credibility for students at university, so academics can add credibility to in-house courses taught within industry. The BAL presenters are able to share experiences from recent and current projects, and several sessions are specifically designed for this purpose. In
Course evaluation
Evaluation provides feedback from course participants that can be used to improve course content and presentation techniques. Many methods of evaluation exist. For the Software Engineering Fundamentals course, we have primarily used written questionnaires. We use a specific questionnaire for each day of the course so we can gather information about individual sessions, as well as an end-of-course questionnaire to gather overall impressions. We also discuss long-term evaluation of the course.
Related work
During the past 15 years, there has been a growing realisation worldwide that universities and industry can both benefit from closer relationships. In the US, the Working Group–Software Engineering Education and Training1 has an active Industry/University (I/U) subgroup investigating collaborations between industry and academic institutions, in which non-software professionals and practitioners without formal software engineering
Conclusions and future work
The BAL software engineering fundamentals course is an introductory course designed for the wide range of participants' backgrounds. The course has been developed and is presented as an on-going collaboration between BAL and the University of Queensland. The work presented in this paper differs from most other published industry/university collaborations on software engineering education, in that this course is an orientation course that is intended to provide staff from a variety of areas with
Acknowledgements
The authors would like to thank Fiona Dobson, Ramayya Darbhamulla and all the other BAL staff who helped prepare and present parts of the course. We would also like to thank Roger Duke for his constructive comments on an earlier version of this paper.
An earlier version of this work was presented at the 2003 Conference on Software Engineering Education and Training (CSEE & T 03).
Dr. David Carrington is a Reader in the School of Information Technology and Electrical Engineering at the University of Queensland, Australia and is the Program Director of the Software Engineering program. He received a Ph.D. in Computer Science from the University of New South Wales. He has a broad range of research interests in the areas of software development, user interfaces and processes, including techniques and tools for formal specification, refinement techniques, design methods,
References (6)
- Abran, A., et al. (Eds.), 2001. Guide to the Software Engineering Body of Knowledge: Trial Version. IEEE Computer...
- et al.
IEEE Software
(1996) - et al.
Computer Science Education
(2002)
Cited by (14)
Information technology asymmetry and gaps between higher education institutions and industry
2020, Journal of Information Technology Education: ResearchA decision analytic-value-based methodology for analysing university-industry collaborations
2014, International Journal of Applied Decision SciencesCritical measures of success for a software project
2013, Tehnicki VjesnikFitting the needs of an industry: An examination of games design, development, and art courses in the UK
2012, ACM Transactions on Computing EducationExploration and practice of constructing creative engineering laboratory on software development
2012, ICCSE 2012 - Proceedings of 2012 7th International Conference on Computer Science and Education
Dr. David Carrington is a Reader in the School of Information Technology and Electrical Engineering at the University of Queensland, Australia and is the Program Director of the Software Engineering program. He received a Ph.D. in Computer Science from the University of New South Wales. He has a broad range of research interests in the areas of software development, user interfaces and processes, including techniques and tools for formal specification, refinement techniques, design methods, programming environments and specification-based testing methods and tools. He was a Visiting Scientist at the Software Engineering Institute at Carnegie Mellon University in Pittsburgh in 2000/2001 and worked with the TSP team on educational courses for the Personal Software Process and the Team Software Process. He was a Boeing Company A.D. Welliver Fellow in 2001, visiting groups within Boeing with the goal to learning how Boeing handles the challenge of software process improvement. He was the Knowledge Area Specialist for the Software Engineering Body of Knowledge Project (SWEBOK) in the area of software engineering infrastructure (tools and methods).
Dr. Paul Strooper is a Reader in the School of Information Technology and Electrical Engineering at The University of Queensland, Australia. He received the B.Math and M.Math degrees in Computer Science in 1986 and 1988 from the University of Waterloo, and the Ph.D. degree in Computer Science in 1990 from the University of Victoria. His research interests include software engineering, especially software specification, verification, and testing, and logic programming, especially program transformation and refinement. He has had substantial interaction with industry through collaborative research projects, training and consultation in the area of software verification and validation. He was one of the Program Co-chairs for the 2002 Asia–Pacific Software Engineering Conference and is the Program Chair for the 2004 Australian Software Engineering Conference.
Sharron Newby is currently employed with Boeing Australia. She is a professional trainer and as part of the Central Engineering group at Boeing Australia has been the driving force behind the development of training associated with systems engineering, software engineering and configuration management. She is professionally qualified in training from the Royal Australian Air Force, and Technical and Further Education courses since joining Boeing Australia. Her current research interest is in the area of creativity and she has developed internal training courses to complement this work.
Dr. Terry Stevenson is currently the Chief Technology Officer of Raytheon Australia, prior to this he was the Technical Director of Boeing Australia. He has been engaged in system design and process improvement associated with complex defence systems in his last two appointments. He is now focusing on the design and realisation of complex systems and through experience has come to realise that the training and behaviour of the design teams is a significant factor in project success. He has a Ph.D. in Engineering and an M.B.A. focusing on leadership and strategy. His current research is in the area of complex systems and capability development. He was the Technical Chairman of the IEEE Globecom'98 Conference in Sydney, Australia and is on the advisory board of a number of universities and is an Adjunct Professor at the University of Queensland and the Queensland University of Technology.