01 Introduction
01 Introduction
5 Introduce Assignment
About me…
• Centre for Security Communications and
Network Research
• Research Interests:
• Learning Analytics, Cyber Security
Education and Technology-supported
learning
Expectations
o I start at the time I say I will
o Do not sit in the lecture theatre ignoring the presentations, activities
and doing your own work / browse Facebook on your laptop
o You are here to work
o If you do not attend the sessions, do not email just before the
coursework is due because you do not understand what you are
doing
o If your English is weak, you may want to seek help from the English
Unit
This Module
o Assessed in two parts
o Coursework – 70%
o Test – 30%
o Last year
o Average mark 42.61%
o Due to poor English and poor critical writing skills
o Lack of reading and using literature
o 20 people made to do it again
Software Project Management
o What do we mean by “Software Project Management”?
o First we need to explore what a project is
o Then to explore how Software affects the dynamics
Activity
Activity
B E
Activity
Activity
D
A Activity
C
Sequence
o We define an activity as a chunk of work
o Often the client will not really “know” what they want and so
requirements will evolve during the project
o AGILE!
Project Characteristics
o Non-routine
o Planned
o Aiming at a specific target
o Carried out for a customer
o Carried out by a temporary work group
o Involves several specialisms
o Made up of several different phases
o Constrained by time and resources
o Large and/or complex
Activity – Exercise 1
o Order the following as most likely to be a project
Item 1 2 3 4 5 6 7 8 9
Producing an edition of a newspaper
Putting a robot vehicle on Mars
Getting married
Research into HCI
Investigating user problem
2nd year programming module
Writing an operating system
Installing a new version of a word processor
Software
o How does “software” make a difference?
o Invisible – progress is not always immediate. Project
management therefore has to make the “invisible” visible.
o Complex – the more useful the software, the more complex it
gets
o Conformity – not everybody has the same expectations about
software. Individuals can be inconsistent – clients AND
developers!
o Flexible – software systems are particularly subject to change
o A client usually does not know what they want
Software Development
• Problem Definition (Identify & • Coding and debugging
define) • Unit testing
• Requirements Development • Integration testing
(what do people want?) • Integration
• Construction planning (how • System testing
are we going to build this?)
• Corrective maintenance
• Software architecture (high
level design)
• Detailed design
Software Development
• Problem Definition (Identify & • Coding and debugging
define) • Unit testing
• Requirements Development • Integration testing
(what do people want?)
Tendency
• Integration
is to spend too much
time on this….
• Construction planning
And not enough (how • System testing
time on the other
are we going to build this?)things
Depends on size of project •– Corrective maintenance
• Software architecture (high
expect between 30-80% of time
level design) So it affects the success of the
project
• Detailed design
When it goes wrong
Software Project Management
Activities
o Does not just mean the actual writing of software
o Could include the tailoring of open source or off-the-shelf software
o Feasibility study – is this worth doing?
o Sometimes a project in it’s own right
o Information gathered about the project
o Plan – how are we going to do it?
o If feasibility indicates that the project is viable, create an outline plan for
making it happen
o Project execution – now do it
o Contains design and implementation of sub-phases
o Design – make decisions about the form of what should be created
o Implementation to make it
International Standards
o Attempts to bring order to the chaos
o ISO/IEC/IEEE 16326:2009 (E) Systems and Software
Engineering – Life cycle processes – Project Management
o Specifies what should be in the project plan
Context
Methods
Plan
o List the actions you would carry out to get the information
o Create a guide and time how long it takes you
Iron Triangle
o A model for the traditional constraints of a project
o Considered as “iron” because you cannot change one without
affecting the others! (Dr Martin Barnes, 1969)
Time Cost
Scope
Scope Triangle
o “Iron” Triangle originally based on Waterfall methodologies
Estimated
https://www.atlassian.com/agile/agile-at-scale/agile-iron-triangle
Project Constraints
o Every project has the following constraints
o Scope (owned by client)
o Quality (owned by client)
o Cost (owned by the client and senior management)
o Time (owned by the client and senior management)
o Resources (owned by the client and senior management(
o Risk
o Some resources are fixed – others only variable in the long term
Scope
Quality
Time
Cost
Resource Availability
Formative feedback
o During these sessions
o If you do not use this opportunity you are likely to end up with a
lower mark
o You will get feedback on your writing during the final session