Uploaded by Максим

Отчет по проектной работе Грязнов АВ

advertisement
МИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ, СВЯЗИ И МАССОВЫХ
КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ
Ордена Трудового Красного Знамени федеральное государственное
образовательное бюджетное учреждение высшего образования
МОСКОВСКИЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ СВЯЗИ И
ИНФОРМАТИКИ
Кафедра Математической кибернетики и информационных технологий
Проект по дисциплине «Технологии разработки программного обеспечения»
на тему:
«Проектирование и разработка автоматизированной системы управления
продажами автомобилей в компании «Автоальянс»
Студент:
А.В. Грязнов
Преподаватель: к.т.н. доцент
И.И. Ковтун
Москва 2022
Оглавление
Введение ..................................................................................................................................... 3
1.1.
Исследование процесса реализации автомобилей .................................................... 5
1.3.
Формирование цели и задач проекта, определение стратегиидостижения
поставленной цели ..................................................................................................... 15
2.
Разработка концепции автоматизации ..................................................................... 17
2.1.
Определение методов решения выявленных проблем ........................................... 17
2.2.
Определение автоматизированных рабочих мест................................................... 18
2.3.
Описание функций выделенных АРМ ..................................................................... 18
3.
Разработка структуры информации ......................................................................... 20
3.1.
Разработка логической структуры данных .............................................................. 20
3.2.
Разработка физической структуры данных ............................................................. 21
3.3.
Структура таблиц ....................................................................................................... 21
3.4.
Разработка контрольного примера ........................................................................... 27
4.
Разработка программного обеспечения ................................................................... 29
4.1.
Анализ и выбор систем программирования ............................................................ 29
4.2.
Разработка алгоритмов и текстов программ............................................................ 32
4.4.
Разработка запросов к базе данных ............................................................................ 42
5.
Выводы и результаты ................................................................................................ 46
Источники информации .......................................................................................................... 47
ПРИЛОЖЕНИЯ ....................................................................................................................... 49
Договор купли-продажи между клиентом и автосалоном ................................................... 49
Введение
В
настоящее
автосалонами
время
компании
количество
«Автоальянс»
информации,
предоставляемой
увеличивается.
Работники
рассматриваемой компании сталкиваются с проблемой учета множества данных,
связанных с продажей автомобиля. Программы для работы с электронными
таблицами, такие как Microsoft Excel, LibreOffice Calc и им подобные, уже давно
начали терять свою актуальность. Сейчас компаниям требуются более
эффективное, гибкое и комплексное решение, направленное на упрощение
ручной работы по хранении и обработки больших массивов данных. Также одной
из причин автоматизации является минимизация так называемого человеческого
фактора, который может стать причиной появления проблем различного
масштаба и характера.
Поэтому целью данной проектной работы является автоматизация
управления продажами автомобилей в компании «Автоальянс». Работа состоит
из нескольких глав, описанных ниже, и заканчивается выводами и результатами
о проделанной работе.
В первой главе выделяется и, в последствии, рассматривается общая
проблема процесса продажи автомобилей. Также описывается основная
деятельность сотрудников автосалонов и на основании этих процессов
становятся очевидны основные проблемы, которые предстоит решить в ходе
проектной работы.
Во второй главе разрабатывается схема движения материальных,
финансовых и информационных потоков. Строится ещё одна модель,
позволяющая решить проблемы, относящиеся к первой главе. Разрабатываются
автоматизированные рабочие места (АРМ) сотрудников. Назначаются основные
задачи для каждого сотрудника.
3
В третьей главе проектируется логическая и физическая структуры данных.
На их основании строится непосредственно база данных.
В четвертой главе проводится анализ и принимается решение о выборе
программного обеспечения. Разрабатываются алгоритмы и код запросов.
Предоставляется код для построения таблиц, запросов и отчетов к базе данных.
В заключении описаны выводы и результаты, основными из которых
являются:
 проанализирован основной бизнес-процесс компании. Были выявлен
слабые места. Предложен вариант наиболее рационального решения по
автоматизации процесса продажи;
 проанализировано и выбрано соответствующее программное обеспечение,
СУБД. Построена логическая и физическая структура данных по
автоматизации процесса продажи автомобилей компанией «Автоальянс»;
 на основании спроектированной системы производства рекомендованы к
внедрению автоматизированные рабочие места и их задачи;
В
итоге
разработанная
автоматизированная
система
управления
продажами автомобилей позволяет существенно снизить вероятность ошибок
при заполнении документов, а также сокращает трудозатраты персонала, что
способствует увеличению производительности компании.
4
1. Анализ проблемы процесса продажи автомобилей компании
«Автоальянс»
1.1. Исследование процесса реализации автомобилей
Коммерческая деятельность автосалона «Автоальянс» регулируется
гражданским кодексом РФ (ГК РФ) от 30 ноября 1994 года N 51-ФЗ,
постановлением правительства РФ от 11 апреля 2001 года “Об утверждении
правил оказания услуг (выполнения работ) по техническому обслуживанию и
ремонту автомототранспортных средств”, а также законом РФ от 7 февраля 1992
г. N 2300-1 “О защите прав потребителей”.
Гражданский кодекс описывает содержимое договора купли-продажи,
требования к качеству товара, исчисление гарантийного срока на товар,
ответственность продавца в случае изъятия товара у покупателя и последствия
товара ненадлежащего качества.
Ранее продажу автомобилей также регулировало постановление от 19
января 1998 года N 55 “Об утверждении Правил продажи отдельных видов
товаров,
перечня
товаров
длительного
пользования,
на
которые
не
распространяется требование покупателя о безвозмездном предоставлении ему
на
период
ремонта
или
замены
аналогичного
товара,
и
перечня
непродовольственных товаров надлежащего качества, не подлежащих возврату
или обмену на аналогичный товар других размера, формы, габарита, фасона,
расцветки или комплектации”, но оно утратило силу 1 января 2021 года на
основании постановления Правительства Российской Федерации от 11 июля 2020
года N 1036.
Главным бизнес-процессом автосалона является непосредственно продажа
автомобилей. В первую очередь, для реализации автомобилей необходимы
поставщики. Соответственно необходимо составить план закупок и заключить
5
договоры с поставщиками авто. Затем на основании заключенных договоров
происходит формирование каталога автомобилей и затем происходит процесс
сбыта автомобилей покупателям.
Генеральный директор компании вместе с начальником отдела продаж,
финансовым директором и главным бухгалтером составляют план закупок
автомобилей. При составлении плана закупок, критически важным фактором
является исследование спроса среди покупателей на конкретные модели
автомобилей. Ответственность, связанная с аналитикой данных, лежит на
начальнике отдела продаж. От этого шага напрямую зависит итоговое
содержание каталога автомобилей.
Затем генеральный директор заключает договоры с контрагентами на
поставку
автомобилей,
которые
способны
предоставить
необходимые
автомобили в количестве, указанном в плане закупок.
Далее начальник отдела продаж формирует список автомобилей,
доступных к продаже, на основании заключенных договоров. Результатом
данного процесса является каталог автомобилей.
В итоге клиенты автосервиса используют сформированный каталог
автомобилей для выбора подходящего им средства передвижения. В процессе
сбыта автомобилей участвуют менеджер по продажам, кассир и водитель
перегонщик в случае, если выбранный клиентом автомобиль находится за
пределами автосалона, например – на складе.
Визуализация вышеописанного представлена в виде диаграммы в нотации
IDEF0 на рисунке 1.
6
Рисунок 1 – Основной бизнес-процесс компании «Автоальянс» - реализация
автомобилей
Заказ клиента на покупку автомобиля и поставщик автомобилей являются
входными данными процесса.
Процесс управляется: законом РФ «О защите прав потребителей» от 7
февраля 1992 года N 2300-1, гражданским кодексом РФ (ГК РФ) от 30 ноября
1994 года N 51-ФЗ, Постановлением правительства РФ от 11 апреля 2001 года
«Об утверждении правил оказания услуг (выполнения работ) по техническому
обслуживанию и ремонту автомототранспортных средств», а также федеральным
законом №196-ФЗ «О безопасности дорожного движения» от 15 ноября 1995
года.
7
Необходимыми
ресурсами
для
выполнения
процесса
являются:
генеральный директор, начальник отдела продаж, финансовый директор,
главный бухгалтер, менеджер по продажам, кассир и водитель перегонщик.
Результатом процесса является выполненный заказ (совершенная клиентом
покупка автомобиля) и отчет о продаже.
В результате декомпозиции основного бизнес-процесса были выделены
четыре процесса: составление плана закупок автомобилей, заключение договоров
с поставщиками, формирование каталога автомобилей, сбыт автомобилей.
Рассмотрим подробнее каждый из них.
Составление плана закупок автомобилей:
Начальник отдела продаж анализирует данные о продажах автомобилей
различных моделей. Исходя из полученных аналитических результатов, он при
помощи финансового директора составляет план закупок автомобилей.
Сформированный план направляется на рассмотрение генеральному директору.
В случае, если его все устраивает, план отсылается главному бухгалтеру для
фиксации в бухгалтерской информационной системе.
Заключение договоров с поставщиками:
Генеральный директор заключает договоры поставки с поставщиками в
соответствии с сформированным планом закупок. Договор поставки является
одним из видов договора купли-продажи и регулируется ГК РФ.
Формирование каталога автомобилей:
Начальник отдела продаж формирует каталог автомобилей, доступных для
продажи, исходя из заключенных договоров с поставщиками. Созданный каталог
направляется на рассмотрение генеральному директору для одобрения.
8
Сбыт автомобилей:
Менеджер по продажам рассматривает заказ клиента на покупку
автомобиля из каталога. Менеджер может получить заявку, как от клиента,
который физически пришел в автосервис, так и от клиента, который решил
оставить заявку на веб-сайте компании. На основе заявки формируется договор
купли-продажи с клиентом. Договор регулируется непосредственно ГК РФ.
Затем
осуществляется
непосредственно
продажа
автомобиля,
которая
регулируется следующими нормативно-правовыми актами:
 постановление правительства РФ от 11 апреля 2001 года «Об утверждении
правил
оказания
услуг
(выполнения
работ)
по
техническому
обслуживанию и ремонту автомототранспортных средств»;
 гражданский кодекс РФ (ГК РФ) от 30 ноября 1994 года N 51-ФЗ;
 закон РФ «О защите прав потребителей» от 7 февраля 1992 года N 2300-1;
 федеральный закон №196-ФЗ «О безопасности дорожного движения» от 15
ноября 1995 года.
За проведение оплаты отвечает кассир автосалона. Если желаемый клиентом
автомобиль находится за пределами автосалона, то водитель перегонщик должен
доставить автомобиль к автосалону, в котором была совершена покупка. В
результате продажи формируется отчет о продаже.
Важно отметить, что, естественно, не каждая продажа автомобиля требует
составления плана закупок, заключения договоров и формирование каталога с
автомобилями. Обычно это происходит с определенным промежутком,
например, раз в квартал. Но эти процессы напрямую связанны с реализацией
автомобилей.
На рисунке 2 представлен результат декомпозиции основного бизнеспроцесса «Реализация автомобилей» в нотации IDEF0.
9
Рисунок 2 – Декомпозиция процесса «Реализация автомобилей»
На рассматриваемой диаграмме показан подробный процесс реализации
автомобилей. Изначально составляется план закупок автомобилей. Входными
данными является заказ клиента на покупку автомобиля и поставщик
автомобилей.
Ресурсами необходимыми для выполнения являются: начальник отдела
продаж, финансовый директор, генеральный директор, главный бухгалтер.
Результатом процесса является план закупок.
После составления плана закупок наступает следующий процесс
«Заключение договоров с поставщиками». Входными данными является
полученный из предыдущего процесса план закупок.
10
Процесс управляется договором поставки (регулируется ГК РФ) и
гражданским кодексом РФ (ГК РФ) от 30 ноября 1994 года N 51-ФЗ.
Необходимым для выполнения ресурсом является генеральный директор.
Результатом процесса являются договор(-ы) с поставщиками(-ом).
Следующим процессом является формирование каталога автомобилей.
Входными данными являются заключенные договоры поставки, полученные из
прошлого процесса.
Ресурсами необходимыми для выполнения являются: начальник отдела
продаж и генеральный директор.
Результатом процессам является каталог автомобилей.
Затем следует процесс сбыта автомобилей. Входными данными заказ
клиента на покупку автомобиля и каталог автомобилей.
Процесс управляется: договором купли-продажи (регламентируется в п. 1.
ст. 454 ГК РФ), постановлением правительства РФ от 11 апреля 2001 года «Об
утверждении правил оказания услуг (выполнения работ) по техническому
обслуживанию и ремонту автомототранспортных средств», гражданским
кодексом РФ (ГК РФ) от 30 ноября 1994 года N 51-ФЗ, законом РФ «О защите
прав потребителей» от 7 февраля 1992 года N 2300-1, федеральным законом
№196-ФЗ «О безопасности дорожного движения» от 15 ноября 1995 года.
Необходимым для выполнения ресурсами являются: менеджер по
продажам, кассир. Опциональным ресурсом является водитель перегонщик.
Результатом является выполненный заказ и отчет о продаже.
Рассмотрим результаты декомпозиции процесса сбыта автомобилей.
Данный процесс состоит из трех процессов.
11
Первый процесс – принятие заявки на покупку автомобиля. Менеджер
принимает заявку клиента при личном контакте или через интернет. В
зависимости от способа, который использовал клиент. В заявке фигурируют
личные данные о клиенте, выбранный им автомобиль из каталога и его
конфигурация.
Второй процесс – оформление договора купли-продажи. Используя
заполненную заявку, менеджер по продажам оформляет договор между клиентом
и автосервисом. Процесс составления договора регламентируется п. 1. ст. 454 ГК
РФ.
Третий процесс – продажа автомобиля. Клиент оплачивает кассиру сумму,
указанную в договоре, и получает ключи от купленного автомобиля. Если
желаемый клиентом автомобиль находится за пределами автосалона, то водитель
перегонщик должен доставить автомобиль к автосалону, в котором была
совершена покупка. Процесс регулируется федеральным законом №196-ФЗ «О
безопасности дорожного движения» от 15 ноября 1995 года, постановлением
правительства РФ от 11 апреля 2001 года «Об утверждении правил оказания
услуг (выполнения работ) по техническому обслуживанию и ремонту
автомототранспортных средств», гражданским кодексом РФ (ГК РФ) от 30
ноября 1994 года N 51-ФЗ.
На рисунке 3 представлен результат декомпозиции процесса «Сбыт
автомобилей» в нотации IDEF0.
12
Рисунок 3 – Декомпозиция процесса «Сбыт автомобилей»
Первым процессом является принятие заявки клиента. На вход поступают
каталог автомобилей и заказ клиента на покупку автомобиля.
Ресурсом, необходимым для выполнения является менеджер по продажам.
Результатом процесса является заполненная заявка.
Далее происходит оформление договора. На вход поступает заполненная
заявка.
Процесс управляется договором купли-продажи (регулируется п. 1. ст. 454
ГК РФ).
Ресурсом, необходимым для выполнения является менеджер по продажам.
13
Результатом процесса является договор на покупку.
Затем в силу вступает процесс непосредственно продажи автомобиля. На
вход поступает договор купли-продажи.
Процесс управляется: федеральным законом №196-ФЗ «О безопасности
дорожного движения» от 15 ноября 1995 года, постановлением правительства РФ
от 11 апреля 2001 года «Об утверждении правил оказания услуг (выполнения
работ) по техническому обслуживанию и ремонту автомототранспортных
средств», гражданским кодексом РФ (ГК РФ) от 30 ноября 1994 года N 51-ФЗ.
Ресурсами, необходимыми для выполнения являются менеджер по
продажам, кассир, водитель перегонщик.
Результатом процесса являются: выполненный заказ и отчет о продаже.
1.2. Проблемы реализации автомобилей в автосалонах компании
«Автоальянс»
Анализ процесса реализации автомобилей в автосалонах компании
«Автоальянс» выявил следующие проблемы:
1. Отсутствие единой системы отчетности и хранения данных.
Так как нет единой информационной системы, в которой могут работать
несколько пользователей одновременно в процессе работы тратится много
времени на структурирование и дублирование данных. Следовательно, при
составлении плана закупок, начальник отдела продаж должен вручную находить
и сортировать аналитические данные. Также следует отметить, что отсутствуют
прямые связи между документами.
2. Человеческий фактор при ручном заполнении документов.
14
Из-за того, что при заполнении договоров или отчетов в отдельных файлах
нет никакой проверки и сопоставления данных, возникает вероятность
совершить ошибку при заполнении документов. Например, менеджер по
продажам может случайно совершить ошибку при заполнении договора и указать
другую конфигурацию покупаемого клиентом автомобиля.
3. Рутинная и ручная работа
Большое количество трудозатрат на подготовку договоров и отчетов по
продажам.
4. Сложность контроля за ходом выполнения работ.
У директоров нет возможности отслеживать прогресс работы процессов в
режиме реального времени, что приводит к лишним трудозатратам со стороны
нижестоящего по иерархии персонала.
1.3. Формирование цели и задач проекта, определение стратегии
достижения поставленной цели
Целью проекта является разработка автоматической системы управления
(в дальнейшем – АСУ) продажами автомобилей компанией «Автоальянс», что
позволит организации уменьшить количество времени, затрачиваемое на ведение
отчетности, а также значительно уменьшить вероятность ошибок при
составлении сопроводительных документов.
Для достижения поставленной цели определим следующие задачи:
 проведение анализа предметной области компании «Автоальянс»,
изучение
процесса
работы
данной
компании
соответствующей концепции будущей АСУ;
15
и
разработка
 проведение анализа проблем процесса продажи автомобилей
компанией «Автоальянс», выявление проблем, возникающих в
результате неэффективного управления и их решение с помощью
разрабатываемой АСУ;
 разработка схемы движения информационных, материальных и
финансовых
потоков,
отображающей
в
наглядной
форме
представление процесса продаж автомобилей;
 определение
автоматизированных
рабочих
мест
компании
«Автоальянс» и регламента взаимодействия с АСУ;
 разработка логической и физической модели БД;
 реализация БД на выбранной СУБД, а также представление кода
необходимых объектов на языке SQL.
16
2. Разработка концепции автоматизации
2.1. Определение методов решения выявленных проблем
Проблемы будем решать изменениями в организации процесса. На первом
этапе кратко определим шаги решения проблем:
1. Отсутствие единой системы отчетности и хранения данных.
Создать приложение, в котором персонал, ответственный за фиксирование
информации, касательно процесса продажи автомобилей, может независимо друг
от друга вводить имеющиеся у них данные.
2. Человеческий фактор при ручном заполнении документов.
Для уменьшения ошибок за счет человеческого фактора необходимо
вносимые данные сопоставлять с уже имеющимися и при возникновении
коллизии оповещать об этом пользователя программы.
3. Рутинная и ручная работа
Автоматизировать ручные операции, через СУБД подключаемую к базе
данных. Это позволит значительно сократить время выполнения различных
процессов.
4. Сложность контроля за ходом выполнения работ.
В приложении необходимо предусмотреть возможность для директоров
иметь доступ ко всей информации, которую внесли в систему их подчиненные.
А также к просмотру отчетов, а также возможность удаленно подтверждать или
заверять документы.
17
2.2. Определение автоматизированных рабочих мест
Для управления процессом продажи автомобилей, в системе будут
выделены следующие автоматизированные рабочие места (АРМ):
 АРМ генерального директора;
 АРМ финансового директора;
 АРМ начальника отдела продаж;
 АРМ менеджера по продажам;
 АРМ кассира.
2.3. Описание функций выделенных АРМ
АРМ генерального директора обеспечивает:
 контроль правильности заполнения документов;
 одобрение или отклонение документов;
 заверение документов;
 доступ ко всей базе данных (на чтение).
АРМ финансового директора обеспечивает:
 доступ к отчетам по продажам;
 доступ к планам закупок автомобилей;
 доступ к заключенным договорам с поставщиками автомобилей.
АРМ начальника отдела продаж обеспечивает:
 формирование статистических данных на основе отчетов по продажам;
 доступ к планам закупок автомобилей;
 доступ к базе клиентов компании;
 доступ к каталогу автомобилей;
АРМ менеджера по продажам обеспечивает:
18
 доступ к базе клиентов компании;
 доступ к отчетам по продажам;
 доступ к договорам купли-продажи с клиентами
АРМ кассира обеспечивает:
 формирование отчетов по продажам автомобилей;
19
3. Разработка структуры информации
3.1. Разработка логической структуры данных
Разработаем
структуру
хранения
информации.
На
основании
предложенной структуры будет проектироваться база данных. С этой целью
выделим объекты и связи между ними. Анализ показывает, что в нашей системе
выделяются такие объекты как: банк, поставщик, договор поставки, марка авто,
автомобиль, тип коробки передач, тип привода, вид топлива, формфактор,
конфигурация авто, поставленный автомобиль, автомобиль на продажу, услуга,
дополнительная услуга, заявка на покупку авто, договор купли-продажи.
На рисунке 4 изображена спроектированная логическая структура данных.
Рисунок 4 – Логическая структура данных
На данной схеме можно увидеть список объектов, необходимых для
реализации физической модели данных.
20
3.2. Разработка физической структуры данных
Разработанные объекты в логической модели преобразуем в физическую
модель. Физическая структура данных представлена на рисунке 5.
Рисунок 5 – Физическая структура данных
На данной модели отображаются таблицы, содержащие в себе первичные
и внешние ключи, которые необходимы для построения взаимосвязи между
объектами, и остальные, существенные поля таблиц.
3.3. Структура таблиц
Структура таблицы включает что каждый объект должен содержать
определенный тип данных. Опишем структуру таблиц:
Bank
Сущность содержит информацию о банках, которые обслуживают
поставщиков.
Название поля
Тип данных
Пояснение
Ключ
bank_id
integer
Первичный ключ
PK
21
Название поля
Тип данных
Пояснение
name
text
Название банка
bik
integer
БИК
inn
integer
ИНН
kpp
integer
КПП
Ключ
Dealer
Сущность содержит информацию о поставщиках автомобилей.
Название поля
Тип данных
Пояснение
Ключ
dealer_id
integer
Первичный ключ
PK
name
text
address
text
phone_number
text
Номер телефона
bank_number
text
Банковский счет
bank_id
integer
Обслуживающий банк
Название компании
поставщика
Юридический адрес
поставщика
FK
Supply contract
Сущность содержит договоры на поставку автомобилей.
Название поля
Тип данных
Пояснение
Ключ
supply_contract_id
integer
Первичный ключ
PK
contract_number
text
Номер договора
total
money
Сумма
dealer_id
integer
Поставщик
delivery_date
date
Дата поставки
22
FK
Car Configuration
Сущность содержит данные о поставляемых автомобилях.
Название поля
Тип данных
Пояснение
Ключ
car_configuration_id
integer
Первичный ключ
PK
car_id
integer
Автомобиль
FK
engine
numeric
Двигатель
horsepower
integer
gearbox_name
text
year
integer
Год выпуска
price
money
Закупочная цена
fuel_usage
numeric
Расход топлива
body_color
text
Закупочная цена
interior_material
text
Расход топлива
engine_displacement
integer
Объем двигателя
gearbox_type
text
Тип коробки передач
FK
drive_type
text
Тип привода
FK
body_type
text
Формфактор
FK
fuel_type
text
Вид топлива
FK
Количество
лошадиных сил
Название коробки
передач
Gearbox Type
Содержит названия типов коробок передач.
Название поля
Тип данных
Пояснение
Ключ
name
text
Первичный ключ
PK
Drive Type
Содержит названия типов привода.
23
Название поля
Тип данных
Пояснение
Ключ
name
text
Первичный ключ
PK
Fuel Type
Содержит названия видов топлива.
Название поля
Тип данных
Пояснение
Ключ
name
text
Первичный ключ
PK
Body Type
Содержит названия формфакторов автомобилей.
Название поля
Тип данных
Пояснение
Ключ
name
text
Первичный ключ
PK
Car
Содержит данные о моделях автомобилей.
Название поля
Тип данных
Пояснение
Ключ
car_id
integer
Первичный ключ
PK
model
text
Модель
generation
text
Поколение
brand
text
Марка авто
FK
Brand
Содержит данные о марках авто.
Название поля
Тип данных
Пояснение
Ключ
name
text
Первичный ключ
PK
24
Supply Car
Содержит данные о поставленных автомобилях.
Название поля
Тип данных
Пояснение
Ключ
supply_car_id
integer
Первичный ключ
PK
supply_contract_id
integer
Контракт на поставку
FK
car_configuration_id
integer
Конфигурация авто
FK
Car to sell
Содержит данные об автомобилях на продажу
Название поля
Тип данных
Пояснение
Ключ
car_to_sell_id
integer
Первичный ключ
PK
supply_car_id
integer
price
money
Поставленный
автомобиль
FK
Цена
Client
Содержит данные о клиентах.
Название поля
Тип данных
Пояснение
Ключ
client_id
integer
Первичный ключ
PK
first_name
text
Имя
last_name
text
Фамилия
patronymic
text
Отчество
phone_number
text
Номер телефона
Manager
Содержит данные о менеджерах по продажам.
25
Название поля
Тип данных
Пояснение
Ключ
manager_id
integer
Первичный ключ
PK
first_name
text
Имя
last_name
text
Фамилия
patronymic
text
Отчество
Purchase Request
Содержит данные о запросах на покупку.
Название поля
Тип данных
Пояснение
Ключ
purchase_request_id
integer
Первичный ключ
PK
car_to_sell_id
integer
client_id
integer
manager_id
integer
Выбранная клиентом
машина
Клиент
Менеджер по
продажам
FK
FK
FK
Additional Service
Содержит данные о дополнительных услугах, которые могут быть оказаны
клиенту при продаже машины.
Название поля
Тип данных
Пояснение
Ключ
additional_service_id
integer
Первичный ключ
PK
service_id
integer
Услуга
FK
purchase_request_id
integer
Запрос на покупку
FK
26
Service
Содержит данные о конкретных услугах.
Название поля
Тип данных
Пояснение
Ключ
service_id
integer
Первичный ключ
PK
name
text
Название услуги
cost
money
Стоимость
Sale Contract
Содержит данные о договорах купли-продажи автомобилей клиентам.
Название поля
Тип данных
Пояснение
Ключ
sale_contract_id
integer
Первичный ключ
PK
contract_number
text
Номер договора
total
money
Стоимость
purchase_request_id
integer
Запрос на покупку
FK
3.4. Разработка контрольного примера
Для проверки возможности представлять информацию о проведенной
рыболовецкой деятельности в спроектированной структуре данных, разработаем
контрольный пример.
Данный пример содержит: список конфигураций автомобилей, список
договоров купли-продажи, список поставщиков, клиентов компании. Примеры
представлены на рисунках 6, 7 и 8.
27
Рисунок 6 – Список конфигураций автомобилей
Рисунок 7 – Список договоров купли-продажи
Рисунок 8 – Список поставщиков
Рисунок 9 – Список клиентов
28
4. Разработка программного обеспечения
4.1. Анализ и выбор систем программирования
Выбор системы управления баз данных (СУБД) представляет собой
сложную много параметрическую задачу и является одним из важных этапов при
разработке в том числе и Автоматизированных информационных систем,
содержащих в себе базы данных.
Наиболее правильный подход при выборе СУБД основан на оценке того, в
какой мере существующие системы удовлетворяют как текущим, так и будущим
потребностям создаваемого проекта информационной системы. Существует
несколько основных критериев выбора СУБД:
 тип СУБД (реляционные, документные, графовые и т. д.)
 особенности архитектуры;
 производительность (количество транзакций в секунду);
 надежность;
 системные требования к рабочей среде.
Вопрос об использовании того или иного типа СУБД должен решаться на
начальном этапе проектирования информационной системы. Важным критерием
является средства поиска, поддерживаемые типы данных, заложенные в систему,
а также наличие и возможность расширение типов.
Рассмотрим популярные решения СУБД на рынке.
Название
Oracle Database
Достоинства
Недостатки
 надежность;
 отличная
 очень
техническая
поддержка (за пределами
РФ);
29
стоимость
высокая
высокая
продукта
относительно конкурентов;
Название
Достоинства
Недостатки
 включает в себя функционал  большое потребление системных
по работе с большими БД
ресурсов;
 с недавнего времени отсутствует
возможность
стать
клиентом
компании, если твоя компания
юридически
находится
на
территории РФ, что аннулирует
преимущество
технической
поддержки.
MySQL
 распространяется
 для бесплатной версии доступна
бесплатно;
только платная поддержка;
 поддерживает
набор  отсутствие некоторых полезных
пользовательских
функций,
интерфейсов;
конкурентов,
которые
есть
вроде
у
создание
инкрементных резервных копий;
 отсутствует
встроенная
поддержка XML или OLAP.
Microsoft
Server
SQL  продукт
в  большая
прост
использовании;
возможность регулировать и
использование
системных ресурсов;
уровни  с недавнего времени отсутствует
отслеживать
производительности.
PostgreSQL
для
юридических лиц;
предоставляет  нерациональное
 СУБД
 отличная
стоимость
поддержка
возможность
со
стать
клиентом
компании, если твоя компания
стороны других продуктов
юридически находится на
компании Microsoft
территории РФ.
 является масштабируемым  Скорость работы может падать во
решением
и
позволяет
время
проведения
пакетных
обрабатывать терабайты
операций или выполнения
данных;
запросов чтения
30
Название
Достоинства
Недостатки
 полностью бесплатная;
 поддерживает формат json;
 существует
множество
предопределенных
функций;
 архитектура
СУБД,
состоящая
из
элементов
–
отдельных
схем.
Это
открывает дополнительные
возможности
для
проектирования БД
Исходя из приведенных достоинств и недостатков подведем итоги:
 Oracle Database. Идеально подходит для крупных организаций, которые
работают с огромными базами данных. Но в данный момент продукт
невозможно приобрести легальными способами на территории РФ.
 MySQL. Подходит для организаций, которым требуется надежный,
бесплатный инструмент, но они готовы пожертвовать технической
поддержкой и смириться с недостающим функционалом;
 Microsoft SQL Server. Идеально подходит для: крупных организаций,
которые уже используют ряд продуктов Microsoft. Но в данный момент
продукт невозможно приобрести легальными способами на территории
РФ;
 PostgreSQL. Идеально подходит для организаций с ограниченным
бюджетом в случае, если им требуется бесплатное и многофункциональное
решение.
31
В процессе проведения сравнительного анализ существующих СУБД, был
сделан следующий вывод, что СУБД PostgreSQL обладает рядом преимуществ
по сравнению с другим СУБД по критериям, выдвинутым заказчиком проекта.
В качестве графической оболочки для работы с PosgreSQL используется
PgAdmin 4, которая идет в комплекте с продуктом.
4.2. Разработка алгоритмов и текстов программ
Ниже приведен код для создания таблиц БД на языке SQL:
Таблица additional service (дополнительные услуги):
CREATE TABLE IF NOT EXISTS public.additional_service
(
additional_service_id integer NOT NULL,
service_id integer NOT NULL,
purchase_request_id integer NOT NULL,
CONSTRAINT additional_service_pkey PRIMARY KEY (additional_service_id),
CONSTRAINT purchase_request_id FOREIGN KEY (purchase_request_id)
REFERENCES public.purchase_request (purchase_request_id) MATCH SIMPLE,
CONSTRAINT service_id FOREIGN KEY (service_id)
REFERENCES public.service (service_id) MATCH SIMPLE
);
Таблица bank (банк):
CREATE TABLE IF NOT EXISTS public.bank
(
bank_id integer NOT NULL,
name text COLLATE pg_catalog."default" NOT NULL,
bik integer NOT NULL,
inn integer NOT NULL,
32
kpp integer NOT NULL,
CONSTRAINT bank_pkey PRIMARY KEY (bank_id)
);
Таблица body type (формфактор автомобиля):
CREATE TABLE IF NOT EXISTS public.body_type
(
name text COLLATE pg_catalog."default" NOT NULL,
CONSTRAINT body_type_pkey PRIMARY KEY (name)
);
Таблица brand (марка автомобиля):
CREATE TABLE IF NOT EXISTS public.brand
(
name text COLLATE pg_catalog."default" NOT NULL,
CONSTRAINT brand_pkey PRIMARY KEY (name)
);
Таблица car (автомобиль):
CREATE TABLE IF NOT EXISTS public.car
(
car_id integer NOT NULL DEFAULT nextval('car_car_id_seq'::regclass),
model text COLLATE pg_catalog."default" NOT NULL,
generation text COLLATE pg_catalog."default" NOT NULL,
brand text COLLATE pg_catalog."default" NOT NULL,
CONSTRAINT car_pkey PRIMARY KEY (car_id),
CONSTRAINT fk_brand FOREIGN KEY (brand)
REFERENCES public.brand (name) MATCH SIMPLE
);
Таблица car_configuration (конфигурация автомобиля):
33
CREATE TABLE IF NOT EXISTS public.car_configuration
(
car_configuration_id integer NOT NULL DEFAULT
nextval('car_to_sale_car_to_sale_id_seq'::regclass),
car_id integer NOT NULL DEFAULT nextval('car_to_sale_car_id_seq'::regclass),
engine numeric NOT NULL,
horsepower integer NOT NULL,
gearbox_name text COLLATE pg_catalog."default",
year integer NOT NULL,
price money NOT NULL,
fuel_usage numeric NOT NULL,
body_color text COLLATE pg_catalog."default" NOT NULL,
interior_material text COLLATE pg_catalog."default" NOT NULL,
engine_displacement integer NOT NULL,
gearbox_type text COLLATE pg_catalog."default" NOT NULL,
drive_type text COLLATE pg_catalog."default" NOT NULL,
body_type text COLLATE pg_catalog."default" NOT NULL,
fuel_type text COLLATE pg_catalog."default" NOT NULL,
CONSTRAINT car_to_sale_pkey PRIMARY KEY (car_configuration_id),
CONSTRAINT car_id FOREIGN KEY (car_configuration_id)
REFERENCES public.car (car_id) MATCH SIMPLE,
CONSTRAINT fk_body_type FOREIGN KEY (body_type)
REFERENCES public.body_type (name) MATCH SIMPLE,
CONSTRAINT fk_drive_type FOREIGN KEY (drive_type)
REFERENCES public.drive_type (name) MATCH SIMPLE,
CONSTRAINT fk_fuel_type FOREIGN KEY (fuel_type)
REFERENCES public.fuel_type (name) MATCH SIMPLE,
CONSTRAINT fk_gearbox_type FOREIGN KEY (gearbox_type)
REFERENCES public.gearbox_type (name) MATCH SIMPLE
);
34
Таблица car_to_sell (автомобиль на продажу):
CREATE TABLE IF NOT EXISTS public.car_to_sell
(
car_to_sell_id integer NOT NULL,
supply_car_id integer NOT NULL,
price money NOT NULL,
CONSTRAINT car_to_sell_pkey PRIMARY KEY (car_to_sell_id),
CONSTRAINT fk_supply_car_id FOREIGN KEY (supply_car_id)
REFERENCES public.supply_car (supply_car_id) MATCH SIMPLE
);
Таблица client (клиент):
CREATE TABLE IF NOT EXISTS public.client
(
client_id integer NOT NULL DEFAULT nextval('client_client_id_seq'::regclass),
first_name text COLLATE pg_catalog."default" NOT NULL,
last_name text COLLATE pg_catalog."default" NOT NULL,
patronymic text COLLATE pg_catalog."default",
phone_number text COLLATE pg_catalog."default",
CONSTRAINT client_pkey PRIMARY KEY (client_id)
);
Таблица dealer (поставщик):
CREATE TABLE IF NOT EXISTS public.dealer
(
dealer_id integer NOT NULL DEFAULT
nextval('dealership_dealership_id_seq'::regclass),
name text COLLATE pg_catalog."default" NOT NULL,
address text COLLATE pg_catalog."default" NOT NULL,
phone_number text COLLATE pg_catalog."default" NOT NULL,
bank_number text COLLATE pg_catalog."default" NOT NULL,
35
bank_id integer NOT NULL,
CONSTRAINT dealership_pkey PRIMARY KEY (dealer_id),
CONSTRAINT fk_bank_id FOREIGN KEY (bank_id)
REFERENCES public.bank (bank_id) MATCH SIMPLE
ON UPDATE NO ACTION
ON DELETE NO ACTION
NOT VALID
);
Таблица drive_type (тип привода):
CREATE TABLE IF NOT EXISTS public.drive_type
(
name text COLLATE pg_catalog."default" NOT NULL,
CONSTRAINT drive_type_pkey PRIMARY KEY (name)
)
Таблица fuel_type (вид топлива):
CREATE TABLE IF NOT EXISTS public.fuel_type
(
name text COLLATE pg_catalog."default" NOT NULL,
CONSTRAINT fuel_type_pkey PRIMARY KEY (name)
)
Таблица gearbox_type (тип трансмиссии):
CREATE TABLE IF NOT EXISTS public.gearbox_type
(
name text COLLATE pg_catalog."default" NOT NULL,
CONSTRAINT gearbox_type_pkey PRIMARY KEY (name)
)
36
Таблица manager (менеджер):
CREATE TABLE IF NOT EXISTS public.manager
(
manager_id integer NOT NULL DEFAULT
nextval('managers_managers_id_seq'::regclass),
first_name text COLLATE pg_catalog."default" NOT NULL,
last_name text COLLATE pg_catalog."default" NOT NULL,
patronymic text COLLATE pg_catalog."default",
CONSTRAINT managers_pkey PRIMARY KEY (manager_id)
);
Таблица purchase request (запрос на покупку):
CREATE TABLE IF NOT EXISTS public.purchase_request
(
purchase_request_id integer NOT NULL,
car_to_sell_id integer NOT NULL,
client_id integer NOT NULL,
manager_id integer NOT NULL,
CONSTRAINT purchase_request_pkey PRIMARY KEY (purchase_request_id),
CONSTRAINT car_to_sell_id FOREIGN KEY (car_to_sell_id)
REFERENCES public.car_to_sell (car_to_sell_id) MATCH SIMPLE,
CONSTRAINT client_id FOREIGN KEY (client_id)
REFERENCES public.client (client_id) MATCH SIMPLE,
CONSTRAINT manager_id FOREIGN KEY (manager_id)
REFERENCES public.manager (manager_id) MATCH SIMPLE
);
Таблица sale contract (договор купли-продажи):
CREATE TABLE IF NOT EXISTS public.sale_contract
(
sale_contract_id integer NOT NULL,
37
contract_number text COLLATE pg_catalog."default" NOT NULL,
total money NOT NULL,
purchase_request_id integer NOT NULL,
CONSTRAINT sale_contract_pkey PRIMARY KEY (sale_contract_id),
CONSTRAINT purchase_request_id FOREIGN KEY (purchase_request_id)
REFERENCES public.purchase_request (purchase_request_id) MATCH SIMPLE
);
Таблица service (услуга):
CREATE TABLE IF NOT EXISTS public.service
(
service_id integer NOT NULL,
name text COLLATE pg_catalog."default" NOT NULL,
cost money NOT NULL,
CONSTRAINT service_pkey PRIMARY KEY (service_id)
);
Таблица supply_car (поставленный автомобиль):
CREATE TABLE IF NOT EXISTS public.supply_car
(
supply_car_id integer NOT NULL,
supply_contract_id integer NOT NULL,
car_configuration_id integer NOT NULL,
CONSTRAINT supply_car_pkey PRIMARY KEY (supply_car_id),
CONSTRAINT fk_car_configuration_id FOREIGN KEY (car_configuration_id)
REFERENCES public.car_configuration (car_configuration_id) MATCH SIMPLE,
CONSTRAINT fk_supply_contract_id FOREIGN KEY (supply_contract_id)
REFERENCES public.supply_contract (supply_contract_id) MATCH SIMPLE
);
38
Таблица supply_contract (договор на поставку):
CREATE TABLE IF NOT EXISTS public.supply_contract
(
supply_contract_id integer NOT NULL,
contact_number text COLLATE pg_catalog."default" NOT NULL,
total money NOT NULL,
dealer_id integer NOT NULL,
delivery_date date,
CONSTRAINT supply_contract_pkey PRIMARY KEY (supply_contract_id),
CONSTRAINT fk_dealer FOREIGN KEY (dealer_id)
REFERENCES public.dealer (dealer_id) MATCH SIMPLE
);
Код для создания контрольного примера:
insert into public.additional_service (additional_service_id, service_id, purchase_request_id)
values (2, 1, 2),
(1, 3, 1);
insert into public.bank (bank_id, name, bik, inn, kpp)
values (1, 'Сбербанк', 44525225, 773601001, 773601001),
(2, 'ВТБ', 44525745, 770207013, 44525745);
insert into public.body_type (name)
values ('седан'),
('хэтчбэк');
insert into public.brand (name)
values ('Honda'),
('Ford'),
('LADA');
39
insert into public.car (car_id, model, generation, brand)
values (3, 'Vesta', 'Classic', 'LADA'),
(4, 'Focus', 'III', 'Ford'),
(5, 'CR-V', '5', 'Honda');
insert into public.car_configuration (car_configuration_id, car_id, engine, horsepower,
gearbox_name, year, price, fuel_usage, body_color, interior_material, engine_displacement,
gearbox_type, drive_type, body_type, fuel_type)
values (2, 3, 1.4, 100, null, 2021, '1 200 000,00 ₽', 7.3, 'серый', 'серый', 1439,
'механическая', 'передний', 'седан', 'бензин'),
(3, 4, 1.6, 130, null, 2020, '2 500 000,00 ₽', 11.5, 'красный', 'синий', 1698, 'автомат',
'задний', 'седан', 'бензин'),
(1, 5, 2, 150, null, 2020, '1 519 000,00 ₽', 10.2, 'белый', 'серый', 1596, 'автомат', '
полный', 'хэтчбэк', 'бензин');
insert into public.car_to_sell (car_to_sell_id, supply_car_id, price)
values (3, 3, '2 800 000,00 ₽'),
(2, 2, '1 800 000,00 ₽'),
(1, 1, '1 400 000,00 ₽');
insert into public.client (client_id, first_name, last_name, patronymic, phone_number)
values (1, 'Лера', 'Титова', 'Максимовна', '89852935967'),
(2, 'Елизавета', 'Голубева', 'Игоревна', '89225491133'),
(3, 'Антон', 'Горшков', 'Тарасович', '89169293150'),
(4, 'Марк', 'Иванов', 'Сергеевич', '89573910055'),
(5, 'Анастасия', 'Гордунова', 'Георгиевна', '89138592355'),
(6, 'Степан', 'Щуков', 'Дмитриевич', '89157823822');
insert into public.dealer (dealer_id, name, address, phone_number, bank_number, bank_id)
values (1, 'ООО "Автодиллер"', 'г. Москва ул. Ленина стр. 32-1', '89259373022',
'589018309890', 1),
(3, 'ООО "СпецАвто"', 'г. Москва ул. Энгельса стр. 14-2', '89259285731',
'641249879531', 1),
(2, 'ОАО "АРОЛЬФ"', 'г. Москва ул. Тихонова д. 42 8 этаж', '89178492069',
'346432398903', 1);
40
insert into public.drive_type (name)
values ('передний'),
('задний'),
('полный');
insert into public.fuel_type (name)
values ('газ'),
('дизель'),
('бензин'),
('электричество');
insert into public.gearbox_type (name)
values ('робот'),
('автомат'),
('механическая');
insert into public.manager (manager_id, first_name, last_name, patronymic)
values (1, 'Дмитрий', 'Калистров', 'Николаевич'),
(2, 'Илья', 'Пинаев', 'Тигранович'),
(3, 'Максим', 'Титов', 'Ильясович'),
(4, 'Анна', 'Сазикова', 'Игоревна');
insert into public.purchase_request (purchase_request_id, car_to_sell_id, client_id,
manager_id)
values (3, 2, 1, 4),
(2, 1, 4, 1),
(1, 3, 3, 3);
insert into public.sale_contract (sale_contract_id, contract_number, total,
purchase_request_id)
values (3, '14892', '3 000 000,00 ₽', 3),
(2, '14328', '1 900 000,00 ₽', 2),
(1, '13952', '2 400 000,00 ₽', 1);
insert into public.service (service_id, name, cost)
values (1, 'зимний комплект шин', '25 000,00 ₽'),
(2, 'летний комплект шин', '20 000,00 ₽'),
41
(3, 'доп сервисное обслуживание 1 год', '40 000,00 ₽');
insert into public.supply_car (supply_car_id, supply_contract_id, car_configuration_id)
values (3, 3, 3),
(2, 2, 2),
(1, 1, 1);
insert into public.supply_contract (supply_contract_id, contact_number, total, dealer_id,
delivery_date)
values (3, '12312', '25 000 000,00 ₽', 3, '2022-12-30'),
(2, '16831', '12 000 000,00 ₽', 2, '2022-12-24'),
(1, '58913', '10 000 000,00 ₽', 1, '2022-12-15');
4.4. Разработка запросов к базе данных
К базе данных PostgreSQL можно обращаться с помощью SQL-запросов. С
помощью
запросов,
описанных
в
этом
разделе,
разработчики
смогут
взаимодействовать с разработанной БД. Возможные взаимодействия с таблицами
можно разделить на 4 группы:
- добавить записи (INSERT);
- изменить записи (UPDATE);
- удалить записи (DELETE);
- прочитать записи (SELECT).
Разработаем запросы, которые будут необходимы разработчикам для
реализации бизнес-задач:
1. Получение списка всех машин:
Запрос на русском языке: получить список всех автомобилей.
SQL-запрос:
SELECT * FROM car
42
2. Получение списка всех конфигураций авто:
Запрос на русском языке: получить весь список конфигураций авто
SQL запрос:
SELECT * FROM car_configuration
3. Получение конфигураций авто по конкретной модели авто
Запрос на русском языке: получить список конфигураций по конкретной
модели авто
SQL запрос:
SELECT * FROM car_configuration WHERE car_id = @car_id, где @car_id – это
передаваемый в запрос, аргумент ID автомобиля.
4. Получение всех поставок от дилера по названию дилера с сортировкой по
дате доставки
Запрос на русском языке: получить отсортированный по дате список
поставок по названию дилера
SQL запрос:
SELECT supply_contract_id, dealer.name, delivery_date, total
FROM supply_contract
JOIN dealer ON supply_contract.dealer_id = dealer.dealer_id
WHERE dealer.name = @name, где @name – это передаваемый в запрос, аргумент
название дилера
ORDER BY supply_contract.delivery_date DESC
5. Получение всех продаж, которые включают в себя дополнительные
услуги (сервис).
43
Запрос на русском языке: получить все продажи, в которых были проданы
доп. услуги.
SQL запрос:
SELECT sale_contract_id, contract_number, total, additional_service.additional_service_id
FROM sale_contract
JOIN purchase_request
ON sale_contract.purchase_request_id = purchase_request.purchase_request.id
JOIN additional_service
ON purchase_request.purchase_request.id = additional_service.additional_service.id
6. Получение суммы всех продаж
Запрос на русском языке: получить сумму всех продаж
SQL запрос:
SELECT SUM(total) FROM sale_contract
7. Регистрация нового клиента
Запрос на русском языке: добавить нового клиента в таблицу клиентов
SQL запрос:
INSERT INTO client
VALUES (@first_name, @last_name, @patronymic, @phone_number), где значения,
начинающиеся с символа ‘@’ являются передаваемыми в запрос аргументами
8. Добавление новой машины в каталог
Запрос на русском языке: добавить машину в каталог автомобилей
SQL запрос:
INSERT INTO car
44
VALUES (@model, @generation, @brand), где значения, начинающиеся с символа ‘@’
являются передаваемыми в запрос аргументами
9. Обновить цену у определенного контракта
Запрос на русском языке: Установить новую цену у определенного
контракта
SQL запрос:
UPDATE sale_contract
SET total = @new_total_price
WHERE sale_contract_id = @contract_id, где @new_total_price – новая цена, а
@contract_id – id контракта, у которого изменяем цену
45
5. Выводы и результаты
При выполнении проектной работы по проектированию и разработке
автоматизированной системы управления процессом продажи автомобилей
компании «Автоальянс» были получены следующие результаты:
 проанализирован основной бизнес-процесс компании. Были выявлен
слабые места. Предложен вариант наиболее рационального решения по
автоматизации процесса продажи;
 разработаны автоматизированные рабочие места и выделены их основные
задачи;
 проанализировано и выбрано соответствующее программное обеспечение,
СУБД. Построена логическая и физическая структура данных по
автоматизации процесса продажи автомобилей компанией «Автоальянс»;
 на основании спроектированной системы производства рекомендованы к
внедрению автоматизированные рабочие места и их задачи;
 представлен программный код построения таблиц и запросов.
Сделанные выводы:
 в результате проведенного предпроектного исследования установлено, что
целесообразно создать распределенные автоматизированные системы с
рядом автоматизированных рабочих мест;
 в ходе создания системы выявлена необходимость создания АРМ
генерального директора, финансового директора, начальника отдела по
продажам, менеджера по продажам и кассира;
 целесообразно
было
выбрать
многофункциональности,
использования,
так
как
СУБД
PostgreSQL
отказоустойчивости
данное
решение
и
является
из-за
бесплатного
свободно
распространяемой и полностью соответствует требованиям заказчика.
46
её
Источники информации
1. Гражданский кодекс РФ (ГК РФ) от 30 ноября 1994 года N 51-ФЗ
2. Закон РФ «О защите прав потребителей» от 7 февраля 1992 года N 2300-1
3. Федеральный закон №196-ФЗ «О безопасности дорожного движения» от 15
ноября 1995 года
4. Постановление правительства РФ от 11 апреля 2001 года «Об утверждении
правил
оказания
услуг
(выполнения
работ)
по
техническому
обслуживанию и ремонту автомототранспортных средств»
5. ГОСТ 34.003-90. Автоматизированные системы. Термины и определения.
6. ГОСТ 34.201-89. Виды, комплектность и обозначение документов при
создании автоматизированных систем.
7. ГОСТ 34.601-90. Автоматизированные системы. Стадии создания.
8. ГОСТ 34.602-89. Техническое задание на создание автоматизированной
системы.
9. ГОСТ 34.603-92. Виды испытаний автоматизированных систем.
10. РД
50 - 34.698-90. Автоматизированные системы. Требования к
содержанию документов
11. РД 50-680-88. Автоматизированные системы. Основные положения
12. ГОСТ 19.002-80. Схемы алгоритмов и программ. Правила выполнения
13. ГОСТ 19.003-80. Схемы алгоритмов и программ. Обозначения условные
графические
14. ГОСТ 19.004-80. Термины и определения
15. ГОСТ 19.101-77. Виды программ и программных документов
16. ГОСТ 19.102-77. Стадии разработки
17. ГОСТ 19.103-77. Обозначение программ и программных документов
18. ГОСТ 19.104-78. Основные надписи
19. ГОСТ 19 105-78. Общие требования к программным документам
47
20. ГОСТ 34.003-90 Основные понятия.
21. ГОСТ 34.201-89. Виды, комплектность и обозначение документов при
создании автоматизированных систем.
22. ГОСТ 34.601-90. Автоматизированные системы. Стадии создания
23. ГОСТ 34.602-89. Техническое задание на создание автоматизированной
системы.
24. ГОСТ 34.603-92. Виды испытаний автоматизированных систем.
25. ГОСТ 24.103-84. Основные положения
26. ГОСТ 24.104-85. Общие требования к разработке АСУ
27. ГОСТ 24.602-86. Состав и содержание работ по стадиям создания
28. ГОСТ 19.101-77. Виды программ и программных документов
29. ГОСТ
24.202-80.
Требования
к
содержанию
документа
«Техникоэкономическое обоснование создания АСУ».
30. ГОСТ 24.203-80. Требования к содержанию общесистемных документов.
31. Шениг Г.-Ю. PostgreSQL 11. Мастерство разработки / пер. с анг. А. А.
Слинкина. – М.: ДМК Пресс, 2019. – 352 с.: ил
32. Документация к PostgreSQL 13.2The PostgreSQL Global Development
GroupПеревод на русский язык, 2015-2021 гг.:Компания «Постгрес
Профессиональный»
33. Функциональное моделирование на базе стандарта IDEF0: метод.
указания/сост. Д.Ю. Киселев, Ю.В.Киселев, А.В.Вавилин. –Самара: Издво
СГАУ ,2014.–20с
48
ПРИЛОЖЕНИЯ
Договор купли-продажи между клиентом и автосалоном
49
Download