1 / 39

Team Management in Software Engineering

Team Management in Software Engineering. Jennifer Weingarten. Overview of Presentation. Team Selection Team Structure Team Motivation. Team Selection Overview. Importance of member selection Characteristics of potential members Measuring member characteristics.

abia
Download Presentation

Team Management in Software Engineering

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Team Management in Software Engineering Jennifer Weingarten

  2. Overview of Presentation • Team Selection • Team Structure • Team Motivation

  3. Team Selection Overview • Importance of member selection • Characteristics of potential members • Measuring member characteristics

  4. Importance of Member Selection: Case Study Xerox CP6 • Data gathered over 12 years • Same training, tools, and methodology for all • Productivity measured by bugs fixed in software • Top 27% of programmers did 78% of the work From “Not all Programmers are Created Equal” by G. Edward Bryan

  5. What are the Important Characteristics of Selecting an Employee?

  6. Factors Governing Member Selection • Application Domain Knowledge • Platform Experience • Programming Language Experience • Education • Communication • Adaptability • Attitude • Personality From Software Engineering by Ian Somerville

  7. Measuring Staff Characteristics Resources Available to Project Managers • Interviews • Resume • Recommendation • Programming aptitude tests • Psychological Tests

  8. Importance

  9. Picture from www.bongonews.com

  10. Why Interviews Not Effective • Interviewees will say what you want to hear • Interviewees prepare for questions • Interviewers don’t get good feed back on decisions

  11. Interviews and bias • Different interviewers = different results • Good impression = interviewer talks more /better • Previous Candidates affect outcome • bad first impression = less credit • Bad is noticed more than good • First impressions are important – decided in first 4 minutes “How to Pick Eagles” by Robert Zawacki

  12. Ways to improve Interview Objectivity • Use multiple interviewers • Ask each candidate the same questions • Try to relax candidates • No desk between • Start with interviewees interests

  13. Problems with Resumes • Entries may be misleading • Fail to capture intangibles Must be used along with other methods

  14. Problems With Recommendations • People say things to be nice • People may be politically motivated • Checking recommendations takes a lot of time • Only use recommendations for few candidates • Take recommendations with a grain of salt

  15. Problems with Testing • Test questions often answered in a time limited manner • Problem solving with large time segments does not map directly to this type of testing

  16. Team Structure • Why team structure is important • Types of team structures • Advantages and disadvantages of team structures

  17. How much of programming is teamwork?

  18. Why Team Structure is Important Figure 28.7 from Software Engineering 5th Edition by Ian Sommerville

  19. General Team Structure • Hierarchal Functional Organization • Vertical Organization • Matrix Organization “Organizational alternatives to project managers” by Robert Youker

  20. Hierarchal Functional Organization • Standard pyramid with management at the top • Strength – lumps similar recourses together • Weakness – • there can be conflicts for time between projects for resources • Resources do not see big picture

  21. Vertical Organization Each Project its own organization Strengths- • Ability to see the big picture and focus on projects Weaknesses- • Organization is temporary and causes turmoil • Facilities are duplicated

  22. Matrix Organization • Combines the two structures so there is a functional boss and a project coordinator Strengths- Can see big picture and employees have security Weaknesses- Each employee has two bosses

  23. When to Choose What • Choose functional structure when there are many small short term projects • Choose project structure for large long-term projects • For a mix of projects of unknown length use the Matrix Structure

  24. Programming Team Structure • Egoless Programming • Chief Programming

  25. Egoless Programming All programmers on one level Decisions are made by consensus Advantages • Free flow of information between all programmers • Generally better solutions to hard problems Disadvantages • Communication takes more time • Personality conflicts a major issue • Groupthink

  26. Chief Programming • The chief guides the project and makes all decisions but consults with specialists Advantages – • Fewer personality conflict • Faster decisions Disadvantages- • Chief can get overloaded with information and make incorrect decisions

  27. When to Choose What? • Choose Chief programmer when the project is • Large • Has a tight schedule • Not many new technical challenges • Choose egoless programming • When the schedule is loose • Groups are small • Many technical challenges

  28. Motivation Overview • Basics of Motivation • Personality and Motivation • A shared vision

  29. Basics of Motivation • Most often bottom two needs are satisfied • So people motivated mostly by social and self esteem needs • Only takes into account individual motivation Maslow’s model of needs (1954)

  30. Personality and Motivation • Social needs: Allow time to meet co-workers • Self esteem needs: Recognize value to the organization • Self Realization needs: allow people direction in choosing their own work, and make the work interesting

  31. Three Types of Professionals • Task-Oriented Motivated by the intellectual challenge of the work • Self-Oriented Motivated by personnel success and recognition • Interaction-Oriented Motivated by coworkers

  32. A Shared Vision • Mckinsey & Company Survey of 43 top performing fortune 500 companies found a shared vision common to all of them • Must know goal • Team understand this goal • Team must buy in –team verbally or otherwise commits to goal

  33. During the interview told the interviewee about the project to build a completely new computer system from the ground up Warned the recruit that the project is difficult and get them to say that they want in Raise the interviewees self esteem Said they only let the best in – then let them in Communicated the Goal/ Reason for goal: Got Buy in Added to motivation by invoking self esteem Case Study: The Soul of a New Machine

  34. Example Vision Phrases and Goals Phrase: “The best coverage of local sports on CABL” Goal: most coverage of sports games Phrase: “Sports are Better on CABL” Goal: technical excellence in broadcasting

  35. Personal Experience with Shared Vision

  36. Overview • Team selection • Aspects used to pick team members • Measuring these aspects • Team Structure • Why team structure is important • Advantages and disadvantages of different team structures • Team Motivation • Why team structure is important • Advantages and disadvantages of different team structures

  37. Sources Bryan, G.E. “Not all Programmers are Created Equal” UCirv-95-PROC-CSS-06 Zawacki, Robert, “How to Pick Eagles” DATAMATION Magzin, Sept 15, 1985 pp 115-116 Yoker, Robert, “Organizational alternatives for project managers” Project Management Quartery, Vol VIII, No. 1 March 1977 Sommerville, Ian Software Engineering 5th Edition Thayer, Richard Software Engineering Project Management Curtis, Bill Human Factors in Software Development

More Related