Традиционные роли и роли в Agile
Недавно ко мне обратился владелец одной компании по поводу работы. Мы пообщались, и он попросил меня ответить на несколько вопросов. На английском.
Вопросы он задал довольно интересные, и ко мне пришло вдохновение. Не в силах остановиться до трёх ночи, я писал сочинение
Я решил опубликовать его в виде серии постов.
Итак, первый вопрос, в ответе на который я раскрываю смысл должностей Product Manager, Project Manager и Team Lead, и альтернативную систему координат, принятую в Agile, точнее в Scrum - Team, Product Owner, Scrum Master. А также моё личное отношение к этим ролям.
1. Вы пишете о том, что хотите занимать позицию Project Manager или Team Leader. Какими задачами на Ваш взгляд должен заниматься человек находящийся на этой позиции и как Вы их видите?
I am interested in Product Manager or Project Manager positions actually, as I’m writing in my CV.
Responsibilities of mentioned positions traditionally may include:
Team Leader responsibilities:
- assignment of tasks to team members
- monitoring of team members’ progress on their tasks
- review of team members’ work
- technical leadership
- helping team members with difficult technical issues
- defining system architecture/design
- estimating person-hours / required time period to execute certain amounts of work
- coaching team members
- requirements elicitation from customer representatives
- technical interviewing of candidates
- maintaining contact with customer representatives
- reporting progress to customer representatives and upper level managers
- limited subset of project management activities
Project Manager responsibilities,
based on PMBOK areas:
- Project Scope Management (what is and what is not a part of project)
- Project Time Management (shorty, cares about schedule)
- Project Cost Management (ensures that project is within the budget)
- Project Quality Management (makes sure that neccessary quality assurance measures are undertaken)
- Project Human Resource Management (attracting, selecting, managing and motivating people needed for project success)
- Project Communication Management (establishes connections between appropriate people / teams)
- Project Risk Management (makes sure risks are identified, tracked, monitored and mitigated)
- Project Integration Management (makes sure that completion of individual activities results in achieving project objectives)
- Project Procurement Management (manages sub-contracts, procurement of necessary materials and equipment)
based on PMBOK process groups:
- initiating
- planning
- executing
- monitoring and controlling
- closing
Product Manager:
- elicitation of requirements from customer representatives (real people or imaginary personas built based on market researches etc.)
- prioritization of requirements based on customers as multiple sources of requests
- developing of product vision
- documenting product Vision and Scope
- sometimes writing more detailed requirement specifications
- defining acceptance criteria
But I prefer working with Agile methodologies (I’m Certified ScrumMaster. Currently I’ve implemented Scrum augmented with some of XP practices in my teams).
In Agile world the layout of roles is a bit different.
There is no traditional Team Lead or Project Manager roles here however people with such titles may perform some of Agile roles.
E.g. Team Lead or Project Manager may perform ScrumMaster and/or Product Owner role.
Team Lead may be also a part of the team if he provides his technical expertise to the team.
Team takes some of the management tasks to itself — in Agile teams are self-organized.
The roles in Agile are:
1. Product Owner, or Customer representative, who
- defines vision of product
- understands business value of each product feature, or “user story”
- writes and prioritizes “user stories”
- provides team members with information on requirement details as they request it
- defines acceptance criteria for user stories
- makes decisions on release scope/schedule (which user stories to include into release, and when release),
(never assigns work to team members)
2. ScrumMaster, who
- helps team to follow selected methodology
- reminds team to follow their own agreements
- facilitates/moderates meetings
- helps team to make development process transparent
- may coach team members on agile engineering practices
- helps team to resolve impediments reported by team or identified by ScrumMaster himself
(this is “servant leadership” role, ScrumMaster never assigns work to team members)
3. Team – cross-functional team which may contain people with development, testing, analysis, design, architecture etc. skills:
- estimates user stories
- defines tasks needed to implement user stories
- makes commitment what will be done in iteration based on priorities given by Product Owner
- does whatever it needs to be done to make user stories planned
- communicates with customer to clarify requirements, user story acceptance criteria
- collaborates within itself to achieve iteration goals
- is responsible for product quality (according to acceptance criteria defined by Product Owner)
- reflects periodically and adjusts/adapts their processes
Given these roles, I am interested mostly in Product Owner (or proxy-Product Owner) and ScrumMaster roles.
I.e. there are two things I like:
1. To develop deep vision of product, how it benefits people and how it may be sold.
I have experience of defining product vision and documenting it. The process of “visioning” excites me very much and this probably was the thing which led me to pursuing software management career as way to implement my “visions”.
My week point here is marketing and marketing is the area I want to improve in.
2. To develop and implement vision of software development process.
I see my role in this as serving as ScrumMaster in one-two teams initially, and later helping teams to find replacement ScrumMasters within themselves, and coahing these ScrumMasters and continuing building other Agile teams.
I know that product vision and process vision are very different but there are areas where they coincide, e.g. project management or knowledge management software. So both product vision and process vision are equally exciting for me, even if I focus on only one.



Еще нет комментариев.