Providing RUP Implementation Support for the
Qualifications and Curriculum Authority
May 2005 – March 2006
Background
The Qualifications and Curriculum Authority (QCA) is a non-departmental public body, sponsored by the Department for Education and Skills (DfES), and has a pivotal role in helping the UK become the most dynamic knowledge-based economy in the world. Its primary functions are to maintain and develop the national curriculum and associated assessments, tests and examinations, and to accredit and monitor qualifications in schools and colleges and at work.
In 2005, QCA’s E-Business Group (EBG) which is responsible for information, IS and IT, recognised that a challenge existed to improve the development and delivery of software applications in order to better meet budgets and deadlines. A high level and pace of demand coupled with limited development resources had resulted in detrimental shortcuts being taken, leading to inconsistencies and shortfalls in documentation, insufficient rigour in requirements capture and design, and hence inevitable ongoing minor changes and high maintenance burdens.
As a result, the decision was taken to turn software production into a corporately driven and professionally run service, based on a move to an iterative, agile development approach. EBG looked at a number of agile methods, rejecting XP and Scrum as too agile for an organisation where software development is not a core activity, and selecting RUP (Rational Unified Process) as the best fit.
Objectives
The key starting point was to set out a strategic vision for Information Systems, including a review of legacy applications, and to ensure that all future development requests would be in line with this. A number of key principles were defined, including:
- All software development to be entirely funded from business programmes.
- A clear process to be put in place to support this.
- The level of agility to be appropriate for QCA’s needs.
Other major considerations were to help to educate key business users, to improve team working between analysts and developers in order to avoid details being “lost between the gaps”. The overall aims were to obtain quicker systems delivery, to gain feedback early and regularly on progress and obstacles, and to create a development environment with the ability to accept change more readily.
Approach
It was decided to seek support from an external consultancy organisation specialising in process adaptation and implementation. A number of potential partners were invited to bid, and Liemur was selected for showing particular strength in the following areas:
- A sound pedagogical approach, which is very important to QCA as an organisation, coupled with a blended learning approach that would involve theory and practice, as well as mentoring support. This approach would also enable an appropriate degree of tailoring to meet the needs of QCA’s environment and its staff.
- The opportunity to learn using a live project, and thus not lose business time. The chosen live project was a relatively small application concerned with an element of QCA’s role in regulating awarding bodies and qualifications. In line with QCA’s system standards, the software was to be developed using .NET and C#.
It was recognised that, as a change programme, wider cultural and people issues would need to be addressed if the change were to be successful in the longer term. Thus, before launching the RUP adoption programme, some challenges had to be addressed:
- Senior IT management had to be thoroughly appraised of the critical importance of the need for a sound software development process before funding could be made available.
- Stakeholders associated with the chosen project needed to be made aware of the necessity of the approach, and encouraged to shift their mindset from the familiar waterfall approach to a radically new way of working.
- The early business analysis work needed to be revised from its traditional format into RUP-style documentation to enable the programme to happen.
Solution
Liemur’s initial intervention took the form of a RUP overview course in order to set the scene for all EBG team members who were to be involved in the programme. The RUP adoption programme proper ran a few months later and took the whole team through a complete process iteration. The programme started with a detailed project survey to identify the “must have” RUP capabilities and artefacts and to define and customise the specific iterative process elements to be used by QCA. It was recognised at an early stage that Use Cases were to be central to the new process. The remainder of the programme utilised Liemur’s unique Project Cycle Optimisation approach to deliver a series of workshops followed by on site mentoring to help to show staff how to apply the theory on a live project and to ensure a high percentage of knowledge retention and applicability. In addition, a secure 24/7 web-based Forum was set up by Liemur for QCA to encourage cooperation between team members to solve issues and problems, and to alert Liemur mentors to any needs for support. To ensure the maintenance of momentum, the approach included engaging with EBG management team up front and throughout the process.
Outcomes and Benefits
By utilising the Project Cycle Optimisation, Liemur was able to effectively combine consulting, training, mentoring and documentation support to provide a turnkey solution for QCA with the following benefits:
- As a result of the up-front assessment survey carried out with the EBG team, Liemur was able to successfully tailor the RUP adoption programme to the specific needs of the QCA software development environment. Nikki Greenway, QCA’s Information Systems Programme Leader commented “it was so understandable for staff that they were able to put it immediately into practice”.
- The programme defined the complete approach to “QCA” RUP including all artefacts and roles associated with each element of the new process.
The programme significantly improved the working relationship between the business analysts and the systems developers, with smoother handovers and ongoing regular communication. - EBG was able to immediately and successfully repeat the iterative process on its own with working software being delivered far more quickly than ever before. Business users reported back that they “were amazed to be able to get working software within just one month”.
A number of important lessons were also learned through the close working relationship that existed with Liemur during the programme:
- The necessity to fully define and assign roles, responsibilities and accountability before starting.
- The Project Manager’s role should always be the primary function of that position and not be combined with any technical role.
- Quality Assurance provision needs to be built into the process from start to finish to enable projects to run more smoothly.
- The quality of the early documentation e.g. the Vision document, hugely influences the ability to mobilise and move forward effectively.
- The business stakeholders should be engaged early on and be part of the core delivery team to ensure that the applications are delivered on time, within budget, to quality standards, and that meet the end-user’s expectations.
- Once the programme has been launched, it is vital to maintain momentum – keep the flywheel spinning.
- During the programme, the team should be augmented as required to ensure that any skills gaps are covered – leaving no holes.
The Future
For QCA’s E-Business Group, the RUP adoption programme was a key step on its journey to improve its efficiency and effectiveness. In recognition of the variability of demand, its current strategy is to do some development work in-house and augment this where necessary through partnering with an appropriate external RUP development supplier. Liemur has thus since been engaged to work with QCA to further develop the overall process so that it can be effectively used in the context of such a partnership model.
Liemur continues to be actively involved with QCA.
