Задание на курсовое проектирование
Описание файла
Файл "Задание на курсовое проектирование" внутри архива находится в папке "Задание на курсовое проектирование". Документ из архива "Задание на курсовое проектирование", который расположен в категории "". Всё это находится в предмете "технология проектирования" из 10 семестр (2 семестр магистратуры), которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "остальное", в предмете "технология проектирования" в общих файлах.
Онлайн просмотр документа "Задание на курсовое проектирование"
Текст из документа "Задание на курсовое проектирование"
Технологии разработки программного обеспечения, 2017 г.
Задание на курсовое проектирование
по дисциплине Технологии разработки программного обеспечения
Цель работы:
Изучить теоретические принципы унифицированного процесса разработки СОИУ и составляющих его этапов. Получить практические навыки применения шаблонов при проектировании и разработке СОИУ. Освоить применение CASE средств для разработки СОИУ.
Исходные данные для выполнения КР:
-
Описание исходных требований к создаваемой СОИУ (выдается преподавателем),
-
Перечень паттернов для реализации (совпадает с вариантом ДЗ),
-
Паттерн Gof (выдается преподавателем).
Порядок и время проведения работы:
Работа выполняется самостоятельно в часы внеаудиторных занятий. Выполняется студентом индивидуально. По итогам выполнения КР составляется и защищается отчет в бумажном виде, а также проводится демонстрация работающей программы.
Задание:
Выполнить разработку СОИУ в соответствии с описанием ее функциональности (определяется вариантом) на основе моделей унифицированного процесса (RUP). Написать программу, реализующую фрагмент СОИУ, и реализовать в ней паттерны бизнес-логики, работы с БД, gof (по варианту). Для построения диаграмм использовать среду STARUml или ее аналог, например, Software Ideals Modeler. Ниже перечислены этапы разработки и их задачи, выполняемые в КР:
-
Этап анализа и планирования требований (Начало):
-
Определить область применения СОИУ (предназначение, границы, интерфейсы с внешней средой, критерии сдачи-приемки).
-
Определить прецеденты, критические для системы (основные функции и главные решения).
-
Определить основные элементы архитектуры (для выполнения основного сценария).
-
Определить и оценить самые опасные риски (угрожающие успеху разработки), предложить способы управления ими.
-
Оценить затраты, длительность и стоимость разработки по модели СОСОМО-2 этапа композиции приложения.
В пояснительную записку:
-
Постановка задачи (задание по варианту).
-
Спецификация основных проектных требований, ключевых характеристик и главных ограничений (перечень требований-кандидатов, функциональных и нефункциональных требований).
-
Модель предметной области (диаграмма классов предметной области, глоссарий понятий, бизнес-модели).
-
Выявленные актеры.
-
Выявленные прецеденты, их приоритеты и описание (кратко).
-
Диаграмма основных прецедентов.
-
Описание возможной архитектуры (перечень архитектурно-значимых прецедентов, обобщенные механизмы проектирования, системное ПО, используемые компоненты и/или каркасы). По каждой из выбранных технологий (обобщенные механизмы проектирования, системное ПО и т.д.) необходимо привести варианты, их достоинства и недостатки и обосновать выбор.
-
Перечень критических рисков (и рекомендации по управлению).
-
Перечень экранных форм и их сложность; экспертные оценки скорости разработки и масштабных факторов; затраты, длительность и стоимость разработки (по модели СОСОМО-2 этапа композиции приложения).
-
Этап проектирования (Развитие). Для архитектурно-значимых прецедентов выполнить:
-
Составить модель требований (выделить актеров и прецеденты; создать прототип пользовательского интерфейса; детализировать и структурировать прецеденты).
-
Составить модель анализа (анализ архитектуры - выделить пакеты анализа и сервисные пакеты, определить классы сущностей и общие специальные требования; анализ прецедентов — определить классы анализа и их взаимодействие; анализ классов — определить ответственности, атрибуты и связи классов; анализ пакетов – определить состав и зависимости пакетов).
-
Составить модель проектирования (определить узлы и сетевые конфигурации, подсистемы и интерфейсы между ними, архитектурно-значимые и активные классы, обобщенные механизмы проектирования).
-
Выбрать и обосновать структурные шаблоны проектирования (MVC, PCMEF и т. д.)
-
Реализовать базовый уровень архитектуры на основе модели проектирования с применением паттернов базы данных и бизнес-логики.
-
Отслеживать риски, устранить наиболее серьезные.
-
Оценить размер программного продукта на основе функционально-ориентированных метрик (функциональные указатели или указатели свойств).
-
Оценить затраты, длительность и стоимость разработки по модели СОСОМО-2 этапа постархитектуры.
-
Составить план итераций следующего этапа.
Программная реализация:
-
Работающая программа, реализующая основные прецеденты (базовый уровень архитектуры) и паттерны базы данных и бизнес-логики.
В пояснительную записку:
-
Уточненное описание контекста системы (глоссарий понятий, диаграмма классов предметной области и/или бизнес-модель).
-
Уточненная диаграмма (ы) прецедентов.
-
Расширенные описания основных прецедентов (предусловие, запуск и инициатор, порядок выполнения и поток событий, постусловия, запрещенные и альтернативные пути, атрибуты и ресурсы).
-
Прототип пользовательского интерфейса.
-
Диаграммы классов анализа: граничных, управляющих, сущностей.
-
Диаграммы взаимодействия для основных прецедентов.
-
Пакеты анализа и сервисные пакеты (их состав и зависимости) в форме обобщенной диаграммы классов.
-
Диаграмма развертывания (узлы и линии связи).
-
Подсистемы, их уровни, зависимости и интерфейсы в форме диаграммы классов.
-
Диаграммы взаимодействия для главного прецедента: одна диаграмма взаимодействия в терминах подсистем и их интерфейсов (укрупненное представление); диаграммы взаимодействия для каждой подсистемы в терминах ее классов (детализируют выполнение функции интерфейса).
-
Диаграммы компонентов и развертывания для реализации архитектуры (узлы и линии связи; компоненты, их интерфейсы и зависимости; размещение по узлам).
-
Исходный код программы, реализующей архитектурно-значимые прецеденты.
-
Переработанный список рисков.
-
Расчет функциональных указателей на основе прототипа пользовательского интерфейса и коэффициентов сложности (исходные данные, формулы вычислений и результаты расчетов) и перевод их в LOC.
-
Экспертные оценки масштабных факторов и факторов затрат; затраты, длительность и стоимость разработки (по модели СОСОМО-2 этапа постархитектуры).
-
Перечень и состав итераций следующего этапа с указанием прецедентов, коопераций, пакетов, подсистем и компонентов для разработки.
-
Этап построения (Конструирование):
-
Полностью определить и реализовать прецеденты.
-
Завершить анализ, проектирование, реализацию и тестирование.
-
Применить паттерны (по варианту) бизнес-логики, работы с БД и Gof.
-
Провести тестирование и отладку.
Этап построения содержит несколько итераций. В КР достаточно выполнить 1-2 итерации. Каждая итерация реализует определенный ранее набор прецедентов (сценариев).
Программная реализация:
-
Работающая программа.
-
Программа должна содержать реализацию паттернов проектирования (по варианту).
В пояснительную записку по каждой итерации:
-
Состав итерации (описание для новых/ уточненных прецедентов).
-
Модель требований для новых/уточненных прецедентов: спецификации и диаграммы прецедентов, прототип пользовательского интерфейса.
-
Модель анализа для новых/уточненных прецедентов: диаграммы классов, последовательностей, пакетов.
-
Модель проектирования для новых/уточненных прецедентов: диаграммы подсистем, классов и последовательностей (уровня классов и подсистем) для реализуемых прецедентов с учетом паттернов.
-
Модель реализации для новых/уточненных прецедентов: Перечень изменяемых/создаваемых подсистем, классов и компонентов.
-
Описание сборки.
-
Описание тестовых вариантов для тестирования модулей.
В пояснительную записку по этапу:
-
Уточненная диаграмма подсистем.
-
Диаграммы классов с учетом реализованных паттернов (по каждой подсистеме).
-
Диаграммы взаимодействия для основных прецедентов: одна диаграмма взаимодействия в терминах подсистем и их интерфейсов (укрупненное представление); диаграммы взаимодействия для каждой подсистемы в терминах ее классов (детализируют выполнение функции интерфейса). Обязательно отобразить работу паттернов.
-
Уточненная диаграмма компонентов и развертывания.
-
Перечень и последовательность проведения тестов (модульные, интеграционные и системные).
-
Этап внедрения (Переход):
-
Применить ПО в среде заказчика.
-
Завершить реализацию продукта.
В пояснительную записку:
-
Перечень программ и рекомендации по установке.
-
Перечень документации для пользователей и заказчиков.
-
Рекомендации по внедрению (консультации, обучение и т.д.).
Сроки и отчетность:
Этап | Вид отчетности | Срок защиты |
Начало | Отчет и рабочие материалы по этапу | 4 неделя (3 марта) |
Развитие | Отчет и рабочие материалы по этапу Работающая программа с паттернами бизнес-логики и БД | 8 неделя (31 марта) |
Конструирование | Отчет и рабочие материалы по этапу Работающая программа с паттернами бизнес-логики, БД и GOF | 11 неделя (21 апреля) |
Переход | Расчетно-пояснительная записка | 14 неделя (12 мая) |
Литература основная:
-
Унифицированный процесс разработки программного обеспечения: учебное пособие / Виноградова М.В., Белоусова В.И. – М.: МГТУ им.Н.Э. Баумана. – 2015 г. http://ebooks.bmstu.ru/catalog/193/book1303.html
-
Гамма Э. и др. Приемы объектно-ориентированного проектирования. Паттерны проектирования. - Спб.:Питер. - 2009 г.
-
Фаулер М. Архитектура корпоративных приложений. - М.:Изд.дом Вильямс. - 2008 г.
Литература дополнительная:
-
Орлов С.А. Технологии разработки программного обеспечения. - СПб: Питер, - 2002 г.
-
Якобсон А, Дуч Г., Рамбо Дж. Унифицированный процесс разработки программного обеспечения. - Спб.: Питер. - 2002 г.