CS 425625 Software Engineering Managing People - PowerPoint PPT Presentation

About This Presentation
Title:

CS 425625 Software Engineering Managing People

Description:

Democratic leadership is more effective than autocratic leadership ... a democratic team organization ... Recommendations from people who know the candidates ... – PowerPoint PPT presentation

Number of Views:50
Avg rating:3.0/5.0
Slides: 29
Provided by: sergium
Learn more at: https://www.cse.unr.edu
Category:

less

Transcript and Presenter's Notes

Title: CS 425625 Software Engineering Managing People


1
CS 425/625 Software Engineering Managing People
  • Based on Chapter 22 of the textbook Somm00 Ian
    Sommerville,
  • Software Engineering, 6th Ed., Addison-Wesley,
    2000 and on the
  • Ch22 PowerPoint presentation available at the
    books web-site
  • www.comp.lancs.ac.uk/computing/resources/IanS/SE6/
    Slides/index.html
  • November 24, 2003

2
Outline
  • People in the Software Process
  • Limits to Thinking
  • Group Working
  • Choosing and Keeping People

3
People in the Software Process.
  • People are an organizations most important
    assets
  • The managers tasks are essentially people
    oriented
  • Software engineering is a cognitive and social
    activity
  • Cognitive limitations should be taken into
    consideration in the software process

4
.People in the Software Process
  • Management activities include
  • Problem solving using available people
  • Motivating people who work on a project
  • Planning what people are going to do
  • Estimating how fast people will work
  • Controlling people's activities
  • Organizing the way in which people work

5
Limits to Thinking
  • People are very diverse, and do not all think in
    the same way
  • However, all people are subject to the same
    constraints on their thinking due to
  • Memory organization
  • Knowledge representation
  • Motivation influences
  • Awareness of the limits to the way people think
    is important in software process management

6
Limits to Thinking Memory Organization.
  • Memory organization Fig. 22.1 Somm00

7
Limits to Thinking .Memory Organization
  • Short term memory
  • Fast access time
  • Limited capacity
  • Holds 5-7 chunks of information
  • Fast decay time
  • Working memory
  • Larger capacity
  • Longer access time
  • Used for information processing
  • Can retain information longer than the short term
    memory
  • Relatively fast decay time
  • Long term memory
  • Slow access time
  • Very large capacity
  • Somewhat unreliable retrieval mechanism (we
    forget things)
  • Relatively high threshold (work/time/repetition
    needed to retain things in long term memory)
  • Slow decay time

8
Limits to Thinking Cognitive Chunking
  • Cognitive chunking Fig. 22.2, Somm00

9
Limits to Thinking Semantic and Syntactic
Knowledge.
  • Knowledge types
  • Semantic knowledge, knowledge of concepts such
    as the operation of assignment statement, the
    notion of an object class, etc.
  • Organized, structured, acquired through
    experience and active learning, deeper and less
    volatile than the syntactic knowledge
  • Syntactic knowledge, knowledge of details such as
    how to write a class description in UML, etc.
  • Disorganized, arbitrary, acquired through
    memorization, easier to forget than the semantic
    knowledge

10
Limits to Thinking .Semantic and Syntactic
Knowledge
  • Syntactic and semantic knowledge Fig. 22.3
    Somm00

11
Limits to Thinking Problem Solving.
  • Problem solving requires integration of different
    types of knowledge, e.g., computer, task, domain,
    and organization knowledge
  • A semantic model of the problem as well as a
    corresponding model of the solution are built
  • The process of program design involves
  • 1 Integration of computer and task knowledge to
    create new knowledge and understand the problem
  • 2 Development of a semantic model of the solution
    and testing of this model against the problem
  • 3 Representation of this model in an appropriate
    notation or programming language

12
Limits to Thinking .Problem Solving
  • Problem solving Fig. 22.4, Somm00

13
Limits to Thinking Motivation.
  • A manager must know how to motivate the people
    working on a project
  • Different types of motivation are related to
  • Basic needs (e.g., food, sleep, etc.)
  • Personal needs (e.g. respect, self-esteem)
  • Social needs (e.g., to be accepted as part of a
    group)
  • Motivation should also take into account
    different personality types
  • Task-oriented
  • Self-oriented
  • Interaction-oriented

14
Limits to Thinking .Motivation
  • Human needs hierarchy Fig. 22.5, Somm00

15
Group Working Introduction
  • Software engineering typically requires group
    activity
  • The development schedule for most non-trivial
    software projects is such that they cannot be
    completed by one person working alone
  • Group interaction is a key factor of group
    performance
  • But flexibility in group composition is often
    limited and managers must do the best they can
    with available people

16
Group Working Main Factors
  • Factors that influence group working
  • Group composition
  • Group leadership
  • Group cohesiveness
  • Group communications
  • Group organization

17
Group Working Composition
  • Group composed of members who share the same
    motivation can be problematic
  • Task-oriented everyone wants to do their own
    thing
  • Self-oriented everyone wants to be the boss
  • Interaction-oriented too much chatting, not
    enough work
  • An effective group has a balance of all types
  • However, this can be difficult to achieve because
    most engineers are task-oriented
  • Also, there is a need for all members to be
    involved in decisions which affect the group

18
Group Working Leadership
  • Leadership depends on respect, not on titular
    status
  • In a team, there may be both a technical and an
    administrative leader
  • Democratic leadership is more effective than
    autocratic leadership
  • A career path based on technical competence
    should be supported

19
Group Working Cohesiveness
  • In a cohesive group, members consider the group
    more important than the individuals
  • Advantages of cohesive groups
  • Group quality standards can be developed
  • Group members work closely together
  • Team members learn from each other
  • Egoless programming can be practised
  • Cohesiveness can be build through
  • Social events
  • Developing a group identity and territory
  • Explicit team-building activities
  • Open access to information
  • Strong, cohesive groups can lead however to
    irrational resistance to leadership change and to
    groupthink

20
Group Working Communications
  • Good communications are vital for group working
  • Information must be exchanged on the status of
    work, design decisions and changes to previous
    decisions
  • Good communications also strengthens group
    cohesion and promotes understanding
  • Factors that influence the effectiveness of group
    communications
  • Group size
  • Group structure
  • Group composition
  • Physical work environment of the group

21
Group Working Organization
  • Software engineering group sizes should be
    relatively small (at most 8 members)
  • Small teams can follow a democratic team
    organization
  • On the other hand, chief programmer teams try to
    make the most effective use of skills and
    experience
  • Extreme programming involves democratic team
    organization

22
Group Working .Organization..
  • In democratic team organization
  • The group acts as a whole and comes to a
    consensus on decisions affecting the group
  • The group leader serves as the external interface
    of the group but does not allocate specific work
    items
  • The work is discussed by the group and tasks are
    allocated according to ability and experience
  • This approach is successful for groups where all
    members are experienced and competent

23
Group Working ..Organization.
  • Chief programmer teams consist of a kernel of
    specialists helped by others added to the project
    as needed
  • This group organization allow very capable
    programmers to be responsible for most of the
    software development

24
Group Working Organization
  • Issues with chief programmer teams
  • Talented designers and programmers are difficult
    to find
  • Group members may resent the chief programmer
    taking the credit for the groups success
  • Projects will fail if both the chief and deputy
    programmer become unavailable
  • Organizational structures may not be able to
    accommodate this type of group

25
Choosing and Keeping People
  • Hiring people for a project is a major managerial
    responsibility
  • Appointment decisions are based on
  • Information provided by the candidates in their
    resumés
  • Information obtained at an interview
  • Recommendations from people who know the
    candidates
  • Some companies use psychological or aptitude
    tests

26
.Choosing and Keeping People..
  • Staff selection factors Fig. 22.7 Somm00

27
..Choosing and Keeping People.
  • Working environments
  • The physical workplace has an important effect on
    individual productivity and satisfaction
    (comfort, facilities, privacy)
  • Health and safety aspects must also be taken into
    consideration (e.g., lighting, heating,
    furniture)
  • Important environmental factors
  • Privacy each engineer should have his or her
    work area
  • Outside awareness people prefer natural light
  • Personalization different people organize their
    work environment in different ways
  • Spaces for group meeting teams working together
    need spaces for holding formal and informal
    meetings

28
Choosing and Keeping People
  • Office layout Fig 22.8, Somm00
Write a Comment
User Comments (0)
About PowerShow.com