Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Programmnaya_inzheneria_Lektsii.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
2.57 Mб
Скачать

3.2.5.Методологии

Существуют различные общие стратегии, помогающие в проведении работ по проектированию и методологий проектирования. Каждая методология обычно использует собственный набор нотаций для описания моделей ПО. Наибольшую известность и популярность в проектировании ПО получили следующие методы:

1. Функционально-ориентированное или структурное проектирование .

Это один из классических методов проектирования, в котором декомпозиция сфокусирована на идентификации основных программных функций и, затем, детальной разработке и уточнении этих функций “сверху-вниз”. Структурное проектирование, обычно, используется после проведения структурного анализа с применением диаграмм потоков данных (DFD) и связанным описанием процессов.

2. Объектно-ориентированное проектирование.

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

Объекты, это сущности, которые имеют уникальность(идентификатор), состяние, которе описывается в виде набора атрибутов (переменных) и поведение или действия, пердсталенное в виде методов (програмнных процедур). В рамках развития данной методолгии был создан язык моделипрования UML.

3 Проектирование на основе структур данных

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

4 Компонентное проектирование (в настоящее развилось в сервисно-ориентированный подход в проектировании).

Существуют и другие интересные, но менее распространенные подходы

3.2.6.Оценка качества

На стадии проектрования проводят анализ качества и оценку программного дизайна. Существует целый спектр различных атрибутов, помогающих оценить и добиться качественного дизайна. Эти атрибуты могут описывать многие характеристики системы и элементов дизайна как такового – “тестируемость”, “переносимость”, “модифицируемость”, “производительность”,“безопасность” и т.п. Важно понимать, что обсуждаемые атрибуты касаются только дизайна (какрезультата), но не проектирования (как процесса).

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

3.3.Конструирование программного обеспечения

3.3.1.Определение

Термин конструирование программного обеспечения (software construction) описывает детальное создание рабочей программной системы посредством комбинации кодирования, верификации (проверки), модульного тестирования (unit testing), интеграционного тестирования и отладки.

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