- •Case-технология. Case-средства. Case-системы. Исторические подоплёки возникновения case-средств
- •Case-средства и case-технологии
- •Понятие компьютерной технологии разработки программных средств
- •Особенности современных case-средств
- •Эволюция case-средств
- •Классификация case-средств. Классификации case-средств
- •Классификация case-средств по типам
- •Case-средства анализа и проектирования
- •Case-средства проектирования баз данных
- •Case-средства программирования
- •Case-средства реинжиниринга
- •Состав case-средств реинжиниринга
- •Классификация case-средств по уровням
- •Верхние (Upper) case - средства компьютерного планирования
- •Средние (Middle) case-средства
- •Нижние (Lower) case-средства
- •Классификация case-средств по категориям
- •Особенности интегрированных case-средств
- •Компоненты интегрированных case-средств
- •Диаграммные средства
- •Синтаксический верификатор
- •Каскадная модель
- •С промежуточным контролем
- •Спиральная модель
- •Причины возникновения ошибок при разработке программных средств. Case-модель жц по.
- •Области применения case-технологий.
- •Информационная инженерия и обратное перепроектирование.
- •Процесс разработки по с использованием case-средств.
- •Этап анализа в жизненном цикле программного обеспечения.
- •Методологические аспекты анализа целей и требований к разрабатываемому программному обеспечению.
- •Проектирование, ориентированное на данные.
- •Функционально-ориентированное (структурное) проектирование программного обеспечения.
- •Диаграммные методологии проектирования по.
- •Структурные методологии и подходы к анализу и проектированию.
- •Структурные методолгии: стандарты idef. Idef0.
- •Структурные методологии: стандарты idef. Idef1x. Нормализация данных.
- •Структурные методологии: стандарты idef. Idef3. Отличие idef3 от idef0.
- •Структурные методологии: стандарты idef. Idef5.
- •Обзор методологии aris. Сравнение aris и idef3.
- •Структурные методологи. Dfd.
- •Методология datarun проектирования информационных систем.
- •Case-средства поддержки структурных методологий.
- •Методики объектно-ориентированного анализа и проектирования.
- •Классификация, основные этапы и задачи объектно-ориентированных методов анализа и проектирования.
- •Методология объектно-ориентированной разработки rup (Ration Unified Process).
- •Методология разработки программных систем msf (Microsoft Solutions Framework). Обзор, основные концепции.
- •Методология разработки программных систем msf (Microsoft Solutions Framework). Модель процессов в msf.
- •Методология разработки программных систем msf (Microsoft Solutions Framework). Этап анализа.
- •Методология разработки программных систем msf (Microsoft Solutions Framework). Этап планирования.
- •Методология разработки программных систем msf (Microsoft Solutions Framework). Этап разработки.
- •Методология разработки программных систем msf (Microsoft Solutions Framework). Этапы контроля качества и внедрения в msf.
- •Методология разработки программных систем msf (Microsoft Solutions Framework). Модель команды разработчиков.
- •Методология разработки программных систем msf (Microsoft Solutions Framework). Управления проектом в msf. Дисциплина управления проектом.
- •Методология разработки программных систем msf (Microsoft Solutions Framework). Управления проектом в msf. Масштабируемость.
- •Методология разработки программных систем msf (Microsoft Solutions Framework). Управления проектом в msf. Иерархическая структура работ (wbs).
- •Методология разработки программных систем msf (Microsoft Solutions Framework). Управления проектом в msf. Оценка сроков разработки.
- •Методология разработки программных систем msf (Microsoft Solutions Framework). Диаграммы вариантов использования системы и сценариев использования системы.
- •Надёжность по. Case-средства и надёжность по. Контроль качество по.
- •Методология разработки программных систем msf (Microsoft Solutions Framework). Управление компромиссами в msf.
- •Методология разработки программных систем msf (Microsoft Solutions Framework). Стратегия выпуска версий.
- •Принципы проектирования сложных систем.
- •Методология xp – «экстремальное программирование»: особенности, преимущества, недостатки.
- •Дополнительные средства поддержки жизненного цикла разработки программного обеспечения. Классификация инструментальных систем.
- •Системы отслеживания ошибок. Основные понятия. Обзор.
- •Система отслеживания ошибок Bugzilla.
- •Система управления задачами jira.
- •Система управления задачами TrackStudio.
- •Системы управления версиями. Основные понятия. Обзор.
- •Системы управления версиями. Модели версионирования.
- •Системы управления версиями. Rcs. Cvs.
- •Системы управления версиями. Svn. Основные возможности.
- •Системы управления версиями. Svn. Архитектура. Компоненты.
- •Технология внедрения case-средств.
- •Определение потребностей в case-средствах.
Средние (Middle) case-средства
Средства поддержки этапов анализа требований и проектирования спецификаций и структуры ПО.
Использование сокращает цикл разработки проекта; при этом важную роль играет возможность накопления и хранения знаний, обычно имеющихся только в голове разработчика-аналитика, что позволит использовать накопленные решения при создании других проектов. Основная выгода от использования средних CASE-средств состоит в значительном облегчении проектирования систем, проектирование превращается в итеративный процесс.
Нижние (Lower) case-средства
Являются средствами разработки ПО (при этом может использоваться до 30% спецификаций, созданных средствами среднего CASE).
Содержат:
системные словари и графические средства, исключающие необходимость разработки физических спецификаций.
системные спецификации, которые непосредственно переводятся в программные коды разрабатываемой системы (при этом автоматически генерируется до 80-90% кодов).
Выполняют функции:
тестирования,
управления конфигурацией,
формирования документации.
Главными преимуществами нижних CASE являются:
значительное уменьшение времени на разработку,
облегчение модификаций, поддержка возможностей прототипирования (совместно со средними CASE).
Классификация case-средств по категориям
CASE Tools (вспомогательные программы) - включает отдельные локальные средства, решающие небольшие автономные задачи;
CASE Toolkit (инструментарий) - набор частично интегрированных средств, охватывающих большинство этапов жизненного цикла информационных систем;
CASE Workbench (интегрированные средства) - полностью интегрированные средства, обеспечивающие поддержку всего жизненного цикла разработки ПС -- CASE-окружения.
Особенности интегрированных case-средств
Единая методология
Функциональная методология (DFD, ERD, STD);
Объектно-ориентированное методология (Activity, UseCase, Sequence, Class, Deployment...);
Общий репозиторий (информационная база проекта), содержащий всю техническую информацию и информацию управления проектом, необходимую для построения и сопровождения программной системы;
Автоматическое прохождение информации о
программной системе от одной стадии разработки к другой;
Единый пользовательский интерфейс.
Компоненты интегрированных case-средств
Диаграммные средства
Поддерживают стадию анализа в жизненном цикле разработки ПО.
Используются различные типы диаграмм:
«потоков данных» - показывают течение данных среди процессов в разрабатываемой системе, т.е. для информационной системы: где данные определяются, куда передаются и т.д.
«сущность-связь» - описывают структуру предметной области; «состояние-переход», используемые для создания систем реального времени.
И др.
Диаграммеры CASE-средств обеспечивают автоматическую поддержку создания этих диаграмм, структурных схем и других графиков.
Синтаксический верификатор
Выполняет автоматический синтаксический контроль за созданными диаграммами.
Например, диаграммы «потоков данных», требуют, чтобы процессы имели как входы, так и выходы.
Часто называют анализаторами разработки.
Выполняют проверку на непротиворечивость, проверку уровня сбалансированности диаграмм «потоков данных» и другую обработку ошибок.
Центральный (информационный) репозиторий
Ключевой компонент интегрированных CASE-средств.
Представляет собой больше чем просто словарь данных, т.к. в нем храниться разнообразная информация, связанная с разрабатываемой системой.
Является связующим звеном между всеми разработчиками программной системы, а также между всеми компонентами CASE-системы.
Средства прототипирования
Позволяют создать быстрый прототип разрабатываемой системы и его модифицировать.
Используют определения данных, хранящихся в центральном репозитории, чтобы определить входные/выходные файлы
Генераторы кода
Позволяют создать модульный код из спецификаций, заданных на языке высокого уровня.
Могут использоваться как отдельные средства.
Как часть CASE-окружения, они интегрированы с другими компонентами
Управление проектом и средства поддержки методологии
Используются руководителями проекта, чтобы успешно выполнить разработку и управление ресурсами.
Работа CASE-средств подчиняется стандартам, которые устанавливаются методологией
Обратное перепроектирование
Re-engineering - это анализ готового ПО с целью устранения ошибок и, главное, оптимизации его характеристик.
Средства реинжиниринга делятся на две категории:
средства, изменяющие программный код готового ПО;
средства, создающие структурные схемы, словари данных и другую информацию для существующих систем.
Обеспечивают возможность полной интеграции существующих систем с новыми системами.
Классификация по классу решаемых задач
CASE-средства для создания информационных систем;
CASE-средства для создания научных приложений;
CASE-средства проектирования систем реального времени.
Жизненный цикл программного обеспечения.
Жизненный цикл программы - это весь период её разработки и эксплуатации, начиная с момента возникновения замысла и заканчивая прекращением всех видов её использования.
Простейшее представление жизненного цикла:
анализ;
проектирование;
программирование;
тестирование и отладка;
сопровождение и эксплуатация.
Цикл разработки ПО тесно связан с технологиями программирования.
Процессы ЖЦ:
Основные;
Вспомогательные;
Организационные.
Модели ЖЦ:
Каскадная;
С промежуточным контролем;
Спираль.
Модель – это структура, отражающая процессы, действия и задачи, которые осуществляются в разработке, функционировании и сопровождении программного продукта (ПП) в течение всей жизни системы от определения требований до завершения использования.