С этим файлом связано 4 файл(ов). Среди них: ПР3.docx, ПР1.docx, Filosofia_Alisherov.ppt, ДИПЛ.-материал. и процессуаль право.docx.
Показать все связанные файлы
Подборка по базе: бланк анализа контр. работ.doc, Чек — лист анализа фрагмента урока.docx, Карта анализа здоровьесберегающей деятельности образовательного , Схема анализа нормативной документации — 2023-03-17T144045.239.d, образец анализа по истории 2020 г..pdf, Есин А.Б. Принципы и приемы анализа литературного произведения (, Образец оформления анализа фильма (сериала).pdf, Глава 2. Методика анализа рынка.2.2.задание2.docx, Глава 2. Методика анализа рынка.2.2.задание1.docx, Глава 2. Методика анализа рынка.2.1.задание1.docx
Практическая работа №8 «Реинжиниринг методом интеграции»
Цель: освоить на практике особенности работы в среде деловой графики и демо-версии систем поддержки управления предприятием, научиться приемам построения моделей бизнес- процессов в различных нотациях.
Теоретические вопросы
- Идентификация бизнес-процессов.
- Реализация и внедрение проекта РБП.
- Управление РБП.
- Участники РБП.
- Состав и функции команд РБП.
- Методы РБП.
- Инструментальные программные средства РБП.
- Перечислите этапы реинжиниринга бизнес-процессов.
- Какова роль мотивации к проведению реинжиниринга для различных групп сотрудников компании?
- Что должна содержать директива на проведение реинжиниринга?
- Перечислите основных участников проекта по реинжинирингу, их роли и обязанности.
- Как классифицируются, выделяются и ранжируются бизнес- процессы? Приведите примеры.
- Каково основное содержание этапа обратного инжиниринга?
- Каково основное содержание этапа прямого инжиниринга?
- Как осуществляется внедрение проекта реинжиниринга бизнес- процессов?
- Какова организационная структура проекта РБП?
- Отличается ли на ваш взгляд команда проекта по РПБ в России и за рубежом? Ответ обоснуйте.
- Каково значение информационных технологий при проведении работ
по РБП?
- Какие информационные сервисы используются для автоматизации прикладных и информационных процессов в качестве средств реинжиниринга?
Основные этапы реинжиниринга компании (организации)?
В целом работа по реинжинирингу бизнеса состоит из двух основных этапов: ―обратного‖ и ―прямого‖ инжиниринга компании. Для того, чтобы изменить систему управления, ее нужно сначала описать и оценить. Поэтому реинжиниринг начинается с описания и оценки ситуации ―как есть‖. Для того чтобы понять, как и зачем менять, надо разработать цели и стратегию изменений, модель системы управления ―как нужно‖. После этого реинжиниринг системы управления требует разработки плана действий по переходу из ситуации ―как есть‖ в ситуацию ―как надо‖. Поэтому в качестве необходимых шагов реинжиниринга компании можно выделить:
- Выбор стратегических приоритетов компании для формулирования целей бизнес- реинжиниринга и определения наиболее важных бизнес-процессов компании.
- Создание модели существующей компании ―как есть‖ на основе моделирования бизнес- процессов и функциональной структуры компании до начала проведения изменений.
- Анализ модели существующей компании и выявление узких мест в компании c точки зрения функциональной структуры компании и ее бизнес-процессов.
- Разработка новой функциональной структуры и бизнес-процессов компании на основе методов бизнес-реинжиниринга
- Разработка и организация использования поддерживающих информационных систем. При этом определяются требуемые ресурсы (оборудование, программное обеспечение) и при необходимости реализуется специализированная информационная система.
- Переход компании на новую функциональную структуру и бизнес-
процессы, то есть внедрение новой системы управления в практику.
Как правило, перечисленные шаги выполняются не последовательно, а по крайней мере частично параллельно, причем некоторые шаги повторяются несколько раз.
Выбор вида реинжиниринга
Различают реинжиниринг в узком смысле (перепроектирование отдельных бизнес- процессов) и широком смысле (полная реструктуризация организационной структуры и бизнес- процессов). Какой вариант выбрать компании зависит от целей реинжиниринга, которые в свою очередь формируются в зависимости от стратегических приоритетов компании.
Многие компании, задумав использовать методы бизнес-инжиниринга,
ограничиваются
―обратным‖ бизнес-инжинирингом, то есть построением и анализом модели
бизнес-процессов
―как есть‖, так как он представляет самостоятельную ценность, поскольку дает возможность выявлять узкие места компании, оценивать последствия увеличения (уменьшения) ресурсов в некотором подразделении, сравнивать между собой последствия различных вариантов и т. п.
Бенчмаркинг
Реинжиниринговые команды могут использовать
так называемый бенчмаркинг (benchmarking). В сущности бенчмаркинг состоит в поиске компаний, которые делают что-то лучше всех, и в изучении того, как они этого добиваются, чтобы использовать эту информацию для проведения реинжиниринга собственной компании.
Проблема использования бенчмаркинга состоит в том, что он может ограничить мысленную работу реинжиниринговой команды рамками того, что у же сделано в отрасли. Используемый таким образом бенчмаркинг является средством только догнать конкурента, а не резко вырваться вперед. Бенчмаркинг способен, однако, обогатить реинжиниринговые команды идеями, особенно в том случае, когда в качестве образцов рассматриваются компании других отраслей.
Задание №1
Анализ деловой ситуации:
Охарактеризуйте позицию организации на рынке.
- Проведите аудит бизнес-процессов.
- Оцените уровень непротиворечивости бизнес- требований к модулям информационной системы.
- Какие инновационные технологии сферы ИТ требуется внедрить
в бизнес- процессы организации?
- Каковы перспективные направления реинжиниринга отдельных бизнес-процессов на предприятии?
Описание ситуации (кейса):
Компания «Эльдорадо» – крупнейшая сеть магазинов электроники и бытовой техники в России и ближнем зарубежье. Сегодня под брендом «Эльдорадо» работают 700 магазинов, расположенные во всех российских городах. Миссия «Эльдорадо» — помочь сделать правильный выбор и создать собственный яркий и комфортный мир, наполненный качественной техникой лучших мировых брендов. Компания стремимся предоставлять покупателям максимально широкий ассортимент самой современной техники по доступным ценам. Высококвалифицированный персонал, который всегда готов дать грамотную консультацию по любому вопросу, постоянное проведение специальных акций и мероприятий, способствующих еще более выгодным покупкам, качественное обслуживание, а также наличие огромного ассортимента – вот что отличает и выделяет магазины
«Эльдорадо» в их сегменте рынка. Магазин
«Эльдорадо» занимается реализацией товара бытовой техники. Каталог открывает перед покупателями огромный выбор товаров для дома, включая мелкую и крупную бытовую технику, фото и видео аппаратуру, сотовые телефоны и мобильные устройства, электрические и бытовые инструменты, аксессуары к бытовой технике и миллионы других сопутствующих товаров. Рассмотрим один из магазинов, в нем работают 8 продавцов. Продавцы помогают покупателю сделать правильный выбор техники по обустройству своего дома. Покупатель выбирает товар, бренд, модель, расцветку и комплектацию, дополнительно может приобрести необходимые аксессуары, доставку и установку товара по необходимому адресу. Продавец оформляет заказ, делает выписку на товар, заполняет гарантийный талон, приглашает покупателя пройти на кассу для оплаты. На кассе работают 2 кассира, они принимают оплату наличных денежных средств, по окончанию смены
передают деньги инкассатору банка. Если товар приобретен с основного
склада, клиент по желанию может забрать оплаченный товар сам или оформить доставку, установку техники в удобное для покупателя время по указанному адресу. Если товар приобретен с отдаленного склада (Новосибирск), клиенту необходимо подождать срок исполнения заказа – обычно одна-две недели. После оплаты покупки за наличный расчет необходимо подойти к сотрудникам информации, и оформить доставку (уточнить дату доставки, установки и адресные данные). На складе работают 2 кладовщика, каждый из которых «ведет» несколько заказов, и отслеживает движение товара. Помогают принимать машины с товаром и отгружать товар 2 грузчика. Директор занимается обучением персонала, еженедельно снимает остатки товара и заказывает с отдаленных складов товар, который заканчивается. Когда заказ готов, специалист по
установке техники связывается с покупателем и договаривается о точном времени доставки, доставляет товар клиенту, устанавливает в необходимом месте и подписывает документы о выполнении работ у клиента. После доставки заказа специалист сдает документы бухгалтеру, который контролирует правильность расчетов и оформления.
Задание №2
- Описать технико-экономические характеристики предприятия.
- Разработка стратегии предприятия. Привести бизнес-направления деятельности предприятия. Определить необходимость применения реинжиниринга.
- Разработка предложений по усовершенствованию системы управления предприятием. Описание всех бизнес-процессов отдела или предприятия. Представить технологическую карту бизнес- процессов.
- Построение функциональной модели, модели потоков данных существующих бизнес- процессов.
- Анализ «узких мест».
- Отбор бизнес-процессов для реинжиниринга.
- Построение функциональной модели, модели потоков данных бизнес-процессов с предложениями по реинжинирингу.
- Анализ экономической эффективности.
Практическая работа №9 «Разработка требований безопасности информационной
системы»
Цель: получение навыков разработки требований безопасности информационной системы.
Теоретические вопросы
- Угрозы тбезопасности информационных систем.
- Обеспечение безопасности функционирования информационных систем.
- Методы и средства обеспечения безопасности информационных систем.
Задание № 1
Определите Цель и задачи системы защиты информации.
Задание № 2
Перечислите факторы, влияющие на организацию системы защиты информации.
Задание № 3
Определите дестабилизирующие воздействия на информационную систему и способы их нейтрализации.
Задание № 4
Напишите программу по подсчету общей вероятности нарушения безопасности объекта, подсчитываемой по формуле
где к – число угроз; n – число нарушителей; Рi – вероятность появления субъекта i-го типа; p(j/i) – условная вероятность того, что субъект i-го типа выберет для реализации угрозу j-го типа; qн1– вероятность несрабатывания средств обнаружения; qн2 – вероятность несрабатывания средств отражения; а
- постоянная величина, характеризующая «скорость» реализации угрозы, tот
- время, которым располагает субъект угрозы, если tот = 0 – угроза не
реализуется.
Задание № 5
Разработайте требования безопасности информационной системы (см. практическая работа
№ 1).
Задание № 6
Выберите методы и средства защиты информации для исследуемой информационной
системы.
ГЕОРГИЙ САВЕЛЬЕВ
Как разработать
Бизнес-требования
Модель выявления требований
Давайте поговорим о том, откуда берутся требования. И бизнес-требования (БТ), и нефункциональные требования напрямую вытекают из потребностей бизнеса.
Напомним, что нефункциональные требования (НФТ) определяют свойства, которые система должна демонстрировать, или ограничения, которые она должна соблюдать, не относящиеся к поведению системы. Например, производительность, удобство сопровождения, расширяемость, надежность, факторы эксплуатации.
Из бизнес-требований, помимо функциональных (ФТ) и нефункциональных требований, напрямую могут вытекать ещё и требования причастных сторон. В свою очередь, из требований причастных сторон могут вытекать ФТ и НФТ.
Культурные образцы — это те требования, которые можно получить на основе стороннего опыта. То есть, изучая какой-то аналогичный готовый продукт на рынке, мы можем сформировать требования к своему продукту (даже если эти требования никто из стейкхолдеров не озвучивал напрямую).
Все виды требований возникают в конкретном контексте, то есть следуют из Операционного контекста, к которому относятся активы, спрос, технологии и так далее. Подробнее про влияние контекста на бизнес-требования смотрите в статье Бизнес-требования. Назначение.
В наглядном виде модель выявления требований представлена на схеме:
Модель выявления требований
Почему важно выявлять и документировать
бизнес-требования?
Бизнес-требования играют важную роль на проекте, поскольку помогают определить смысл проекта и обосновать его необходимость. Именно бизнес-требования, как правило, используются для определения рамок проекта, то есть входят в состав концепции проекта.
Ввиду своей понятности всем заинтересованным лицам, бизнес-требования служат артефактом, на основе которого удобно заключать договоренности. Чем ниже уровень требований, тем больше нюансов, а значит, сложнее договариваться.
Из БТ вытекают критерии приемки и именно на их основе производится оценка результатов разработки ИТ-решения.
Также бизнес-требования часто используются на проекте для приоритизации решений: если есть понимание, как то или иное решение связано с БТ, приоритизировать его не составит труда. Именно БТ являются снованием для принятия решений в ходе проектирования и внесения изменений в реализацию проекта.
Кроме того, бизнес-требования в Agile — это ключевой инструмент Product Owner для управления бэклогом продукта и ведения переговоров со стейкхолдерами.
Программа переподготовки
«Business Analyst Bootcamp»
Курс для тех, кто хочет сменить профессию и начать работать в ИТ с хорошими перспективами, занимаясь исследованием задач и проблем бизнеса и постановкой задач на автоматизацию
Какие бывают бизнес-требования?
Согласно концепции Six Sigma, бизнес-требования — это критичные активности предприятия, подлежащие выполнению для достижения целей организации, вне зависимости от конкретного решения.
Исходя из определения Six Sigma, классификация требований будет опираться на критичные активности, т. е. бизнес-требования могут быть связаны с:
- Определением значимых характеристик продуктов или услуг.
- Распознаванием и обработкой событий.
- Принятием решений (своевременность, правильность).
- Сбором, обработкой, хранением и предоставлением информации.
- Обеспечением возможности выполнения действий (субъект, действие, объект, время, условия, способ).
- Предотвращением возможности выполнения действий (субъект, действие, объект, время, условия, способ
Ниже приведены примеры бизнес-требований по видам критичных активностей.
Вид БТ: Значимые характеристики продуктов или услуг
Примеры БТ:
- Скорость обслуживания — очередь на кассе должна быть не длиннее 4 покупателей.
- Своевременность доставки — клиент должен получить пиццу горячей и не умереть ожидая ее.
- Простота получения услуги — оформление предварительно одобренного кредита должно завершаться за одно посещение клиента.
Вид БТ: Распознавание и обработка событий
Примеры БТ:
- Банк должен своевременно получать оповещения о сбоях в работе банкоматов.
- К моменту начала этапа работ, все нужные материалы и оборудование должны находиться на объекте строительства и быть готовыми к использованию.
- Сотрудники должны быть своевременно проинформированы о назначенных им задачах.
Вид БТ: Принятие решений
Примеры БТ:
- По каждому обнаруженному дефекту, на основе имеющейся информации, должно быть оперативно принято решение о способе его устранения в соответствии с протоколом реакции на аварийные ситуации.
- Решение о выдаче кредита должно приниматься на основании…
- Отпускная цена на товар для конкретного клиента определяется на основании… в зависимости от …
Вид БТ: Сбор, обработка, хранение и предоставление информации
Примеры БТ:
- С момента обнаружения дефекта и до его полного устранения должна регистрироваться и храниться следующая информация.
- Инвестиционный банк в конце каждого рабочего дня должен направлять Регулятору информацию о…
- Для принятия решений об участии в тендере необходимы результаты предварительной оценки себестоимости проекта.
Вид БТ: Обеспечение возможности выполнения действий
Примеры БТ:
- В случае неудовлетворенности качеством обслуживания, клиент должен иметь возможность направить жалобу по телефону, по электронной почте или через сайт компании.
- Клиент должен иметь возможность отказаться от заказа до момента его отправки.
- Покупатели должны иметь возможность оформить и оплатить покупку самостоятельно посредством мобильного приложения.
Вид БТ: Предотвращение возможности выполнения действий
Пример БТ:
- Должна исключаться возможность доступа к защищенным ресурсам лиц, не являющихся сотрудниками компании.
На данный момент в профессиональных сообществах аналитиков ведутся активные дискуссии по поводу требований, сформулированных в негативной форме. Считается, что абсолютное большинство этих требований можно и нужно переформулировать в позитивную форму — это снизит риск непонимания.
Требование, заданное с позиции «Система должна делать…», задает конкретное направление действиям разработчика, а также дает некоторые ограничения — в отличие от формулировки требований с позиции «Система не должна…»
Но, конечно, существуют ситуации, когда необходимо сформулировать требования именно в негативной форме и, чаще всего, это касается решения задач безопасности.
Признаки проблем в бизнес-требованих
Можно выделить несколько типичных признаков проблем с бизнес-требованиями.
- Неконкретность (слишком абстрактная формулировка)
- Невозможность проверки (нет понимания, что является индикатором выполнения требования)
- «Магические» числа (приведены какие-то необоснованные данные: «время обработки заявки 14 минут»)
- Непонятная польза (не написано, для чего делаем то, что делаем; действительно ли это необходимо)
- Избыточная детализация (зачастую делает требование слишком жестким и нечитаемым)
- Невыполнимость (например, требование «обеспечить 100%-ую достоверность данных». Для чего это требование? Почему возникают недостоверности? С этой проблемой можно как-то бороться или это просто факт?)
- Несогласованность (противоречивость; с одной стороны Покупатель хочет найти продукт с наилучшими качествами по наименьшей цене, а с другой — Продавец хочет стимулировать покупку продуктов, приносящих наибольшую прибыль)
- Нерелевантность (приведено требование, которое вообще не понятно, какое отношение имеет к данному проекту)
- Привязка к конкретному решению, в том числе — конкретный бизнес-процесс
Хотелось бы сделать акцент на работе с «Магическими числами», поскольку зачастую такие ошибки в требованиях встречаются даже у опытных аналитиков.
Работа с «магическими» числами
Чтобы проверить требование на наличие данной проблемы, можно определить чувствительность (столбец «чуть-чуть» в таблице) требования и его границы (столбец «гораздо» в таблице).
Для успеха проекта важно своевременно обнаруживать некорректные требования и решать, что с ними делать.
Для тестирования бизнес-требований на «магические числа» можно использовать модель, представленную на рисунке.
Любое число (разместим его в центральном круге) проверяется на чувствительность (на рисунке это столбец «чуть-чуть»). Что будет, если число будет немного больше? Есть ли какие-то последствия в таком случае для системы, стейкхолдеров? А если число будет чуть-чуть меньше?
Затем мы задаем вопросы, пытаясь выявить реальные границы требования. Что, если число будет значительно больше? На что это повлияет? А если влияние достаточно серьезно, то нельзя ли предложить дополнительный способ обойти проблему? Границы обозначены в модели как столбец «гораздо».
Расмотрим пример требования, которое содержит «магическое» число:
“
Требование: Сократить среднее время обработки заявки до 14 минут
Проверим это требование на чувствительность. Для этого зададим вопросы:
- Что будет, если время обработки заявки будет не 14, а 12 минут?
- Что, если увеличить до 14,5 мин? Насколько это критично?
В процессе проверки может выясниться, что обработка заявки может занимать даже 30 минут, не принося никакого ущерба бизнесу.
Проверим границы требования, ответив на вопросы:
- Может быть, целесообразно сократить время обработки до 0 минут, т. е. не обрабатывать заявки и перевести клиента на самообслуживание?
- Что будет, если одна заявка будет обрабатываться день? Это плохо? Как это скажется на бизнесе?
Данный тест помогает понять, является ли число «магическим». Если число связанно с какими-то объективными процессами (например, требованиями законодательства),
то мы можем определить его чувствительность и границы, а значит появление этого числа в требованиях вполне обосновано.
Если в ходе тестирования обнаружится, что установить чувствительность и границы числа не представляется возможным, такие требования необходимо переформулировать в конкретные условия или относительные величины.
Попробуем переформулировать требование на примере:
“
Исходное требование:
Оповестить надлежащих стейкхолдер не позднее 5 минут, после наступления события.
Новое требование:
Задержка в оповещении не должна приводить к задержке выполнения определенного действия получателем этого сообщения.
То есть задержка не должна ни на что влиять. Таким образом, мы достигаем некоторой гибкости относительно временных затрат.
Примеры некорректных бизнес-требований
- Обеспечить высокое качество обслуживания — Как проверить, что качество обслуживания высокое?
- Сократить среднее время обработки заказа до 14 минут — Почему до 14 минут, чем это обосновано? А почему не до 1 минуты? Какую пользу принесет сокращение времени обработки заказа?
- Обеспечить 100% достоверность учетных данных — Как мы узнаем какая достоверность? Как можно определить, что данные достоверны? В результате чего возникает недостоверность? С этим реально можно что-то сделать? Выполнимо ли данное требование?
- Гарантировать правильность принимаемых решений — Что выступает гарантом? Это выполнимо?
- Внедрить ERP — Кому и зачем это нужно? В чем проблема?
Типовые ловушки аналитика
Проблемы с требованиями, как правило, возникают, когда аналитик попадает в одни и те же типовые ловушки. Вот основные ловушки аналитика при работе с бизнес-требованиями:
- Формальность — «пишу, потому что надо здесь что-то написать».
- Узкие рамки анализа — не рассматриваем ничего, что выходит за рамки проекта.
- Превращение в аудит — выясняем все обо всем «на всякий случай».
- Превращение метода в цель — строгое следование определенному шаблону с превращением средств в цель и потерей основной цели проекта.
Что можно сделать с каждой из этих ловушек?
Как документируются бизнес-требования?
В практике бизнес-аналитика присутствует два основных подхода документирования требований:
1. Монолитно
- Все требования описываются вместе в виде структурированного повествовательного текста.
- Возможны ссылки на элементы требований (цели, метрики, предположения, риски и т. п.).
2. Дробно
- Каждое требование описывается отдельно.
- Каждому требованию присваивается уникальный идентификатор.
- Возможна трассировка к конкретному бизнес-требованию.
Ниже будет приведен шаблон для каждого из этих видов документирования.
Где документируются бизнес-требования?
Стандартом ISO предполагается, что бизнес требования будут отражены монолитно в Спецификации требований стейкхолдеров (StRS). Для этого предусмотрен отдельный раздел Introduction, который включает в себя Business Purpose (цели), Business Scope (границы), Business Overview (обзор бизнеса).
В ГОСТе 34.602−89 предполагается, что бизнес-требования будут описаны также, монолитом, в техническом задании на создание автоматизированной системы. в разделе Назначение и цели создания системы и Характеристика объектов автоматизации.
Если говорить о дробном документировании, то чаще всего это подходы, подразумевающие использование Спецификации бизнес-требований (BRD).
В Agile бизнес-требования могут быть отражены по-разному. Это не формализовано, нет стандарта документов и способов описания.
Шаблон монолитного описания БТ
Карл Вигерс в своей книге «Разработка требований к программному обеспечению. Руководство» предлагает хороший шаблон описания БТ монолитом в рамках документа Scope and Vision (рамки и видение). В этом документе выделяется раздел Бизнес-требования, который включает в себя:
- Контекст.
- Описание возможности.
- Бизнес-цели.
- Метрики успешности.
- Образ результата (Vision).
- Деловые риски.
- Предположения и зависимости бизнеса.
Советы Вигерса по описанию БТ
- Сокращайте шаблон в соответствии с потребностями.
- Заполняйте не сверху вниз, а по мере поступления информации.
- Пустой раздел — признак его ненужности или необходимости дополнительного изучения.
- Не повторяйте то, что уже описано в другом месте — сошлитесь на имеющееся описание.
- Исходите из возможности повторного использования БТ в других проектах.
- Выявляйте конфликты, противоречия и выносите на обсуждение.
- Проводите повторное рассмотрение БТ при каждой смене лиц, принимающих решения, чтобы убедиться, что понимание БТ не изменилось
Шаблон дробного описания БТ
Ниже представлен авторский шаблон дробного описания бизнес-требований. Он состоит из нескольких ключевых элементов:
1. Заголовок, который включает в себя:
- Уникальный идентификатор.
- Краткое описание.
2. Определение, развернутое объяснение, что из себя представляет БТ.
3. Источник, откуда это требование взялось.
4. Зависимости, если они есть между другими требованиями.
5. Обоснование, краткое пояснение мотивации.
6. Комментарий, любые пояснения. В приведенном ниже примере представлено описание диаграммы состояний.
Шаблон дробного описания БТ
Как документировать —
объединять или дробить?
Для того чтобы определиться с тем, как документировать, придерживайтесь следующих правил:
1. Нет нужды документировать, если:
- Узко-технический проект небольшого объема.
- Всем все понятно и вряд ли кому-то когда-то что-то будет непонятно.
2. Объединяем, если:
- Компактный проект с узкими целями.
- Узкая предметная область.
- Бизнес-требования умещаются на паре страниц.
3. Дробим, если:
- Много бизнес-требований.
- Сложные бизнес-требования.
- Могут реализовываться по отдельности.
- Высокая степень неопределенности.
Что делать с отсутствующими или плохими БТ?
Прежде всего стоит пересмотреть уже имеющиеся требования, разобраться в их назначении и перепроектировать при необходимости. Подобное фундаментальное переосмысление бизнес-процессов называется реинжиниринг.
Далее необходимо выяснить больше информации об этих требованиях. Сделать это можно посредством анализа документов, наблюдения, а также провести интервью, использовать метод пяти почему или бенчмаркинг (наблюдение за людьми в аналогичных организациях).
Полученную информацию необходимо задокументировать одним из нескольких способов:
1. Создать отдельный документ. Например, «Каталог целей» с дробным документированием бизнес-требований, на которые будем ссылаться.
2. Добавить комментарии к уже существующим требованиям, поясняя откуда оно взялось.
3. Собрать все непонятные требования в один документ и в начале этого документа вставить раздел Мотивация. В этом разделе необходимо указать, для чего нужно все то, что мы выяснили.
4. В конце готового документа требований добавить приложение Обсуждения и договоренности. В процессе заполнения разбить его на тематические разделы по бизнес требованиям и внести в них все договоренности с присвоением идентификаторов, на которые в последствии можно будет ссылаться в тексте самого документа.
Программа переподготовки
«Business Analyst Bootcamp»
Курс для тех, кто хочет сменить профессию и начать работать в ИТ с хорошими перспективами, занимаясь исследованием задач и проблем бизнеса и постановкой задач на автоматизацию
-
Что делать, если, помимо ТЗ, есть еще и пользовательские требования?
Зачастую пользовательские требования объединяются с бизнес-требованиями, т.к. объем БТ не очень большой, если они правильно определены, а значит делить эти требования на 2 отдельных документа нецелесообразно.
Во избежание возможного недопонимания, в названии документа можно явно указать «Требования бизнеса и пользователей». -
Вопрос:
Имеет ли смысл создание промежуточных документов таких как VSD (Vsion & ScopeDocument) и BRD (Business Requirement Document)?
С точки зрения Agile практик, бизнес-требования — это епархия Product Owner. Следовательно, работать нужно так, как удобно, и не создавать лишних документов для соблюдения формального протокола. Чем документов меньше, чем они компактнее и проще, тем эффективнее.
-
Должны ли в описание БТ быть включены требования к описанию «хотелок» в части User Interface?
Отрицать «хотелки» или указывать стейкхолдерам на их неуместность — не всегда хорошо. Поэтому можно написать требования так, как считаете нужным, а в примечании написать комментарий для разработчиков с пожеланиями конкретного стейкхолдера относительно реализации данного требования.
-
Обязательно ли современному аналитику владеть навыками программирования?
Не обязательно, но желательно. Чем шире кругозор аналитика, чем больше диапазон его возможностей, тем от более эффективным он будет выполнять свою работе и продвигаться по карьерной лестнице.
-
Должен ли аналитик просматривать баги проекта и принимать решения о их важности?
Иногда аналитик должен просматривать баги, а иногда — нет. Зависит от договоренностей в рамках проекта и распределения ролей в команде.
Что касается принятия решений о важности, то чаще всего их принимает аналитик. Но стоит помнить, что не всегда стоит загружать аналитика рутиной работой, т.к. из всех обнаруженных багов 80% не требуют, чтобы их прогоняли через формальный процесс, потому что и так всем понятны.
-
Должен ли аналитик проводить тестирование и валидацию продукта?
К функциям бизнес-аналитика относятся определение критериев приемки и оценки для продукта, поэтому они часто участвуют в приемо-сдаточных испытаниях и могут разрулить какую-то ситуацию. Т.е. аналитик не должен проводить тестирование, но хорошо, когда он участвует в приемо-сдаточных испытаниях.
-
Что является объектом требований вида «Должна собираться информация о недоступности банкомата» — к чему это бизнес требование? К организации? Подразделению? К бизнес-процессу?
Это требование бизнеса, объектом является банкомат, которым мы должны управлять. Управление состоит в том, что мы умеем различать его состояния, умеем отслеживать то, что с ним происходит, умеем реагировать на эти события и изменять состояния объекта управления, т. е. банкомата. Получается, это бизнес-требование, связанное с необходимостью и способностью организации управлять определенными типами объектов (например, банкоматами).
-
Что делать с функциями, если они не мапятся на конкретное БТ или мапятся сразу на два (при этом функция должна быть в скоупе)?
Важно понимать, для чего мы делаем трассировку. В данном случае мы делаем трассировку, чтобы понять — БТ выполняется или нет?
Нам не важно замапить все на все. Если мы делаем трассировку к модулям, это не значит, что нам надо оттрасировать каждую функцию и каждое требование. Достаточно понимать, данное требование — оно выполнено или нет? Если понимания достигнуто, то дальше можно не трассировать. Если мы пытаемся оттрасировать в другую сторону и видим какую-то висячую функцию, то это не значит, что у нас не должно быть никаких висячих функций, которые мы не можем замапить на какую-то функцию.
Стоит помнить, что трассировка — это инструмент, а не цель.
Георгий Савельев
Эксперт по бизнес-анализу, член Международного института бизнес-анализа (IIBA), первый CBAP в России. Соавтор BABOK v.3. Вице-президент IIBA Russian Chapter.
Имеет 20-летний опыт работы в качестве бизнес-аналитика, архитектора решений, консультанта и тренера в сфере производства и дистрибуции FMCG, складской и транспортной логистики, управления продажами, дорожного строительства, металлургии, нефтедобычи, гостиничного бизнеса, занятости, здравоохранения.
Участвовал в реализации более 50 проектов по разработке, внедрению и совершенствованию программного обеспечения.
С 1990 года занимается проведением тренингов и деловых игр для руководителей и специалистов. Автор статей по бизнес-анализу.
Создатель авторских аналитических методик и моделей оперативного планирования. Участвовал более чем в 20 консалтинговых проектах по увеличению прибыльности и совершенствованию операционной эффективности компаний.
Участник профессиональных ассоциаций IASA, ABPMP Russian Chapter.
Подписаться на новые статьи
Сбор и анализ требований
Первые 90% работы отнимают
10% времени, а последние 10%
— оставшиеся 90% времени.
Правило 90/90
Все требования к проектируемой системе предлагается размещать на нескольких иерархических уровнях. На самом нижнем уровне располагаются требования, которые одинаково подходят для автоматизации технологических процессов в целом без учета особенностей конкретной прикладной области. Здесь необходимо обратиться к ГОСТам и другим нормативным документам. Далее следует уровень требований к автоматизированной системе определенного (заданного) класса с учетом соответствующих нормативных документов, определяющих порядок и описание заданного технологического процесса. И наконец, третий уровень составляют требования к конкретной системе. Кроме того, в стандарте IEEE 830-1993 Спецификация требований к ПО (Software Requirements Specification – SRS) проведено деление всех требований на две группы. Первая группа документирует потребности заказчика и записывается на языке, понятном заказчику – это т.н. С-требования. Вторая группа документирует требования в специальной, структурированной форме. Этот документ называют требованиями разработчика, или D-требованиями.
В ГОСТ 24.103-84 «Автоматизированные системы управления. Основные положения» перечислены общесистемные принципы, которые необходимо соблюдать при создании АСОИУ:
- системность – заключается в том, что при создании, функционировании и развитии АСУ должны быть установлены и сохранены связи между структурными элементами, обеспечивающие ее целостность;
- развитие – заключается в том, что АСУ должна создаваться с учетом возможности пополнения и обновления функций и видов ее обеспечения путем доработки программных и (или) технических средств или настройкой имеющихся средств;
- совместимость – заключается в обеспечении способности взаимодействия АСУ различных видов и уровней в процессе их совместного функционирования;
- стандартизация и унификация – заключается в рациональном применении типовых, унифицированных и стандартизованных элементов при создании и развитии АСУ;
- эффективность – заключается в достижении рационального соотношения между затратами на создание АСУ и целевыми эффектами, получаемыми при ее функционировании.
Кроме того, в п.3.4. ГОСТ 24.103-84 при создании АСУ рекомендуется максимально использовать типовые проектные решения, пакеты прикладных программ, унифицированные пакеты а также применять для новых объектов управления ранее созданные проекты АСУ. Это положение полностью соответствует принципам инженерии ПО, в особенности, концепции повторного использования компонентов.
ГОСТ 24.104-85 «Автоматизированные системы управления. Общие требования» устанавливает требования к каждому виду обеспечения отдельно. Перечислим те из них, на которые нужно обратить внимание.
Требования к программному обеспечению:
- В АСУ должны быть преимущественно использованы системы управления базами данных (СУБД), зарегистрированные в установленном порядке.
- Программное обеспечения АСУ должно иметь средства диагностики технических средств АСУ и контроля на достоверность входной информации.
- В программном обеспечении АСУ должны быть реализованы меры по защите от ошибок при вводе и обработке информации, обеспечивающие заданное качество выполнения функций АСУ.
Требования к информационному обеспечения АСУ
- Форма представления выходной информации АСУ должна быть согласована с заказчиком (пользователем) системы.
- В АСУ должны быть предусмотрены необходимые меры по контролю и обновлению данных в информационных массивах АСУ, восстановлению массивов после отказа каких-либо технических средств АСУ, а также контролю идентичности одноименной информации в базах данных.
Требования безопасности
- Неправильные действия персонала АСУ не должны приводить к аварийной ситуации.
Особую роль среди общесистемных требований играют требования к надежности и безопасности.
Кроме сбора требований особое значение имеет процесс управления требованиями. В технологии Rational Unified Process определяются пять уровней зрелости процесса управления требованиями:
- требования записаны в согласованном формате;
- требования организованы, используются стандартные форматы и метаданные о требованиях, поддерживается контроль версий;
- требования структурированы в соответствии со своими типами (функциональными и нефункциональными);
- требования отслеживаются в соответствии с их типом;
- требования интегрируются с процессами управления изменениями, моделирования, кодирования и т.д.
Чтобы соответствовать первому уровню, достаточно взять стандартный текстовый редактор или электронную таблицу для хранения требований; при этом принципы их использования разными группами команды разработки не стандартизованы. На втором уровне документы с описанием требований должны иметь согласованный формат, следовать определенной схеме нумерации и контроля версий. Уровень структурированных требований означает переход к созданию стандартных спецификаций с целым рядом атрибутов (приоритет требования, риск, стоимость и др.). Следующие уровни ставят задачу отслеживания зависимостей между различными требованиями, а также их влияния на другие модели в жизненном цикле ПО.
Хорошую спецификацию отличают следующие элементы:
- Акцент на деталях и их четкое определение.
- Забота о недопущении неверного толкования.
- Непротиворечивость внутри данной спецификации и другими спеками.
- Логическая взаимосвязь компонентов.
- Полнота охвата предмета.
- Соответствие нормативным актам.
- Соответствие деловой практике.
С-Требования
Требования заказчика к системе (С-требования) фиксируются разработчиками посредством проведения специально организованного опроса-интервью. Но перед этим необходимо идентифицировать пользователей системы, т.е. указать категории лиц, которые должны или гипотетически могут в настоящий момент или в будущем воспользоваться разрабатываемой системой. В зависимости от масштабов системы эта задача может оказаться не тривиальной, поэтому требует особого внимания, поскольку при создании системы необходимо учесть требования всех заинтересованных лиц.
Перед проведением интервью:
- перечислить и расставить приоритеты в списке интервьюированных;
- спланировать интервью с фиксированным временем начала и конца;
- составить глоссарий проекта, в котором перечисляются основные термины предметной области.
Во время интервью:
- задокументировать требования;
- составить эскиз графического интерфейса;
- спланировать следующую встречу.
После интервью:
- составить черновик С-требований SRS с использованием CASE-инструментов;
- определить конфигурацию оборудования;
- передать черновик С-требований заказчику для получения его замечаний.
Рисунок – Порядок составления С-требований
Заказчики разрабатывают концепцию, часто подсознательную и неполную того, как их приложение будет работать. Эту концепцию иногда называют моделью приложения, или концепцией работы. Для формализации концепции работы приложения, представленной заказчиком, инженеры могут использовать комбинации следующих технологий:
- Методология SADT;
- Диаграммы вариантов использования (use case) UML.
- Диаграммы последовательности (sequence diagram) UML.
- Диаграммы состояний (statechart diagram) UML.
- Прототипирование дизайна пользовательского интерфейса входит в фазу проектирования программного обеспечения, однако его также можно считать и частью фазы формирования требований.
Порядок анализа требований заказчика включает следующие шаги:
1. Если требование простое и не имеет связей с другими требованиями, его выражают четкими предложениями в соответствующем разделе SRS.
2. Если требование представляет собой взаимодействие пользователя и приложения, то его, как правило, выражают с помощью варианта использования. Для этого:
2.1. Задают имена вариантам использования;
2.2. Определяют действующие лица;
2.3. Записывают последовательность действий пользователя и приложения;
2.4. Минимизируют ветвление.
3. Если требование затрагивает элементы обработки, каждый из которых получает и выдает данные, используют диаграмму потоков данных (DFD). При этом:
3.1. Определяют элементы обработки (обычно высокого уровня);
3.2. Определяют хранилища данных;
3.3. Показывают пути передачи данных между обрабатывающими элементами. Указывают типы данных, передаваемых в каждом случае.
4. Если требование затрагивает состояния, в которых может находиться программа (или части программы), строят диаграмму состояний в следующей последовательности:
4.1. Определяют состояния (каждое состояние обычно определяют отглагольным существительным, например «Ожидание»);
4.2. Указывают исходное и конечное состояние.
4.3. Определяют события, происходящие вне рассматриваемой части системы, и приводящие к переходу между состояниями;
4.4. Определяют вложенные состояния.
Как только С-требования собраны, как правило, возникает необходимость обновления SPMP. Такое обновление происходит в течение всего жизненного цикла системы. После анализа С-требований также может быть уточнена оценка стоимости системы.
Задача формулирования и корректного управления требованиями становится нетривиальной, если количество требований исчисляется несколькими десятками.
D-Требования
Разработчикам программного обеспечения нужна база для проектирования и разработки. Эта база представляет собой детальные требования (D-требования). D-требования состоят из полного списка конкретных свойств и функциональности, которую должна иметь программа. Каждое из этих требований пронумеровано, помечено и отслеживается по ходу разработки. D-требования должны быть согласованы с С-требованиями.
Типичная последовательность действий для сбора и документирования D-требований показана на рисунке.
Рисунок – Порядок получения D-требований
Существуют несколько типов D-требований:
1. Функциональные требования – определяют работу, которую должно выполнять проектируемая система (например, «приложение будет вычислять стоимость портфеля акций пользователя»).
2. Нефункциональные требования.
2.1. Производительность. Требования к производительности определяют временные ограничения, которые должны быть выполнены в программе. Заказчики и разработчики обсуждают ограничения по времени вычислений, использованию оперативной памяти, объему запоминающих устройств и т. д.
2.2. Надежность и безопасность. Требования надежности определяют надежность в измеряемых величинах. Требования такого типа предполагают вероятность неидеальной работы программы и ограничивают область ее несовершенства. Особое внимание в ПЗ необходимо уделить вопросам обеспечения безопасности системы с учетом возможности искажения данных посредством несанкционированного доступа, сбоя системного или прикладного ПО.
2.3. Обработка ошибок. Эта категория требований объясняет, как программа должна реагировать на возникающие ошибки. Например, что должна делать программа, если она получает сообщение из другой программы в неразрешенном формате? Это не касается ошибок, генерируемых самой программой.
2.4. Интерфейсные требования. Интерфейсные требования описывают формат, в котором программа общается с окружением.
2.5. Ограничения. Ограничения на проектирование или реализацию описывают границы или условия того, как приложение должно быть задумано и разработано. Например, накладываются ограничения на инструменты и языки программирования ввиду сложившихся традиций организации, опыта программистов, совместимости и проч.
3. Обратные требования – это функционал, который система не обеспечивает.
Типичная последовательность получения функциональных D-требований с использованием объектно-ориентированного подхода приведена ниже:
1. Процесс начинается с перечисления классов, упомянутых в вариантах использования – это т.н. классы анализа.
2. Полученный набор классов обычно неполон и следует попытаться найти остальные классы предметной области.
3. Для каждого из полученных классов выписывается вся необходимая функциональность программы, за которую отвечает данный класс. Например, «у каждого клиента будет имя» (атрибут класса Клиент) и «программа должна иметь возможность вычислять капитал каждого клиента» (метод класса Клиент). События, которые должны обрабатывать объекты класса, также должны быть определены. В это же время должны быть разработаны и планы тестирования для каждого D-требования.
4. Связи между классами определяются в два этапа:
4.1. Начальный набор связей определяется на основе анализа диаграмм сотрудничества (collaboration) или диаграмм последовательности. Если два объекта взаимодействуют (обмениваются сообщениями), между ними на диаграмме должна существовать связь (путь взаимодействия), которая преобразуется в двунаправленную ассоциацию между соответствующими классами. Если сообщения между некоторой парой объектов передаются только в одном направлении, то для соответствующей ассоциации вводится направление навигации.
4.2. Анализируются и уточняются ассоциации между классами-сущностями. Задаются мощности ассоциаций, могут использоваться множественные ассоциации, агрегации, обобщения и ассоциации-классы.
5. D-требования проверяются и сравниваются с С-требованиями.
6. D-требования проверяются заказчиком и, затем, публикуются.
Особое внимание необходимо уделить вопросу получения классов анализа, поскольку – это творческий процесс, тесно связанный с анализом информации о предметной области.
При получении классов анализа необходимо учитывать следующие аспекты:
- Класс анализа является четкой абстракцией, моделирующей один конкретный элемент предметной области. Он должен имеет от 3-х до 5-ти операций. Все свойства класса служат реализации его назначения. Однако для реализации своего назначения класс должен иметь минимальное количество связей с другими классами.
- В классах анализа содержаться только ключевые атрибуты и операции, определенные на очень высоком уровне абстракции. Как правило, каждая операция уровня анализа затем разбивается на несколько операций уровня проекта.
- Необходимо избегать глубоких деревьев наследования (3 и более уровней), поскольку частой ошибкой при построении иерархии наследования является использование функциональной декомпозиции, где каждый уровень абстракции имеет только одну операцию. Наследование использует только там, где есть явная иерархи наследования, вытекающая непосредственно из предметной области.
- При выявлении классов посредством анализа текста С-требования, существительные указывают на классы или атрибуты, а глаголы служат признаком операций. Однако синонимы и омонимы могут стать причиной появления ложных классов.
- При выявлении классов совместно с пользователями часто используют т.н. CRC(Class-Responsibilities-Collaborators)-анализ с помощью стикеров и мозговой штурм.
Без возможности четкого контроля каждого требования от проекта до программного кода, реализующего это требование, было бы сложно убедиться в том, что программа разработана в соответствии с установленными требованиями. Когда требования меняются (чего следует ожидать), это становится еще сложнее. Возможность отображать каждое требование на соответствующие части проекта и программы называется прослеживанием.
Один из способов, помогающих обеспечить прослеживание, заключается в отображении каждого функционального D-требования на конкретную функцию целевого языка. На рисунке демонстрируется обеспечение принципа прослеживания для некоторого требования №NNN «Поиск учебно-методических материалов (УММ)»:
- С-требования, сформулированные заказчиком при проведении анкетирования (или интервью), отображаются на диаграмме вариантов использования;
- на этапе проработки D-требований, каждое С-требование представляется комплектом из трех диаграмм: деятельности, классов и последовательностей;
- при проектировании архитектуры системы для удовлетворения требования №NNN в некотором классе слоя предметной области предусматривается соответствующий метод(ы) (например, «findByAuthor» и «findByTitle)»;
- на стадии детального проектирования прорабатывается алгоритм метода, отвечающего за выполнение требования №NNN, а также создается ER-диаграмма БД и конструируется SQL-запрос(ы), выполнение которого обеспечит удовлетворение данного требования;
- на стадии реализации для выполнения требования №NNN разрабатываются листинги соответствующих методов и, наконец, на стадии тестирования выполнение требования №NNN проверяется с использованием составленного плана тестирования.
Рисунок – Пояснение принципа прослеживания
На протяжении всего процесса проектирования необходимо прилагать усилия по планированию будущего тестирования. Существует несколько преимуществ в написании тестов одновременно с требованиями.
Во-первых, это позволяет прояснить требование.
Во-вторых, это переносит некоторую часть работы из фазы тестирования проекта в фазу разработки требований. Пусть, например, SRS включает в свой состав D-требование №NNN следующего содержания: «NNN. ФИО каждого студента информационной системы «Деканат» будет представлять собой строку символов от 1 до 256». C целью планирования процедуры тестирования необходимо составить проект плана тестирования, примерная форма которого может быть представлена в виде таблицы .
Таблица «Тестовые данные для проверки D-требования №nnn»
№ п/п | Входные тестовые данные | Ожидаемый результат |
---|---|---|
1 | Иванов Иван Иванович | Иванов Иван Иванович |
2 | length()<10 | Сообщение с вопросом о корректности вводимых данных |
3 | length()>256 | Сообщение с вопросом о корректности вводимых данных |
4 | … | … |
При формировании требований к АСОИУ необходимо обеспечить достижение ряда показателей, среди которых наиболее значимыми являются: прослеживание, полнота, согласованность и т.д. Набор D-требований согласован, если между требованиями нет противоречий. По мере увеличения числа D-требований согласованность может стать труднодостижимой, но объектно-ориентированная организация требований помогает избежать несогласованности благодаря классификации D-требований по классам и с помощью разложения их на простейшие составляющие.
С целью проверки указанных характеристик составляют таблицу, форма которой приведена на рисунке:
Рисунок «Шаблон таблицы для проверки D-требований»
Во втором столбце таблицы приводится идентификатор D-требования. В столбце 3 приводится идентификатор С-требования, в состав которого входит данное D-требование. В столбце 4 приводятся идентификаторы D-требований, выполнение которых необходимо и достаточно для реализации данного D-требования. В столбце 5 делают отметку, если данное D-требование не противоречит никакому другому D-требованию из перечисленных в таблице. В столбце 6 делают отметку, если данное D-требование может быть реализовано с учетом ограничений, накладываемых другими С- или D-требованиями, средой разработки, аппаратной платформой и т.д.
В столбце 7 делают отметку, если данное D-требование не может быть истолковано двояко. В столбце 8 делают отметку, если данное D-требование сформулировано предельно просто. В случае отсутствия отметки необходимо привести дополнительные разъяснения по содержанию такого требования. В столбце 9 делают отметку, если в данном требовании указаны допустимые отклонения от необходимого результата. В столбце 10 делают отметку, если формулировка данного D-требования не претерпит существенных изменений при возникновении в будущем необходимости наращивания функциональных возможностей системы. В столбце 11 делают отметку, если для данного требования составлен план тестирования. В столбце 12 делают отметку по окончании реализации данного D-требования в виде программного кода.
Порядок разработки каждого D-требования показан выше на рисунке и включает следующие шаги:
- Предварительный анализ требования:
- Классификация требования как функциональное или нефункциональное (рекомендуется использовать подсказки IEEE SRS для большинства нефункциональных требований);
- выбор метода организации функциональных требований.
- Обеспечение прослеживания требования. Убедиться в возможности прослеживания при проектировании и реализации.
- Обеспечение тестируемости требования. Спланировать конкретный тест, устанавливающий выполнение требования.
- Проверка недвусмысленности требования.
- Назначение требованию приоритет. Например, высокий («важно»), средний («желательно») или низкий («не обязательно»).
- Проверка полноты требования. Для каждого требования следует убедиться в присутствии всех остальных необходимых или сопутствующих требований.
- Добавление состояния ошибки:
- сформулировать, что требуется выполнить при возникновении нештатных ситуаций;
- в критичных местах добавить состояния ошибок программирования.
- Проверка согласованности. Необходимо убедиться, что ни одно требование не противоречит каким-либо аспектам другого требования.
Как только все D-требования собраны, необходимо обновить SPMP и передать D-требования под управление конфигурациями.
Для формализации и детальной фиксации требований рекомендуется использовать спецификацию требований к программному обеспечению (Software Requirements Specification — SRS) в соответствии со стандартом IEEE 830-1993.
Наименование департамента
[НАИМЕНОВАНИЕ ПРИЛОЖЕНИЯ ИЛИ СИСТЕМЫ]
Документ с бизнес-требованиями
Документ с бизнес-требованиями
Руководство по использованию шаблона требований
Для того, чтобы правильно создать документ с описанием бизнес-требований, пожалуйста, придерживайтесь следующих принципов данного руководства. После завершения написания документа, удалите данный раздел.
Назначение | Требование — это задокументированное условие или возможность продукта, сервиса или системы, которые должны соответствовать задачам проекта. Управление требованиями представляет собой семантический подход к выявлению, организации и документированию требований продукта, сервиса или системы. Документ с описанием бизнес-требований служит базовой линией проекта, которая поясняет, в бизнес-терминах, что необходимо сделать на этапе проектирования в проекте.
Так как требования являются динамичными, то документ с бизнес-требованиями является постепенно изменяющимся документом, целью которого является записывать то, что известно на данный момент, а затем используя эти записи строить документ дальше по ходу развития проекта. Именно из этого документа появляется более конкретная проектная документация, которая формируется на основе потребностей проекта и других взаимодополняющих методологий. |
Владение документом | Бизнес-анализ и руководители проекта работают с бизнес-спонсором и любыми другими необходимыми бизнес или техническими лидерами на проекте в рамках формирования документа с бизнес-требованиями. |
Когда документ формируется | Формирование документ с описанием бизнес-требований запускается во время начальной стадии выполнения проекта, который предшествует стадии проектирования в жизненном цикле управления проектами.
Определение бизнес-требований является обязательным этапом во всех проектах. |
Template Completion
Note: Text within < > brackets need to be replaced with project-specific information. |
Сбор требований непростой процесс, как это может показаться изначально. Это достаточно сложная задача, поскольку требования:
· не всегда очевидны; · могут поступать из многочисленных и разнообразных источников; · нуждаются в управлении кросс-функциональными группами людей; · могут вызывать сложности при формулировании в ходе написании документации; · могут формулироваться на разных уровнях детализации. Для проекта, который представляет собой усовершенствование существующего продукта, сервиса или системы, команда проекта проводит обзор существующих документов; поэтому документ с бизнес-требованиями, как правило, является более кратким. Тем не менее, проект, в ходе которого должен быть разработан новый продукт, услуга или система, как правило, будет содержать более детальный документ. 1. Не включайте раздел руководства к шаблону в итоговый документ. Введите информацию о проекте в заголовке страницы, нижние колонтитулы, титульный лист, участников по разработке документа, а также заполните информацию по контролю версий. 2. Заполните документ, используя вспомогательную информацию в <скобках>. 3. Для небольших проектов можно объединить все разделы требований в одну таблицу, добавив столбец «Тип требования». 4. Если некоторые требования не применяются в вашем проекте, то не удаляйте его, а пометьте его как «Не применяется» и укажите краткое пояснение, почему в текущем проекте данное требование не актуально. 5. Если на проекте имеются дополнительные требования, то ими нужно дополнить раздел 5. Можно создать отдельную таблицу для помощи в выявлении, определении и отслеживании требований. Обратите внимание, что если новое требование идентифицируется после того, как утвержден документ с бизнес-требованиями, то новое требование необходимо внести в раздел 10.1 Дополнения (новые требования). 6. После того, как были внесены изменения в документ, и вы готовы его завершить, убедитесь, что Вы обновили оглавление документа. 7. Составьте карту рассмотрения документа и его утверждений теми лицами, которые были определены в разделе с заинтересованными сторонами. 8. Из-за того, что документ с бизнес-требованиями является динамичным, после того, как менеджер проекта получает согласованный документ, все дополнительные, измененные или отмененные требования вносятся в 10 раздел. 9. Если вносятся изменения в документ, то необходимо обновить раздел с историей обновлений документа. 10. Документ с описанием бизнес-требований будет храниться вместе с другими документами проекта и поддерживаться в соответствии с политикой хранения документов. |
Расширение прав и возможностей. Масштабируемость. | Данный шаблон предоставляется в качестве ориентира для сбора базовой информации, необходимой для успешного формирования документа с описанием бизнес-требований. Руководители проекта имеют право использовать этот шаблон по мере необходимости для сбора каких-либо конкретных требований предполагаемого проекта. Количество деталей, которые содержит документ, зависит от размера и сложности проекта. В зависимости от проекта или потребностей бизнеса, требования могут быть добавлены, но не могут быть удалены. |
Информация по документу и согласование документа
История версий | ||||
№ версии | Дата создания | Кем пересмотрена версия | Причина для изменений | |
1.0 | 9/17/09 | Иванов Петр | Рассмотрение проектным офисом | |
Этот документ был утвержден в качестве официального документа с бизнес-требованиями для проекта «<имя проекта>», и точно отражает текущее понимание бизнес-требований. После утверждения этого документа, изменения требований будет регулироваться через процесс управления изменениями, включая анализ последствий (impact analysis), проходя стадии рассмотрения и согласования.
Согласование документа | ||||
Имя утверждающего | Проектная роль | Подпись/Электронная подпись | Дата | |
Оглавление документа
- Назначение документа. 1
- Ресурсы для создания документа. 1
- Словарь терминов.. 1
- Обзор проекта. 1
4.1 Обзор проекта и предпосылки. 1
4.2 Зависимости проекта. 1
4.3 Заинтересованные стороны.. 1
- Основные допущения и ограничения. 2
5.1 Основные допущения и ограничения. 2
- Сценарии использования/Варианты использования (Use Cases) 2
6.1 Диаграмма вариантов использования. 2
6.2 Изложение фактов по варианту использования. 3
- Бизнес-требования. 5
- Приложения. 7
8.1 Приложение A – Потоки бизнес-процессов. 7
8.1.1 Диаграммы «Как Есть» (As Is) 8
8.2 Приложение B – Каталог бизнес-правил. 10
8.3 Приложение C- Модели. 10
8.4 Матрица трассировки/отслеживания требований (Traceability Matrix) 10
8.5 Инструкция описания вариантов использования. 10
- Назначение документа
Этот документ определяет высокоуровневые требования <введите имя бизнес-линии, внутренней организации, заинтересованной стороны> этого проекта. Документ будет использоваться в качестве основы для следующих видов деятельности:
- Создание дизайнов Решения;
- Разработка плана тестирования, скриптов тестирования и сценариев тестирования;
- Определение критериев завершенности проекта;
- Оценка успешности проекта.
- Ресурсы для создания документа
Имя | Бизнес-подразделение | Роль |
<Идентифицируйте все заинтересованные стороны и ресурсы, которые будут вовлечены в процесс сбора требований> | ||
- Словарь терминов
Термин / Сокращение | Определение |
<Определите термины и сокращения, которые используются в данном документе > | |
- Обзор проекта
4.1 Обзор проекта и предпосылки
<Информация для данного раздела может быть взята из Устава проекта. Данный пункт содержит краткое описание того, что из себя представляет проект. Данный пункт включает в себя описание текущей ситуации, существующих проблем и целей. Этот раздел служит основой для начала процесса выявления требований. Каждое требование должно подводить проект к описанию основной концепции>
4.2 Зависимости проекта
<Перечислите любые связанные проекты, которые затрагивают целиком или частично Ваш проект, или которые имеют зависимости от этого проекта.>
4.3 Заинтересованные стороны
Ниже перечислены внутренние и внешние заинтересованные стороны, чьи требования представлены в этом документе:
Заинтересованные стороны | |
1. | |
2. | |
3. |
- Основные допущения и ограничения
5.1 Основные допущения (предположения) и ограничения
# | Допущения (предположения) |
Перечислите любые допущения, на которых основаны требования | |
# | Ограничения |
Перечислите любые ограничения, на которых основаны требования | |
- Сценарии использования/Варианты использования (Use Cases)
<Основная цель сценариев использования (вариантов использования) заключается в том, чтобы зафиксировать требуемое поведение системы с точки зрения конечного пользователя для достижения одной или нескольких желаемых целей. Вариант использования содержит описание потока событий, который описывает взаимодействие между акторами и системой. Вариант использования также может быть представлен визуально в UML для того, чтобы показать взаимосвязи с другими вариантами использования и акторами>.
6.1 Диаграмма вариантов использования
6.2 Изложение фактов по варианту использования
<Каждый вариант использования должен быть задокументирован с помощью этого шаблона. Смотрите инструкцию для описания вариантов использования>
ID Варианта использования: | |||
НаименованиеВарианта использования: | |||
Кем создан: | Кем в последний раз изменен: | ||
Дата создания: | Дата последнего изменения: |
Акторы: | |
Описание: | |
Предварительные условия: | |
Постусловие: | |
Нормальный ход событий: | |
Альтернативный ход событий: | |
Исключения: | |
Содержит: | |
Приоритет: | |
Частота использования: | |
Бизнес-правила | |
Специальные требования: | |
Предпосылки (предположения): | |
Примечания и вопросы: | |
Графическое представление варианта использования |
Пример заполненного варианта использования:
ID Варианта использования: | 1 | ||
НаименованиеВарианта использования: | Просмотр интерактивной карты кампуса | ||
Кем создан: | Иванов Петр | Кем в последний раз изменен: | |
Дата создания: | 19/04/2015 | Дата последнего изменения: |
Акторы: | Пользователь |
Описание: | Этот вариант использования описывает основной способ использования интерактивной карты кампуса. Пользователь через браузер получает доступ по соответствующему URL и взаимодействует с представленной функциональностью. |
Предварительные условия: | Веб-браузер открыт и получен доступ к интерактивной карте кампуса через URL. |
Постусловие: | Пользователь переходит с интерактивной карты кампуса на веб-сайт. |
Нормальный ход событий: | 1. Открывается браузер;
2. Переход по URL карты кампуса; 3. Взаимодействие с картой кампуса при помощи доступной функциональности. |
Альтернативный ход событий: | Отсутствует |
Исключения: | Отсутствуют |
Содержит: | |
Приоритет: | Высший |
Частота использования: | Одно использование на одно посещение. |
Бизнес-правила | TBD |
Специальные требования: | · Доступ 24/7
· Время отклика сопоставимо с общими картографическими решениями (например, карты Google) |
Предпосылки (предположения): | |
Примечания и вопросы: | |
Графическое представление варианта использования |
- Бизнес-требования
Следующие разделы документа представляют различные бизнес-требования данного проекта.
Тип требования | ID – Префикс |
ID – Номер |
Функция – Характеристика — Требование |
Ссылка на вариант использования |
?? | ?? | ?? | ?? |
Комментарии |
Требования бизнес-пользователей | |||||||||
f | 01-001 | ||||||||
f | 01-002 | ||||||||
f | 01-003 | ||||||||
f | 01-004 | ||||||||
f | 01-005 | ||||||||
f | 01-006 | ||||||||
f | 01-007 | ||||||||
f | 01-008 | ||||||||
Требования к отчетности | |||||||||
f | 02-001 | ||||||||
f | 02-002 | ||||||||
f | 02-003 | ||||||||
f | 02-004 | ||||||||
f | 02-005 | ||||||||
f | 02-006 | ||||||||
f | 02-007 | ||||||||
f | 02-008 | ||||||||
Требования к правам доступа пользователей и безопасности | |||||||||
f | 03-001 | ||||||||
f | 03-002 | ||||||||
f | 03-003 | ||||||||
f | 03-004 | ||||||||
F | 03-005 | ||||||||
f | 03-006 | ||||||||
f | 03-007 | ||||||||
f | 03-008 | ||||||||
Требования к уровню сервиса и к производительности | |||||||||
f | 04-001 | ||||||||
f | 04-002 | ||||||||
f | 04-003 | ||||||||
f | 04-004 | ||||||||
f | 04-005 | ||||||||
f | 04-006 | ||||||||
f | 04-007 | ||||||||
f | 04-008 | ||||||||
Требования к масштабируемости | |||||||||
f | 05-001 | ||||||||
f | 05-002 | ||||||||
f | 05-003 | ||||||||
f | 05-004 | ||||||||
f | 05-005 | ||||||||
f | 05-006 | ||||||||
f | 05-007 | ||||||||
f | 05-008 | ||||||||
Требования к поддержке и техническому обслуживанию | |||||||||
f | 06-001 | ||||||||
f | 06-002 | ||||||||
f | 06-003 | ||||||||
f | 06-004 | ||||||||
f | 06-005 | ||||||||
f | 06-006 | ||||||||
f | 06-007 | ||||||||
f | 06-008 |
- Приложения
8.1 Приложение A – Потоки бизнес-процессов
<Опишите текущий существующий процесс документооборота используя диаграмму потоков (Visio Flowcharts) и дайте подробное описание>
8.1.1 Диаграммы «Как Есть» (As Is)
<Вставьте сюда диаграмму «Как Есть» (если это применимо к проекту)>
8.2.2 Диаграммы «Как Будет» (To Be)
< Вставьте сюда диаграмму «Как Будет» (если это применимо к проекту)>
8.2 Приложение B – Каталог бизнес-правил
<Инструкции: используйте следующий шаблон для каждого бизнес-правила>
Наименование бизнес-правила | <Имя должно дать вам хорошее представление о теме бизнес-правила> |
Идентификатор | <Определите уникальный идентификатор.> Например: BR1 |
Описание | <Опишите детали бизнес-правила.>
Например: «Весь труд рабочих отслеживается, составляется отчет и выставляется счет в 30 минутных интервалах» |
Пример | <(Необязательное поле) Пример использования бизнес-правила> |
Источник | <Источник правила. Например, заинтересованная сторона> |
Связанные бизнес-правила | <Список связанных правил, для обеспечения процесса трассировки> |
8.3 Приложение C- Модели
<Вставьте сюда модели>
8.4 Матрица трассировки/отслеживания требований (Traceability Matrix)
<Вставьте сюда матрицу трассировки требований>
8.5 Инструкция описания вариантов использования
<Инструкции по заполнению описаний по сценариям использования содержатся в этом разделе. По завершению документа с бизнес-требованиями удалите эти инструкции>.
Наименование поля Варианта использования | Определение |
ID Варианта использования | Присвойте каждому варианту использования уникальный числовой идентификатор в иерархическом формате: X.Y. Связанные варианты использования могут быть сгруппированы в иерархию. Функциональные требования могут отслеживаться по меченным Вариантам использования. |
Наименование Варианта использования | Ориентированное на результат имя в краткой форме для Варианта использования. Оно должно отражать задачи, которые пользователь может выполнить, используя систему. Включите в наименование глагол и существительное. Вот некоторые примеры:
· Просмотреть информацию по номеру заказа. · Вручную пометить гипертекст источника и установить ссылку на целевой контекст. · Заказать компакт-диск с обновленной версией ПО. |
Кем создан | Содержит имя человека, который изначально задокументировал этот Вариант использования |
Дата создания | Введите дату, когда был задокументирован изначально Вариант использования |
Дата последнего изменения | Введите дату последнего обновления Варианта использования |
Кем в последний раз изменен | Содержит имя человека, который внес последние изменения. |
Актор | Введите лицо или другие субъекты, которые являются внешними по отношению к системе ПО, и которые взаимодействуют с системой в соответствии с вариантом использования в рамках выполнения задач. Различные акторы часто соответствуют различным классам пользователей или ролям, идентифицируя их с группой пользователей заказчика, которые будут использовать продукт. Имя акторов, которые будут выполнять этот Вариант использования. |
Описание | Дайте краткое описание причины и результатов этого Варианта использования, или приведите высокоуровневое описание последовательности действий и результата выполнения Варианта использования. |
Предварительные условия | Перечислите мероприятия, которые должны состояться, или любые условия, которые должны выполниться до того, как вариант использования будет запущен. Количество предварительных условий. Примеры:
· Идентификатор пользователя должен пройти проверку подлинности. · Компьютер пользователя имеет достаточное количество свободной памяти для запуска задачи. |
Постусловие | Опишите состояние системы по завершении исполнения варианта использования. Количество постусловий. Примеры:
· Документ содержит только допустимые теги в SGML. · Цена товара в базе данных была обновлена с новым значением. |
Нормальный ход событий | Предоставьте подробное описание действий пользователя и реакции системы, которые будут проходить во время выполнения варианта использования в нормальных, ожидаемых условиях. Это последовательность действий внутри диалогового окна, в ходе которой будет достигнута цель, которая указана в названии варианта использования и в его описании. Это описание может быть написано как ответ на гипотетический вопрос: «Как мне выполнить задачу, которая указана в имени Варианта использования?». Лучше всего это делать в виде нумерованного списка действий, которые выполняет актор, чередуя их с реакциями системы на производимые действия. |
Альтернативный ход событий | Задокументируйте другие, разумные сценарии использования, которые могут иметь место в пределах данного варианта использования. Обозначьте альтернативный ход событий и опишите какие-либо различия в последовательности шагов, которые могут потребоваться. Укажите номер каждого альтернативного хода, используя ID варианта использования в качестве префикса, а затем добавьте к номеру префикс «AC», чтобы обозначить «альтернативный ход событий». Например: X.Y.AC.1 |
Исключения | Опишите любые предполагаемые условия возникновения ошибок, которые могут возникнуть во время выполнения варианта использования, а также определите, как система должна отреагировать на эти условия. Также опишите, каким образом система должна реагиовать, если вариант использования завершится по какой-то непредвиденной причине. Номер каждого исключения формируется при помощи ID Варианта использования и специального префикса «EX». Пример: X.Y.EX.1 |
Содержит | Перечислите любые другие варианты использования, которые вызываются этим вариантом использования. Общие функциональные возможности, которые появляются в нескольких отдельных вариантах использования могут быть включены в отдельный вариант использования. |
Приоритет | Укажите относительный приоритет реализации функциональности, которая необходима для того, чтобы этот вариант использования был выполнен. Используемая схема приоритетов должна быть такой же как та, которая используется в спецификации требований к программному обеспечению. |
Частота использования | Оцените частоту использования данного Use Case за единицу времени. |
Бизнес-правила | Перечислите любые бизнес-правила, которые влияют на этот вариант использования. |
Специальные требования | Идентифицируйте любые дополнительные требования, такие как нефункциональные требования, для варианта использования, которые необходимо будет рассмотреть в ходе проектирования и реализации решения. Они могут включать в себя требования к производительности или атрибуты качества. |
Предпосылки (предположения) | Перечислите какие-либо допущения, которые были сделаны при анализе, что привело к принятию данного варианта использования в описании продукта и написанию подробной информации по варианту использования. |
Примечания и вопросы | Перечислите любые дополнительные комментарии по данному варианту использования или любые нерешенные вопросы, или TBD лист (то, что будет определено позднее). Определите, кто будет заниматься каждым отдельным вопросом или проблемой и к какому сроку все пункты должны быть разрешены. |
Бизнес-требования к информационной системе
- Бизнес-требования к информационной системе
-
Бизнес-требования к информационной системе
Бизнес-требования на разработку (доработку) информационной системы разрабатываются заказчиком на самых ранних стадиях, как правило, до инициации проекта и включают следующие разделы
Содержание
- 1 Общие положения
- 2 Характеристика объекта автоматизации
- 3 Продукты и услуги
- 4 Базовые сущности
- 5 Выходные печатные формы
- 6 Описание бизнес-процессов
- 7 Изменения в отчетности
- 8 Требования к разграничению доступа и данным
- 9 Требования к каналам продаж
- 10 Требования к порядку внедрения
- 11 Эксплуатационные требования
- 12 См. также
Общие положения
- Обоснование необходимости автоматизации, целесообразность проекта
- Цели проекта
- Задачи проекта
- Область покрытия проекта
- В рамки проекта не входит
- Ожидаемые результаты проекта
- Ожидаемые документы Проекта
- Ожидаемое архитектурное решение
- Приоритет и ожидаемые сроки завершения
- Перечень подразделений, участвующих в процессе
Характеристика объекта автоматизации
- Детальное описание
- Терминология предметной области
Продукты и услуги
- Перечень продуктов и услуг, планируемых к реализации в проекте
- Параметры продуктов и услуг (каналы продаж, тарифы и т.д.)
- Бизнес-логика
Базовые сущности
Выходные печатные формы
- Экранные формы, которые должны быть реализованы, доработаны или выведены из эксплуатации в ходе проекта
- Название формы
- Состав полей
- Алгоритмы формирования
- Способы использования
- Печатные формы, которые должны быть реализованы, доработаны или выведены из эксплуатации в ходе проекта
- Название формы
- Состав полей
- Алгоритмы формирования
- Способы использования
Описание бизнес-процессов
- Бизнес-процессы, их место в общей цепочке бизнес-процессов
- Состав процедур и их детальное описание для каждого бизнес-процесса
Изменения в отчетности
Приводится описание ожидаемых изменений в регулярной управленческой и бухгалтерской отчетности.
Требования к разграничению доступа и данным
Требования к каналам продаж
Описываются требования по использованию информационной системы в удаленных точках продаж и через электронные каналы продаж.
Требования к порядку внедрения
Приводятся требования к этапности внедрения, срокам, требования к квалификации персонала и его обучению, требования к сопроводительной документации.
Эксплуатационные требования
- Требования к производительности
- Требования к объемам информации
- Требования к нагрузочному тестированию
- Требования к условиям эксплуатации
- Требования к доступности системы
См. также
Архитектура предприятия
Бизнес-архитектура
Wikimedia Foundation.
2010.
Полезное
Смотреть что такое «Бизнес-требования к информационной системе» в других словарях:
-
Бизнес-моделирование — (деловое моделирование) деятельность по формированию моделей организаций, включающая описание деловых объектов (подразделений, должностей, ресурсов, ролей, процессов, операций, информационных систем, носителей информации и т. д.) … Википедия
-
Бизнес моделирование — деятельность по выявлению и описанию существующих бизнес процессов (анализ бизнес процессов), а также проектированию новых (проектирование бизнес процессов). Бизнес моделированием также называют дисциплину и отдельный подпроцесс в процессе… … Википедия
-
Моделирование бизнес-процессов — Бизнес моделирование деятельность по выявлению и описанию существующих бизнес процессов (анализ бизнес процессов), а также проектированию новых (проектирование бизнес процессов). Бизнес моделированием также называют дисциплину и отдельный… … Википедия
-
ГОСТ Р 53114-2008: Защита информации. Обеспечение информационной безопасности в организации. Основные термины и определения — Терминология ГОСТ Р 53114 2008: Защита информации. Обеспечение информационной безопасности в организации. Основные термины и определения оригинал документа: 3.1.19 автоматизированная система в защищенном исполнении ; АС в защищенном исполнении:… … Словарь-справочник терминов нормативно-технической документации
-
ГОСТ Р ИСО/ТО 13569-2007: Финансовые услуги. Рекомендации по информационной безопасности — Терминология ГОСТ Р ИСО/ТО 13569 2007: Финансовые услуги. Рекомендации по информационной безопасности: 3.4 активы (asset): Все, что имеет ценность для организации [2]. Определения термина из разных документов: активы 3.58 анализ риска (risk… … Словарь-справочник терминов нормативно-технической документации
-
ГОСТ Р ИСО ТО 13569-2007: Финансовые услуги. Рекомендации по информационной безопасности — Терминология ГОСТ Р ИСО ТО 13569 2007: Финансовые услуги. Рекомендации по информационной безопасности: 3.4 активы (asset): Все, что имеет ценность для организации [2]. Определения термина из разных документов: активы 3.58 анализ риска (risk… … Словарь-справочник терминов нормативно-технической документации
-
Средний бизнес — (Medium business) Определение среднего бизнеса, нюансы среднего бизнеса Информация об определении среднего бизнеса, нюансы среднего бизнеса Содержание Содержание О “Что делать” и “с чего начать” вот в чем вопрос! О пользе… … Энциклопедия инвестора
-
Оптовая торговля — Оптовая торговля торговля партиями товара. Чаще всего, товар, покупаемый у оптового продавца, предназначен для последующей перепродажи. Но также нередко покупателями выступают крупные потребители товара. Оптовая торговля является… … Википедия
-
Моделирование бизнеса — Бизнес моделирование деятельность по выявлению и описанию существующих бизнес процессов (анализ бизнес процессов), а также проектированию новых (проектирование бизнес процессов). Бизнес моделированием также называют дисциплину и отдельный… … Википедия
-
система — 4.48 система (system): Комбинация взаимодействующих элементов, организованных для достижения одной или нескольких поставленных целей. Примечание 1 Система может рассматриваться как продукт или предоставляемые им услуги. Примечание 2 На практике… … Словарь-справочник терминов нормативно-технической документации
Пояснительная записка Цель проведения практических занятий по пм. 1 Проектирование и разработка информационных систем формирование общих и профессиональных компетенций ок 11 и пк 1
Скачать 18,13 Mb.
|
Связанные:
PM 01 UMD
- Навигация по данной странице:
- Практическая часть Задание №1
- Пуск -> Программы -> Ramus -> Ramus
- Создание контекстной диаграммы После запуска программы на экране появится окно начала работ ( рис. 14.1 ). Выберите опцию «Создать
Различают реинжиниринг в узком смысле (перепроектирование отдельных бизнес- процессов) и широком смысле (полная реструктуризация организационной структуры и бизнес- процессов). Какой вариант выбрать компании зависит от целей реинжиниринга, которые в свою очередь формируются в зависимости от стратегических приоритетов компании.
Многие компании, задумав использовать методы бизнес-инжиниринга, ограничиваются―обратным‖ бизнес-инжинирингом, то есть построением и анализом модели бизнес-процессов―как есть‖, так как он представляет самостоятельную ценность, поскольку дает возможность выявлять узкие места компании, оценивать последствия увеличения (уменьшения) ресурсов в некотором подразделении, сравнивать между собой последствия различных вариантов и т. п.
Бенчмаркинг
Реинжиниринговые команды могут использовать так называемый бенчмаркинг (benchmarking). В сущности бенчмаркинг состоит в поиске компаний, которые делают что-то лучше всех, и в изучении того, как они этого добиваются, чтобы использовать эту информацию для проведения реинжиниринга собственной компании.
Проблема использования бенчмаркинга состоит в том, что он может ограничить мысленную работу реинжиниринговой команды рамками того, что у же сделано в отрасли. Используемый таким образом бенчмаркинг является средством только догнать конкурента, а не резко вырваться вперед. Бенчмаркинг способен, однако, обогатить реинжиниринговые команды идеями, особенно в том случае, когда в качестве образцов рассматриваются компании других отраслей.
Практическая часть
Задание №1
Анализ деловой ситуации:
Охарактеризуйте позицию организации на рынке.
-
Проведите аудит бизнес-процессов. (используйте таблицу из ПР 10-11)
-
Оцените уровень непротиворечивости бизнес-требований к модулям информационной системы. (составьте таблицу состоящую из полей: название бизнес-процесса и функции, которые выполняет этот бизнес-процесс)
-
Какие инновационные технологии сферы ИТ требуется внедрить в бизнес- процессы организации? (Что именно подлежит автоматизации)
-
Каковы перспективные направления реинжиниринга отдельных бизнес-процессов на предприятии? (какой конкретно бизнес-процесс будет автоматизирован)
Задание №2
-
Разработка предложений по усовершенствованию системы управления предприятием. Описание всех бизнес-процессов отдела или предприятия. Представить технологическую карту бизнес-процессов.
-
Построение функциональной модели, модели потоков данных существующих бизнес- процессов.
Перед выполнением упражнения 1. Запустите программу Ramus (Пуск -> Программы -> Ramus -> Ramus). Если программа не установлена на ПК, то при наличии доступа в Интернет самостоятельно произведите инсталляцию данного ПО с сайта разработчика: http://ramussoftware.com/.
Создание контекстной диаграммы
-
После запуска программы на экране появится окно начала работ ( рис. 14.1). Выберите опцию «Создать» и нажмите «ОК«.
Поделитесь с Вашими друзьями:
Фундаментальное описание требований к ПО и подходов к их выявлению и сбору от тестировщика Noveo Вадима: пост освещает все аспекты этой области знаний, структурирует информацию и не оставляет ни малейшего шанса недопониманиям и «темным» местам. Приятного прочтения!
Вадим
Noveo Test Engineer
Мы с вами как тестировщики каждый день работаем с требованиями. Суть нашей работы — выяснять, соответствует ли разрабатываемая система требованиям заказчика, рынка и отраслевым стандартам. Более того, в наши обязанности входит проверка требований на соответствие критериям качества. В идеальном мире мы с вами были бы просто гарантом качества — судьями, дающими объективную оценку. Но, к сожалению, мир не идеален, и строгое распределение участников проекта на роли чаще всего не представляется возможным. В эпоху повсеместного использования гибких методологий разработки мы с вами должны обладать знаниями, позволяющими выполнять задачи не только контроля качества.
Цели этого поста заключаются в следующем:
- Определить, что такое требование, какие типы и уровни требований выделяют.
- Понять, какие существуют методы сбора и выявления требований.
- Предоставить почву для дальнейшего изучения сферы системного и бизнес-анализа.
Требования
Начнем с требований как таковых:
- Что они из себя представляют?
- Какие виды требований выделяются?
- Как они согласуются?
- Какие источники требований можно выделить?
Определение требования
Прежде чем погрузиться в теорию разработки требований к ПО, попробуйте, основываясь на своих знаниях и опыте, ответить на вопрос: как вы определяете термин «требование»?
Вопрос, что считать требованием к ПО, является сугубо дискуссионным. Но так или иначе нам с вами необходима отправная точка для изучения темы, поэтому обратимся к уже устоявшимся определениям:
Требования к ПО — это спецификация того, что должно быть реализовано. В них описано поведение системы, свойства системы или ее атрибуты. Они могут служить ограничениями в процессе разработки системы (Ian Sommerville и Pete Sawyer, 1997).
Требования к ПО — совокупность утверждений относительно атрибутов, свойств или качеств программной системы, подлежащей реализации. Создаются в процессе разработки требований к программному обеспечению (ПО), в результате анализа требований (Википедия).
Из определений можно выделить следующие пункты, которые относятся к требованиям:
- Спецификация — документ, устанавливающий требования.
- Реализация — интерпретация требований в виде разработанной системы (одни и те же требования можно реализовать различными способами).
- Описание поведения системы (то, как система должна работать при различных входных условиях).
- Описание свойств / атрибутов / качеств системы.
Как видно выше, устоявшиеся термины не отражают всю полноту понятия «требование к ПО», поэтому также стоит отметить следующее: требования охватывают как видение пользователя, так и внешнее поведение системы, а также представление разработчика о некоторых внутренних характеристиках. Они включают как поведение системы в определенных условиях, так и свойства, которые делают систему полезной и удовлетворяющей конечных пользователей.
Термин «требование» охватывает довольно широкую предметную область. Поэтому возникает вопрос типизации и классификации требований.
Уровни и типы требований
Требования к ПО состоят из трех уровней:
- Бизнес-требования.
- Пользовательские требования.
- Функциональные требования.
Отдельно вне иерархии выделяют нефункциональные требования. Они так или иначе всегда представлены на всех уровнях требований и прямо или косвенно влияют также на все из них. Далее подробнее разберем каждый уровень требований отдельно.
Бизнес-требования BRQ
Бизнес-требование (business requirements) — высокоуровневая бизнес-цель организации или заказчиков системы.
Бизнес-требования описывают, почему организации нужна такая система, то есть цели, которые организация намерена достичь с ее помощью. Основное их содержание — бизнес-цели организации или клиента, заказывающих систему.
Бизнес-требования — это верхний уровень абстракции требований к системе. Они не относятся напрямую к реализации проекта, а в первую очередь отражают цели бизнеса, абстрагированные от реализации системы. В конечном итоге бизнес-требования формируют документ концепции и границ.
Если кратко, документ содержит определение следующих понятий:
- Бизнес-возможности, бизнес-проблемы — факты и события, формирующие бизнес-цели, то есть грубо — причины инициации проекта.
- Бизнес-цели — цели, которые должны быть решены разработкой и вводом в эксплуатацию системы. Являются критериями успеха проекта.
- Концепция продукта (Vision) — сжато описывает конечный продукт, который достигнет заданных бизнес-целей.
- Границы проекта (scope) — показывают, на какую часть конечной концепции продукта будет направлен текущий проект или итерация.
Примеры бизнес-требований:
Сократить время обработки заказа на 50% (цель) — система должна предоставить интерфейс, упрощающий создание заказа (концепция).
Увеличить клиентскую конверсию до 35% (цель) — в системе должны быть представлены механизмы побуждения клиента к заказу (концепция).
Говоря о сборе и выявлении требований, нельзя опускать вопрос, в каких источниках искать требования. Под источниками требований подразумевается любой источник информации, используя который мы можем сформулировать требование.
Источники бизнес-требований (где искать?):
- Внутренняя документация компании (положения, инструкции, приказы).
- Документация по предметной области (профильные литература и статьи, исследования).
- Нормативная документация (законы и иные правовые акты, государственные стандарты).
- Продукты конкурентов.
Стейкхолдеры (у кого спрашивать?):
- Инициатор проекта.
- Руководитель проекта (менеджер проекта).
- Руководитель структурного подразделения заказчика (коммерческий директор, директор по маркетингу).
- Бизнес-аналитик.
P.S. Список стейкхолдеров меняется от проекта к проекту, для каждого проекта необходимо отдельно определять список заинтересованных/ответственных лиц. Списки, представленные мной, являются сугубо примерами из моей практики.
QA и разработчики, как правило, не участвуют в сборе и анализе бизнес-требований. Но нам важно понимать верхнеуровневые цели, которые преследует проект, так как пользовательские и функциональные требования — это следствие выявления, анализа и декомпозиции бизнес-требований. Работая с бизнес-требованиями, вы в первую очередь погружаетесь в предметную область заказчика. На мой взгляд, это очень важно для всех участников проекта. Если член команды погружен в предметную область заказчика, существенное количество вопросов отпадет, а следовательно, сокращается и время, потраченное на коммуникации.
Пользовательские требования URQ
Пользовательские требования (user requirements) описывают цели или задачи, которые пользователи должны иметь возможность выполнять с помощью продукта, который в свою очередь должен приносить пользу кому-то. Область пользовательских требований также включает описания атрибутов или характеристик продукта, которые важны для удовлетворения пользователе (Карл Вигерс, «Разработка требований к программному обеспечению»).
Пользовательские требования определяют набор пользовательских задач, которые должна решать программа, а также способы (сценарии) их решения в системе (Википедия).
Пользовательские требования также часто именуются фичами.
Фича (функциональность) — функционально обобщенные части системы, решающие отдельные задачи пользователей или интерпретирующие бизнес-процессы (и их артефакты), которые будут реализованы в рамках системы.
Исходя из вышеописанных определений, пользовательские требования содержат:
- Цели и задачи пользователей.
- Сценарии использования — способ решения задачи пользователей.
- Как следствие, описание самих пользователей системы:
- пользовательские роли,
- уровни доступа.
В конечном итоге пользовательские требования формируют «Документ пользовательских требований». Пользовательские требования могут быть представлены в виде:
- текстового описания,
- вариантов использования, сценариев использования (Use Case),
- пользовательских историй (User Story),
- диаграммы вариантов использования.
Как правило, пользовательские требования описываются по следующему шаблону:
Пользователь должен иметь возможность + {тезис}.
Пример пользовательского требования:
Пользователь должен иметь возможность добавить объект в избранное (функциональность).
Источники пользовательских требований требований (где искать?):
- Анализ и декомпозиция бизнес-требований.
- Описание бизнес-процессов.
- Артефакты бизнес-процессов:
- документы входные/выходные,
- стандарты,
- регламенты,
- обрабатываемые данные,
- иная информация, используемая и/или производимая в бизнес-процессе.
- Отраслевые стандарты.
- Реализованные проекты, проекты конкурентов.
Стейкхолдеры (у кого спрашивать?):
- Бизнес-аналитик, системный-аналитик.
- Конечные пользователи — люди, взаимодействующие с системой напрямую.
- Косвенные пользователи — люди, использующие результаты работы системы, не взаимодействуя с ней напрямую.
- Представители пользователей.
- Менеджер проекта.
- Руководитель структурного подразделения заказчика.
Этот уровень требований напрямую входит в круг обязанностей QA-инженера. В задачи QA на этом уровне входит:
- Определение соответствия описания требований критериям качества.
- Анализ требований для проработки сценариев тестирования.
- При достаточном уровне компетенций в предметной области:
- определение соответствия требований устоявшимся отраслевым стандартам (например: системе не достаёт фичи, которая в рамках предметной области системы является обязательной);
- определение соответствия требований с утвержденными бизнес-требованиями. Ответ на вопрос: «Решает ли пользовательское требование бизнес-цели проекта и задачи пользователей?«.
Функциональные требования FRQ
Функциональные требования (functional requirements) — описание требуемого поведения системы в определенных условиях.
Функциональные требования определяют, каким должно быть поведение продукта в тех или иных условиях. Они определяют, что разработчики должны создать, чтобы пользователи смогли выполнить свои задачи (пользовательские требования) в рамках бизнес-требований.
Функциональные требования самые низкоуровневые. Являются результатом декомпозиции верхнеуровневых требований и описывают атомарные функции, которые должны быть реализованы в системе.
Пример функциональных требований:
Пользователь должен иметь возможность добавить объект в избранное (URQ):
FRQ 1 — Добавить в избранное.
FRQ 2 — Удалить из избранного.
FRQ 3 — Редактирование дополнительных атрибутов.
FRQ 4 — Обращение к объекту из меню избранного.
Источники требований (где искать?):
- Анализ пользовательских требований.
- Таски.
- Прототипы интерфейса (мокапы).
- Отраслевые стандарты.
- Внешние системы и документация к ним (интеграции).
Стейкхолдеры (у кого спрашивать?):
- Бизнес-Аналитик.
- Системный аналитик.
- Архитектор.
- Менеджер проекта.
- Разработчики.
Нефункциональные требования NFRQ
Нефункциональное требование (non-functional requirements) — описание свойства или особенности, которым должна обладать система, или ограничение, которое должна соблюдать система.
На мой взгляд, это крайне исчерпывающее определение. Как вы могли заметить, нефункциональные требования не входят в основную иерархию требований. Их выделяют от других типов требований, так как нефункциональные требования:
- Выявляются и формулируются на всех уровнях иерархии требований.
- Напрямую или косвенно влияют на формирование каждого уровня требований.
Совет: Чаще всего нефункциональные требования отвечают на вопрос «Как? Каким образом?».
Пример нефункциональных требований, которые являются основной идеей проекта: Тик Ток.
С точки зрения разработки функциональный скоуп проекта не является уникальным:
- смотреть контент,
- предлагать ротацию контента на основе алгоритмов,
- создавать контент.
Все эти фичи так или иначе были представлены в других проектах. Ключом успеха проекта в данном случае является его UI/UX. А UI/UX сам по себе не отвечает за функции системы, а отвечает за то, каким образом будут реализованы эти функции.
SRS
В конечном итоге все требования консолидируются в одном документе «Спецификации требований к системе». Выше вы можете видеть структуру документа SRS. Ни в коем случае нельзя воспринимать её как жесткий стандарт (хотя таковой имеется: ISO/IEC/IEEE 29148:2011). Я предлагаю вам использовать эту структуру как чек-лист для определения полноты описания системы. Стоит отметить, что внутренние стандарты документирования и полноты требований меняются от проекта к проекту, но набор типов требований всегда будет идентичен. Кто-то опускает бизнес-требования, для кого-то пользовательские требования тождественны функциональным. В конечном итоге все требования — лишь абстракция, и каждая команда подбирает под себя удовлетворительный уровень детализации этой абстракции.
Выявление требований
Выявление требований — итеративный процесс, состоящий из следующих этапов:
- Подготовка к выявлению.
- Выявление.
- Утверждение результатов.
Подготовка к выявлению требований
В процессе подготовки к выявлению требований необходимо ответить на следующие вопросы:
1. Что необходимо выяснить? — Анализируем имеющуюся информацию о системе:
а. Анализ текущего описания требований к системе.
b. Анализ текущей реализации системы.
c. Выявление недостающих и/или недостаточно описанных требований.
2. У кого? Где? — Определить источник требований:
а. Собрать список доступных источников, таких как:.
i. Документация.
ii. Артефакты бизнес-процессов и/или текущей реализации системы.
b. Определить список стейкхолдеров, которые могут выступать источником требований к системе.
3. Каким образом? — Выбрать оптимальный метод выявления требований.
Выявление требований. Интервью
Самый популярный и, возможно, эффективный метод выявления требований. Представляет из себя беседу с заказчиком.
Подготовка к интервью
Подготовка к интервью состоит из следующих этапов:
1. Собрать информацию о собеседнике(ах):
а. Роль в проекте?
b. За какие вопросы ответственен?
2. Подготовить вопросы:
a. Сформулировать проблематику интервью.
b. Сформулировать вопросы.
c. Подготовить дополнительные вопросы.
3. Определить тайминг встречи.
a. Нужно стараться уложиться в один час. Чаще всего человек начинает терять концентрацию после 40 минут непрерывной беседы.
b. Для каждого вопроса определить необходимое время на обсуждение.
c. Если вы не успеете задать все вопросы в рамках одной встречи, назначьте несколько встреч.
4. Согласовать календарь встреч.
a. Если предполагается несколько встреч — то не обходимо составить график встреч.
b. Для каждой встречи указать проблематику, вопросы, которые будут обсуждаться, длительность.
От себя рекомендую подготовить файл с вопросами и планом интервью. Для примера — вот шаблон, который использую я:
Протокол интервью
Проект:{}
Дата проведения:{}
Интервьюер: {Кто проводит интервью}
Интервьюируемый:{Кому задаём вопросы}
Проблематика:{Тема интервью}
Вопрос № 1:
Тайминг вопроса:
Текст вопроса:
Таймкод:
Ответы на вопрос:
Стейкхолдер 1 —
Стейкхолдер 2 —
Проведение Интервью
Проведение интервью — сложный навык, который требует времени и практики. Но просто задавать вопросы, я думаю, будет не сложно. Итак, ниже список рекомендаций, которые помогут вам провести интервью:
1. Всегда ведем запись встречи.
a. Спрашиваем собеседника, не против ли он вести запись разговора.
b. Включаем запись после согласия собеседника.
2. Small talk для разрядки.
a. Как настроение?
b. Как погода?
c. И т.д. и т.п.
d. Но не затягиваем, пара вопросов из вежливости, не более.
3. Начинаем с объявления проблематики.
4. Стараемся следовать плану встречи. Вопросы задаём последовательно.
5. Желательно в плане указываем тайм-код, в какую минуту разговора задан вопрос, чтобы упростить дальнейшую обработку протокола.
6. Стараемся раскрывать вопросы дополнительными вопросами. Беседа должна быть живой, не должна скатываться в сухой формат вопрос-ответ, иначе проще отправить собеседнику опросник и не тратить его время на встречу.
7. В конце обсуждения не лишним будет подтвердить позицию собеседника закрытым типом вопроса.
a. Например: Я правильно вас понял, что необходимо реализовать функционал следующим образом {Тезис}?
Обработка результатов Интервью
После проведения интервью необходимо письменно зафиксировать полученную информацию. Рекомендую делать это сразу после интервью. Итак:
1. Заполняем протокол встречи.
a. Читать краткий протокол встречи намного проще, чем смотреть часовую запись в поисках ответов.
2. Направляем участникам встречи результаты в формате «Вопрос — Зафиксированное решение».
b. Это необходимо для получения от заказчика письменного утверждения результатов встречи.
Плюсы и минусы метода
Плюсы метода:
- Наиболее эффективный способ метод сбора требований.
- Меньшая вероятность недопонимания между собеседниками.
- Большая вероятность выявления «скрытых» требований.
Минусы метода:
- Могут возникнуть сложности согласования требований от разных стейкхолдеров.
- Высокие временные затраты.
- Качество проведения интервью напрямую зависит от интервьюера.
Выявление требований. Анкетирование
Метод анкетирования подразумевает создание анкеты (списка вопросов) и её рассылку большому количеству опрашиваемых.
Подготовка
Подготовка к анкетированию состоит из следующих этапов:
1. Собрать контакты опрашиваемых стейкхолдеров.
2. Подтвердить готовность стейкхолдеров участвовать.
3. Подготовить анкету:
a. Анкета должна содержать вводную. Нельзя заставлять опрашиваемого отвечать на вопросы без контекста. Но если вы уверены, что опрашиваемые погружены в контекст, этот пункт можно сократить до обозначения проблематики (общей темы вопросов).
b. Задавать можно как открытые, так и закрытые вопросы.
c. Но лично я рекомендую предоставлять опрашиваемым варианты ответа даже в формате открытого вопроса. То есть обозначаем проблематику, предлагаем варианты решения, а также оставляем за опрашиваемым возможность раскрыть свою позицию. По сути аналог варианта «Другое» в опроснике.
Проведение
- Рассылаем анкету опрашиваемым.
- Контролируем сроки опроса (должен быть внутренний дедлайн).
- Ответы, по мере поступления, консолидируем в одном документе (каналы связи с опрашиваемыми могут быть разными, но место хранения требований всегда должно быть одно).
Обработка результатов
- Анализируем ответы.
- Фиксируем требования.
- Утверждаем требования с ответственными лицами.
Плюсы и минусы метода
Плюсы:
- Большой охват опрашиваемых.
- Сравнительно небольшие временные затраты.
- Возможность повторного использования анкеты (бриф на стандартизированный проект).
Минусы:
- Не подходит для выявления «неявных» требований.
- Невозможно заранее учесть все необходимые вопросы.
Выявление требований. Мозговой штурм
Мозговой штурм предполагает сбор команды разработки и представителей заказчика на совместную встречу. Этот метод позволяет собрать множество идей от различных заинтересованных лиц (стейкхолдеров) в кратчайшие сроки и практически бесплатно. Во время мозгового штурма участники «накидывают» любые идеи, касающиеся решения проблемы. С помощью этой методики можно проработать несколько различных вариантов решения заданной проблемы, а также разрешить конфликты требований.
Подготовка
1. Формулируем проблематику:
а. Необходима краткая и емкая формулировка, которая оставит поле для размышления экспертов.
b. Проблематика озвучивается экспертам заранее, чтобы у них было время «на подумать».
2. Подготавливаем дополнительные материалы для отработки идей — например, макеты системы.
3. Формируем группу экспертов.
4. Согласовываем дату и время.
Проведение
1. Ведем запись-протокол. Уведомляем участников о том, что ведется запись.
2. Озвучиваем регламент встречи:
a. Тема,
b. Тайминги,
c. Правила.
3. Эксперты озвучивают идеи по очереди.
4. Эксперты должны озвучивать любые идеи, касающиеся проблематики.
5. Каждая идея фиксируется и обсуждается.
6. В некоторых источниках утверждается, что нужен полный запрет на критику. На мой взгляд, это приводит только к сбору сырых идей, без их отработки. «В споре рождается истина».
7. Коллективное комбинирование собранных идей.
Обработка результатов
- Анализируем идеи.
- Формализуем и описываем (то есть готовим развернутое описание).
- Утверждаем идеи с ответственными.
Плюсы и минусы метода
Плюсы:
- Большая вероятность выявить WOW-требования (придумать крутую фичу).
- При наличии на мозговом штурме специалистов, ответственных за разные аспекты системы, увеличивается глубина проработки отдельных требований. То есть низка вероятность придумать нереализуемую фичу.
Минусы:
- Ограниченный круг стейкхолдеров, которых можно привлечь.
- Необходима жесткая модерация. При отсутствии контроля за проведением встречи мозговой штурм быстро превращается в неэффективный балаган.
- Необходима высокая вовлеченность участников в проект (грубо говоря — необходима инициатива со стороны экспертов).
Другие методы выявления требований
- Анализ документации — изучение и анализ существующей документации, которая напрямую или косвенно касается разрабатываемой системы.
- Анализ системных интерфейсов, API и базы данных — анализ систем, которые будут взаимодействовать с разрабатываемой системой.
- Анализ пользовательского интерфейса — анализ интерфейсов, функционально похожих (или идентичных) на разрабатываемую систему (отраслевые стандарты UI/UX). Также к этому относится анализ интерфейсов систем, входящих в IT-экосистему заказчика.
- Моделирование процессов, поведения системы и пользователей — моделирование процессов и схем данных помогает структурировать и упорядочивать информацию о проекте.
- Повторное использование требований — многие элементы систем имеют стандарты исполнения. Например: регистрация — авторизация пользователей.
- Вовлечение представителя заказчика в команду разработки — вовлечение заказчика в работу над проектом является одним из постулатов Agile. В целом наличие представителя заказчика в команде разработки экономит уйму времени на коммуникации.
- Презентации, демо и т.п. — представление требований/реализации системы заказчику. Данный способ помогает уточнить требования, а также выявить скрытые и/или избыточные требования. Пример: демонстрация мокапов будущей системы пользователям.
- Работа в «Поле» (наблюдение) — наблюдение за деятельностью и процессами будущих пользователей.
- Обучение — процесс, в котором заказчик или любой другой человек из организации заказчика, знающий процесс, обучает аналитика по принципу «учитель — ученик».
Очевидный факт:
Только комбинируя методы, возможно добиться сбора требований, максимально отвечающих ожиданиям заказчика.
Материалы для самостоятельного изучения
Блоки знаний:
- Бизнес-анализ — раздел знаний, отвечающий за описание и формализацию бизнес-процессов. Прежде чем интерпретировать бизнес-процессы в виде ПО, необходимо их «правильно» описать и формализовать.
- Моделирование бизнес-процессов — изучение различных нотаций описания бизнес-процессов. Неразрывно связан с бизнес-анализом.
- Системный-анализ — раздел знаний, отвечающий за анализ процессов непосредственно в самом ПО.
- Моделирование систем — изучение нотаций описания систем ПО. Неразрывно связан с системным анализом.
- Документирование требований — изучение различных сред документирования информации о проекте и системе.
- Управление требованиями (согласование, управление изменениями, трассировка требований) — отдельный процесс в системе знаний об анализе в ИТ. Является одним из самых сложных процессов на долгосрочных проектах с большим количеством итераций.
- Прототипирование — изучение различных инструментов для моделирования интерфейсов и архитектуры ПО. Например: Figma для верстки макетов интерфейсов.
Книги:
- Вигерс, Карл: Разработка требований к программному обеспечению. 3-е издание, дополненное / Карл Вигерс, Джой Битти. — Санкт-Петербург : БХВ-Петербург, 2019. — 736 с.
- Ильяхов М., Сарычева Л. Пиши, сокращай. Как создавать сильный текст — 2017.
- Гэртнер, Маркус: ATDD — разработка программного обеспечения через приемочные тесты. — ДМК-Пресс, 2013. — ISBN 978-5-457-42706-8.
- Gojko Adzic, David Evans — Fifty Quick Ideas to Improve Your User Stories — 2014.
- Майкл Мескон, Майкл Альберт, Франклин Хедоури — Основы менеджмента
- Хоп, Грегор Шаблоны интеграции корпоративных приложений (Signature Series) / Грегор Хоп, Бобби Вульф. — Москва : Вильямс, 2019. — 672 с.
- Кон, Майк Пользовательские истории. Гибкая разработка программного обеспечения / Майк Кон. — Москва : Вильямс, 2018. — 256 с.
- Паттон, Джефф Пользовательские истории. Искусство гибкой разработки ПО / Джефф Паттон — Санкт-Петербург : Питер, 2019. — 288 с.
- Cockburn, Alistair Writing Effective Use Cases / Alistair Cockburn. — Addison-Wesley, 2001.
- USE-CASE 2.0
- Фаулер, Мартин UML. Основы. Краткое руководство по стандартному языку объектного моделирования / Мартин Фаулер. — Москва : Символ-Плюс, 2018. — 192 с.
- Гойко, Аджич Impact Mapping. Как повысить эффективность программных продуктов и проектов по их разработке / Аджич Гойко. — Москва : Альпина Паблишер, 2017. — 86 с.
- Коберн, Алистер Быстрая разработка программного обеспечения/ Алистер Коберн. — Москва: Лори, 2002. — 336 с.
- Корнипаев, Илья Требования для программного обеспечения: рекомендации по сбору и документированию / Илья Корнипаев. — Книга по требованию, 2013. — 118 с. Книга
- Ми, Роберт Шаблоны корпоративных приложений / Роберт Ми, Мартин Фаулер. — Москва : Вильямс, 2018. — 544 с.
- Мартин, Роберт Чистая архитектура. Искусство разработки программного обеспечения / Роберт Мартин. — Санкт-Петербург : Питер, 2018. — 352 с.
- BABOK 3.0
- SWEBOK 3.0
Формирование требований к системе
начинается со сбора необходимой для
этого информации. На первом этапе работ
проводится обследование компании,
которое необходимо для формирования
представлений о компании, ее целях,
задачах и автоматизируемых бизнес-процессах.
Также необходимо описать информационный
ландшафт компании, чтобы определить в
нем место для внедряемого решения.
Существует несколько различных подходов
к обследованию объекта автоматизации:
экспресс-обследование и информационное
обследование [10].
Экспресс-обследование
компании
В ходе экспресс-обследования должна
быть сформирована краткая характеристика
компании, а также определены проблемы,
цели проекта, наилучшие пути их реализации,
бюджет проекта с дальнейшим более
подробным обследованием и его сроки.
Данная информация предоставляется в
виде отчета и коммерческого предложения,
которые формируются по итогам анкетирования
руководства, интервью, анализа деятельности
и документации компании-заказчика.
Отчет, полученный в рамках
экспресс-обследования как правило
содержит в себе информацию следующего
характера:
-
Краткое
описание компании: виды деятельности,
организационную и функциональную
структуры. -
Описание
основных бизнес-процессов компании
(as is – как
есть). -
Уровень
автоматизации процессов, используемое
в компании программное обеспечение и
задействованные технические мощности. -
Описание
проблем, выявленных в компании. -
Пожелания
заказчика и варианты решения, концепцию
будущей системы, с помощью которой
будут совершенствоваться процессы (to
be – как будет).
Итогом обследования является коммерческое
предложение по реализации проекта с
рекомендациями по выбору и внедрению
ПО, которое также содержит этапы,
ориентировочные сроки, объем и стоимость
выполняемых работ.
Данный вид обследования помогает
проектной команде лучше познакомиться
с компанией заказчика и показать свои
возможности по улучшению существующих
бизнес-процессов.
Информационное
обследование компании
На ряду с экспресс-обследованием,
информационное обследование призвано
дать исполнителю представление о
компании заказчика, всех его
бизнес-процессах, а также провести
подготовку предприятия для внедрения
программного обеспечения и согласовать
план дальнейших работ. Данный вид
обследования проводится по определенной
методике, включающей в себя три этапа:
-
Сбор
информации о компании (документации,
анкет, интервью и т.д.). -
Анализ и
систематизация данных, полученных в
ходе первого этапа. -
Представление
результатов для согласования с
заказчиком.
На первом этапе решаются все организационные
вопросы: утверждается состав проектной
команды и приказ на выполнение
обследования, определяются сроки и
состав работ, формируются анкеты и
график интервью с экспертами.
Основными источниками информации для
обследования (как для экспресс, так и
для информационного) являются анкеты,
интервью и внутренняя документация
компании-заказчика. Для наилучшей оценки
ситуации в компании составляются три
вида анкет:
-
Анкеты
для топ-руководителей; -
Анкеты
для линейных руководителей; -
Анкеты
для линейного персонала.
Так как работа компании рассматривается
со стороны всех участников процесса
исполнителю удается сформировать
наиболее полное представление об «узких
местах» в бизнес процессах, а также
выделить проблемы во взаимодействии
между подразделениями и внутри них.
Руководители топ-уровня имеют более
полное представление о деятельности
компании в целом и о тех бизнес-результатах,
которые ожидаются от внедрения системы.
Линейные руководители более осведомлены
о работе подразделений компании и
проблемах их взаимодействия. И наконец
рядовые сотрудники компании лучше
представляют проблемы и «узкие места
процессов», которые присутствуют на их
рабочих местах, а соответственно могут
поспособствовать их ликвидации.
Главным отличием информационного
обследования от экспресс является
глубина и ширина. В ходе информационного
обследования проводится более глубокий
анализ деятельности компании,
бизнес-процессы описываются не укрупненно,
а детально, так как консолидируется
информация, получаемая на всех уровнях,
что позволяет выделить все проблемные
места и учесть предложения сотрудников
по усовершенствованию процессов. Однако
зачастую для проекта хватает и
экспресс-обследования, если оно было
проведено надлежащим образом и в отчете
были отражены все аспекты деятельности
компании.
Основными инструментами, используемыми
в обоих видах обследования, являются
интервьюирование и анализ внутренней
документации компании-заказчика. В
совокупности эти инструменты могут
послужить самостоятельным методом
обследования объекта автоматизации,
на основании которого могут быть
построены бизнес-процессы, выявлены их
проблемы и сформированы требования к
будущей системе.
В некоторых случаях для сбора информации
в рамках обследования объекта автоматизации
применяются только такие инструменты
как интервьюирование и анализ документации.
Среди изучаемых документов могут быть:
положения, стандарты, отчеты, исследования
и прочая документация. В ходе интервью
и анализа должны быть изучены объекты,
с которыми взаимодействует компания,
технологии работы компании уровень
автоматизации, сформировано словестное
описание процессов и выявлены их
проблемные места.
Следующим этапом работ является
непосредственно формирование требований
к автоматизированной системе.
Требования
к программному обеспечению являются
совокупностью данных на основании
которых проектируется система [10].
Требования составляются на основе
информации, полученной в ходе обследования
компании, соответственно, чем качественнее
были собраны и обработаны данные, тем
лучше будут сформированы требования,
и тем меньше потребуется корректировок
в ходе их согласования. Существуют
различные методики формирования
требований, несколько из которых будут
рассмотрены далее.
Требования
по методике Карла Виргеса
В своей работе Карл Виргес выделяет три
уровня требований к программному
обеспечению: бизнес-требования,
пользовательские требования и
функциональные требования. При этом,
согласно данной методике, на каждом из
уровней помимо функциональных,
присутствуют нефункциональные требования
[11].
Функциональные требования:
-
Бизнес-требования
– это высокоуровневые требования,
содержащие цели заказчиков, спонсоров
и организации в целом. Это цели, ради
которых разрабатывается система. Данные
требования фиксируются в документе
концепции и границ или же уставе проекта. -
Пользовательские
требования — это требования, описывающие
цели и задачи, которые система позволяет
решать пользователям. Для иллюстрации
данных требований используются диаграммы
вариантов использования и сценариев. -
Функциональные
требования – требования, определяющие
функциональность информационной
системы, которая должна быть построена
разработчиками, чтобы пользователи
могли выполнять задачи для достижения
целей сформулированных в рамках
бизнес-требований.
Нефункциональные
требования:
-
Бизнес-правила
не являются требованиями в общепринятом
смысле, но они являются источниками
для требований к ИС. Бизнес-правилами
могут быть политики, стандарты, регламенты
и предписания, которые ограничивают
или определяют ход бизнес-процессов. -
Атрибуты
качества – это требования, которые
являются дополнительным описанием
функций системы или ее производительности.
Такими требованиями могут быть простота
использования, логичность,
отказоустойчивость, устойчивость к
сбоям и прочие. -
Ограничения
– технические ограничения на разработку
вида и структуры продукта. -
Внешние
интерфейсы – требования, описывающие
взаимодействие меду системой и
пользователем или другим ПО.
Согласно данной методике функциональные
требования основываются на описании
бизнес-объектов организации (ее
структурных единиц, процессов, ролей,
систем), а нефункциональные требования
формируются по итогам обследования
компании путем анкетирования, интервью
и наблюдения за работой сотрудников,
участвующих в автоматизируемом
бизнес-процессе.
FURPS
и FURPS+
Данная методика позволяет охватить все
аспекты системы и является более широким
представлением методики FURPS.
Обе методики основаны на методике Карла
Виргеса и делят требования на функциональные
и нефункциональные, однако далее имеют
немного отличающуюся логику деления.
Название методики является аббревиатурой
[12]:
-
Functionality
(Функциональность) – это все требования,
которые касаются функционального
назначения системы. Сюда входят:
безопасность, отчетность, лицензирование,
ведение журнала и другие. -
Usability
(Удобство использования) – это требования,
основанные на человеческом факторе.
То есть субъективные пожелания
пользователей системы. В данные
требования могут быть включены требования
к интерфейсу (его интуитивная понятность,
эстетичность, логичность), к эксплуатационной
документации (ее полнота и понятность),
а также к защите от ошибок. -
Reliability
(Надежность) – данное требование к
системе подразумевает ее способность
работать в условиях высокой нагрузки
и под воздействием неблагоприятных
факторов. Требованиями к надежности
могут быть доступность системы,
отказоустойчивость и восстанавливаемость,
время и частота сбоев, точность
вычислений. -
Performance
(Производительность) – эти требования
адресованы к объему информации, который
может проходить через систему во время
ее работы. Например, пропускная
способность, время отклика, потребление
ресурсов, масштабируемость и другие. -
Supportability
(Поддерживаемость) – это требования к
обеспечению технической поддержки, то
есть к тому как система может быть
адаптирована, совместима с другими
системами, конфигурируема. Также к
этому типу требований относятся
требования к поддержке системой
стандартов, языков, валюты, времени, и
то, как легко система устанавливается.
В методике FURPS+ помимо
требований первоначального стандарта,
были добавлены некоторые ограничения:
-
Ограничения
проектирования – ограничения, которые
влияют на границы проектных решений,
в соответствии с которыми буде
разрабатываться система. -
Ограничения
разработки – это ограничения, которые
задают необходимые стандарты кодирования:
язык программирования, стандарты,
инструменты или платформы. -
Ограничения
на интерфейсы – требования к взаимодействию
с другими системами, которые формируются
пользователями. -
Физические
ограничения – это ограничения, которые
оказывают влияние на аппаратную часть
системы (размер, вес, условия работы и
т.д)
SWEBOK
Как и FURPS, SWEBOK является
аббревиатурой (Software
Engineering Body of Knowledge). Это документ
призванный объединить в себе знания по
разработке программного обеспечения
и содержащий 10 различных областей
знаний, первой из которых является
инженерия требований.
Согласно данному документу работа над
формированием требований должна
проходить в несколько этапов: определение,
анализ, спецификация, проверка и
управление, а область знаний «Требования
к программному обеспечению» состоит
из 6 разделов [13]:
-
Инженерия
требований – это процесс анализа и
документирования требований к
программному обеспечению, который
заключается в преобразовании требований
заказчика в их описание и контроль их
соблюдения. -
Выявление
требований – это процесс сбора информации
из различных источников (документов,
анкет, интервью), в ходе которого
формируются отдельные требования к
процессу разработки и системе. -
Анализ
требований – процесс во время которого
исследуются потребности и цели
пользователей, которые сопоставляются
с требованиями к системе для устранения
конфликтов между требованиями,
формирования границ системы и выявления
приоритетов. На данном этапе требования
разделяются на функциональные и
нефункциональные. -
Спецификация
требований к ПО – процесс формализации
функциональных и нефункциональных
требований, требований к взаимодействию
с другими системами и компонентами, а
также системных требований. В ходе
спецификации формируется структура
будущего программного обеспечения,
его архитектура, логика, требования к
функционалу, качеству, эксплуатационной
документации. -
Валидация
требований – это процесс проверки
однозначности, непротиворечивости,
полноты и выполнимости требований для
того, чтобы с помощью отслеживания
источников требований подтвердить,
что требования характеризуют именно
эту систему. -
Управление
требованиями – процесс внедрения
требований во все этапы жизненного
цикла, контроля реализации требований
и корректировка требований при
необходимости.
Данные подходы к формированию требований
могут быть применены в различных
проектах, в зависимости от конкретной
ситуации. Так методика Карла Виргеса
является одной из первых методик, на
которой были основаны ряд других.
Методики FURUPS схожи с
данной методикой, однако требования в
них не привязаны к определенным
регламентирующим документам. Последняя
методика (SWEBOK) сформулирована
в результате сбора и анализа многолетнего
опыта разработки программного обеспечения
и описывает этапы сбора требований.