Анализ требований к автоматизированным информационным системам

Техники анализа и проектирования

Данная лекция посвящена ключевой категории инструментов бизнес-аналитика — техникам анализа и проектирования. В материале рассматривается разделение этих техник на три основные группы в зависимости от центрального объекта внимания: пользователь, процесс и данные. Лекция дает обзорное представление о назначении каждой техники, от сбора нефункциональных требований и написания пользовательских историй до моделирования процессов и работы со словарями данных, подчеркивая их роль в создании целостного и ценного информационного продукта.

Основные мысли

• Ценность техник анализа и проектирования: Это корневые техники курса, которые, согласно принципу Парето, формируют 80% результата, несмотря на 20% усилий, вложенных в них.
• Три измерения анализа: Для полноценного охвата картины изменений анализ необходимо вести в трех направлениях: работа с пользователями, работа с процессами и работа с данными.
• Пользователь как источник ценности: Пользовательские техники помогают формализовать информацию от пользователей, отделяя функциональные требования («что делает система») от нефункциональных («какая система»).
• Инструменты процессного подхода: Процессные техники (моделирование состояния, процесса, диаграммы последовательности) служат для интеграции пользовательского опыта в единый, логичный и ценный бизнес-процесс.
• Данные как основа решений: Техники работы с данными (DFD, концептуальное моделирование, Data Mining) необходимы для принятия обоснованных управленческих решений и фасилитации роста организации.
Показывать лекцию целиком
Краткое изложение


Мы стремительно развиваем тему техник анализа и проектирования информационных систем – перевалив за экватор, продвигаемся к завершению этой лекции. Сегодня мы рассмотрим очередную категорию техник и дополним нашу картину новой порцией информации. Этот модуль будет акцентировать внимание на техниках, которые являются корневыми для нашего курса в целом.

Итак, сегодня мы поговорим о техниках анализа и проектирования. Как понятно из названия, техники анализа и проектирования составляют основу нашего курса. Другие категории техник, которые мы рассматриваем, позволяют облегчить, фасилитировать весь процесс сбора и подготовки необходимой информации, но основная часть работы приходится именно на техники анализа и проектирования. В процентном соотношении времени и ресурсов они не занимают времени больше, чем остальные техники, но с точки зрения важности и вложения в результат именно в них сосредоточена основная ценность. Используя известный принцип Парето, можно сказать, что именно 20% вложения усилий в эти техники формирует 80% результата достигаемой ценности.

Сегодня мы рассмотрим много техник – три категории. Каждая категория сосредотачивает внимание на центральном объекте анализа. Сначала мы сосредоточимся на работе с конкретными пользователями, затем на работе над конкретными процессами, ну и напоследок посмотрим, как работать над данными. Эти категории в своей основе рассматривают и концентрируют работу над объектами, которые важны для полноценного охвата картины изменений, проводимых в ходе работы над проектами разработки информационных продуктов. Применительно к пользователям мы рассмотрим нефункциональный анализ, бизнес-правила, User Story, Use Case, роли и права. Обсуждая работу над процессами, мы поговорим о моделировании состояния, моделировании процесса, диаграммах последовательности и моделировании принятия решения. В отношении работы над данными мы обсудим диаграмму потока данных, моделирование данных, концептуальное моделирование, словарь данных и Data mining.

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

Теперь обсудим такую технику, как нефункциональный анализ. Назначение нефункционального анализа – описать и определить качества, необходимые для системы, через функциональные возможности, реализуемые в ней. Нефункциональные требования еще называют атрибутами качества системы. Эти требования должны описывать и регламентировать архитектуру информационной системы, так как именно они являются наиболее важными для обеспечения ее функционирования и развития. Функциональные требования определяют, что должна делать система, а что нет. Нефункциональные требования определяют, какой должна быть система. Другие термины для нефункциональных требований – «качества», «цели качества», «требования к качеству обслуживания», «ограничения» и «технические требования».

Далее поговорим о технике анализа бизнес-правил, которая используется для регламентирования и систематизации правил, формирующих повседневное поведение, и направляют принятие бизнес-решений в организации. Бизнес-правила применяются к процессам и организационной культуре, они создаются для того, чтобы направлять организацию в отношении «поведения», которое соответствует желаемому способу реализации ценности. Бизнес-правила всегда находятся под контролем руководства организации и обнаруживаются во время выявления требований. С помощью понятных бизнес-правил намного проще идентифицировать данные и управлять ими.

А теперь – самая пользовательская техника из тех, которые мы рассматриваем. Пользовательская история (User Story) – это наименьшая единица работы, которая получила наибольшее распространение в agile-фреймворке. Это не функция, а конечная цель, которую преследует пользователь при использовании программного обеспечения. Пользовательская история передает то, чего пользователь хочет достичь, и излагает это простым, нетехническим способом.

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

Use Case описывает последовательность действий, выполняемых системой, которая обеспечивает ценность для пользователя, а также описывает поведение системы в различных условиях, когда она отвечает на запрос одного из заинтересованных лиц, называемого основным действующим лицом (актором). Актор – это конечный пользователь системы, который может выступать в виде конкретного сотрудника или другой информационной системы. В программной и системной инженерии Use Case представляет собой список шагов, обычно определяющих взаимодействие между ролью и системой для достижения цели. Действующим лицом может быть человек или внешняя система. Вариант использования определяет поток событий в системе, которые в совокупности приносят требуемый результат.

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

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

Техника моделирования состояния направлена на то, чтобы создать состояние, которое характеризирует текущее положение. Моделирование состояния требуется для воссоздания применения различных специализированных информационных инструментов. Эта техника помогает в осознании комплексности текущей картины. С помощью моделирования состояния не получится увидеть новые требования – оно помогает достоверно воссоздать понятные факторы и увидеть их в существующих факторах. Эта техника помогает моделировать текущую картину. Смоделированное состояние может быть использовано как часть существующего контекста изменений.

Техника моделирования процесса направлена на то, чтобы воссоздать или спроектировать существующий или планируемый контекст с момента начала до момента реализации функциональной ценности. Моделирование процесса обычно проводится в ситуации, когда нам надо изменить существующий контекст и оценить изменения с точки зрения их осуществимости. Эта техника использует специальные нотации и инструменты. Самыми популярными инструментами для моделирования процесса являются BPMN, UML и DFD.

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

Диаграмма последовательности оперирует источниками этапов, временем жизни этих источников и процессом, требуемым для реализации бизнес-ценности.

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

Как известно, данные – нефть XXI века. Тактика и стратегия развития бизнеса зависят от того, как в организации работают с данными. Одно из самых популярных направлений развития современных организаций носит название «Принятие решений, основанное на данных». Пользовательский опыт и процессы осуществляются на основе данных, потоки которых связывают организацию в единый цифровой организм. Вид техник анализа и проектирования, объединенных работой над данными, их анализом, чисткой, прогнозированием, называется техникой по работе с данными.

Диаграмма потоков данных – авторитетный и хорошо себя зарекомендовавший вид техники по работе с данными. Эта техника известна как DFD (Data Flow Diagram) и предлагает взгляд на данные как на информацию, которая приводит процессы компании в движение. Диаграмма потоков данных имеет четыре основных акцента: «данные поступают на вход в процессы», «данные поступают на выход из процессов», «данные управляют процессами» и «данные – инструмент реализации процессов».

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

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

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

Data mining – продвинутая техника анализа и представления существующих данных для фасилитации управленческих решений по вариантам развития того или иного процесса или проекта изменений. Data mining построена на сложных информационных продуктах, которые автоматически моделируют данные и процессы и представляют набор вариантов решений. Эта техника помогает упростить моделирование принятия решений и, в наиболее простых и понятных случаях, автоматизировать его.

Подведем итоги этого модуля. Техники анализа и проектирования акцентируют внимание на трех основных факторах: пользователь – как исполнитель процесса, процесс – как способ достижения ценности, данные – как инструмент прогнозирования и повышения ценности. Эти техники помогают упростить, упорядочить и систематизировать автоматизируемый контекст изменений. Техники анализа и проектирования предлагают варианты структуризации, систематизации и развития организации на основе принятия взвешенных и оправданных решений. До встречи в следующем модуле!

Приложения

Презентация 5.6
Лекция посвящена техникам анализа и проектирования, которые являются основой всего курса. Эти техники группируются вокруг трех центральных объектов: пользователей, процессов и данных.

1. Пользовательские техники:
o Нефункциональный анализ: Описывает качества системы (атрибуты качества), определяя, какой должна быть система (в отличие от функциональных требований, определяющих, что она делает).
o Бизнес-правила: Регламентируют повседневное поведение и направляют принятие решений в организации.
o User Story: Описывает цель пользователя простым, нетехническим языком («хочу достичь Х»), фокусируясь на потребности, а не на способе реализации.
o Use Case: Представляет собой список шагов, описывающих взаимодействие пользователя (актора) с системой для достижения конкретной цели.
o Роли и права: Задача по сопоставлению уровней доступа и обязанностей для различных пользователей системы, которую необходимо решать на ранних этапах проекта.

2. Процессные техники:
o Моделирование состояния: Помогает достоверно воссоздать текущую картину (as-is), чтобы понять существующие факторы и контекст.
o Моделирование процесса: Направлено на воссоздание или проектирование контекста (as-is или to-be) для оценки осуществимости изменений с использованием нотаций (BPMN, UML).
o Диаграмма последовательности: Используется для моделирования распределенных и кросс-функциональных процессов, объединяя отдельные этапы в единое решение.
o Моделирование принятия решений: Ситуационная техника для проработки различных вариантов развития процесса и выбора наилучшего пути, часто опирающаяся на результаты предыдущих техник.

3. Техники работы с данными:
o Диаграмма потоков данных (DFD): Показывает, как данные поступают на вход, на выход, управляют процессами и служат инструментом их реализации.
o Моделирование данных: Создание необходимых характеристик данных на основе анализа текущих или желаемых процессов.
o Концептуальное моделирование: Абстрактная техника, похожая на мозговой штурм, для переосмысления организационного контекста и стимулирования роста.
o Словарь данных: Инструмент синхронизации, создающий единый и понятный для всех участников проекта язык общения.
o Data mining: Продвинутая техника автоматического анализа данных и моделирования для предоставления вариантов управленческих решений.

Выводы

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

Вопросы для самопроверки

1. В чем заключается основное различие между функциональными и нефункциональными требованиями (атрибутами качества)?
2. Чем пользовательская история (User Story) отличается от варианта использования (Use Case)?
3. Какие три основные группы объектов являются центральными для техник анализа и проектирования?
4. Для каких целей используется моделирование состояния, и почему с его помощью нельзя увидеть новые требования?
5. Что такое DFD и на какие четыре аспекта работы с данными она обращает внимание?
6. В чем суть техники «Словарь данных» и какую проблему в проекте она решает?
Вернуться к учебному плану