Найти в Дзене
Alex

Разработка требований к программному обеспечению: с чего начать, чтобы достичь успеха?

Терминология – вот камень преткновения, когда начинается обсуждение требований к программному обеспечению. Подчас количество названий одного и того же документа начинает приближаться к числу экспертов, которые работают над данной задачей. Стоит ли удивляться, что в скором времени такое многообразие приведёт к сумятице, а последняя плавно перерастёт в серьёзные проблемы коммуникации?

-2

Эксперты могут называть документ по-разному:

– требование к проекту;

– системное требование;

– бизнес-требование;

– функциональное требование;

– пользовательская точка зрения;

– требование к программному обеспечению;

– требование к продукту;

– пользовательская функция;

– пользовательское ограничение.

Мало того. Вышеперечисленные «рабочие названия» часто наполнены совершенно разным смыслом. Он зависит от того, является эксперт заказчиком или представляет сторону разработчиков. Первые часто считают, например, то же бизнес-требование полноценной высокоуровневой концепцией продукта, ориентируясь на который, исполнители вполне смогут создать желаемое. Программисты же со своей стороны видят в нём всего лишь «разработку интерфейса пользователя». Правда – достаточно детализированную.

-3

Важное уточнение. Слово «документ» в данном контексте вовсе не означает «бумажный документ». Более того, оно даже не – «электронный документ». Здесь «документ» – своего рода «контейнер», где хранится информация о требованиях.

Такой «контейнер» может представлять из себя:

– набор диаграмм;

– электронную таблицу;

– базу данных;

– стандартный (традиционный) документ;

– сочетание всего вышеперечисленного.

Само же требование к ПО состоит из трёх уровней: бизнес-требования, пользовательские и функциональные.

-4

Легко догадаться: первые представляют из себя цели, ради которых собралась команда; вторые – пожелания клиентов. А вот последние обращены исключительно к разработчикам. Они «увязывают» между собой первый и второй уровень. То есть делают так, что пользователь, работая с готовым ПО, автоматически движется в сторону выполнения задачи, ради которой, данный продукт, собственно, и был создан. В случае сомнений, к какому именно уровню относится то или иное требование, есть смысл задать «ключевой» вопрос. Если он будет начинаться со слова «хочу», то мы имеем дело с уровнем пользователя, а если «должен» – речь идет о функциональном.

Несколько иной подход к терминологии позволяет разбить подготовку к созданию ПО на этапы и тем самым значительно улучшить качество продукта. В данном случае процесс носит название «разработка технических условий». Он делится на две части: разработка требований и управление требованиями.

Разработка требований в свою очередь включает в себя:

– выявление;

– анализ;

– документирование;

– утверждение.

Каждый из пунктов требует к себе особого внимания. И насколько тщательно они будут проработаны на совместных обсуждениях проекта с участием всех заинтересованных сторон – пользователей-клиентов, бизнес-аналитиков, программистов – тем больше шансов, что готовый продукт будет содержать лишь допустимый минимум ошибок.

К тому же, что просчёты обязательно будут, лучше заранее морально подготовиться. Идеальных требований к программному обеспечению просто не существует.

-5

А раз задача настолько сложна, есть смысл сделать её хотя бы немного проще. Для начала – условиться о единой терминологии.

Ведь говорить на одном языке – главное условие, чтобы понять друг друга?