Определение структурного анализа
На этапе анализа требований к системе формализуются, документируются и уточняются требования заказчика. Именно на этом этапе закладывается успех всего проекта. Из-за неполноты и нечеткости требований разработка проекта может закончиться неудачей. Поэтому список требований к разрабатываемой системе должен включать:
1) совокупность условий, при которых будет эксплуатироваться программная система, в том числе аппаратных и программных ресурсов и требований квалификации сотрудников, которые будут работать с программной системой;
2) описание выполняемых системой функций;
3) ограничения на процессы разработки, к которым можно отнести сроки завершения работ и мероприятия по защите информации.
На этапе анализа определяется архитектура системы, ее функции, распределение функций между аппаратурой и программным обеспечением.
На этапе проектирования исследуется структура системы и взаимосвязи ее компонентов. Проектирование часто определяют как процесс получения логической модели системы. Этап проектирования обычно разделяется на два подэтапа:
1) проектирование структуры и проектирование интерфейса для отдельных компонентов программной системы, согласование функций и технических требований компонентов системы;
2) детальное проектирование, включающее разработку спецификаций для каждого компонента.
Особенностью разработки программного обеспечения является то, что наиболее сложные работы выполняются на начальных этапах жизненного цикла, то есть на этапах анализа и проектирования.
Последующие этапы имеют относительно невысокую сложность и трудоемкость.
Ошибки, допущенные на этапах анализа и проектирования, порождают на следующих этапах трудные, а иногда неразрешимые проблемы. Анализ требований к системе оказывает наиболее существенное влияние на все последующие этапы создания программного продукта и при этом является наименее изученным процессом. Если требования не были зафиксированы документально, то для участников проекта они остаются как бы несуществующими.
Язык, на котором формулируются требования к системе, должен быть достаточно простым и понятным как заказчику, так и разработчику, в данном случае системному аналитику. Системный аналитик должен уметь решать следующие задачи:
1) получение исчерпывающей информации для оценки требований к системе;
2) заказчик не может судить о том, какие его требования являются выполнимыми, а какие нет. Кроме того, системный аналитик получает от заказчика чрезмерное количество информации о предметной области. Поэтому системный аналитик должен уметь выбирать только существенную информацию;
3) спецификации системы, которые составляет аналитик, из-за технических терминов и значительного объема часто непонятны заказчику. Если спецификации системы не были поняты заказчиком, то они будут недостаточными для проектировщиков и программистов. Решение этой проблемы состоит в использовании структурных методов.
Наиболее популярным структурным методом является метод структурного анализа.
Метод структурного анализа состоит в том, что исследование предметной области начинается с общего обзора, а затем выполняется более детальное исследование, результаты которого приобретают иерархическую структуру.
Для метода структурного анализа характерно разбиение описания системы на уровне абстракции. Причем количество элементов на каждом уровне ограничено и обычно составляет от трех до девяти. На каждом уровне учитываются только существенные для данного уровня детали, определяется правило и формальное описание компонентов.
Методология структурного анализа базируется на ряде общих принципов. Эти принципы регламентируют организацию работ на начальных этапах жизненного цикла, а также используются для выработки рекомендаций по организации работ на последующих этапах. Перечислим основные принципы:
1) решение трудных задач выполняется путем их разбиения на множество меньших независимых задач;
2) каждая отдельная задача существенна для понимания всей системы в целом. Этот принцип называется также принципом иерархического упорядочивания и означает, что система может быть представлена по уровню, но каждый уровень должен добавлять в систему новые существенные детали.
Остальные принципы структурного анализа являются второстепенными, но также не должны игнорироваться разработчиками.
3) принцип абстрагирования заключается в выделении существенных аспектов системы, чтобы представить проблему в простом общем виде;
4) принцип формализации состоит в необходимости применения строгого методического подхода для решения всех задач;
5) принцип упрятывания заключается в том, что несущественная на конкретном этапе информация скрывается, то есть каждый компонент системы получает только ту информацию, которая ему необходима;
6) принцип концептуальной общности. На всех этапах жизненного цикла должна использоваться единая методология;
7) принцип полноты. Выполняется контроль на присутствие в системе лишних элементов;
8) принцип непротиворечивости состоит в проверке обоснованности использования и согласованности всех элементов системы;
9) принцип логической независимости состоит в том, что проектирование, выполняющееся на логическом уровне, не зависит от физического проектирования;
10) принцип независимости данных состоит в том, что модель данных должна быть спроектирована независимо от процессов их экологической обработки;
11) принцип структурирования данных означает, что данные в программной системе должны быть представлены в виде набора структур доступа;
12) принцип доступа конечного пользователя. Пользователь должен иметь непосредственный доступ к базе данных, чтобы он без программирования мог внести изменения в базу данных.
Соблюдение перечисленных принципов необходимо при организации работ на начальных этапах жизненного цикла независимо от типа разрабатываемой системы.
Использование принципов структурного анализа позволяет на более ранних стадиях разработки получить представления о создаваемой системе, обнаружить промахи и недоработки. Это облегчает работу на последующих этапах жизненного цикла и снижает стоимость разработки.
Дата добавления: 2021-07-22; просмотров: 296;