Файл: Учебнометодический комплекс по дисциплине Управление жизненным циклом информационных систем.doc
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 07.11.2023
Просмотров: 65
Скачиваний: 2
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Министерство сельского хозяйства РФ
Ставропольский государственный аграрный университет
Экономический факультет
Кафедра Информационных систем
Учебно-методический комплекс
по дисциплине «Управление жизненным циклом информационных систем»
Утверждаю
И.О.Заведующий кафедрой ИС
к.т.н Д.В. Шлаев
«___» _____________ 20__ года
Практическое занятие №1
по учебной дисциплине:
«Управление жизненным циклом информационных систем»
Для студентов направления:
080500.62 Бизнес-информатика
(Архитектура предприятия)
Современные технологии создания программного обеспечения
Обсуждена на заседании кафедры ИС
«___» _______ 20__ года
Протокол №___
Ставрополь 2015
Цель занятия: ознакомиться с основными современными технологиями создания программного обеспечения существующих на мировом рынке компаний, их достоинствами недостатками.
Учебные вопросы
-
Технология Rational Unified Process (IBM Rational Software)
-
Технология Oracle
-
Технология Borland -
Технология Computer Associates
Время: 2 часа
Практическая работа №1
Современные технологии создания программного обеспечения
Вопрос 1.
Технология Rational Unified Process (IBM Rational Software)
На сегодняшний день практически все ведущие компании - разработчики технологий и программных продуктов (IBM, Oracle, Borland) располагают развитыми технологиями создания ПО, которые создавались как собственными силами, так и за счет приобретения продуктов и технологий, созданных небольшими специализированными компаниями.
Одна из наиболее совершенных технологий, претендующих на роль мирового корпоративного стандарта - Rational Unified Process (RUP). RUP представляет собой программный продукт, разработанный компанией Rational Software (www.rational.com), которая в настоящее время входит в состав IBM.
RUP в значительной степени соответствует стандартам и нормативным документам, связанным с процессами ЖЦ ПО и оценкой технологической зрелости организаций-разработчиков (ISO 12207, ISO 9000, CMM и др.). Основным принципом RUP является итерационный и инкрементный (наращиваемый) подход к созданию ПО. В соответствии с ним разработка системы выполняется в виде нескольких краткосрочных мини-проектов фиксированной длительности (от 2 до 6 недель), называемых итерациями. Каждая итерация включает свои собственные этапы анализа требований, проектирования, реализации, тестирования, интеграции и завершается созданием работающей системы.
Итерационный цикл основывается на постоянном расширении и дополнении системы в процессе нескольких итераций с периодической обратной связью и адаптацией добавляемых модулей к существующему ядру системы. Система постоянно разрастается шаг за шагом, поэтому такой подход называют итерационным и инкрементным.
На рисунке 1 показано общее представление RUP в двух измерениях. Горизонтальное измерение представляет время, отражает динамические аспекты процессов и оперирует такими понятиями, как стадии, итерации и контрольные точки. Вертикальное измерение отражает статические аспекты процессов и оперирует такими понятиями, как виды деятельности (технологические операции), рабочие продукты, исполнители и технологические процессы.
Согласно RUP, ЖЦ ПО разбивается на отдельные циклы, в каждом из которых создается новое поколение продукта. Каждый цикл, в свою очередь, разбивается на четыре последовательные стадии:
-
начальная стадия (inception); -
стадия разработки (elaboration); -
стадия конструирования (construction); -
стадия ввода в действие (transition).
Каждая стадия завершается в четко определенной контрольной точке (milestone). В этот момент времени должны достигаться важные результаты и приниматься критически важные решения о дальнейшей разработке.
Начальная стадия может принимать множество разных форм. Для крупных проектов начальная стадия может вылиться во всестороннее изучение всех возможностей реализации проекта, которое займет месяцы. Во время начальной стадии вырабатывается бизнес-план проекта - определяется, сколько приблизительно он будет стоить и какой доход принесет. Определяются также границы проекта, и выполняется некоторый начальный анализ для оценки размеров проекта.
Результатами начальной стадии являются:
-
общее описание системы: основные требования к проекту, его характеристики и ограничения; -
начальная модель вариантов использования (степень готовности - 10-20%); -
начальный проектный глоссарий (словарь терминов); -
начальный бизнес-план; -
план проекта, отражающий стадии и итерации; -
один или несколько прототипов.
На стадии разработки выявляются более детальные требования к системе, выполняется высокоуровневый анализ предметной области и проектирование для построения базовой архитектуры системы, создается план конструирования и устраняются наиболее рискованные элементы проекта.
Результатами стадии разработки являются:
-
модель вариантов использования (завершенная, по крайней мере, на 80%), определяющая функциональные требования к системе; -
перечень дополнительных требований, включая требования нефункционального характера и требования, не связанные с конкретными вариантами использования; -
описание базовой архитектуры будущей системы; -
работающий прототип; -
уточненный бизнес-план; -
план разработки всего проекта, отражающий итерации и критерии оценки для каждой итерации.
Самым важным результатом стадии разработки является описание базовой архитектуры будущей системы. Эта архитектура включает:
-
модель предметной области, которая отражает понимание бизнеса и служит отправным пунктом для формирования основных классов предметной области; -
технологическую платформу, определяющую основные элементы технологии реализации системы и их взаимодействие.
Эта архитектура является основой всей дальнейшей разработки, она служит своего рода проектом для последующих стадий. В дальнейшем неизбежны незначительные изменения в деталях архитектуры, однако, серьезные изменения маловероятны.
Стадия разработки занимает около пятой части общей продолжительности проекта. Основными признаками завершения стадии разработки являются два события:
-
разработчики в состоянии оценить с достаточно высокой точностью, сколько времени потребуется на реализацию каждого варианта использования; -
идентифицированы все наиболее серьезные риски, и степень понимания наиболее важных из них такова, что известно, как справиться с ними.
Стадия конструирования заключается в определении последовательности итераций конструирования вариантов использования, реализуемых на каждой итерации. Итерации на стадии конструирования являются одновременно инкрементными и повторяющимися:
-
итерации являются инкрементными в соответствии с той функцией, которую они выполняют. Каждая итерация добавляет очередные конструкции к вариантам использования, реализованным во время предыдущих итераций; -
итерации являются повторяющимися по отношению к разрабатываемому коду. На каждой итерации некоторая часть существующего кода переписывается с целью сделать его более гибким.
Результатом стадии конструирования является продукт, готовый к передаче конечным пользователям. Как минимум, он содержит следующее:
-
ПО, интегрированное на требуемых платформах; -
руководства пользователя; -
описание текущей реализации.
Стадия ввода в действие предназначена для передачи готового продукта в распоряжение пользователей. Данная стадия включает:
-
бета-тестирование, позволяющее убедиться, что новая система соответствует ожиданиям пользователей; -
параллельное функционирование с существующей системой, которая подлежит постепенной замене; -
конвертирование баз данных; -
оптимизацию производительности; -
обучение пользователей и специалистов службы сопровождения.
Статический аспект RUP представлен четырьмя основными элементами:
-
роли; -
виды деятельности; -
рабочие продукты; -
дисциплины.
Понятие «роль» (role) определяет поведение и ответственность личности или группы личностей, составляющих проектную команду. Одна личность может играть в проекте много различных ролей.
Под видом деятельности конкретного исполнителя понимается единица выполняемой им работы. Вид деятельности (activity) соответствует понятию технологической операции. Он имеет четко определенную цель, обычно выражаемую в терминах получения или модификации некоторых рабочих продуктов (artifacts), таких, как модель, элемент модели, документ, исходный код или план. Каждый вид деятельности связано с конкретной ролью. Продолжительность вида деятельности составляет от нескольких часов до нескольких дней, он обычно выполняется одним исполнителем и порождает только один или весьма небольшое количество рабочих продуктов. Примерами видов деятельности могут быть планирование итерации, определение вариантов использования и действующих лиц, выполнение теста на производительность. Каждый вид деятельности сопровождается набором руководств (guidelines), представляющих собой методики выполнения технологических операций.
Дисциплина (discipline) соответствует понятию технологического процесса и представляет собой последовательность действий, приводящую к получению значимого результата.
В рамках RUP определены шесть основных дисциплин:
-
построение бизнес-моделей; -
определение требований; -
анализ и проектирование; -
реализация; -
тестирование; -
развертывание;
и три вспомогательных:
-
управление конфигурацией и изменениями; -
управление проектом; -
создание инфраструктуры.
RUP как продукт входит в состав комплекса Rational Suite, причем каждая из перечисленных выше дисциплин поддерживается определенным инструментальным средством комплекса. Физическая реализация RUP представляет собой Web-сайт, включающий следующие компоненты:
-
описание всех элементов динамического и статического аспекта RUP; -
навигатор по всем элементам RUP, глоссарий и средство быстрого обучения технологии; -
руководства для всех участников проектной команды, охватывающие весь жизненный цикл ПО. Руководства представлены в двух видах: для осмысления процесса на верхнем уровне, и в виде подробных рекомендаций по повседневной деятельности; -
рекомендации по использованию инструментальных средств, входящих в состав Rational Suite; -
примеры и шаблоны проектных решений для Rational Rose; -
шаблоны проектной документации для SoDa; -
шаблоны в формате Microsoft Word, предназначенные для поддержки документации по всем процессам и действиям жизненного цикла ПО; -
планы в формате Microsoft Project, отражающие итерационный характер разработки ПО.
RUP опирается на интегрированный комплекс инструментальных средств Rational Suite. Он существует в следующих вариантах:
-
Rational Suite AnalystStudio - предназначен для определения и управления полным набором требований к разрабатываемой системе; -
Rational Suite DevelopmentStudio - предназначен для проектирования и реализации ПО; -
Rational Suite TestStudio - представляет собой набор продуктов, предназначенных для автоматического тестирования приложений; -
Rational Suite Enterprise - обеспечивает поддержку полного жизненного цикла ПО и предназначен как для менеджеров проекта, так и отдельных разработчиков, выполняющих несколько функциональных ролей в команде разработчиков.
В состав Rational Suite, кроме самой технологии RUP как продукта, входят следующие компоненты:
-
Rational Rose - средство визуального моделирования (анализа и проектирования), использующее язык UML; -
Rational XDE - средство анализа и проектирования, интегрируемое с платформами MS Visual Studio .NET и IBM WebSphere Studio Application Developer; -
Rational Requisite Pro - средство управления требованиями, предназначенное для организации совместной работы группы разработчиков. Оно позволяет команде разработчиков создавать, структурировать, устанавливать приоритеты, отслеживать, контролировать изменения требований, возникающих на любом этапе разработки компонентов приложения; -
Rational Rapid Developer - средство быстрой разработки приложений на платформе Java 2 Enterprise Edition; -
Rational ClearCase - средство управления конфигурацией ПО; -
Rational SoDA - средство автоматической генерации проектной документации; -
Rational ClearQuest - средство для управления изменениями и отслеживания дефектов в проекте на основе средств e-mail и Web; -
Rational Quantify - средство количественного определения узких мест, влияющих на общую эффективность работы программы; -
Rational Purify - средство для локализации трудно обнаруживаемых ошибок времени выполнения программы; -
Rational PureCoverage - средство идентификации участков кода, пропущенных при тестировании; -
Rational TestManager - средство планирования функционального и нагрузочного тестирования; -
Rational Robot - средство записи и воспроизведения тестовых сценариев; -
Rational TestFactory - средство тестирования надежности; -
Rational Quality Architect - средство генерации кода для тестирования.