Человеческий фактор как краеугольный камень разработки

На конференции Software People 2010 обсуждались "социальные" вопросы разработки ПО

10:07 27.04.2010   |  Наталья Дубова |  «Открытые системы»

Рубрика События |   302 прочтения



 

Организаторы Второй международной конференции Software People 2010 из образовательного центра Careerlab за год, прошедший с первого форума, смогли сформировать вокруг одноименного сайта сообщество профессионалов, интересующихся различными аспектами процессов создания программных продуктов. Но, как видно из названия, в триаде ключевых компонентов любого программного проекта – люди, процессы, технологии – конференция и сайт Software People делают акцент именно на людях, считая их определяющим фактором успеха разработки ПО.

И это является отражением глобальной тенденции роста популярности "скорых" (agile) методов разработки, в которых не только уровень квалификации, но и человеческие качества людей выходят на первый план. О том, из чего складывается agile-мировоззрение, говорил на конференции Питер Хрущка, учредитель международной групы экспертов по программной инженерии Atlantic Systems Guild и основатель agile-сообщества в Германии. Он выделил три поколения методов разработки ПО – структурные, эпоха которых длилась с середины 70-х по 2000 год, объектно-ориентированные, возникшие в 80-е годы, и, наконец, "скорые" методы, которые развиваются с конца 90-х и доминируют сегодня, не отменяя при этом методик предыдущих поколений. Общей характеристикой "скорой" разработки можно считать уход от слишком большой формализации процессов – в программном проекте разработчики меньше придерживаются жестких правил, но больше опираются на реальный опыт.

Среди различных ролей участников процесса разработки Хрущка выделил три – владелец продукта, или системный аналитик, архитектор и менеджер проекта. Системный аналитик отвечает за постановку требований, то есть за определение спецификаций задачи, которая поставлена перед командой разработки. В "скором" процессе, по словам Хрущки, хороший аналитик должен уметь выделять самые необходимые требования, понимать бизнес-процессы заказчика, чтобы иметь возможность однозначно определить предмет разработки, находиться в постоянном взаимодействии с заказчиками, добиваясь учета мнения обеих сторон в постановке требований к проекту.

Ключевой ролью для разработки является архитектор, на которого фактически возложена вся отвественность за реализацию решения. Хрущка сравнил программных архитекторов со спортсменами-десятиборцами, поскольку эти специалисты должны владеть как минимум десятью важнейшими навыками, в том числе аналитическими, дизайнерскими и обязательно коммуникативными. Это необходимо для  осуществления всех возложенных на них функций, таких как понимание требований, разработка технической концепции продукта, определение структуры решения, доведение до разработчиков поставленных задач, надзор за их реализацией и анализ результатов. Несмотря на груз ответственности, роль архитектора, по словам Хрущки, очень часто оказывается недооценена в проекте и нередко объединяется с ролью менеджера проекта, что неверно.

Последний должен руководить ходом проекта разработки от начала и до полного завершения. Хрущка подчеркнул, что задачи менеджера проекта в условиях скорой разработки усложняются. Если в принятом раньше "водопадном" процессе все этапы проекта были заданы заранее, то присущая скорым методам итеративность подразумевает постоянные изменения в требованиях и одновременно необходимость получать своего рода готовый продукт после каждой итерации. При этом большинство проблем, которые приходится решать менеджеру проекта, лежат не в области технологий, а связаны опять же с человеческим фактором.

"Исполнители" этих трех ролей составили основную часть аудитории конференции Software People. Форум стал местом обмена опытом по проблемам управления продуктом, созданию эффективной архитектуры программного обеспечения, выбору оптимальных методов управления проектами. На Software People 2010 прозвучал и ряд интересных технологических выступлений, в том числе посвященных облачным вычислениям, новому языку функционального программирования F#, вопросам тестирования. В этом году, как и в прошлом, Software People собрала около 300 участников, но благодаря трансляции в онлайн видеть и слышать доклады конференции смогли еще почти 14,5 тыс. человек.

[ http://softwarepeople.ru/archive/photogallery/8/ ] Организаторы Software People делают акцент на людях, считая их определяющим фактором успеха разработки ПО


Теги: