Стадии, проблемы и методология системного анализа | OTUS
⚡ Подписка на курсы OTUS!
Интенсивная прокачка навыков для IT-специалистов!
Подробнее

Курсы

Программирование
Backend-разработчик на PHP
-9%
Алгоритмы и структуры данных
-9%
Team Lead
-6%
Архитектура и шаблоны проектирования Разработчик IoT
-13%
C# Developer. Professional
-9%
HTML/CSS
-11%
C# ASP.NET Core разработчик
-5%
Kotlin Backend Developer
-8%
iOS Developer. Professional
-8%
Symfony Framework Java Developer. Basic C++ Developer. Professional Web-разработчик на Python MS SQL Server Developer Android Developer. Basic Разработчик программных роботов (RPA) на базе UiPath и PIX Microservice Architecture Unity Game Developer. Basic Разработчик голосовых ассистентов и чат-ботов React.js Developer Node.js Developer Интенсив «Оптимизация в Java» Супер - интенсив по паттернам проектирования Супер - интенсив по Kubernetes Супер-интенсив «СУБД в высоконагруженных системах» Супер-интенсив "Tarantool" C++ Developer. Basic
Инфраструктура
Administrator Linux.Basic
-10%
Мониторинг и логирование: Zabbix, Prometheus, ELK
-10%
Экспресс-курс «CI/CD или Непрерывная поставка с Docker и Kubernetes»
-30%
Administrator Linux. Professional
-6%
Дизайн сетей ЦОД
-13%
Разработчик IoT
-13%
Экспресс-курс по управлению миграциями (DBVC)
-10%
Базы данных Network engineer Разработчик программных роботов (RPA) на базе UiPath и PIX Microservice Architecture Reverse-Engineering. Professional Внедрение и работа в DevSecOps Administrator Linux. Advanced Infrastructure as a code in Ansible Супер-практикум по использованию и настройке GIT Супер-интенсив «СУБД в высоконагруженных системах» Супер-интенсив "Tarantool"
Специализации Курсы в разработке Подготовительные курсы
+7 499 938-92-02

Стадии, проблемы и методология системного анализа

Сегодня для решения задач по изучению требований к разрабатываему ПО существует механизм системного анализа. О нем и поговорим.

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

Стадии системного анализа

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

Можно выделить 3 главные стадии системного анализа: — выделение составных частей проблемы, формализация этих частей; — обнаружение пути решения проблемы (возможно применение методов математики); — практическая реализация полученных результатов.

Порой системный анализ называют «методикой улучшающего вмешательства в проблемную ситуацию».

Проблемы и методология системного анализа

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

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

Некоторые из вышеописанных проблем могут если не устранить, то облегчить известные аналитические методы. Центральное место здесь занимает методология структурного анализа.

Структурный анализ — это метод исследования системы, который: — начинается с общего обзора системы; — детализируется, приобретая иерархическую структуру с большим количеством уровней.

Что тут характерно: — разбиение на уровни абстракции, причем с поуровневым ограничением количества элементов (как правило, от 3 до 6-7); — ограниченный контекст, который включает в себя только существенные и важные на каждом уровне детали; — двойственность как данных, так и операций над данными; — применение строгих формальных правил записи; — последовательность приближения к конечному результату.

В следующий раз поговорим о принципах структурного анализа.

По материалам: https://helpiks.org/9-41863.html.

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться