Создание автоматизированной системы 'Сдача в аренду торговых площадей'

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    1,01 Мб
  • Опубликовано:
    2012-11-18
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Создание автоматизированной системы 'Сдача в аренду торговых площадей'

СОДЕРЖАНИЕ

ВВЕДЕНИЕ

. АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ. ДИАГРАММА ПРЕЦЕДЕНТОВ

. ТЕХНИЧЕСКОЕ ЗАДАНИЕ НА АВТОМАТИЗИРОВАННУЮ СИСТЕМУ

.1 Общие сведения

.2 Назначение и цели создания (развития) системы

.3 Характеристика объектов автоматизации

.4 Требования к системе

.5 Состав и содержание работ по созданию (развитию) системы

.6 Порядок контроля и приемки системы

.7 Требования к составу и содержанию работ по подготовке объекта автоматизации к вводу системы в действие

.8 Требования к документированию

.9 Источники разработки

. ОПИСАНИЕ КЛАССОВ, АТРИБУТОВ И МЕТОДОВ. КЛАССОВАЯ ДИАГРАММА

. ТЕСТИРОВАНИЕ

ЗАКЛЮЧЕНИЕ

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

ПРИЛОЖЕНИЕ А. ЛИСТИНГ МОДУЛЕЙ

ВВЕДЕНИЕ

Объектно-ориентированное программирование (ООП) - это совокупность фундаментальных представлений и терминов программирования <#"577856.files/image001.gif">


2. ТЕХНИЧЕСКОЕ ЗАДАНИЕ НА АВТОМАТИЗИРОВАННУЮ СИСТЕМУ

.1 Общие сведения

-        полное наименование системы - «Сдача в аренду торговых площадей», условное обозначение - Rental;

-        тема: разработка автоматизированной системы управления;

-        потенциальный заказчик: менеджер крупного торгового центра, сдающего в аренду торговые помещения;

-        данная система разрабатывается в учебном порядке, в качестве курсовой работы по предмету «Объектно-ориентированное программирование».

.2 Назначение и цели создания (развития) системы

Назначение системы: автоматизация процессов, происходящих в области арендования торговых помещений, цель создания - наведение порядка в финансовой стороне работы крупного торгового центра.

.3 Характеристика объектов автоматизации

Объектом автоматизации является финансовая сторона работы крупного торгового центра, основной деятельностью которой является сдача в аренду торговых площадей. Сдаче подлежат только свободные торговые точки, один арендатор может снимать несколько точек, несколько коммерсантов не могут арендовать одно и то же помещение.

2.4 Требования к системе

Разрабатываемая система должна отвечать всем требованиям заказчика для стабильной и корректной работы в данной предметной области: добавлять, удалять, изменять и сохранять данные. Также важным требованием системы является фактор повторного использования. Разрабатываемая автоматизированная система способна корректно работать на самых минимальных технических требованиях аппаратного обеспечения, а также тестировалась на операционных системах Windows XP SP3 и Windows 7. Система не допускает аварийных завершений, сохранение данных в файл осуществляется с помощью сериализации данных, данная система транспортабельна, может работать с портативных запоминающих устройств, не нуждается в дополнительном обслуживании. Разработанная автоматизированная система не нарушает не чьих авторских прав, создана с помощью свободно распространяемого языка программирования высокого уровня Python.

.5 Состав и содержание работ по созданию (развитию) системы

Для разработки данной автоматизированной системы был проведен первичный анализ предметной области, в ходе чего была выявлена специфика процессов, происходящих в сфере арендования торговых площадей. После чего был проведен более глубокий анализ с использованием диаграммы прецедентов. Диаграмма прецедентов позволила выявить основные сущности и их атрибуты, в результате чего была создана иерархия классов и методов. Для удобства исполнения разрабатываемое программное обеспечение было разбито на два модуля, в одном из которых содержатся основные классы для работы с арендой торговых площадей, позволяющие добавлять, изменять, удалять и хранить данные, а в другом модуле создан класс для создания пользовательского интерфейса для удобной работы с арендой торговых площадей. Все классы и методы классов разрабатывались с помощью объектно-ориентированного подхода. В ходе написания программного кода учитывался фактор защиты целостности системы при вводе некорректных данных. Также проводилось метрологическое тестирование: проверка правильности вычислений временных данных (дата-время), арифметических вычислений (подсчет стоимости периода аренды), проверка правильной итерации номеров записей баз данных, проверка корректного вывода результата приложения, а также проверка поведения приложения при отсутствии файлов сериализации.

.6 Порядок контроля и приемки системы

В соответствии с разрабатываемой автоматизированной системой, с учетом всех процессов, протекающих в предметной области арендования торговых помещений, для корректной работы системы были проведены следующие испытания:

-        заполнение основных полей некорректными данными;

-        арендование одним клиентом нескольких свободных торговых точек;

-        попытка арендовать занятую торговую точку;

-        истечение срока аренды и освобождение торговой точки;

-        проверка быстродействия вычислений системы.

Разрабатываемая автоматизированная система прошла все испытания, поэтому отвечает всем требованиям той предметной области, в которую данная система должна быть внедрена.

2.7 Требования к составу и содержанию работ по подготовке объекта автоматизации к вводу системы в действие

Для корректной работы разрабатываемой автоматизированной системы необходимо как минимум одно автоматизированное рабочее место, снабженное персональным компьютером на базе микропроцессора с тактовой частотой не менее 1000 МГц, ОЗУ 256 Мб, Видеоадаптер 64 Мб, свободное дисковое пространство размером 150 Мб, а также клавиатура и мышь. Необходимое программное обеспечение: операционная система Windows XP, Windows 7, а также установленный интерпретатор для языка Python, например Python Portable 2.7.3.1.

Для работы с системой не требуется дополнительного обучения, достаточно знание предметной области, куда внедрена данная автоматизированная система, поэтому не требуется создание какого-либо отдельного подразделения или выделения дополнительного штата и материальных средств для освоения системы.

.8 Требования к документированию

В разрабатываемой автоматизированной системе определена документация для каждого класса, метода класса и отдельного независимого метода. В ходе работы с приложением можно вывести на экран всю необходимую документацию.

.9 Источники разработки

Технико-экономическое обоснование создания автоматизированной системы: необходимость в систематизации данных финансовой стороны крупного торгового центра. Источники, необходимые для разработки подобной системы представлены в разделе список использованных источников.

3. ОПИСАНИЕ КЛАССОВ, АТРИБУТОВ И МЕТОДОВ. КЛАССОВАЯ ДИАГРАММА

Рассмотрим классы, описывающие предметную область разрабатываемой автоматизированной системы.

Класс Outlets - класс, описывающий торговые площади. Поля класса: floor, square, conditioner, cost, status. Единственный метод класса __init__() содержит следующие атрибуты класса: self.number (номер), self.floor (этаж), self.square (площадь), self.conditioner (кондиционер), self.cost (стоимость), self.status (статус точки).

Класс Personal - класс, описывающий контактное лицо клиента. Поля класса: first_name, last_name, middle_name. Единственный метод __init__() содержит следующие атрибуты класса: self.first_name (имя), self.middle_name (отчество), self.last_name (фамилия).

Класс Clients - класс, описывающий клиентов-арендаторов торговых площадей. Поля класса: company, details, address, phone, last_name, middle_name, first_name. Единственный метод класса __init__() содержит следующие атрибуты класса: self.number (номер), self.company (компания), self.details (реквизиты), self.address (адрес), self.phone (телефон), self.personal = Personal(last_name, first_name, middle_name) - контактное лицо.

Класс Rent - класс, описывающий основную информацию по аренде торговых площадей. Поля класса: outlet, client, start_date, finish_date, payment. Единственный метод класса __init__() содержит следующие атрибуты класса: self.number (номер), self.outlet (торговая точка), self.client (потенциальный клиент), self.start_date (дата начала аренды), self.finish_date (дата окончания аренды), self.payment (платежи за аренду).

Класс OutletsDatabase - класс, описывающий базу данных торговых точек. Метод __init__() содержит следующие атрибуты класса: self.filename (имя файла), self.database (массив записей), self.index (индекс записи). Поля класса: number, floor, square, conditioner, cost, status. Методы класса: __iter__() (метод-итератор), open_database() (метод открытия файла), save_database() (метод сохранения в файл), add_record() (метод добавления новой записи в базу данных), delete_record() (метод удаления записи), change_record() (метод изменения записи), get_record_by_number() (метод получения записи по номеру из базы данных).

Класс ClientsDatabase - класс, описывающий потенциальных клиентов. Метод __init__() содержит следующие атрибуты класса: self.filename (имя файла), self.database (массив записей), self.index (индекс записи). Поля класса: number, company, details, address, phone, first_name, last_name, middle_name. Методы класса: __iter__() (метод-итератор), open_database() (метод открытия файла), save_database() (метод сохранения в файл), add_record() (метод добавления новой записи в базу данных), delete_record() (метод удаления записи), change_record() (метод изменения записи), get_record_by_number() (метод получения записи по номеру из базы данных).

Класс RentDatabase - класс, описывающий базу данных договоров по аренде. Метод __init__() содержит следующие атрибуты класса: self.filename (имя файла), self.database (массив записей), self.index (индекс записи). Поля класса: number, outlet, client, start_date, finish_date, payment. Методы класса: __iter__() (метод-итератор), open_database() (метод открытия файла), save_database() (метод сохранения в файл), add_record() (метод добавления новой записи в базу данных), delete_record() (метод удаления записи), get_record_by_number() (метод получения записи по номеру из базы данных).

Класс Launcher - класс, запускающий пользовательское приложение, выводит результаты обработки информации на экран. Метод __init__() содержит атрибуты класса: self.outlets_database (экземпляр класса OutletsDatabase), self.clients_database (экземпляр класса ClientsDatabase), self.rent_database (экземпляр класса RentDatabase). Методы класса: update (метод обновления баз данных), printOutletsDB() (вывод на экран записей базы данных торговых точек), printClientsDB() (вывод на экран записей базы данных потенциальных клиентов), printRentDB() (вывод на экран записей базы данных договоров по аренде), launch() (метод запуска элементов управления приложением).

Также имеется два независимых метода: _next_number() (метод для инкриминирования номеров записей баз данных), getDays() (метод, вычисляющий разницу в днях между двумя датами).


Рисунок 2 - Классовая диаграмма

4. ТЕСТИРОВАНИЕ

При запуске данной системы пользователь выбирает из списка действий желаемое действие, при наборе в поле ввода числа «12», приложение закроется. На рисунке 3 показано начальное приглашение приложения.

 

Рисунок 3 - Интерфейс системы

При вводе цифры «1», пользователь может увидеть список торговых площадей, имеющихся в наличии торгового центра (рисунок 4). А при вводе цифры «2», пользователь может посмотреть список потенциальных клиентов (рисунок 5). Так как база данных договоров по аренде не имеет записей, то приложений оповещает пользователя о том, что список договоров пуст (рисунок 6). Тестирование добавления договора в базу данных системы: для этого следует ввести цифру «6» и заполнить необходимые поля, причем данные по номеру точки и номеру клиента берутся из соответствующих баз данных, если пользователь ввел несуществующий номер записи любой из баз данных, то система оповестит об ошибке ввода и прекратит процедуру добавления договора, также с датами, если пользователь пытается ввести одну дату как для начала аренды, так и для окончания, то система оповестит об ошибке, и если дата окончания совпадает с реальной датой, то система предупредит об этом. На рисунке 7 показан пример добавленной записи договора об аренде. При попытке арендовать не свободную точку, система оповещает об этом клиента (рисунок 8). Но система также позволяет одному клиенту иметь сразу несколько торговых точек (рисунок 9).

Рисунок 4 - Список торговых площадей

Рисунок 5 - Список клиентов

Рисунок 6 - Оповещение о пустом списке

Рисунок 7 - Запись договора об аренде

Рисунок 8 - Оповещение системы об ошибке договора

Рисунок 9 - Два договора по аренде для одного клиента

При тестировании системы также проверялась возможность удаления точек, клиентов и договоров баз данных, изменения параметров торговых площадей и клиентов, а также попытку ввести некорректные данные. Система мгновенно обновляет все данные, которые изменялись в ходе различных манипуляций пользователя: добавление, изменение, удаление.


В ходе работы была создана автоматизированная система управления всеми процессами, происходящими в сфере арендования торговых площадей. Учтены все требования, поставленные для конкретной специфики предметной области, такие как: возможность одному клиенту арендовать сразу несколько точек, невозможность аренды нескольким клиентам одной торговой точки, смена статуса торговой площади при аренде (свободна - занята), а также хранение всех платежей, поступающих от арендаторов. Разработанная система способна хранить всю информацию неограниченное число дней, устойчива к отсутствию файлов сериализации (сохранения), безопасна, способна повторно использоваться, а также не нарушает авторских прав и патентов.

Для создания автоматизированной системы был применен объектно-ориентированный подход, так как объектно-ориентированное программирование в настоящее время является несомненным лидером в области разработки программного обеспечения и в области прикладного программирования.

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1  Деменков М.Е. Объектно-ориентированное программирование: методические указания по выполнению курсовой работы. [Текст] - Архангельск: Изд-во САФУ, 2012. - 40 c.

2        Бизли Д. Python. Подробный справочник. [Текст] - Пер. с англ. - СПб.: Символ-Плюс, 2010. - 864 с., ил.

3        Википедия - Свободная Энциклопедия. [Электронный Ресурс] - Режим доступа: <http://ru.wikipedia.org/>, свободный.

Похожие работы на - Создание автоматизированной системы 'Сдача в аренду торговых площадей'

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!