- •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-средствах.
Надёжность по. Case-средства и надёжность по. Контроль качество по.
См. 4.
Методология разработки программных систем msf (Microsoft Solutions Framework). Управление компромиссами в msf.
В проектах возможны: нарушения графиков и перерасход. Причины – нечетко описанная область действия. В процессе определения и управления компромиссами не обязательно сужать функциональность. Управление компромиссами – структурированный метод достижения баланса составных частей проекта, когда не удается решить всех задач. Анализ компромиссов – команда и заказчик. Инструменты: треугольник компромиссов, матрица компромиссов. Треугольник – связь между ресурсами, графиками и функциональностью. Матрица – тоже самое.
Методология разработки программных систем msf (Microsoft Solutions Framework). Стратегия выпуска версий.
Виды итеративного подхода: версии, обновляемые документы, периодические сборки. Версии: команда создает, тестирует и развертывает базовые функции, затем в каждой последующей версии расширяет функциональность – это стратегия, основанная на выпуске версий. Обеспечивает тесную связь проектной команды с клиентом. Создание плана выпуска множественных версий: ускорение итераций, поставка к первой версии только базовых функций, создание в первую очередь рискованных функций.
Принципы проектирования сложных систем.
Абстракция
Уточнение
Модульность
Выделение интерфейсов и сокрытие информации
Адекватность
Разделение ответственности
Слабая связность модулей
Методология xp – «экстремальное программирование»: особенности, преимущества, недостатки.
Метод «живой» разработки «снизу-вверх».
Принципы:
люди важнее инструментов;
программа важнее документации;
общение с заказчиком важнее деталей контракта;
отработка изменений важнее следования планам.
Схема процесса разработки: живое планирование, частая смена версий, метафора системы, простые решения, парное программирование, коллективное владение кодом, постоянная переработка, включение заказчика в команду…
Достоинства: высокое качество кода, большая гибкость, отсутствие необходимости убеждать заказчика в правильности разработки.
Недостатки: неприменимость к большим проектам, неприменимость при условии больших начальных исследований, невозможность планировать длительные сроки.
Дополнительные средства поддержки жизненного цикла разработки программного обеспечения. Классификация инструментальных систем.
Средства конфигурационного управления
Цель конфигурационного управления (КУ) - обеспечить управляемость и контролируемость процессов разработки и сопровождения ПО. Для этого необходима точная и достоверная информация о состоянии ПО и его компонент в каждый момент времени, а также о всех предполагаемых и выполненных изменениях.
Для решения задач КУ применяются методы и средства обеспечивающие идентификацию состояния компонент, учет номенклатуры всех компонент и модификаций системы в целом, контроль за вносимыми изменениями в компоненты, структуру системы и ее функции, а также координированное управление развитием функций и улучшением характеристик системы.
Средства документирования
Для создания документации в процессе разработки ИС используются разнообразные средства формирования отчетов, а также компоненты издательских систем. Обычно средства документирования встроены в конкретные CASE-средства. Исключением являются некоторые пакеты, предоставляющие дополнительный сервис при документировании. Из них наиболее активно используется SoDA (Software Document Аutomation).
Продукт SoDA предназначен для автоматизации разработки проектной документации на всех фазах ЖЦ ПО. Он позволяет автоматически извлекать разнообразную информацию, получаемую на разных стадиях разработки проекта, и включать ее в выходные документы. При этом контролируется соответствие документации проекту, взаимосвязь документов, обеспечивается их своевременное обновление. Результирующая документация автоматически формируется из множества источников, число которых не ограничено.
Средства тестирования
Под тестированием понимается процесс исполнения программы с целью обнаружения ошибок. Регрессионное тестирование - это тестирование, проводимое после усовершенствования функций программы или внесения в нее изменений.
Одно из наиболее развитых средств тестирования QA (новое название - Quality Works) [20] представляет собой интегрированную, многоплатформенную среду для разработки автоматизированных тестов любого уровня, включая тесты регрессии для приложений с графическим интерфейсом пользователя.
QA позволяет начинать тестирование на любой фазе ЖЦ, планировать и управлять процессом тестирования, отображать изменения в приложении и повторно использовать тесты для более чем 25 различных платформ.
Основными компонентами QA являются:
QA Partner - среда для разработки, компиляции и выполнения тестов;
QA Planner - модуль для разработки планов тестирования и обработки результатов. Для создания и выполнения тестов в процессе работы QA Planner вызывается QA Partner;
Agent - модуль, поддерживающий работу в сети.
Процесс тестирования состоит из следующих этапов:
создание плана тестирования;
связывание плана с тестами;
пометка и выполнение тестов;
получение отчетов о тестировании и управление результатами.
Создание тестового плана в QA Planner включает в себя составление схемы тестовых требований и выделение уровней детализации. Для этого необходимо определить все, что должно быть протестировано, подготовить функциональную декомпозицию приложения, оценить, сколько тестов необходимо для каждой функции и характеристики, определить, сколько из них будет реализовано в зависимости от доступных ресурсов и времени. Эта информация используется для создания схемы тестовых требований.
Для связывания плана с тестами необходимо создать управляющие предложения (скрипты) на специальном языке 4Test и тесты, которые выполняют требования плана, и связать компоненты любым способом. Для избежания перегруженности тестов используют управление тестовыми данными.
При выполнении плана результаты записываются в формате, похожем на план. Все результаты связаны с планом. Есть возможность просмотреть или скрыть общую информацию о выполнении, слить файлы результатов, разметить неудавшиеся тесты, сравнить результаты предыдущего выполнения тестов, выполнить или отменить отчет.
Одним из атрибутов теста является имя его разработчика, что позволяет при необходимости выполнять тесты, созданные конкретным разработчиком.