ООО «Софтя» создано путем реорганизации в 1997 году и является его правопреемником в отношении всех кредиторов и должников. ООО «Софт» является коммерческой организацией, созданной для осуществления предпринимательской деятельности, направленной на получение прибыли. Целью деятельности данной организации является извлечение прибыли. Основным направлением деятельности компании является разработка, внедрение и сопровождение программного обеспечения.
В компании трудятся 30 человек основного и 2 человека вспомогательного персонала. На протяжении многих лет, в компании трудятся одни и те же сотрудники. Компания не ведет открытый прием на работу. Текучесть кадров отсутствует. Рассмотрим первый компонент - архитектура данных. Разработаем логическую и физическую модели [1, 2].
Рис. 1. Логическая модель
Рис. 2 Физическая модель
Рассмотрим подробнее каждую из сущностей (табл.1).
Таблица 1
Описание физической модели
№ |
Сущность |
Описание |
Программное обеспечение. Перед работой с системой в базу должна быть занесена информация обо всем программном обеспечении, продажей которого занимается фирма. Идентификатором служит уникальный номер ПО (ID_ПО). Также данная сущность содержит информацию о названии ПО (Название), его стоимости (Стоимость) и дополнительную информацию (Доп_информация), например, количество лицензий на 1 установочном диске. |
||
Покупатель. В данной сущности содержится информация обо всех покупателях компании. Идентификатор – уникальный номер покупателя (ID_покупателя). Хранится фамилия, имя, отчество покупателя (ФИО), его адрес электронной почты (e_mail), серия и номер паспорта (Паспортные данные) и телефон (Телефон). |
||
Договор. При покупке ПО с клиентами заключается договор. Сущность «Договор» содержит внешний ключ покупателя (ID_покупателя), дату заключения договора (Дата_заключения). Идентификатор – номер договора (ID_договора). |
||
Сотрудник. Данная сущность содержит информацию обо всех сотрудниках компании, занимающихся продажей ПО. Идентификатор – номер сотрудника (ID_сотрудника). Также хранится фамилия, имя, отчество сотрудника (ФИО), его адрес (Адрес), должность (Должность), серия и номер паспорта (Паспортные данные) и телефон (Телефон). |
||
Продажа ПО. Также в базе хранится информация обо всех продажах ПО. Идентификатор – номер продажи (ID_продажи). Также сущность содержит внешний ключ ПО (ID_ПО), договора (ID_договора), сотрудника (ID_сотрудника) для того, чтобы знать какое ПО было продано, когда было продано (Дата_продажи), в каком количестве (Количество) и на какую сумму (Сумма_продажи). |
Таблица 2
Сводная таблица информационной модели
Сущность |
Атрибут |
Тип данных |
ПО |
ID_ПО |
Уникальный идентификатор, число |
Название |
Символьный (30) |
|
Стоимость |
Число |
|
Доп. Информация |
Символьный (1000) |
|
Покупатель |
ID_Покупателя |
Уникальный идентификатор, число |
ФИО |
Символьный(50) |
|
E_mail |
Символьный(50) |
|
Паспортные данные |
Символьный(18) |
|
Телефон |
Символьный(11) |
|
Договор |
ID_договора |
Уникальный идентификатор, число |
Дата_заключения |
Дата |
|
ID_Покупателя |
Уникальный идентификатор, число |
|
Сотрудник |
ФИО |
Символьный(50) |
Адрес |
Символьный(50) |
|
Паспортные данные |
Символьный(18) |
|
Телефон |
Символьный(11) |
|
Должность |
Символьный(50) |
|
Продажа_ПО |
Дата_продажи |
Дата |
Количество |
Символьный(5) |
|
ID_ПО |
Уникальный идентификатор, число |
|
ID_договора |
Уникальный идентификатор, число |
|
ID_сотрудника |
Уникальный идентификатор, число |
|
Сумма продажи |
Число |
Построенная физическая модель хранения данных учитывает реализацию с помощью СУБД Microsoft SQL. Далее рассмотрим второй компонент - архитектура приложений. Разработаем интерфейс системы.
Рис. 3. Окно «Аунтификация»
Первая форма «Вход в систему». Форма должна содержать 2 текстовых поля (TEdit): для логина и пароля, 2 надписи (TLabel) и кнопка подтверждения (TButton). Поле для ввода логина может содержать только латинские буквы, цифры и специальные символы (_ - .) и не содержать пробелов [3, 4]. Поле для ввода пароля может содержать русские и латинские буквы, цифры, специальные символы (! ? _ - * , . @ # $ %). При нажатии кнопки подтверждения «ОК» появляется форма с уведомлением (Неверный логин или пароль) (функция ShowMessage), если логин и/или пароль введен неправильно (рис.4).
Рис. 4. Окно «ShowMessage»
При правильном вводе логина и пароля (т.е. если логин и пароль содержатся в базе) и нажатии кнопки подтверждения «ОК» появляется основная форма для ввода информации о продаже программного обеспечения (логин – root, пароль – admin) (рис.5).
Рис.5. Окно «Основная форма»
Форма должна содержать меню (TMainMenu), 8 надписей (TLabel), 4 текстовых поля (TEdit), 2 поля с выпадающим списком (TComboBox), 1 поле ввода даты и времени продажи (TDateTimePicker) и 2 кнопки (TButton). Меню содержит 3 пункта: Сотрудник, Клиент, Продажи. Пункт «Сотрудник» содержит 3 подпункта: Информация о сотрудниках, Поиск по сотрудникам, Добавить сотрудника. Пункт «Клиент» содержит 3 подпункта: Информация о клиентах, Поиск по клиентам, Добавить клиента. Пункт «Продажи» содержит 2 подпункта: База продаж, База ПО.
Для выбора продаваемого ПО необходимо выбрать его из выпадающего списка. Список должен содержать наименования всех программных продуктов, которые содержатся в базе ПО. При выборе определенного ПО, поле «Стоимость» заполняется автоматически. Поле «Количество» заполняется продавцом, поле может содержать только цифровые значения, максимум 3 символа [5]. Выпадающий список «Сотрудник» должен содержать фамилии всех сотрудников, которые занимаются продажей программного обеспечения. Поле «Договор» заполняется продавцом, оно может содержать только цифры. При нажатии кнопки «Расчет» автоматически рассчитывается сумма к оплате, которая вносится в поле «Сумма к оплате». В поле «Дата продажи» выбирается текущая дата. При нажатии кнопки подтверждения «ОК» появляется окно с уведомлением о вводе информации в базу продаж ПО (Информация внесена в базу) (функция ShowMessage) (рис.6).
Рис.6. Окно «ShowMessage»
При выборе подпункта «Информация о сотрудниках» на экран выводится форма «Информация о сотрудниках», которая содержит информацию о сотрудниках, занимающихся продажей ПО. Форма содержит таблицу (TStringGrid). Таблица содержит строки «ФИО», «Должность», «Адрес», «Паспортные данные», «e-mail» и изначально содержит информацию только о 2-х сотрудниках, занимающихся продажей продукции.
Рис.7. Окно «Информация о сотрудниках»
При выборе подпункта «Поиск по сотрудникам» выводится форма «Поиск». Форма содержит надпись (TLabel), поле (TEdit), кнопку (TButton), поле (TMemo). Для поиска сотрудника в текстовое поле типа TEdit вводится фамилия сотрудника. При нажатии кнопки «Поиск» в поле ТМемо выводится информация о найденных сотрудниках (рис.8).
Рис.8. Окно «Поиск»
При выборе подпункта «Добавить сотрудника» появляется форма «Добавление информации». Форма содержит 5 надписей (TLabel), 5 текстовых полей (TEdit), кнопка (TButton). При нажатии кнопки подтверждения «ОК» появляется окно с уведомлением о внесении информации в базу (Информация внесена в базу) (функция ShowMessage) [6]. При добавлении новых сотрудников в базу сотрудников добавляется еще один столбец (рис.9).
При выборе подпункта «Информация о клиентах» на экран выводится форма «Информация о клиентах», которая содержит информацию о покупателях фирмы. Форма содержит таблицу (TStringGrid). Таблица содержит строки «ФИО», «e-mail», «Паспортные данные», «Телефон» и изначально содержит информацию только о 2-х клиентах фирмы (рис.10).
Рис.9. «Добавление информации»
Рис.10. «Информация о клиентах»
При выборе подпункта «Поиск по клиентам» выводится форма «Поиск». Форма содержит надпись (TLabel), поле (TEdit), кнопку (TButton), поле (TMemo). Форма содержит надпись (TLabel), поле (TEdit), кнопку (TButton), поле (TMemo). Для поиска сотрудника в текстовое поле типа TEdit вводится фамилия клиента. При нажатии кнопки «Поиск» в поле ТМемо выводится информация о найденных клиентах: Фамилия Имя Отчество и телефон. При выборе подпункта «Добавить клиента» появляется форма «Добавление информации». Форма содержит 4 надписей (TLabel), 4 текстовых полей (TEdit), кнопка (TButton). При выборе подпункта «База продаж» на экран выводится форма «Продажи», которая содержит информацию о совершенных продажах. Форма содержит таблицу (TStringGrid) [7]. Таблица содержит строки «Название ПО», «Количество», «Сотрудник», «№ договора», «Сумма», «Дата». При добавлении новой инф-мации в таблицу добавляется столбец. И третий компонент - Технологическая архитектура (рис.11).