Автор работы: Пользователь скрыл имя, 30 Октября 2013 в 22:37, курсовая работа
Для выполнения данной задачи необходимо изучить предметную область, построить UML -диаграммы модели, протестировать и оценить характеристики модели системы метриками Чидамбера-Кемерера.
АННОТАЦИЯ 2
ВВЕДЕНИЕ 4
1 Разработка концептуальной модели системы 5
1.1 Основные и второстепенные цели создания программного продукта 5
1.2 Состав пользователей 5
1.3 Интересы групп пользователей 5
1.4 Разделы программного продукта 5
1.5 Диаграмма вариантов использования (Use case diagram) 6
2 Разработка логической модели системы 9
2.1 Диаграмма деятельности (Activity diagram) 9
2.2 Диаграмма состояний 12
2.3 Диаграмма последовательностей (Sequence diagram) 14
2.4 Диаграмма классов (Class diagram) 16
2.5 Диаграмма компонент (Component diagram) 17
2.5 Диаграмма компонент (Component diagram) 18
2.6 Диаграмма размещения ( 19
3 Разработка и реализация тестов 22
4 Оценка характеристик разработанной модели системы 26
4.1 Набор метрик Чидамбера и Кемерера 26
Заключение 29
Библиографический список 30
Диаграмма компонентов разрабатывается для следующих целей:
Главный компонент на данной диаграмме Gui.dll, который содержит в себе информацию о всех объектах. От данного компонента наследуется справочник, содержащий процедуры для работы со списком записей, от которого в свою очередь наследуется формуляр, осуществляющий обработку конкретных записей в массивах.
Также на диаграмме изображены интерфейсы "Справочник" - для предоставления данных в виде справочника, интерфейс "Форма" - представление данных на форме, интерфейс "Меню" - меню выбора действий.
2.6 Диаграмма размещения (развертывания)
Диаграмма развертывания (рис.9) предназначена для визуализации элементов и компонентов программы, существующих лишь на этапе ее исполнения (runtime). При этом представляются только компоненты-экземпляры программы, являющиеся исполняемыми файлами или динамическими библиотеками. Те компоненты, которые не используются на этапе исполнения, на диаграмме развертывания не показываются. Так, компоненты с исходными текстами программ могут присутствовать только на диаграмме компонентов.
Диаграмма развертывания содержит
графические изображения
При разработке диаграммы развертывания преследуют следующие цели:
На диаграмме выделены два узла
– клиент и сервер. На сервере
находится два объекта “
Пользователь Система
Ввод данных
Анализ данных
Сообщение
Сценарий выполнения:
1.1 Корректность добавления нового пациента | |
Тест 1.1.1 |
Фамилия = «» Имя = «Ольга» Отчество = «Петровна» Сообщение = «Поле для ввода пустое» |
Тест 1.1.2 |
Фамилия = «Исаева» Имя = «121212» Отчество = «Петровна» Сообщение = «Неверно заполнено поле - Имя» |
Тест 1.1.3 |
Фамилия = «Исаева23» Имя = «Ольга» Отчество = «Петровна» Сообщение = «Неверно заполнено поле - Имя» |
Тест 1.1.4 |
Дата рождения = «29.12.2011» Адрес = «» Сообщение = «Поле для ввода пустое» |
Тест 1.1.5 |
Дата рождения = «29.17.2011» Адрес = «ул. Вязовая 94-78, г. Челябиснк» Сообщение = «Неверно введена дата» |
2. Проверка быстродействия
1) Ввод данных для фильтрации
2) Обработка данных системой
Сценарий тестов для блока «Быстродействие»:
Пользователь Система
Ввод данных
Обработка данных
Ответ в виде времени
Таблица 2 – Тесты на быстродействие
Номер теста |
Введенные данные |
Время |
2.1.1 |
Фамилия |
< 60 мс |
2.1.2 |
Имя |
< 30 мс |
2.1.3 |
Отчество |
< 20 мс |
2.1.4 |
Адрес |
< 60 мс |
3. Тестирование на корректность совместного использования:
1) Редактирование истории
2) Поиск истории болезней пациента администратором
Сценарий тестов для блока «Совместное использование»:
Пользователь Система
Запрос на редактирование
Запись в базу
Запрос на поиск
Запись в базу
Статус-сообщение
Таблица 3 – Тесты на совместное использование
Номер теста |
Введенные данные |
Статус-сообщение |
3.1.1 |
Редактирование.История_болезни = Поиск. История_болезни |
Ошибка |
3.1.2 |
Редактирование.История_болезни != Поиск. История_болезни |
Завершено |
Метрика 1: Взвешенные методы на класс WMC (Weighted Methods Per Class)
Данная метрика определяет количество методов класса, тем самым дает относительную меру сложности класса.
Метрика 2: Высота дерева наследования DIT (Depth of Inheritance Tree)
DIT определяется как максимальная длина пути от листа до корня дерева наследования классов.
Метрика 3: Количество детей NOC (Number of children)
Подклассы, которые непосредственно подчинены суперклассу, называются его детьми. Значение NOC равно количеству детей, то есть количеству непосредственных наследников класса в иерархии классов.
Метрика 4: Сцепление между классами объектов СВО (Coupling between object classes)
СВО — это количество сотрудничеств, предусмотренных для класса, то есть количество классов, с которыми он соединен. Соединение означает, что методы данного класса используют методы или экземплярные переменные другого класса.
Метрика 5: Отклик для класса RFC (Response For a Class)
Метрика RFC является мерой потенциального взаимодействия данного класса с другими классами, позволяет судить о динамике поведения соответствующего объекта в системе. Данная метрика характеризует динамическую составляющую внешних связей классов.
Метрика 6: Недостаток связности в методах LСOM (Lack of Cohesion in Methods)
Метрика LCOM показывает, насколько методы не связаны друг с другом через свойства (переменные).
Рисунок 11 – Диаграмма классов для расчета метрик
Таблица 4 – Расчет метрик Чидамбера-Кемерера
WMC |
DIT |
NOC |
CBO |
RFC |
LCOM | |
Роль |
0 |
0 |
2 |
2 |
2 |
0 |
Врач |
2 |
1 |
0 |
2 |
4 |
1 |
Администратор |
3 |
1 |
0 |
3 |
6 |
3 |
История болезней |
3 |
1 |
0 |
2 |
5 |
0 |
Отчеты |
2 |
0 |
0 |
1 |
3 |
0 |
Талоны |
1 |
0 |
0 |
2 |
3 |
0 |
Справочник |
4 |
0 |
2 |
2 |
6 |
0 |
ВрачФИО |
1 |
1 |
0 |
2 |
3 |
0 |
Метрика RFC определяет возможное выполнение методов классом как собственным так и наследуемым, рассчитывается так: WMC + CBO.
Для вычисления метрики LCOM для начала необходимо определить количество пар методов класса. Оно рассчитывается по формуле
,
где m – количество методов класса.
Классы врач, отчеты имеют по 2 метода, соответственно по 1 паре.
Методы в классе врач не связаны друг другом, это значит, что значение LCOM=1. Методы «Сформировать» и «Удалить» в классе отчеты взаимодействуют с одними и теме же параметрами и LCOM=0.
LCOM = 3 для класса администраторы, так как пары методов не взаимодействуют друг с другом. История болезней имеет методы добавить, изменить и удалить, которые работают с одними и теме же полями. В справочнике методы связаны между собой, так как работают с одними и теме же данными, которые связаны по коду. Талоны и ВрачФИО имеют по одному методу, поэтому очевидно, что LCOM = 0.
Информация о работе Разработка модели автоматизации системы обслуживания в поликлинике