Курсовая работа
Цель и задачи курсового проектированияКурсовой проект является составной частью учебной дисциплины «Проектирование информационных систем» и предназначен для практического закрепления и расширения полученных теоретических знаний и практических навыков, приобретенных при выполнении лабораторных работ. Целью курсового проектирования является приобретение студентом навыков по проектированию информационных систем и созданию формализованных требований к информационным системам.
Задачей проекта является формирование у студентов навыков применения:
- CASE-средств и средств визуального моделирования, на языке UML;
- правил формирования требований;
- принципов проектирования программных средств;
- стандартов по оформлению программных документов.
2. Содержание курсового проекта2.1 Организация выполнения курсового проекта
Продолжительность выполнения курсового проекта – десять недель. Список индивидуальных заданий на курсовой проект приведен в приложении А. По результатам курсового проекта студентом в соответствии с требованиями, изложенными в параграфе 2.2, оформляется пояснительная записка и сдается преподавателю на проверку. Если пояснительная записка не удовлетворяет поставленным требованиям, то она возвращается студенту на доработку.
При организации курсового проекта студент выполняет следующие этапы работы:
1) разработка входных, внутренних и выходных данных решаемой задачи и её общего описания с использованием UML и обоснование выбора метода разработки, языка программирования и СУБД;
2) формирование логической структуры ИС с использованием UML и ERWin;
3) формирование физической структуры ИС с использованием СУБД MS SQL Server;
4) разработка экранного представления ИС и определение тестовых наборов данных.
Темы на проектирование ИС
(Номер темы выбирается по двум последним цифрам пароля)
1. Обменный пункт: сотрудники пункта, виды валют, курсы валют, операции обмена.
2. Ювелирный магазин: названия изделий, комитенты (кто сдал изделия на комиссию), журнал сдачи изделий на продажу, журнал покупки изделий.
3. Поликлиника: врачи, пациенты, виды болезней, журнал учета прихода пациентов.
4. Кондитерский магазин: виды конфет, поставщики, торговые точки, журнал поступления и отпуска товара.
5. Автобаза: автомашины, водители, рейсы, журнал выезда машин на рейсы.
6. Парикмахерская: клиенты, прайс услуг, сотрудники, кассовый журнал.
7. Склад: поставщики товара, список товара, получатели товара, кладовщики.
8. Школа: учителя, предметы, ученики, журнал успеваемости.
9. Оплата услуг на дачных участках: виды услуг, список владельцев, сотрудники управления, журнал регистрации оплат.
10. Гостиница: проживающие, сотрудники гостиницы, номера, журнал регистрации проживающих.
11. Книжный магазин: авторы, книги, продавцы, покупатели, регистрация продаж.
12. Ремонтная мастерская: виды работ, исполнители, заказы на ремонт, заказчики.
13. Аптечный киоск: номенклатура лекарств, работники аптеки, покупатели, журнал регистрации продаж.
14. Выставка: стенды, стендисты, экскурсии, посетители.
15. Охранная служба: список постов охраны, список охранников, журнал выхода на дежурство, журнал учета замечаний.
16. Столовая: продукты, блюда, меню, журнал заказов
17. Фото мастерская: заказчики работ, прайс работ, журнал поступления заказов, исполнители.
18. Ветеринарная лечебница: список животных, список болезней, список хозяев, журнал посещений.
19. Сельское хозяйство: список растений, список угодий, список работников, журнал посевной.
20. Холдинг: список регионов, список предприятий, список показателей, журнал учета отчетных данных.
21. Фонды предприятия: список основных средств, список категорий основных средств, список материально ответственных лиц, журнал учета состояния основных средств.
22. Учет расхода материалов в компании: список статей затрат, список сотрудников, журнал учета расхода канцтоваров, список департаментов.
23. Фильмотека: список фильмов, список клиентов, список библиотекарей, журнал выдачи фильмов.
24. Цирк: список категорий артистов, список артистов, журнал выхода артистов на работу, список цирковых площадок.
25. Спортивные заведения: список спортсменов, список видов спорта, список стадионов, журнал учета выступлений спортсменов.
26. Компьютерные занятия: список слушателей курсов, список предметов, список преподавателей, журнал учета успеваемости.
27. Сбор урожая: список видов продукции, список сборщиков, список бригад, журнал учета сбора урожая.
28. Фирма по обслуживанию населения: список заказчиков, список товаров, список разносчиков, журнал заказов.
29. Партийная работа: список членов партии, список мероприятий, журнал учета выхода на мероприятие, список городов
30. Экономическая база данных: список регионов, список показателей, список отраслей, отчетные статистические данные.
31. Журнальные статьи: список тем, список авторов, список названия статей, список журналов.
32. Анализ причин заболеваемости: список больных, список болезней, список районов, журнал учета заболевших.
33. Отдел кадров: список сотрудников, штатное расписание, список отделов, журнал перемещения сотрудников по службе.
34. Делопроизводство: список видов документов, карточка документа, список исполнителей, список департаментов
35. Расчет нагрузки на преподавателя: список преподавателей, список кафедр, предметов, журнал нагрузки.
36. Проектные работы: список проектов, список специалистов, список должностей, журнал учета работ.
37. Учет компьютерного оборудования: список типов оборудования, список материально ответственных лиц, список департаментов, журнал регистрации выдачи оборудования.
38. Прививки детям: список прививок, список детей, список родителей, журнал учета сделанных прививок.
39. Начисление налогов в бюджет: виды налогов, список отраслей, список предприятий, журнал учета поступления налогов.
40. Экспертная система: список оцениваемых объектов, список экспертов, список регионов, журнал учета оценок.
41. Ремонтная мастерская электронного оборудования: список работ, список мастеров, список запасных частей, журнал учета выполненных работ, список поступившего оборудования.
42. Магазин по продаже автомобилей: список фирм производителей, список автомобилей, журнал поступления автомобиля, список водителя пригнавшего машину.
43. Автомобильный гараж: список владельцев, список автомобилей, список сторожей, журнал прихода и ухода автомобилей.
44. Учет криминогенной ситуации в городе: список районов, список типов преступлений, список дежурных, журнал регистрации преступлений.
45. Система здравоохранения: список регионов, список санаториев, список пенсионеров, журнал регистрации выдачи путевок в санатории.
46. Туристические агентства: список туров, список стран, список клиентов, журнал регистрации продаж туров.
47. Продажа билетов на рейсы: список рейсов, прайс билетов, список компаний, журнал продаж билетов.
48. Продажа пиломатериалов: виды пиломатериалов, регионы поставщики, список заказчиков, журнал учета продаж пиломатериалов.
49. Склад металлоконструкций: прайс товара металлоконструкций, список поставщиков, список продавцов, журнал учета продаж.
50. Система поддержки решений: список экспертов, список тем обсуждений, список департаментов, журнал учета предложений.
51. Детский сад: список родителей, список детей, список групп, журнал посещения детского сада.
52. Дом творчества молодежи: список кружков, список руководителей, список детей, журнал регистрации посещения кружков.
=============================================Лабораторная работа 1 – Обследование предметной областиДля выполнения лабораторной работы1 необходимо предварительно изучить материал разделов №1 и №2 конспекта лекций по курсу.При выполнении задания необходимо программное обеспечение для построения диаграмм UML: Rational Rose, Visio или Altova UModel.Прежде, чем приступать к разработке модели вариантов использования, рекомендуется изучить материал раздела №7 конспекта лекций по курсу.1.Провести детальный анализ работы заданного объекта информатизации (ОИ) и описать процесс его функционирования.
2.Выделить функциональные подсистемы в рамках заданного объекта информатизации (бухгалтерия, склад, торговый зал, др. отделы и структурные подразделения, выделенные по функциональному признаку) и перечислить возложенные на них задачи. Задачи нумеровать по порядку в пределах каждой подсистемы. Результаты описания представить в виде таблицы 1.1.
Таблица 1.1 – Описание подразделений ОИ
№ п.п.
Наименование
Описание
Задачи
№
Наименование
3.Выделить и описать множество действующих лиц, задействованных в процессе функционирования ОИ. Результаты описания представить в виде таблица 1.2. В графе «Задачи» перечислить номера возложенных задач из табл. 1.1 в формате <Номер подсистемы>.<Номер задачи>.
Таблица 1.2 – Описание действующих лиц
№ п.п.
Имя
Описание
Задачи
4.Выделить информационные потоки, имеющие место на исследуемом объекте. Результаты представить в виде таблиц 1.3 – 1.5. В графе «Обработчик» приводятся номера подразделений и действующих лиц из табл. 1.1 и 1.2 через разделитель «/».
Таблица 1.3 – Реестр входных информационных потоков
№
Наименование и назначение потока (документа)
Обработчик
(Кто обрабатывает)
Корреспондент (Откуда поступает)
Характеристики обработки
Трудозатраты, чел×ч
Периодичность, регламент
Способ получения
Таблица 1.4 – Реестр внутренних информационных потоков
№
Наименование и назначение потока (документа)
Обработчик
(Кто обрабатывает)
Корреспондент
(Кому передает)
Характеристики обработки
Трудозатраты, чел×ч
Периодичность, регламент
Способ получения
Таблица 1.5 – Реестр выходных информационных потоков
№
Наименование и назначение потока (документа)
Обработчик
(Кто обрабатывает)
Корреспондент
(Куда поступает)
Характеристики обработки
Трудозатраты, чел×ч
Периодичность, регламент
Способ получения
5.Изучить и описать реквизиты документов. Представить макеты документов.
6.Построить процессную модель проектируемой ИС в виде контекстной диаграммы в нотации IDEF0 при помощи пакета программ BPWin.
7.Перечислить автоматизированные функции проектируемой ИС, соответствующие потребностям заказчика (не менее 3). Определить цель (цели) (Зачем? Для чего?). Для каждой функции указать 2 – 4 функциональные особенности (всего не менее 9). Результаты описания представить в виде таблицы 1.6.
Таблица 1.6 – Описание функциональности ИС
№ п.п.
Потребность
Цели
Функциональные особенности
8.Представить функциональную модель проектируемой ИС в виде вариантов использования. Рассмотреть модель. Произвести выделение абстрактных вариантов использования и действующих лиц. Окончательный вид функциональной модели подсистемы реализовать в пакете программ Rational Rose, Visio или Altova UModel.
9.Выполнить системное описание существующих подобных информационных систем (не менее двух), которые могут быть применены к данному объекту информатизации. Выделить основные преимущества и недостатки представленных систем.
При этом одно за другим приводятся описания существующих ИС, автоматизирующих объекты и процессы, подобные имеющим место в выбранной предметной области. Описание уместно сопровождать следующими иллюстрациями:
§ функционально-структурная схема системы;
§ обобщенная блок-схема алгоритма функционирования системы;
§ экранные формы основных частей пользовательского интерфейса;
§ таблицы и графики, отражающие статистические показатели функционирования ИС.
Для каждой системы указываются преимущества и недостатки: вообще, а не применительно к выбранному объекту.
10. Выполнить сравнительную характеристику описанных систем; набор основных показателей для сравнения (определения показателей см. в приложении Б):
§ назначение системы;
§ эффективность системы;
§ гибкость системы;
§ защищенность системы;
§ живучесть системы;
§ надежность системы;
§ открытость системы;
§ оптимальность использования ресурсов;
§ удобство пользовательского интерфейса системы;
§ стоимость системы (в том числе затраты на тех. поддержку);
§ эргономичность.
Сделать вывод о возможности и целесообразности использования этих систем на выбранном объекте автоматизации.
Здесь выполняется сравнение представленных систем по нескольким показателям. Сравнение подкреплять количественными показателями (например, сроки внедрения, объем дискового пространства, кол-во единиц техники, стоимость программного обеспечения и т.п.). Также здесь уместно приведение статистических оценок в виде таблиц, диаграмм, графиков.
В подразделе 3 делается заключение о возможности применения рассмотренных систем к выбранному объекту информатизации. Оценивается степень этой возможности на предмет удобства и скорости настройки системы на данную предметную область, а также оптимальности их внедрения с учетом затрат на дальнейшее обслуживание и тех. поддержку.
В целом из материала отчета должно быть видно, какие из систем, автоматизирующих подобные выбранным объекты и процессы, существуют на отечественном и зарубежном рынке, и вообще в мире. Какой комплекс задач они позволяют решить, насколько оперативны и эффективны получаемые решения и насколько они соответствуют целям, поставленным при выполнении задания 1.
В отчете представить:
- название объекта информатизации;
- описание функционирования объекта информатизации;
- заполненные таблица 1.1 – 1.6;
- контекстную диаграмму функционирования проектируемой ИС;
- функциональную модель проектируемой ИС в виде диаграммы вариантов использования (Use Case Diagram), которая выполнена в одном из прикладных пакетов;
- выводы о возможности и целесообразности использования этих систем на выбранном объекте автоматизации.
Лабораторная работа 2 – Разработка структурных моделей ИСДля выполнения лабораторной работы 2 необходимо предварительно изучить материал разделов №3 и №4 конспекта лекций по курсу.При выполнении задания необходимо программное обеспечение для построения моделей данных CASE-средство ERWin. Рекомендуемая версия – AllFusion ERWin Data Modeler 2007 года выпуска.1. На основе анализа предметной области произвести идентификацию сущностей логической модели информационной базы ИС и связей между ними. Для этого необходимо:
- изучить массив входной нормативно-справочной (условно-постоянной) информации, определить состав соответствующих справочников.
- изучить массив входной оперативной (текущей) информации, структурировать его по ключевым сущностям с указанием всех атрибутов.
Как правило, документ с обычным "бумажными" таблицами разбивается по принципу: одна "бумажная" таблица — одна сущность. Соответственно, каждому входному документу, выделенному при выполнении лабораторной работы №1, поставить в соответствие одну сущность или (в результате нормализации) структуру связанных сущностей. Практика показывает, что набор сущностей логической модели данных сильно коррелирует с набором абстракций предметной области, выявленных при выполнении лабораторной работы №1.
2. Имена, атрибуты и назначение сущностей логической модели привести в таблице 2.1. Сущности в таблице 2.1 разделить на оперативные и справочные. При разработке модели определить сущности, их
первичные и
внешние ключи и атрибуты, а также связи между сущностями. Цель логического моделирования — это таблицы в нормальных формах высшего, минимум, третьего (НФ3) порядка.
3. При помощи CASE-средства ERWin разработать ER-диаграммы логической и физической модели данных. В отличие от логической модели, физическая модель должна быть представлена в третьей нормальной форме.
В зависимости от предметной области количество сущностей в модели может быть различным.
Для логической модели это 3 – 7 сущностей, бóльшая часть из которых – справочные.
Для физической модели это 5 – 15 сущностей, примерно половина из которых – справочные.
Таблица 2.1 – Сущности логической модели данных
№
Сущность
Атрибуты
Описание
Справочные
1
Сотрудники
ИНН, фамилия, имя, отчество, …
Информация о сотрудниках предприятия
…
…
…
……...
Оперативные
…
Продажи
Код, Дата,
Код менеджера, Код клиента, …
Информация о продажах
…
…
…
……...
4. Средствами ERWin (меню Tools ® Forvard Engineer ® Schema Generation…) на основе физической модели данных выполнить генерацию SQL-кода для создания реляционной базы данных ИС (код представить в отчете, шрифт Courier New, размер 10 пт, междустрочный интервал: 1,0)
5. В среде SQL Server Management Studio посредством команды CREATE DATABASE создать пустую базу данных, после чего выполнить сгенерированный при выполнении п.4 SQL-код.
6. Доработать структуру БД с учетом возможной нормализации отношений, а также доработать структуру таблиц с учетом ограничений на значения полей. Сформировать ER-диаграмму физической модели данных.
7. Выполнить описание таблиц базы данных в формате таблицы 2.2. Краткое описание таблиц свести в таблицу 2.3. Описание связей в БД и условия целостности данных привести в виде табл. 2.4.
Таблица 2.2 – Структура сущности _________
Имя атрибута
Тип данных
Размер
Условие на значение
Значение по умолчанию
Примечание
Таблица 2.3 – Список разработанных сущностей физической модели данных
№ п/п
Имя сущности
Описание
Таблица 2.4 – Связи между сущностями физической модели данных
Родительская таблица
Дочерняя таблица
Тип связи
Название
Атрибут
Название
Атрибут
8. В соответствии с индивидуальным заданием на проектирование ИС, выполнить для контекстной диаграммы, построенной при выполнении л.р. №1 (пункт 6) при помощи CASE-средства BPwin 4.1, диаграмму декомпозиции А0. Процессы диаграммы должны соответствовать потребностям из табл. 1.6. Внутренние интерфейсные дуги должны соответствовать информационным объектам, описанным в табл. 1.4 при выполнении лабораторной работы №1.
Блоки описать в словаре Activity Dictionary. Интерфейсные дуги (стрелки), описать в словаре Arrow Dictionary.
Произвести компоновку блоков и стрелок с подписями так, чтобы дочерняя диаграмма была максимально читабельной.
Для всех функциональных блоков диаграммы А0 построить диаграммы декомпозиции А2. В качестве наименований блоков использовать функциональные особенности потребностей из табл. 1.6. Внутренние интерфейсные дуги диаграмм А2 должны соответствовать информационным объектам, описанным в табл. 1.4 при выполнении задания 1. Введенные интерфейсные дуги описать в виде таблицы 2.5, а также в словаре Arrow Dictionary.
Таблица 2.5 – Стрелки диаграмм декомпозиции А2
Наименование стрелки
(Arrow Name)
Источник стрелки
(Arrow Source)
Тип стрелки источника
(Arrow Source Type)
Приемник стрелки
(Arrow Dest.)
Тип стрелки приемника
(Arrow Dest. Type)
Содержание отчета:
- логическая и физическая модели данных, таблицы 2.1 – 2.4
- перечень процессов, реализуемых при функционировании ИС (потребности из таблицы 1.6), с кратким описанием;
- дочерние диаграммы А0 и А2;
- содержимое словарей Activity Dictionary и Arrow Dictionary;
- содержимое словарей Activity Dictionary и Arrow Dictionary;
- описание стрелок диаграмм декомпозиции А2 в формате табл. 4.1.
Лабораторная работа 3 – Разработка объектно-ориентированных моделей ИСДля выполнения лабораторной работы 3 необходимо предварительно изучить материал разделов №5 – 9 конспекта лекций по курсу. Особое внимание следует уделить определению отношений между классами (раздел №9).1.Проанализировать основной поток событий с альтернативными вариантами и потоками ошибок, полученный при выполнении лабораторной работы №1, на предмет выявления набора абстракций предметной области проектируемой ИС. В качестве предварительных кандидатов в абстракции принять
подлежащие, выделенные из текста анализируемого потока событий.
2.Разделить выделенные абстракции на три типа: абстракции сущности, абстракции поведения, абстракции интерфейсы. Результат представить в виде таблицы 3.1.
Таблица 3.1 – Абстракции подсистемы
№
Абстракция
Тип
Описание
3.Провести классификацию обнаруженных абстракций по классическому подходу. Заполнить таблицу 3.2.
Таблица 3.2 – Классификация абстракций
№
Класс
Список абстракций
1
Люди
2
Места
3
Предметы
4
Организации
5
Концепции
6
События
4.Проанализировать поведение выделенных абстракций. Выделить возможное поведение каждой абстракции в пределах рассматриваемой функции (потребности, табл. 3.1). Заполнить таблицу 3.3.
Таблица 3.3 – Абстракции подсистемы и их поведение
№
Абстракция
Поведение
Описание поведения
5.Построить диаграмму объектов, показав на ней экземпляры классов, взаимодействующие для реализации выбранной функции системы. Для построения диаграммы объектов использовать диаграмму классов в нотации UML, указывая при этом лишь имена классов без указания свойств и методов класса. Пример диаграммы приведен на рисунке 3.1
Рисунок 3.1 Пример диаграммы классов
6.Выполнить сравнительный анализ полученной логической модели с ER-диаграммой информационной базы, разработанной при л.р.№2. При необходимости скорректировать диаграмму классов. Наполнить секции атрибутов.
7.Выявить в тексте анализируемого потока событий
сказуемые и наполнить секции операций.
8.На основе опыта выполнения л.р.№1 и с учетом процессных моделей вариантов использования, построенных при выполнении л.р. №2 записать потоки событий для каждого варианта использования. Каждый основной поток должен учитывать альтернативные потоки и потоки ошибок для данного варианта использования.
9.Для каждого потока построить диаграммы Состояния.
10. Для каждого потока построить диаграммы Деятельности в виде дорожек с привязкой к исполнителям конкретных операций алгоритма. При построении ориентироваться на результаты построенные структурные и объектно-ориентированные модели, описывающие функциональность ИС.
11. Для каждого потока выделить список объектов участвующих во взаимодействии в этом потоке, заполнить таблицу 3.4.
Таблица 3.4 – Список объектов для каждого потока событий
№ п.п.
Наименование потока
Объект
Описание объекта
12. Создать диаграммы Последовательности для перечисленных потоков событий.
13. Из диаграмм Последовательности создать Кооперативные диаграммы и доработать их, если это необходимо.
14. Сделать выводы.