31
SOFTWARE PROJECT PERSONNEL MANAGEMENT CS 360 Lecture 19

CS 360 Lecture 19. Professional staff are the major cost of software Staff vary greatly in productivity: Ability Education and training Motivation

Embed Size (px)

Citation preview

Page 1: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

SOFTWARE PROJECT PERSONNEL MANAGEMENT

CS 360

Lecture 19

Page 2: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

MANAGING PEOPLEProfessional staff are the major cost of software Staff vary greatly in productivity:

Ability Education and training Motivation Interaction with colleagues and leaders

Work environment has an impact on productivity

How do you lead, motivate, hire, reward, and retain good people?

2

Page 3: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

SOFTWARE IS BUILT BY TEAMSBest size for a team is 3 to 8 people Team members may include:

developers (from trainee to expert) domain experts graphic or interface designers software librarians testers

Teams must have: administrative leadership (manager) technical leadership (may be the manager)

3

Page 4: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

ADMINISTRATIONPersonnel

Assigning tasks Evaluations

Resources Budgets Space, facilities Equipment

Project management Relationships with other teams, management, and clients

Project plan and schedule4

Page 5: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

SOFTWARE DEVELOPMENT GROUP WORKING

5

Page 6: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

COMMUNICATIONStaff meetings (non-technical)

Progress Administrative tasks

Technical meetings Software development Code reviews

Informal Kitchen/cafeteria after workAd hoc meetings

6

Page 7: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

COMMUNICATIONManagement of teams dispersed across locations

Face-to-face meetings Occasional but regular

once or twice per year Entire team, including support staff

Remote meetings on a regular scheduleconference calls

Adobe ConnectTechnical and administrative groups at all locations 7

Page 8: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

MEETINGSMeetings require leadership and a willingness to be led

Time keeping -- do not be late; end on time or earlier Clear purpose for meeting, with agenda

e.g., progress reports, design review, budget

Preparation materials circulated in advance with time to prepare studied by all participants

Facilitation during meeting opportunities for all to speak summing up to check agreement

Notes taken during meeting (scribe) and circulated promptly

8

Page 9: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

RECRUITING NEW TEAM MEMBERSProductivity is a combination of:

Analytic ability Verbal ability and communication skills Education Adaptability and inquisitiveness Personality and attitude Platform experience Programming language experience Application domain knowledge

9

Page 10: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

TEAM MEMBER RETENTIONTechnically interesting work

up to date hardware and software opportunities to learn and experiment

Feeling of appreciation management recognition money, benefits, and promotion

Working conditions space, light, noise, parking flexibility

10

Page 11: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

SOFTWARE ENGINEERINGSoftware Jobs:

1990: 778,000 1995: 1,083,000 2010: 2,095,000 2014: 2,501,000

Software jobs growing faster than any other jobs. 2014: 2.2% of all U.S. employment Software industry directly responsible for ~3.65 million U.S. jobs Software industry employment grows on average by 3.1% Every Year.

Average salary for new employees : $86,457 Average salary per person in the U.S.: $27,000

Page 12: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

BUILDING AND MAINTAINING A STRONG DEVELOPMENT TEAM

Everybody has a different style, personality Be consistent in how you relate to people Be open about problems and how you are addressing them

Explain your decisions Do not have secrets Ask for advice and help Be constructive in criticism of people outside your team

Support and amend social events

Set high standards! 12

Page 13: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

FIRMNESSManagers must be firm when needed:

Everybody will have to tackle some of the dreary tasks

Poor performance must be addressed.

No one is indispensableNo one should be allowed to think that they are indispensable

13

Page 14: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

LEADERSHIP - TURNING A GROUP AROUNDTo turn a weak group into a strong one is the greatest challenge of leadership Promotion of the best over the old leaders Using opportunities to reorganize team members

Resignations and terminations Respect people who try, but refuse to accept problem areas

14

Page 15: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

MEMBERSHIP- HOW TO BE LEDAs a junior member of a team, what can you do to make it productive?Follow the team’s style of working Understand the context of your work Make practical suggestions Ask for help if you need it Accept less interesting tasks Attend social events Do good work

15

Page 16: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

OUTSOURCINGWhen might you contract with another organization to carry out some or all parts of the software development process?The other organization might have expertise that your organization lacks.

Your organization might not have a large enough staff. The other organization might have lower costs

it might operate in a country, such as India, where costs are lower

Example Most software for the US government is built by contractors. 16

Page 17: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

OUTSOURCINGRisks

The other organization may not be as skilled as you expect

Staff have their first loyalty to their own organizationThe other organization may have use different terminology or have a different cultureEx: the organization may not report problems to the client

Communication faces geographic and cultural differences

Unless the task is well understood, it may be difficult to write a contract that manages costs and results

If your organization contracts out all interesting work, your good staff will leave.

17

Page 18: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

CAREERS IN COMPUTINGWhat will you be doing:

One year from now? Ten years from now? Careers outside computing Careers in which you personally continue to do technical work

Careers in which you are responsible for the technical work of others

Entrepreneur – your own company

18

Page 19: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

ENTREPRENEURComputer specialist have founded many of the world’s great companies Bill Gates, Larry Page, Jeff Bezos, Mark Zuckerberg, …

It is easier for a computer specialist to obtain management expertise than for a management specialist to become a technical expert.

19

Page 20: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

TECHNICAL CAREERSSuper-technical positions

A very few senior positions which are almost entirely technical: Industrial research, universities

Even these have substantial organizational/political aspects

Mid-level technical positions Numerous mid-level professional positions Can be state-of-the-art or dead-end

Computer professionals report satisfaction with their choice of careers 20

Page 21: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

PRODUCT MANAGERThe task of the Product Manager is to ensure that the right product is built and that the right trade-offs are made between timeliness, functionality, and costs.

This requires an understanding of: Marketing and business considerations Technical options and design criteria Communication among groups with different expertise and priorities

A good Product Manager has strong technical and management skillsa computer scientist with an MBA 21

Page 22: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

QUALITY ASSURANCEThe task of Quality Assurance is to ensure that so(ware products are built correctly.

Develop tools and methodologies for creating software that is: testable maintainable free of bugs

Validate software by reviews, inspections, testing, etc.

22

Page 23: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

ROLES THAT TAKE RESPONSIBILITY FOR THE TECHNICAL WORK OF OTHERS

A common career progression is from being a technical expert to leading others who do technical work

Senior personnel must be familiar with both the organizational aspects and the computing aspects of the work Requires good technical insight, not detailed technical expertise

Requires organizational, marketing, personnel, financial expertise

Product management is a good background for such positions

23

Page 24: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

CHIEF INFORMATION OFFICERThe senior person in an organiza1on responsible for technology Usually a vice president. Other job titles include Chief Technology Officer. Background is probably a combination of technology and management.

May have worked as a consultant (possibly internal consultant).

Requires strategical technical expertise24

Page 25: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

CAREERS OUTSIDE COMPUTINGA compu1ng background can be valuable in any career:management, government, law, medicine, philanthropy, etc.

Education in computing is an asset: Computing is a vital part of almost every organization Education in logical thinking and tackling large tasks systematically

Education only in computing is a potential weakness: Not every problem can be solved by rational thinking alone

Importance of skills with people, judgment, etc. 25

Page 26: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

CAREER FLEXIBILITYNobody knows the future of computing, but … If you do not learn continuously, you are going out of date fast Go to seminars, conferences, training courses Be inquisitive – discover things for yourself

Technical expertise is most valuable when combined with other skillsUnderstand the organization that you are part of

budgets, marketing, etc. Develop organizational skills

presentations, writing, leadership 26

Page 27: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

CHANGING ORGANIZATIONSIf you change organizations, you should do so in a professional manner.

Show respect for the organization that you leave Respect trade secrets (public information is not confidential) Take nothing with you except personal items

Show enthusiasm for your new organization Embrace their culture Do not criticize old organization

Who knows, your new manager may be friends with others in the same industry.

27

Page 28: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

CS 360 MILESTONE 4Expectations for the last milestone:

Complete project documentation (10% of final grade)~60 - 70 pagesUpdated requirements, design details, models, test cases, project management, etc.

Consistent sectionsSection 2 states function A does X, Y.Section 8 states function A does X, Y.

Acceptance and user testing sectionsTwo more client/team meetings

Installation/setup documentationSteps to rebuild your project

28

Page 29: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

CS 360 MILESTONE 4Expectations for the last milestone:

Final project presentation (10% of final grade) Overall semester approach and progress to your project Team member contributions Details about the final product

Components, interfaces, test cases, performance, future work Lessons learned (good, bad, etc.) Demo

Presentation length will be 15 minutes. Presentations will end around 3:30pm

If you can’t stay that long, let me know, and I will adjust you group’s presentation order.

Other members of the CS faculty will be invited to watch the final project presentations.

The classroom environment should be professional. No talking, eating, leaving the room, or other disruptions during team

presentations!

29

Page 30: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

CS 360 MILESTONE 4Expectations for the last milestone:

Finalized productWorking product based on requirementsFinalized source code

30

Page 31: CS 360 Lecture 19.  Professional staff are the major cost of software  Staff vary greatly in productivity:  Ability  Education and training  Motivation

CS 360 MILESTONE 4Expectations for the last milestone:

Final project deliverablesHard copy and electronic copy of final project documentationDocumentation should be placed in a ½” 3-ring binder

Hard copy and electronic copy of final project presentation

Final project prototype device(s) Individual team member evaluations

Due: Friday, December 4th during project presentations.

31