2.1 Диаграмма вариантов использования
Диаграмма вариантов использования проектируемого приложения представлена на рисунке 3. Приложение предполагает наличие только одного пользователя.
Открыв приложение, пользователь попадает в главное меню, в котором он может выбрать 4 варианта: «Добавить запись», «Удалить запись», «Посмотреть все записи» и «Найти записи по фамилии».
Кнопка «Добавить запись» предполагает добавление нового пользователя в файл. При выборе данного меню, выводится пошаговое меню с заполнением данных.
При выборе найти записи по фамилии. В этом окне пользователю предлагается ввести необходимую фамилию. После ввода необходимых данных происходит поиск всех пользователей, которые соответствуют введенным параметрам и выводят их на экран.
Рисунок 3 – Диаграмма вариантов использования
2.2 Диаграмма классов
В ходе проектирования архитектуры приложения разрабатывается проектная документация, включающая текстовые описания, диаграммы и модели будущей программы. Диаграмма классов служит для представления статической структуры модели системы в терминологии классов объектно-ориентированного программирования.
Поле класса или атрибут в объектно-ориентированном программировании – переменная, связанная с классом или объектом. Все данные объекта хранятся в его полях. Доступ к полям осуществляется по их имени. Обычно тип данных каждого поля задаётся в описании класса, членом которого является поле.
Диаграмма классов для приложения представлена на рисунке 4. Она отображает все классы программы, а также их атрибуты, методы и взаимосвязи между ними. На диаграмме можно увидеть основные архитектурные решения.
|
Рисунок 4 – Диаграмма классов
Связующим из основных классов является DbSet, он отвечает логику операций с данными.
В папке models реализованы классы, которые повторяю структуру хранимых данных.
Описание всех классов и комментарии к их атрибутам и методам представлены в табл.1.
Таблица 1 – Используемые классы папки «Phone »
«Phone. cs » | |
Атрибут | Комментарий |
Int Id | Уникальный идентификатор пользователя |
String Surname | Фамилия пользователя |
String FirstName | Имя пользователя |
String FatherName | Отчество пользователя |
String Telephone | Телефон пользователя |
Следующая группа содержит в себе классы, которые работают с данными. Описание всех классов и комментарии к их атрибутам и методам представлены в табл.2.
Таблица 2 – Используемые классы папки «Context »
«DbSet. cs » | |
Атрибут | Комментарий |
List<T> Entities | Список записей |
string fileName | Название файла, где хранятся данные |
string typeFile | Тип файла |
Метод | Комментарий |
void Add(T entity) | Добавляет данные в список |
void Edit(int id,T entity) | Изменяет данные пользователя |
bool Remove(int id) | Удаляет данные из списка |
bool RemoveAll() | Очищает базу |
T GetId(int id) | Получает данные пользователя по id |
List<T> GetAll() | Получает все данные из списка |
List<T> FindAllUsersSurname(string surname) | Получает все данные по сроку годности |
void SaveChanges() | Сохраняет изменения в файл |
void GetDataFromFile() | Получает данные из файла |
«DbContext. cs » | |
Атрибут | Комментарий |
DbEntities<Phone> Phones | Объект DbEntities |
Папка «Main », включает в себя классы, связанный с логикой приложения. Описание класса и комментарии к их атрибутам и методам представлены в табл.3.
|
Таблица 3 – Используемые классы папки «Main »
«Program. cs » | |
Атрибут | Комментарий |
MenuService menuService | Файл класса по работе с меню |
int menuItems | Номер категории меню |
«MenuService. cs » | |
Атрибут | Комментарий |
DbContext db | Объект файла DbContext, который отвечает за логику работы с данными |
Метод | Комментарий |
void MenuAddItem() | Пункт меню добавления пользователя |
void MenuRemoveItem () | Пункт меню удаления пользователя |
bool MenuGetItems () | Пункт меню получения пользователей |
bool MenuFindItems () | Пункт меню поиска пользователей |
2.2 Диаграмма последовательностей
Диаграмма последовательности – диаграмма, на которой для некоторого набора объектов на единой временной оси показан жизненный цикл определённого объекта и взаимодействие действующих лиц программы.
Рисунок 5 – Диаграмма последовательностей для добавления нового пользователя
Рисунок 6 – Диаграмма последовательности удаления пользователя
Рисунок 7 – Диаграмма последовательности получения списка пользователей
Рисунок 8 – Диаграмма последовательности поиск пользователей по фамилии
3 Исследование функциональности приложения хранения данных о товарах
При запуске приложения, открывается главное меню, в котором описаны действия по работе с программой (рисунок 9).
Приложение предлагает 4 варианта на выбор:
- Добавить запись;
- Удалить запись;
- Посмотреть все записи;
- Выбрать записи по сроку годности.
Рисунок 9 – Главное меню
При выборе первого пункта меню, пользователю будет предложено последовательно вводить данные пользователя.
После ввода данных происходит их сохранение в файл. В случае успешного добавления будет выведена соответствующая запись (Рисунок 10).
|
Рисунок 10 – Добавление пользователя
Вторым пунктом является удаление данных из базы. Где выводится полный список данных, а затем будет предложено выбрать номер пользователя, которого необходимо удалить (Рисунок 11).
Рисунок 11 – Удаление пользователя
Третий пункт является вывод полного списка пользователей (Рисунок 12).
Рисунок 12 – Вывод списка пользователей
В последнем пункте, будет предложено ввести фамилию пользователя, в результате будут выбраны все данные, которые соответствуют данному условию (Рисунок 13).
Рисунок 13 – Вывод найденных пользователей
Таким образом, было проведено тестирование приложения, которое продемонстрировало его полную работоспособность, а также были составлены элементы технической документации.
ЗАКЛЮЧЕНИЕ
Целью работы является повышение профессиональных навыков, связанных с использованием языка программирования и моделирования для проектирования и разработки программного обеспечения программного обеспечения, формализующего функционал телефонного справочника. В ходе выполнения удалось добиться решения следующих задач:
− был проведен анализ существующих решений поставленной задачи, в результате которого для разработки приложения в качестве языка программирования был выбран С#, в качестве среды разработки IDE Visual Studio c, в качестве языка проектирования– UML;
− спроектирована объектно-ориентированная архитектура приложения;
− реализовано спроектированное программное обеспечение, отвечающее требованиям объектно-ориентированного подхода;
− осуществлено тестирование и оценка приложения;
− разработаны элементы технической документации.
В результате повысился уровень компетенции в области программирования: получены навыки работы с объектно-ориентированным программированием.