03 Lecture
03 Lecture
University
Faculty of Computer Science
Department of Software
Engineering
Semester:
Lecture No.: 3rd
Lecturer: Zakirullah Ezam
1
Managing People
Continue…
Software engineers often have strong technical skills but may lack the softer
skills that enable them to motivate and lead a project development team.
There are four critical factors that influence the relationship between a manager
and the people that he or she manages:
Respect: Different people have different skills, and managers should respect
these differences. All members of the team should be given an opportunity to
make a contribution.
4
Continue…
Inclusion: People contribute effectively when they feel that others listen to
them and take account of their proposals. It is important to develop a working
environment where all views, even those of the least experienced staff, are
considered.
Honesty: As a manager, you should always be honest about what is going well
and what is going badly in the team. You should also be honest about your
level of technical knowledge and be willing to defer to staff with more
knowledge when necessary.
5
Motivating People
As a project manager, you need to motivate the people who work with you so
that they will contribute to the best of their abilities.
If people are not motivated, they will be less interested in the work they are
doing. They will work slowly, be more likely to make mistakes, and will not
contribute to the broader goals of the team or the organization.
6
Continue…
Continue…
Therefore, making sure that peoples’ social, esteem, and self-realization needs
are satisfied is most important from a management point of view.
8
Teamwork
The best size for a software engineering group is 4 to 6 members, and they
should never have more than 12 members. When groups are small,
communication problems are reduced.
10
Continue…
Putting together a group that has the right balance of technical skills,
experience, and personalities is a critical management task.
A good group is solid and thinks of itself as a strong, single unit. The people
involved are motivated by the success of the group as well as by their own
personal goals.
11
Continue…
Knowledge is shared:
Continuity can be maintained if a group member leaves. Others in the group
can take over critical tasks and ensure that the project is not unduly disrupted.
A manager or team leader’s job is to create a cohesive group and organize that
group so that they work together effectively. This task involves selecting a
group with the right balance of technical skills and personalities.
Sometimes people are hired from outside the organization; more often,
software engineering groups are put together from current employees who have
experience on other projects.
Managers rarely have a completely free hand in team selection. They often
have to use the people who are available in the company, even if they are not
the ideal people for the job.
15
Group Organization
The way a group is organized affects the group’s decisions, the ways
information is exchanged, and the interactions between the development group
and external project stakeholders.
More senior group members may be responsible for the architectural design.
However, detailed design and implementation is the responsibility of the team
member who is allocated to a particular task.
16
Continue…
In hierarchical groups the group leader is at the top of the hierarchy. He or she
has more formal authority than the group members and so can direct their
work.
There is a clear organizational structure, and decisions are made toward the top
of the hierarchy and implemented by people lower down.
Group Communications
They have to resolve problems that arise with other stakeholders and inform
these stakeholders of changes to the system, the group, and delivery plans.
Continue…
All this can be done through meetings, although these meetings are often
dominated by powerful personalities. Informal discussions when a manager
meets with the team for coffee are sometimes more effective.