5. ПРОБЛЕМЫ АНАЛИЗА ТРЕБОВАНИЙ
Проблемы заинтересованных лиц
• Заказчики не понимают то, что они хотят, или у пользователей нет ясного
представления об их требованиях
• Заказчики не соглашаются с ранее записанными требованиями
• Заказчики настаивают на новых требованиях после того, как стоимость и график
работ были установлены
• Коммуникация с заказчиками является медленной
• Заказчики часто не участвуют в обзорах требований или неспособны в них
участвовать
• Заказчики технически неподготовлены
• Заказчики не понимают процесса разработки ПО
6. ПРОБЛЕМЫ АНАЛИЗА ТРЕБОВАНИЙ
Проблемы инженеров / разработчиков
• У технического персонала и конечных пользователей могут быть различные мнения.
• Инженеры и разработчики могут попытаться подкорректировать требования, чтобы
они соответствовали существующей системе или модели, вместо того, чтобы
разработать систему, соответствующую потребностям клиента.
• Анализ может часто выполняться инженерами или программистами, а не
персоналом с навыками работы с людьми и знаниями проблемной области.
Проблема самих требований (их просто нет)
8. ВИДЫ ТРЕБОВАНИЙ
o Функциональный характер — что система должна делать?
Бизнес-требования
Пользовательские требования
Функциональные требования
o Нефункциональный характер — при каких условиях система должна работать?
Бизнес-правила — определяют ограничения, проистекающие из предметной области и свойств
автоматизируемого объекта (предприятия)
Системные требования и ограничения — определения элементарных операций, которые должна иметь
система, а также различных условий, которым она может удовлетворять. К системным требованиям и
ограничениям относятся:
• Ограничения на программные интерфейсы, в том числе к внешним системам
• Требования к атрибутам качества
• Требования к применяемому оборудованию и ПО
Требования к документированию
Требования к дизайну и юзабилити
Требования к безопасности и надёжности
Требования к показателям назначения (производительность, устойчивость к сбоям и др.)
Требования к эксплуатации и персоналу
Прочие требования и ограничения (внешние воздействия, мобильность, автономность и т.п.)
9. ИСТОЧНИКИ ТРЕБОВАНИЙ
• Федеральное и муниципальное отраслевое законодательство
(конституция, законы, распоряжения)
• Нормативное обеспечение организации
(регламенты, положения, уставы, приказы)
• Текущая организация деятельности объекта
• Модели деятельности
(диаграммы бизнес-процессов)
• Представления и ожидания потребителей и пользователей системы
• Журналы использования существующих программно-аппаратных систем
• Конкурирующие программные продукты
11. ТРЕБОВАНИЯ К ТРЕБОВАНИЯМ
Единичность Требование описывает одну и только одну вещь.
Завершённость
Требование полностью определено в одном месте и вся необходимая информация
присутствует.
12. ТРЕБОВАНИЯ К ТРЕБОВАНИЯМ
Единичность Требование описывает одну и только одну вещь.
Завершённость
Требование полностью определено в одном месте и вся необходимая информация
присутствует.
Последовательность
Требование не противоречит другим требованиям и полностью соответствует внешней
документации.
13. ТРЕБОВАНИЯ К ТРЕБОВАНИЯМ
Единичность Требование описывает одну и только одну вещь.
Завершённость
Требование полностью определено в одном месте и вся необходимая информация
присутствует.
Последовательность
Требование не противоречит другим требованиям и полностью соответствует внешней
документации.
Атомарность
Требование «атомарно». То есть оно не может быть разбито на ряд более детальных
требований без потери завершённости.
14. ТРЕБОВАНИЯ К ТРЕБОВАНИЯМ
Единичность Требование описывает одну и только одну вещь.
Завершённость
Требование полностью определено в одном месте и вся необходимая информация
присутствует.
Последовательность
Требование не противоречит другим требованиям и полностью соответствует внешней
документации.
Атомарность
Требование «атомарно». То есть оно не может быть разбито на ряд более детальных
требований без потери завершённости.
Отслеживаемость
Требование полностью или частично соответствует деловым нуждам как заявлено
заинтересованными лицами и документировано.
15. ТРЕБОВАНИЯ К ТРЕБОВАНИЯМ
Единичность Требование описывает одну и только одну вещь.
Завершённость
Требование полностью определено в одном месте и вся необходимая информация
присутствует.
Последовательность
Требование не противоречит другим требованиям и полностью соответствует внешней
документации.
Атомарность
Требование «атомарно». То есть оно не может быть разбито на ряд более детальных
требований без потери завершённости.
Отслеживаемость
Требование полностью или частично соответствует деловым нуждам как заявлено
заинтересованными лицами и документировано.
Актуальность Требование не стало устаревшим с течением времени.
16. ТРЕБОВАНИЯ К ТРЕБОВАНИЯМ
Единичность Требование описывает одну и только одну вещь.
Завершённость
Требование полностью определено в одном месте и вся необходимая информация
присутствует.
Последовательность
Требование не противоречит другим требованиям и полностью соответствует внешней
документации.
Атомарность
Требование «атомарно». То есть оно не может быть разбито на ряд более детальных
требований без потери завершённости.
Отслеживаемость
Требование полностью или частично соответствует деловым нуждам как заявлено
заинтересованными лицами и документировано.
Актуальность Требование не стало устаревшим с течением времени.
Выполнимость Требование может быть реализовано в пределах проекта.
17. ТРЕБОВАНИЯ К ТРЕБОВАНИЯМ
Единичность Требование описывает одну и только одну вещь.
Завершённость
Требование полностью определено в одном месте и вся необходимая информация
присутствует.
Последовательность
Требование не противоречит другим требованиям и полностью соответствует внешней
документации.
Атомарность
Требование «атомарно». То есть оно не может быть разбито на ряд более детальных
требований без потери завершённости.
Отслеживаемость
Требование полностью или частично соответствует деловым нуждам как заявлено
заинтересованными лицами и документировано.
Актуальность Требование не стало устаревшим с течением времени.
Выполнимость Требование может быть реализовано в пределах проекта.
Недвусмысленность
Требование кратко определено без обращения к техническому жаргону, акронимам и
другим скрытым формулировкам. Оно выражает объективные факты, не субъективные
мнения. Возможна одна и только одна интерпретация. Определение не содержит нечётких
фраз. Использование отрицательных утверждений и составных утверждений запрещено.
18. ТРЕБОВАНИЯ К ТРЕБОВАНИЯМ
Единичность Требование описывает одну и только одну вещь.
Завершённость
Требование полностью определено в одном месте и вся необходимая информация
присутствует.
Последовательность
Требование не противоречит другим требованиям и полностью соответствует внешней
документации.
Атомарность
Требование «атомарно». То есть оно не может быть разбито на ряд более детальных
требований без потери завершённости.
Отслеживаемость
Требование полностью или частично соответствует деловым нуждам как заявлено
заинтересованными лицами и документировано.
Актуальность Требование не стало устаревшим с течением времени.
Выполнимость Требование может быть реализовано в пределах проекта.
Недвусмысленность
Требование кратко определено без обращения к техническому жаргону, акронимам и
другим скрытым формулировкам. Оно выражает объективные факты, не субъективные
мнения. Возможна одна и только одна интерпретация. Определение не содержит нечётких
фраз. Использование отрицательных утверждений и составных утверждений запрещено.
Обязательность
Требование представляет определённую заинтересованным лицом характеристику,
отсутствие которой приведёт к неполноценности решения, которая не может быть
проигнорирована. Необязательное требование — противоречие самому понятию требования.
19. ТРЕБОВАНИЯ К ТРЕБОВАНИЯМ
Единичность Требование описывает одну и только одну вещь.
Завершённость
Требование полностью определено в одном месте и вся необходимая информация
присутствует.
Последовательность
Требование не противоречит другим требованиям и полностью соответствует внешней
документации.
Атомарность
Требование «атомарно». То есть оно не может быть разбито на ряд более детальных
требований без потери завершённости.
Отслеживаемость
Требование полностью или частично соответствует деловым нуждам как заявлено
заинтересованными лицами и документировано.
Актуальность Требование не стало устаревшим с течением времени.
Выполнимость Требование может быть реализовано в пределах проекта.
Недвусмысленность
Требование кратко определено без обращения к техническому жаргону, акронимам и
другим скрытым формулировкам. Оно выражает объективные факты, не субъективные
мнения. Возможна одна и только одна интерпретация. Определение не содержит нечётких
фраз. Использование отрицательных утверждений и составных утверждений запрещено.
Обязательность
Требование представляет определённую заинтересованным лицом характеристику,
отсутствие которой приведёт к неполноценности решения, которая не может быть
проигнорирована. Необязательное требование — противоречие самому понятию требования.
Проверяемость
Реализованность требования может быть определена через один из четырёх возможных
методов: осмотр, демонстрация, тест или анализ.
20. ТРЕБОВАНИЯ К ТРЕБОВАНИЯМ
Единичность Требование описывает одну и только одну вещь.
Завершённость
Требование полностью определено в одном месте и вся необходимая информация
присутствует.
Последовательность
Требование не противоречит другим требованиям и полностью соответствует внешней
документации.
Атомарность
Требование «атомарно». То есть оно не может быть разбито на ряд более детальных
требований без потери завершённости.
Отслеживаемость
Требование полностью или частично соответствует деловым нуждам как заявлено
заинтересованными лицами и документировано.
Актуальность Требование не стало устаревшим с течением времени.
Выполнимость Требование может быть реализовано в пределах проекта.
Недвусмысленность
Требование кратко определено без обращения к техническому жаргону, акронимам и
другим скрытым формулировкам. Оно выражает объективные факты, не субъективные
мнения. Возможна одна и только одна интерпретация. Определение не содержит нечётких
фраз. Использование отрицательных утверждений и составных утверждений запрещено.
Обязательность
Требование представляет определённую заинтересованным лицом характеристику,
отсутствие которой приведёт к неполноценности решения, которая не может быть
проигнорирована. Необязательное требование — противоречие самому понятию требования.
Проверяемость
Реализованность требования может быть определена через один из четырёх возможных
методов: осмотр, демонстрация, тест или анализ.
Логичность Логическая взаимосвязь компонентов
21. ТРЕБОВАНИЯ К ТРЕБОВАНИЯМ
Единичность Требование описывает одну и только одну вещь.
Завершённость
Требование полностью определено в одном месте и вся необходимая информация
присутствует.
Последовательность
Требование не противоречит другим требованиям и полностью соответствует внешней
документации.
Атомарность
Требование «атомарно». То есть оно не может быть разбито на ряд более детальных
требований без потери завершённости.
Отслеживаемость
Требование полностью или частично соответствует деловым нуждам как заявлено
заинтересованными лицами и документировано.
Актуальность Требование не стало устаревшим с течением времени.
Выполнимость Требование может быть реализовано в пределах проекта.
Недвусмысленность
Требование кратко определено без обращения к техническому жаргону, акронимам и
другим скрытым формулировкам. Оно выражает объективные факты, не субъективные
мнения. Возможна одна и только одна интерпретация. Определение не содержит нечётких
фраз. Использование отрицательных утверждений и составных утверждений запрещено.
Обязательность
Требование представляет определённую заинтересованным лицом характеристику,
отсутствие которой приведёт к неполноценности решения, которая не может быть
проигнорирована. Необязательное требование — противоречие самому понятию требования.
Проверяемость
Реализованность требования может быть определена через один из четырёх возможных
методов: осмотр, демонстрация, тест или анализ.
Логичность Логическая взаимосвязь компонентов
Трассируемость Связь с требованием выше и требованием ниже
22. КАК ТЕСТИРОВАТЬ ТРЕБОВАНИЯ?
иметь хорошие доменные знания в области
смотреть на трассировку вверх и вниз (на бизнес-требования и на
низкоуровневые требования — дизайн, макеты, детальное описание
реализации), составлять матрицы трассируемости
форматировать требования в виде таблиц со всеми возможными
вариантами
обращать внимание на общие формулировки
представить себя на месте заказчика/аналитика/простого пользователя и
пытаться предположить, будет ли понятно то или иное требование
руководствоваться здравым смыслом и собственным опытом
25. ПОМНИТЕ!
В принципе, бизнес аналитик не обязан описать ВСЕ возможные ситуации.
Протестировать приложение максимально
возможным количеством сценариев –
задача тестировщика!