
- •Содержание
- •Раздел 3 содержит описание требований к программному решению, раздел – описание архитектуры выбранного решения.
- •2.Предметная область проекта
- •2.1Существующие проблемы
- •2.2Предполагаемое решение
- •3.Требования к программному решению
- •3.1Роли
- •3.2Функциональные требования для роли User
- •3.3Нефункциональные требования
- •4.Обзор архитектуры
- •4.1Компонентная модель системы
- •4.1.1Компонент Logic
- •6.Известные проблемы
- •6.1Отсутствие возможности поиска записей
- •6.2Отсутствие сортировки элементов списка
- •Лист регистрации изменений
- •Лист регистрации проверок
3.3Нефункциональные требования
Приложение должно позволять хранить до 10000 различных записей в разделах (Library, Book, Diary, ToDoList, ToReadList).
Каждая запись имеет ограничение по размеру 100Kb
Приложение должно обеспечивать сохранение данных между запусками.
Данные, полученные в ходе работы приложения (книги, заметки и т.п.) должны храниться в течение всего времени жизни приложения.
Приложение должно предоставлять удобный интерфейс для добавления, просмотра и редактирования записей.
4.Обзор архитектуры
Этот раздел описывает архитектуру системы.
4.1Компонентная модель системы
Пакет Logic представляет собой логику работы таких компонентов, как: Library, Diary, ToDoList, ToReadList.
Пакет Data отвечает за представление данных в приложении.
Пакет Database обеспечивает поддержку работы с базой данных.
Пакет Items содержит в себе логику и пользовательский интерфейс для работы с записями в Diary и книгами в Library.
В пакете View хранится пользовательский интерфейс.
4.1.1Компонент Logic
Компонент Logic содержит в себе логику работы с пользовательскими интерфейсами основных разделов приложения: Library, Diary, ToDoList, ToReadBooks. Наследники класса DBControl ( DBLibraryControl, DBDiaryControl, DBToDoListControl, DBToReadBooksControl) обеспечивают работу с соответствующими таблицами базы данных. Через них происходят все операции сохранения и обновления данных в этой таблице. Класс LibraryControl (DBDiaryControl, DBToDoListControl, DBToReadBooksControl ) реализует интерфейсы OnClickListener, OnItemClickListener и таким образом выполняет обработку событий пользовательского интерфейса. Класс BookDialogControl обеспечивает обработку событий диалоговых окон.
4.1.2Компонент Database
Компонент Database обеспечивает поддержку базы данных. DBHelper хранит в себе объект SQLiteDatatbase, отвечает за создание базы данных и всех необходимых таблиц. DBControl предоставляет соим наследникам доступ к базеданных.
4.1.3Компонент Data
Компонент Data содержит в себе представление данных во время работы программы. Он предоставляет удобный доступ до всех элементков конкретной (книги, записи, цитаты).
4.1.4Компонент Items
Компонент Items содержит логику и представление элементов Library и Diary. Он обеспечивает возможность просмотра и внесения изменений в информацию книги или заметки.
4.1.5Компонент View
Компонент View представляет пользовательский интерфейс для работы с приложением. Он содержит классы, отвечающие за отображение основных разделов приложения.
4.2Компоненты сторонних производителей
Android SDK предоставляет API для разработки приложений под Android.
4.3Схема развертывания приложения
Программа запускается на смартфоне с ОС Android версией 4.0.3 и выше, а также с API Level 15.
5.Допущения и ограничения
При разработке проекта принято допущение, что количества книг, записей в дневнике, списка дел и списка литературы не будут превышать 1000, и, соответственно, не придется выполнять задачи поиска по книгам, спискам дел и т.д.
Ограничением является особенность работы с базой данных - она будет являться постоянной и т.о. при каждой выполняемой задаче программа не подключается к базе данных заново, а после выполнения не отсоединяется от неё.