程序代写代做代考 database gui 17spm_L09

17spm_L09

Building a Team

SPM 2017 © Ron Poet Lecture 9 1

Introduction

Project Manager

� The project manager needs to do the following:

� Deciding what needs to be done.

o Liaise with customers.

o Negotiate contracts.

SPM 2017 © Ron Poet Lecture 9 2

o

o Select the process.

� Estimating costs

� Ensuring there are suitable people to undertake the project.

o Recruiting.

o Training

Project Manager (2)

� Defining responsibilities

� Scheduling

� Making arrangement for the work.

o Paperwork

SPM 2017 © Ron Poet Lecture 9 3

o

o Office space.

o Hardware and software

o Security clearances if necessary.

o May not change much between projects.

� Directing.

o Getting people to do what they have agreed to do.

Project Manager (3)

� Being a technical leader (in some cases)

� Reviewing and approving decisions

� Building moral and supporting staff

� Monitoring and controlling

SPM 2017 © Ron Poet Lecture 9 4

� Coordinating the work with other projects

� Reporting

Team Structure

� Creating software is a social activity and relationships between team
members are important.

� There are many different ways of structuring a team:

o Egoless

SPM 2017 © Ron Poet Lecture 9 5

o Hierarchy

o Chief programmer

o Offshoring

Egoless

� No one is in overall charge.

� Decisions are made by consensus

� Advantage

o Everyone has creative input

SPM 2017 © Ron Poet Lecture 9 6

o

o Suitable for projects with technical challenges

� Disadvantages

o Can result in endless talking and no decisions being made.

o In practice, team members are not equal.

Hierarchy

� Some people are in charge and tell others what to do.

� Can have sub-team leaders.

� Advantages

o Someone has responsibility to keep the project moving

SPM 2017 © Ron Poet Lecture 9 7

o

o Recognises experience, not all suggestions are equal.

� Disadvantages

o Stifles communication between peers

o Low level members just focus on their own part of the project and
things can be missed.

Chief Programmer

� One person creates most of the code.

� Other team members assist with testing, documenting etc.

� Advantages

o Makes best use of team members skills.

SPM 2017 © Ron Poet Lecture 9 8

o

� Disadvantages

o The best programmer may not be the best manager.

o Difficult for career progression.

Offshoring

� Part of the development work takes place in another country.

� Some parts such as management, testing remain close to base.

� Advantages

o Lower wages for equivalent skills.

SPM 2017 © Ron Poet Lecture 9 9

o

� Disadvantages

o No informal contacts

o Different expectations of the job

o Difficult to resolve problems

Team Building in Practice

� No mater what team structure is adopted, people will consult with
others to get the job done.

� Some members will be committed to the project and do more than
expected.

� Others will do the minimum they can get away with.

SPM 2017 © Ron Poet Lecture 9 10

� Others will do the minimum they can get away with.

� Some pairs of people won’t get on with each other.

� The team leader needs to deal with all these issues, while keeping track
of what is happening behind the scenes.

The Best Team Size

� Teams are generally divided into sub-teams.

� There is a minimum amount of time needed to achieve a sub-task.

o Allocating twice as many people will not halve the development
time.

SPM 2017 © Ron Poet Lecture 9 11

o Also “Adding more people to a late project makes it even later.”
Fred Brooks. Known as Brook’s Law.

� The number of people overall will change over time as activities
change from requirements gather to design, development, preparing for
deployment and product support.

Team Size (2)

� A team is too large if:

o There are not enough different tasks for team members to take
responsibility for.

o Too many people working on one aspect will not make it go any
faster.

SPM 2017 © Ron Poet Lecture 9 12

faster.

o People can sit around waiting for other developments to be
completed.

Team Size (3)

� A team is too small if:

o There is too much work for them to meet their deadlines.

o There is not enough specialised expertise in the team for parts of
their work.

SPM 2017 © Ron Poet Lecture 9 13

o If this is discovered late then adding more team members will
make it worse – Brooks Law.

Skills Needed on a Team

� Each person will typically take on several roles.

� Project manager: responsible for making things happen on time and
on schedule.

� Architect: controls the overall structure of the software.

SPM 2017 © Ron Poet Lecture 9 14

� Configuration manager: controls various versions and branches.
Controls various builds.

� User interface specialist: this is important in GUI based products
because the GUI is the only bit that the customer sees.

� Technology specialist: knows the details about one important
technology that is needed.

Team Skills (2)

� Hardware specialist: knows how to port to a particular hardware.
� Third part software specialist: experienced in using particular

software such as operating systems and databases.

� Documentation: the product will need a user guide as well as
installation guide and maintenance guide.

SPM 2017 © Ron Poet Lecture 9 15

installation guide and maintenance guide.

� User training: may be required.
� Tester: makes sure the test suite is complete and runs the automated

tests on a regular basis.

Project Plan Document

� Contents.

� Purpose: similar to requirements documentation
� Background Information: context of project.
� Two types of deliverable:

SPM 2017 © Ron Poet Lecture 9 16

o Process to be used: each process type has different documentation,
so list documents to be produced.

o Subsystems and planned releases
� Risks and challenges.
� Cost estimates.

Project Plan (2)

� Team: people with responsibilities, including sub-teams.
o Skills needed

o Training needs and plans

o Allocation of responsibilities.

SPM 2017 © Ron Poet Lecture 9 17

o

� Tasks, as in PERT chart, but with more details.
� Schedule: as Gannt chart.
� Milestones, which also appear on the Gantt chart.
� See next Lecture

Difficulties and Risks

� Accurately estimating costs at the start of the project.

� It is difficult to measure progress.

� You have to work with the people and their skills that you have, not
what you would like.

SPM 2017 © Ron Poet Lecture 9 18

� You have to work with the software and systems that you have, not
what you would like.

� Communications on a large project is difficult. It is difficult to find out
what is really happening.

� It is hard to obtain agreement and commitment from others.