University of Mauritius
University of Mauritius
University of Mauritius
FACULTY OF ENGINEERING
MAY 2015
INSTRUCTIONS TO CANDIDATES
SECTION A
Question 1- (COMPULSORY)- [Total 40 Marks]
CASE STUDY
Snowden Technologies is a division of the Snowden Group that provides global
consultancy services and software solutions to the mining industry, and has a
development capacity of over thirty developers located in Perth (head office),
Brisbane and Johannesburg. The reliance on delivering quality software solutions to
its clients has continued to increase over recent years to the point that being able to
rapidly respond to the needs and unique/specific requirements of clients is a critical
success factor to the business.
The driving force to initiate and implement the new agile techniques originated from
expansion of Snowden’s development capacity which presented the necessity for a
clearer defined and (multi) team oriented approach to its software development
activities. Key areas identified by Snowden developers and managers that were
targeted as part of this approach were:
The need to address these key software development areas were being compounded
by the ongoing growth of the team (in a time of very competitive recruitment) and
the need to improve the Project Management process. Four separate improvement
projects had been identified by the business as focus areas, one of which was the
Agile Project (the other three were Project Management (PRINCE 2), SPI (the
Snowden Project Index reporting tool), and Team Foundation Server (TFS)). The
intention was that the Agile Project would be able to address the majority of the
identified key areas by selecting and tailoring the techniques from a range of
industry proven agile methodologies. The techniques would define the "Snowden
Technologies Agile" methodology, herein referred to as STAg.
The starting point was a brainstorming session (based on the typical Cause-Effect
diagram technique) conducted with all developers to examine the causes behind the
identified problems. As a facilitated brainstorming session, all participants
contributed their ideas, of which, 99 tentative causes were identified in the session.
The "top 10" causes were then examined in more detail in terms of the impact,
influence, cost, effort and duration. From this, a prioritised list of the "top 10" was
determined and the higher priority items became the basis of the selection of the
agile techniques (from the likes of eXtreme Programming (XP), Scrum, FDD, Crystal,
DSDM and even RAD/JAD). Project teams were formed for all four improvement
projects, with the Agile and TFS project teams merging within the first month due to
the overlap of process and tool. There was a total of four staff involved in the Agile
Project (one lead ~50% to 80% of his time, and 3 "consulting" staff, one being an
Page 1 of 5
SOFTWARE PROJECT MANAGEMENT – CSE6209
external agile consultant). Consistency of concepts and terminology between the
Agile Project and the Project Management/PRINCE 2 project was deemed important
to ensure a clear message was communicated to all. As such, close and regular
communication between the projects (with two individuals common to both) was
ensured. As a result, the Agile Project used the PM/PRINCE 2 concept and
terminology for "Stages" (Releases from XP) and “Work Packages” (Iterations from
XP).
Following the Agile principle of "satisfy the customer through early and continuous
delivery" (plus wanting to avoid any "big bang") the definition, templating and
training of techniques were undertaken as (2-4 week) Work Packages (Iterations),
with introduction of these techniques primarily undertaken through pilot projects.
This was the vehicle to trial the selected techniques and mentor the handful of
developers and team leads involved, who eventually would become "seeds" of this
knowledge in the next project they worked on. Some techniques (such as code
inspection) were rolled out across all active developments using in-house
workshops, where the immediate benefits were more obvious. Several in-house
training sessions were also conducted to provide the developers with overviews of
the "Best of Agile" techniques (including a customised version for Snowden’s other
development offices), plus an overview of automated build and test processes that
formed part of the second stage of STAg.
Following the agile principle of "business people and developer must work
together", working groups of 3-5 employees were used for various techniques to
ensure that a suitable cross-section of inputs and ideas were brought together. There
were working groups for the Code Inspection, Coding Standards and Estimation.
Reflection workshops, on a monthly basis, with global feedback from all developers
sought via the weekly Tec meeting with the Agile Project as an agenda item, and also
through direct communications with the Agile Project team members. These
feedback mechanisms were the start of establishing a continuous improvement
philosophy.
Page 3 of 5
SOFTWARE PROJECT MANAGEMENT – CSE6209
SECTION B
(b) Assume that you have been appointed as software project manager for the
development of an eHealth system. The project has reached the elaboration
phase.
(i) Suggest the quantitative approaches you may use in tracking schedule
for this project.
[5x2 Marks]
(a) ‘Test Early, Test Often’… This statement is often used in integrated testing.
Discuss two strategies that team members may adopt, in order to support this
statement.
[2x2 Marks]
(b) It is often argued that testing exposes risks to product release or acceptance.
What are the possible solutions to improve testing practices in software
development?
[3x2 Marks]
(c) Discuss the elements that should be included in a contract close-out. Suggest
reasons how these elements may help the software development company.
[3x2 Marks + 4 Marks]
Page 4 of 5
SOFTWARE PROJECT MANAGEMENT – CSE6209
(a) Complete the table below by suggesting risk avoidance and risk transfer
strategies, as well as risk controls, for the two risks stated below.
(b) System Building is the act of scripting or automating a wide variety of tasks
that software developers do in their day-to-day activities. Discuss four
advantages of system building.
[4x2 Marks]
(b) Two software projects very similar in scope were executed by the same
project team for the same users. The first project used a Waterfall
methodology and resulted in missed deadlines and failure to deliver user
requirements. The second used an Agile methodology, and while there were
initial problems with the learning curve, the project was a resounding success.
Discuss the possible benefits of harnessing Agile Project Management over
Traditional Project Management for second project.
[5x2 Marks]
sg/
Page 5 of 5