Автор работы: Пользователь скрыл имя, 16 Апреля 2013 в 20:46, реферат
Время, когда один-единственный программист мог вести весь проект целиком, безвозвратно прошло. Рынок наводнили акулы бизнеса, ожесточенно конкурирующие между собой, и требование к качеству продукта резко возросло. "Голая" программа без красивого графического интерфейса, многостраничной документации, официального сайта, службы поддержки уже никому не нужна. Исключение составляют утилиты, ориентированные на узкий круг профессионалов, которым достаточно развитого функционала, но таких - единицы и реальные деньги крутятся там, где обитают полуграмотные пользователи, популяция которых исчисляется сотнями миллионов.
Введение.
Модель группы и иерархическая модель
Обязанности членов группы
Модель проектной группы
Размеры группы и масштаб проекта
Крупные проекты
Тематические группы
Функциональные группы
Небольшие проекты
Поиск руководителей
Повышение эфективности коллективной работы
Вывод.
Их задача:
· сконцентрироваться на выпуске продукта;
· выработать общее представление о проекте.
Для эффективной работы проектной группы требуется соблюдение следующих правил в отношениях между людьми:
· доверие — делает действия людей согласованными, при этом все следуют принципу «мы делаем то, что обещали сделать»;
· уважение — люди признают способности других, следуя правилу «каждый из нас необходим нашей группе»;
· согласие — все должны знать и поддерживать цели проекта и верить в его успех — «мы завершим проект, и точка»;
· ответственность
Менеджер продукта
Менеджер продукта должен вовремя реагировать на потребности заказчика. Его главная задача — сформировать общее представление о поставленной задаче и о том, как ее решать. Он должен ответить на вопрос «Зачем мы делаем все это?» и убедиться, что все члены группы знают и понимают ответ на него.
Основная цель этой роли — удовлетворение требований заказчика. Для этого менеджер продукта выступает представителем заказчика в группе разработчиков и представителем группы у заказчика. (На этом этапе важно понимать разницу между заказчиком и пользователем: заказчик платит за создание продукта, а пользователи с ним работают.) Кроме того, менеджер продукта вместе с менеджером программы должны прийти к компромиссному решению относительно функциональных возможностей продукта, сроков его разработки и финансирования проекта.
Менеджер программы
Задача менеджера программы
— вести процесс разработки с
учетом всех ограничений. Руководитель
этого направления должен понимать
разницу между понятиями «
«Запомните, что ваша цель — повысить авторитет каждого члена группы, а не подавить его своим».
Главная обязанность менеджера программы — выполнить все стадии разработки так, чтобы нужный продукт был выпущен в нужное время. Он координирует деятельность других членов группы. И хотя иногда ему придется подгонять своих сотрудников, он не должен и помышлять о диктаторском стиле управления.
Разработчик
Разработчики знакомят остальных
членов группы с применяемыми технологиями
и собственно создают продукт. В
качестве консультантов они
Тестер
Задача тестеров — испытание
продукта в реальных условиях, дабы
определить, что в продукте работает и
что не работает, и нарисовать таким образом
точный «портрет» приложения. Естественно,
для проведения тестов нужно отлично разбираться
и в требованиях пользователей, и в том,
как их удовлетворить.
Тестеры разрабатывают стратегию,
планы, графики и сценарии
тестирования, которые позволяют убедиться,
что все ошибки выявлены и исправлены
до выпуска приложения. Ошибкой называют
любую проблему, из-за которой продукт
не выполняет свои функции. Ею может оказаться
и ошибка в коде, называемая «жучком»,
и отклонение от спецификаций, заданных
менеджером программы, и недоработки в
документации, подготовленной группой
обучения пользователей.
Инструктор
Цель группы обучения —
повысить эффективность труда
В этом последнем качестве группа обучения отвечает за выпуск удобного, полезного продукта, которому практически не нужна поддержка. Персонал группы тестирует удобство использования продукт та, выявляет проблемы в этой области и проверяет проект пользовательского интерфейса.
Активно участвуя в создании пользовательского интерфейса, инструкторы сокращают затраты на сопровождение продукта и поддержку пользователей. Часто же бывает, что изучению этих расходов практически не уделяется внимания, хотя все расчеты очень просты; чем легче работать с приложением, тем меньше затраты на поддержку.
Логистик
Логистик представляет интересы
служб поддержки и
Логистик, участвующий в
крупном проекте, должен обладать опытом
развертывания крупномасштабных приложений
на нескольких сотнях компьютеров. Именно
поэтому от него требуется коммуникабельность
и хорошая техническая
Логистик обязан разбираться в инфраструктуре продукта и требованиях к его сопровождению. Его задача — проверить, чтобы все серверы развертывания и рабочие станции пользователей удовлетворяли требованиям. Обычно данные вопросы учитываются в планах выпуска, развертывания и сопровождения продукта.
Размеры группы и масштаб
В проектной группе за каждое
направление должен отвечать как
минимум один человек. При реализации
крупного проекта возникает затруднение,
связанное с эффективным
Крупные проекты
В своей книге «Rapid
Таким образом, чтобы справиться с крупным проектом, приходится и делить проектную группу на тематические и функциональные подгруппы.
Тематические группы
Это небольшие подгруппы из одного или нескольких человек, роли которых различны. Каждой из таких групп выделяется некий набор функциональных возможностей приложения, за все стороны проектирования и разработки которого она и отвечает (включая составление проекта и графика реализации). Например, какой-либо группе нужно предоставить решать задачу вывода данных на печать.
По этому поводу Стив Маконнелл замечает: «Достоинства тематических групп — эффективность, сбалансированность и ответственность. Возможности каждой такой группы велики, ведь в ее состав входят представители... всех заинтересованных сторон. Ее члены принимают решения, учитывая все возможные мнения, а, следовательно, нет никаких оснований их изменять.
Но этой же причине в такой группе высока ответственность. Ее члены могут обратиться ко всем людям, опыт которых необходим в их работе. Поэтому, если они так и не найдут оптимального решения, в этом они смогут винить только себя. Такая группа сбалансирована. Вряд ли вы захотите, чтобы окончательные спецификации создавал только отдел разработки, маркетинга или контроля качества. Только решение, принятое группой представителей каждого из этих отделов, будет по-настоящему сбалансировано».
Функциональные группы
Функциональные группы формируются в рамках одной роли. Они нужны в очень крупных проектных группах или при работе над крупномасштабными проектами, когда отдельные роли нуждаются в дополнительном подразделении. Например, в Microsoft отдел менеджмента продукта обычно состоит из групп планирования и маркетинга. Обе они занимаются менеджментом продукта, но первая отвечает за определение действительно необходимых заказчику функций приложения, а вторая — за информирование потенциальных клиентов о достоинствах продукта.
Приведем еще один пример.
Иногда группу разработчиков требуется
разделить на три подгруппы, каждая
из которых занимается одним уровнем
архитектуры (пользовательским, прикладным
или уровнем данных). Довольно часто
в крупных отделах разработки
группу
программистов подразделяют на группу
решений и компонентную группу. Первые
создают собственно приложение, «склеивая»
вместе его компоненты, разработанные
вторыми. Кстати, это разделение часто
оказывается и разделением по языкам программирования:
разработчики решений, как правило, работают
с языками, позволяющими быстро собирать
приложения из готовых компонентов, тогда
как выбор языка для разработки повторно
используемых компонентов, пригодных
для многих проектов, определяется прежде
всего соображениями эффективности.
Небольшие проекты
Хотя в модели группы разработчиков
предусмотрено шесть
Естественно, успех совмещения ролей зависит от конкретных членов группы, их навыков и опыта. В некоторых проектных группах возможно успешное совмещение ролей, комбинация которых согласно нашей таблице опасна. Главное — помнить цели каждого направления и контролировать совмещение должностей в соответствии с ними, предотвращая конфликты. В противном случае некоторые обязанности какой-то роли будут не выполнены, что увеличивает число неконтролируемых рисков.
Поиск руководителей
Главная задача человека, ответственного
за создание проектной группы, —
подобрать квалифицированных
Найти лидеров — несложная проблема; в любой организации они всем известны. Важно понимать, что мы говорим именно о лидерах, а не начальниках. Конечно, в любой организации есть менеджеры директора и так далее, но положение в иерархической структуре далеко не всегда гарантирует наличие качеств лидера. Лидеров определяют действия и качества, а не должности.
Зачем нужны именно лидеры? Потому что исполнителей и так избытке. Важно понимать, что деление сотрудников на лидеров и исполнителей не умаляет деловых качеств и квалификации последних. Чтобы лидер добился удачи, он должен набрать отличных исполнителей. Однако между лидерами и подчиненными должно быть взаимопонимание. Группа обсуждает, что нужно делать, а затем выполняет принятое решение, поэтому все, и руководители, и подчиненные, одинаково важны для проекта — в отсутствие кого-либо и них успех проекта невозможен.
Руководители должны обладать:
· умением понимать и помогать;
· коммуникабельностью;
· авторитетом внутри организации и за ее пределами;
· чувством ответственности за поставленные цели;
· умением принимать конструктивные решения;
· уверенностью в своих силах;
· достаточной для решения поставленных задач квалификацией;
Многие прочтут этот список и скажут: «Я обладаю всеми этим качествами». Еще больше людей подумают: «Я могу обладать этим качествами». Однако настоящего лидера отличают именно эти способности, а не намерения. Это относится и к качествам руководителя: нужно оценивать оказываемое им влияние, а не его намерения. Ведь давно известно, что «реальность — это то, что видят другие».
Повышение эффективности
коллективной работы
Вот какие отношения друг с другом и к работе возникают в такой группе:
· заинтересованность;
· надежда, оптимизм, готовность к работе;
· определение задач и решений;
· проявление взаимопомощи;
· доверительные уважительные отношения;
· единение.
Последнее очень важно: эффективность работы группы при этом выше всего.
Для успеха проекта недостаточно только распределить роли и обязанности. Помимо структуры, следует придерживаться определенных принципов и методов. Ниже обсуждаются «лучшие методы и принципы», которые успешно применялись не только внутри Microsoft, но также партнерами и заказчиками компании.
Общее представление о проекте
Важнейший фактор для успеха
проекта — единое понимание целей
и задач проекта всеми