Разработка информационной системы для ООО "ОйлТрейдГрупп"
Назначение и область применения информационной системы, особенности их классификации. Выбор и проектирование базы данных и системы управления базами данных. Разработка клиентского приложения. Выбор языка программирования. Разработка интерфейса системы.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 07.08.2018 |
Размер файла | 2,3 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Федеральное агентство связи
Федеральное государственное бюджетное образовательное учреждение высшего образования
"Поволжский государственный университет телекоммуникаций и информатики"
Факультет Информационных систем и технологий
Направление (специальность) Информационные системы и технологии
Кафедра Информационных систем и технологий
ВЫПУСКНАЯ КВАЛИФИКАЦИОННАЯ РАБОТА
(БАКАЛАВРСКАЯ РАБОТА)
Разработка информационной системы для ООО "ОйлТрейдГрупп"
Руководитель профессор д. т. н., профессор
М.А. Кораблин
Разработал ИСТ-32
М.С. Гаген
Самара 2017
Содержание
- Отзыв руководителя
- Введение
- 1. Исследование предметной области
- 1.1 Общая характеристика деятельности предприятия
- 1.2 Назначение и область применения системы
- 1.3 Понятие автоматизации
- 1.4 Информационные системы
- 1.4.1 История развития ИС
- 1.4.2 Основные понятия ИС
- 1.4.3 Классификация информационных систем
- 1.5 Базы данных и системы управления базами данных
- 2. Разработка базы данных
- 2.1 Выбор СУБД для нашей системы
- 2.2 Проектирование базы данных
- 3. Разработка клиентского приложения
- 3.1 Выбор языка программирования
- 3.2 История языка Python
- 3.3 Разработка информационной системы
- 3.3 Разработка интерфейса системы
- Заключение
Отзыв руководителя
АКТУАЛЬНОСТЬ ТЕМЫ
Выбранная тема является актуальной, так как имеет практическую значимость и будет внедрена на предприятии ООО "ОйлТрейдГрупп". Профессиональные корпоративные информационные системы не соответствуют требованиям оккупаемости.
Информационная система будет использована для автоматизации сбора, хранения и обработки информации на складе компании ООО "ОйлТрейдГрупп".
ОЦЕНКА СОДЕРЖАНИЯ РАБОТЫ
(Структура, логика и стиль изложения представленного материала. глубина и степень проработки материала, обоснованность изложенных выводов, использование математического аппарата, использование средств вычислительной техники, макетирование, моделирование, экспериментирование)
Гагеным М.С. обработано достаточно большое количество научно и узкоспециализированного материала по теме дипломной работы. Он показал отличный уровень владения теоретическими положениями по выбранной теме, показал способность формулировать собственную теоретическую позицию на основе анализа мнений разных научных источников.
Гагеным М.С. представлен глубокий анализ имеющихся систем разработки баз данных и программного обеспечения. Характеризуя в целом необходимо отметить, что избранная автором логика исследования, последовательность и содержание глав и разделов позволяет глубоко и качественно раскрыть тему.
СТЕПЕНЬ ДОСТИЖЕНИЯ ЦЕЛИ И ПРАКТИЧЕСКАЯ ЗНАЧИМОСТЬ
(Полнота раскрытия исследуемой темы, практическая ценность и возможность внедрения)
Работа имеет практическую значимость в виде разработанной информационной системы, которая на предприятии ООО "ОйлТрейдГрупп" автоматизировала процесс работы компании. Данная система позволила сократить время на сбор и обработку информации. А так же дала возможность хранить информацию в удобном, систематизированном виде полученную для ведения базы клиентов и отчетности о работе компании. В процесс выполнения бакалаврской работы Гаген М.С. показал себя отлично подготовленным, профессионально мыслящим специалистом в сфере информационных технологий, а так же продемонстрировал отличные знания в средах разработки информационных систем.
ЗАКЛЮЧЕНИЯ ПО ПРЕДСТАВЛЕННОЙ РАБОТЕ
(Степень самостоятельной работы студента; совокупная оценка труда студента и его квалификация)
Основные разделы БР проработаны в полном объеме. В процессе выполнения Гаген М.С. проявил навыки самостоятельной работы, умение решать поставленные задачи и высокий профессиональный уровень в разработке информационных систем.
Работа соответствует всем требованиям, предъявляемым к ВКР, заслуживает оценки "отлично", а Гаген Максим Сергеевич - присвоения степени бакалавра по направлению 09.03.02 - "Информатика и вычислительная техника".
клиентское приложение база программирование
Введение
Потоки информации, находящиеся в нашем мире, огромны и имеют характер дальнейшего роста. Поэтому на данном этапе развития человеческого общества ярко выражен переход к всеобщему внедрению информационных и компьютерных систем в деятельности человека.
Существует немало веских причин для перевода существующей информации на компьютерную основу. В настоящее время стоимость хранения информации в электронном виде дешевле, чем на бумаге. Базы данных позволяют хранить, систематизировать информацию и выводить ее так, как того требует конкретный пользователь. Вдобавок ЭВМ позволяет хранить информацию практически в любом виде, будь то, текст, изображения, аудиозаписи и т.д.
Ввиду этого появляется необходимость использования новых, перспективных методов и средств для обработки информации.
Благополучие предприятия во многом зависит от того насколько автоматизированы процессы управления, планирования и прогнозирования, внутри него. Для принятия эффективных решений в условиях активного роста рыночной экономики предприятию требуется подобающая система информационного обеспечения, справедливо отражающею нынешнею ситуацию. Подобным же образом, одним из показателей, характеризующих работу предприятия является товарооборот, от которого в значительной степени зависят и другие экономические показатели. В товарооборот входит все товарообращение предприятия (ООО "ОйлТрейдГрупп"). Также он отражает насколько стабильна работа предприятия (ООО
"ОйлТрейдГрупп"), ведь чем больше объем поставок, тем устойчивей предприятие чувствует себя на рынке.
Попутно при совершении поставок на предприятие осуществляется обработка и хранение внушительного объема информации, включающей в себя: правильное и своевременное оформление документов, единообразное и полное упорядочивание товара, документирование всех операций, произведенных с товаром (отгрузка, доставка, перевозка или реализация), контроль всего перечисленного.
В связи с этим для исправной работы системы поставок необходим регулярный и методичный учет, что и будет выполнять разрабатываемое ПО.
Выбранная тема является актуальной, так как оптимальное информационное обеспечение является залогом успеха и конкуренции. Все вышесказанное определило актуальность темы работы - разработка информационной системы для ООО "ОйлТрейдГрупп".
Объектом исследования является организация ООО "ОйлТрейдГрупп". Целью дипломного проект является разработка автоматизированной системы учета закупок и продаж, упрощение документ-оборота на предприятии.
Для достижения поставленной цели необходимо решить следующие основные задачи:
1. Изучение предметной области.
2. Разработать базу данных.
3. Разработать автоматизированную систему складского учета.
Предметом исследования является информационная система автоматизации складского учета, которая упрощает работу с документацией компании ООО "ОйлТрейд Групп".
Основными источниками информации для написания работы послужили:
1. Дейт, К. Дж, Введение в системы баз данных, 8-е издание [Текст] / Дейт, К. Дж. - “ Вильяме”, 2005 год - 1328 с.
2.Ю. Избачков, Информационные системы [Текст] /Избачков Ю. - “Питер”, 2010 год - 544 c.
3. Лутц М. Программирование на Python, том I, 4-е издание. [Текст] / М. Лутц - “Символ-Плюс” 2011 год - 992 с.
Цель и задачи написания работы определили ее структуру, которая состоит из введения, двух глав и заключения.
Во введении обосновывается актуальность работы, цель, задачи, объект и предмет исследования.
Первая глава раскрывает краткую теоретическую часть, изучаемой предметной области.
Вторая глава теоретический материал про базы данных и СУБД практическая реализация базы данных.
Третья глава выбор языка программирования. Разработка клиентского приложения.
В заключении сделаны основные выводы и результаты по проделанной работе.
1. Исследование предметной области
1.1 Общая характеристика деятельности предприятия
Основным направлением деятельности компании ООО "ОйлТрейд Групп" является розничная и оптовая торговля моторными маслами фирмы "Bardahl", "Motul" и техническими средствами для авто и мототехники. Компания имеет как офисные помещения, так и оборудованный склад.
Рис.1.1 - Схема организационной структуры компании ООО "ОйлТрейд Групп"
В бухгалтерию входят отдел по учету товаров и расчет с поставщиками, отдел по работе с персоналом. Первый занимается учетом хозяйственной и финансовой деятельности организации, в обязанности второго входит учет расчетов по оплате труда и прочим операциям. Так же в обязанности бухгалтерии входит налоговый учет.
Департамент маркетинга занимается планированием и анализом деятельности организации. Работой с поставщиками занимается отдел закупок. Отдел маркетинга состоит из двух групп: аналитики, занимающуюся долгосрочным и краткосрочным планированием, и группу планирования товарного запаса и расценки, которая занимается планированием товарного запаса и формирует ценовую политику организации.
Департамент ИТ осуществляет информационную поддержку и постоянное функционирование информационных систем компании. Служба информационной поддержки занимается решением текущих проблем пользователей.
Департамент логистики включается в себя:
– отдел сборки и комплектации;
– отдел маршрутизации, занимающийся организацией доставок клиентам.
– транспортный отдел, отвечает за транспортное обеспечение компании.
Департамент продаж, работает напрямую с клиентами.
Служба хозяйственного обеспечения осуществляет обслуживание помещений офиса и склада компании ООО "ОйлТрейд Групп".
1.2 Назначение и область применения системы
Бизнес-процессы предприятия, в том числе и процессы принятия решения, можно сделать продуктивней, если использовать информационные системы и технологии. Релевантная, точная, полная и своевременная информация является обязательным условием для принятия качественного решения. Качественная информационная система явно может улучшить процессы принятия решений и бизнес-процессы в организации, позволяя руководству и менеджерам обрабатывать больший объем информации и исключая трудоемкие операции при принятии управленческих решений. Например, менеджер, использующий информационную систему складского учета, рассмотрит большее количество подходящих вариантов и в более короткий срок, чем его коллега, тратящий лишнее время на вычисления на бумаге. Большое количество "ручного" труда ведет к временным задержкам, ошибкам при заполнении документов и затруднении обмена информацией между отделами. Все это сказывается на психоэмоциональном состоянии сотрудника и отражается на качестве его работы.
Организацией ООО "ОйлТрейд Групп" была поставлена задача автоматизировать работу складского учета и создать информационную систему, которая будет удовлетворять следущим требованиям:
– Поиск по списку товаров
– Удобное представление информации
– Добавление и редактирование всей необходимой информации
– Работа с большим объемом данных
– Печать списка имеющегося товара
– Печать накладных
Пользователем данной программы является лицо, которое будет повседневно работать с этой информационной системой. Работать она будет на одном компьютере под операционной системой Windows.
Выбор СУБД и языка для разработки пользовательского приложения совершает сам разработчик.
1.3 Понятие автоматизации
Автоматизация управленческой деятельности изначально связывалась только с автоматизацией некоторых вспомогательных, рутинных операций. Но бурное развитие информационных технологий, совершенствование технической платформы и появление принципиально новых классов программных продуктов привело в наши дни к изменению подходов к автоматизации управления предприятием.
Автоматизация - одно из главных направлений научно-технического прогресса, использующее саморегулирующие технические средства и некоторые математические методы с целью освобождения человека от участия в процессах получения, преобразования, передачи и использования энергии, материалов, изделий или информации, либо существенного уменьшения степени человеческого участия или трудоёмкости выполняемых операций.
Основные преимущества автоматизации и новой технологии переработки информации сказываются там, где приходится выполнять повторяющиеся задачи, предусматривающие запрограммированные решения, либо задачи с большим объемом вычислений или чисто механического труда. Такие задачи составляют достаточно большую часть работы, которую многие люди считают творческой или оригинальной. Компьютерная техника позволяет ускорить почти любой творческий процесс. Результатом освоения людьми компьютерной техники и новых информационных технологий обычно является развитие творчества, поскольку значительно облегчается перебор различных вариантов.
Общая цель автоматизации управления - повышение эффективности и качества деятельности объекта управления, что обеспечивается следующими направлениями автоматизации:
– Повышение оперативности управления - сокращение времени выполнения таких операций, как поиск, сбор, обработка и передача информации, решение логических задач, оформление документов и т.д.
– Снижение трудозатрат ЛПР на выполнение дополнительных/вспомогательных процессов. К ним относятся информационные и расчетные операции, которые носят вспомогательный характер и при этом являются весьма трудоемкими. В результате освобождения от рутинной работы сотрудники могут сосредоточиться на творческих процессах управления.
– Повышение объективности и правильности принимаемых решений. Процесс принятия решений строится на основе изучения и прогноза развития ситуации с применением математического аппарата. При этом сохраняют свое значение традиционные методы обоснования решений, опирающиеся на опыт и интуицию.
Основными принципами автоматизации процессов являются:
Принцип согласованности. Все действия в автоматизируемом процессе должны быть согласованы между собой, а также с входами и выходами процесса. В случае же несогласованности действий может возникнуть нарушение выполнения процесса.
Принцип интеграции. Любой автоматизируемый процесс должен иметь возможность интегрироваться в общую среду системы организации. На различных уровнях автоматизации интеграция выполняется по-разному, но суть принципа всегда остается неизменной. Автоматизация процессов должна обеспечивать корректное взаимодействие автоматизируемого процесса с внешней средой (по отношению к этому процессу).
Принцип независимости исполнения. Каждый автоматизируемый процесс должен выполняться самостоятельно, без участия человека, либо с минимальным контролем со стороны работника. Человек не должен вмешиваться в процесс, если процесс выполняется в соответствии с установленными требованиями.
Выделяют три уровня автоматизации:
На нижней ступени решаются технические задачи: соблюдение технологических режимов, правил эксплуатации оборудования и техники безопасности. На этой ступени применяют локальные системы стабилизации и регулирования параметров, поисковую автоматику, некоторые элементы вычислительной техники, а также автоматическую сигнализацию, блокировку, регистрацию и т.п.
На средней ступени определяется экономически обоснованное распределение нагрузок между цехами и агрегатами, оптимальный режим технологического процесса, а также вырабатываются и передаются команды управления системам автоматизации нижней ступени. Для этого используют системы централизованного сбора информации и программы для анализа деятельности производства.
На верхней ступени решаются технические и в основном экономические задачи. Планируется производство отдельных цехов и участков, выполняются учетные работы, осуществляется управление транспортом, складами, энергоресурсами, определяются показатели для оперативного управления, которые передаются в соответствующие системы автоматизации средней ступени.
Автоматизация процессов на каждом из указанных уровней обеспечивается за счет применения различных систем автоматизации, например:
– CRM системы;
– ERP системы;
– OLAP системы.
Решение вопросов автоматизации на уровне всех трех ступеней является, по существу, решением вопросов комплексной автоматизации производств.
Типы систем автоматизации включают в себя:
– Неизменяемые системы. Это системы, в которых последовательность действий определяется конфигурацией оборудования или условиями процесса и не может быть изменена в ходе процесса.
– Программируемые системы. Это системы, в которых последовательность действий может изменяться в зависимости от заданной программы и конфигурации процесса. Выбор необходимой последовательности действий осуществляется за счет набора инструкций, которые могут быть прочитаны и интерпретированы системой.
– Гибкие (самонастраиваемые) системы. Это системы, которые способны осуществлять выбор необходимых действий в процессе работы. Изменение конфигурации процесса (последовательности и условий выполнения операций) осуществляется на основании информации о ходе процесса.
Эти типы систем могут применяться на всех уровнях автоматизации процессов по отдельности или в составе комбинированной системы.
Наша информационная система должна решать текущие задачи стратегического и тактического планирования, складского учета и управления фирмой, т.е. управлять системой принятия решений, а именно:
– управлять материальными ресурсами;
– управлять знаниями и информационной средой;
– автоматизировать процессы управления;
– обеспечивать создание баз данных и баз знаний;
– обеспечивать сокращение персонала и повышение производительности труда;
– обеспечивать интеграцию всех звеньев управления;
– автоматизировать обработку данных и обеспечить соответствующий мониторинг основных показателей экономического состояния предприятия (организации);
– создавать новую информационную культуру деятельности;
– усиливать интеллектуальные возможности ЛПР.
1.4 Информационные системы
1.4.1 История развития ИС
Первые информационные системы появились в 1950-х гг. В эти годы они были предназначены для обработки счетов и расчета зарплаты, а реализовывались на электромеханических бухгалтерских счетных машинах. Это приводило к некоторому сокращению затрат и времени на подготовку бумажных документов.
1960-е гг. знаменуются изменением отношения к информационным системам. Информация, полученная из них, стала применяться для периодической отчетности по многим параметрам. Дня этого организациям требовалось компьютерное оборудование широкого назначения, способное обслуживать множество функций, а не только обрабатывать счета и считать зарплату, как было ранее.
Таблица 1.1. История развития информационных систем
Период времени |
Концепция использования информации |
Вид информационных систем |
Цель использования |
|
1950 - 1960 гг. |
Бумажный поток расчетных документов |
Информационные системы обработки расчетных документов на электромеханических бухгалтерских машинах |
Повышение скорости обработки документов. Упрощение процедуры обработки счетов и расчета зарплаты |
|
1960 - 1970 гг. |
Основная помощь в подготовке отчетов |
Управленческие информационные системы для производственной информации |
Ускорение процесса подготовки отчетности |
|
1970 - 1980 гг. |
Управленческий контроль реализации (продаж) |
Системы поддержки принятия решений. Системы для высшего звена управления |
Выбор наиболее рационального решения |
|
1980 - 2015 гг. |
Информация - стратегический ресурс, обеспечивающий конкурентное преимущество |
Стратегические информационные системы. Автоматизированные офисы |
Выживание и процветание фирмы |
1.4.2 Основные понятия ИС
Нужно понимать разницу между понятиями "информационная система" и "информационная технология". Информационная технология (ИТ) - это процесс, использующий совокупность средств и методов сбора, обработки и передачи данных для получения информации нового качества о состоянии объекта, процесса или явления - информационного продукта. Понятие "информационная технология" тесно связано с понятием "информационная система". Под информационной системой обычно понимается прикладная программная система, ориентированная на сбор, хранение, поиск и обработку какой-либо информации. Подавляющее большинство информационных систем работает в режиме диалога с пользователем.
К информационным системам относятся:
информационно-справочные и информационно-поисковые системы;
системы, обеспечивающие автоматизацию документооборота и учета (в том числе бухгалтерского);
информационные системы управления;
интеллектуальные (экспертные) системы;
системы автоматизации научных исследований;
системы автоматизированного проектирования;
геоинформационные системы и др.
Таблица 1.2. Примеры систем
Система |
Элементы системы |
Главная цель системы |
|
Фирма |
Люди, оборудование, материалы, здания и др. |
Производство товаров |
|
Компьютер |
Электронные и электромеханические элементы, линии связи и др. |
Обработка данных |
|
Телекоммуникационная система |
Компьютеры, модемы, кабели, сетевое программное обеспечение и др. |
Передача информации |
|
Информационная система |
Компьютеры, компьютерные сети, люди, информационное и программное обеспечение |
Производство профессиональной информации |
Процессы, обеспечивающие работу информационной системы любого назначения, условно можно представить в виде схемы (Рис.1.2), состоящей из следующих блоков:
Рис.1.2 - Схема процессов информационной системе
– ввод информации (сбор информации о состоянии внешней среды и объекта управления, т.е. создание первичной, или вход ной, информации и представление ее в нужном виде);
– база данных;
– обработка информации (поиск, выборка, сортировка, анализ, вывод информации для представления пользователям или передачи в другую систему);
– обратная связь (передача информации, обработанной пользователем для коррекции входной информации).
Любая система состоит из подсистем, подсистема любой системы может быть сама рассмотрена как система. Размер рассматриваемой системы определяются доступными ресурсами и окружением. Например, система бухгалтерского учета является подсистемой системы управления производственным предприятием и включает в себя подсистемы материального учета, налогового учета, расчета заработной платы и т.д.
Структура информационной системы должна быть такой, чтобы взаимодействие между ее подсистемами укладывалось в ограниченные стандартные рамки:
– каждая подсистема должна инкапсулировать свое содержимое (скрывать его от других подсистем);
– каждая подсистема должна иметь четкий интерфейс с другими подсистемами.
Инкапсуляция позволяет рассматривать структуру каждой подсистемы независимо от других подсистем. Наличие интерфейсов между подсистемами позволяет объединять их в систему более высокого уровня.
Для изучения информационных систем важно иметь представление о задачах системного анализа. Системный анализ - это логически связанная совокупность теоретических и эмпирических положений из области математики, естественных наук и области разработки сложных систем, обеспечивающая повышение обоснованности решения конкретной проблемы.
В состав задач системного анализа в процессе создания информационной системы входят задачи декомпозиции, анализа и синтеза.
Задача декомпозиции означает изображение системы в виде набора подсистем, состоящих из более мелких элементов.
Задача анализа состоит в нахождении различного рода свойств системы или среды, окружающей систему. Цель анализа - определение закона преобразования информации, задающего поведение системы.
Задача синтеза системы противоположна задаче анализа. Не обходимо по описанию закона преобразования информации по строить систему, фактически выполняющую это преобразование по определенному алгоритму.
Для функционирования информационной системы необходимы следующие основные элементы:
– База данных
– Система управления базой данных
– Пользовательское приложение
– Пользователи
Вкратце рассмотрим каждый элемент.
Есть множество определений баз данных, так как их слишком много рассмотрим несколько из них.
"База данных (БД) - совокупность данных, организованных по определенным правилам, предусматривающим общие принципы описания, хранения и манипулирования данными, независимая от прикладных программ." Зрюмов Е. А.
"База данных - это некоторый набор перманентных (постоянно хранимых) данных, используемых прикладными программными системами какого-либо предприятия" К. Дж. Дейт.
Система управления базами данных (СУБД) - совокупность программных и лингвистических средств общего или специального назначения, обеспечивающих управление созданием и использованием баз данных.
Пользовательское приложение, это приложение, по автоматизации определенной деятельности, использующее базу данных. Приложение выполняет определенные действия: обработку, выборку существующей информации, вставку новой, удаление или редактирование существующей информации, все эти функции выполняются через запросы к системе управления базами данных. Вместе с тем не дает делать пользователю лишние действия.
Пользователи, лицо или организация, которое использует действующую информационную систему непосредственно через ЭВМ. Пользователь получает доступ к базе данных, использую одно из приложений.
1.4.3 Классификация информационных систем
Информационные системы могут значительно различаться по типам объектов, характером и объёмом решаемых задач, и рядом других признаков.
Общепринятой классификации ИС до сих пор не существует, поэтому их можно классифицировать по разным признакам, что вызвало существование нескольких различных классификаций ИС. Информационные системы классифицируются по самым разным признакам. Рассмотрим наиболее часто используемые виды классификации:
– по масштабам применения - настольные, групповые, корпоративные;
– по сфере применения - ИС организационного управления, экономические ИС, интегрированные ИС
– по способу распределения ресурсов
– по масштабам применения
– по способу организации информационные системы
Настольные (одиночные) ИС предназначены для работы одного человека. К ним можно отнести автоматизированное рабочее место (АРМ) специалиста (конструктора, технолога, расчётчика на прочность, следователя и т.д.). ИС этого уровня позволяют специалистам, работающим с данными, повысить продуктивность и производительность работы.
Внедрение таких программ не вызывает особых трудностей и осуществляется оперативно. Настольные ИС реализуются на автономном компьютере, как правило, ПК. Такая система может содержать несколько простых приложений, связанных общим информационным фондом, и рассчитана на работу одного пользователя или группы пользователей, разделяющих по времени одно рабочее место. Подобные приложения создаются с помощью так называемых "настольных СУБД" (FoxPro, Paradox, dBase, MS Access) или с помощью файловой системы и диалоговой оболочки для ввода, редактирования и обработки данных.
Офисные (групповые) ИС предназначены для информатизации офиса - обработки данных, повышения эффективности их работы и упрощения канцелярского труда. Групповые ИС ориентированы на коллективное использование информации членами рабочей группы (одного
подразделения). Чаще всего строятся как локальная вычислительная сеть ПК или реже как многотерминальная централизованная вычислительная система.
ИС складской автоматизации вследствие своей простоты и много профильности активно используются работниками любого организационного уровня. Наиболее часто их применяют работники средней квалификации: бухгалтеры, секретари и т.п. Деятельность таких ИС в основном охватывает управление документацией. Они позволяют повысить производительность труда секретарей и конторских работников и дают им возможность справляться с возрастающим объёмом работ.
Корпоративные информационные системы направлены на большие организации и могут поддерживать территориально разнесенные узлы или сети.
По сфере применения:
Так как информационные системы создаются для удовлетворения информационных потребностей в рамках конкретной предметной области, то каждой предметной области соответствует свой тип информационных систем. Так как количество предметных областей велико, перечислю всего парочку из них для примера:
– Информационная система организационного управления, предназначен для автоматизации функций управленческого персонала.
– Экономическая информационная система, предназначена для автоматизации сбора, хранения, обработки и выдачи необходимой информации, предназначенной для выполнения функций управления.
– Интегрированные информационные системы, предназначены для автоматизации всех функций фирмы и охватывает цикл работ от проектирования до сбыта продукции
По способу распределения ресурсов:
Прежде чем начать, следует, отметить что информационные системы могут размещаться как на одном компьютере, так и на нескольких.
Распределённые ИС основаны на взаимодействии нескольких ЭВМ, связанных сетью. Отдельные узлы сети обычно территориально удалены друг от друга, решают разные задачи, но используют общую информационную базу.
Локальные ИС используют одну ЭВМ и предназначены для автоматизации отдельных функций управления на отдельных уровнях управления. Такая ИС может быть однопользовательской, функционирующей в отдельных подразделениях системы управления. Для работы локальной информационной системы необходимо организовать на пользовательском компьютере хранение данных и доступ к ним. Сделать это можно несколькими способами:
– Использовать полную версию системы управления базы данных, на локальной ЭВМ устанавливается полная версия СУБД, а само приложение подключается к ней. В действительности это та де многопользовательская система, только СУБД не вынесена на отдельный сервер. Например, Oracle, DB2, Microsoft Access, в данной работе будет использоваться MySQL.
– Использование встраиваемую систему управления базой данных. В сравнении с полной версией СУБД ее функционал кажется неполно функциональным, и представляет собой больше библиотеку. Обычно используется урезанная версия SQL или специальный язык запросов. Например, SQLite.
– Если, нет СУБД, то используют текстовые файлы, XML и CSV или какие-то другие форматы.
По способу организации информационные системы подразделяются на следующие группы:
– На основе архитектуры файл-сервер
– На основе архитектуры клиент-сервер
– На основе многоуровневой архитектуры
– На основе Интернет/интернет-технологии
В архитектуре файл-сервер базы данных хранятся на сервере, клиент обращается к серверу с файловыми командами, а механизм управления всеми информационными ресурсами находится на компьютере клиента.
Файл-серверные базы данных могут быть доступны многим клиентам через сеть. Сама база данных хранится на сетевом файл - сервере в единственном экземпляре. Для каждого клиента во время работы создается локальная копия данных, с которой он манипулирует. При этом возникают проблемы, связанные с возможным одновременным доступом нескольких пользователей к одной и той же информации. Эти проблемы решаются разработчиками приложений баз данных (каждый раз при обращении к данным проверяется их доступность).
Архитектура клиент-сервер (Рис.1.3) предназначена для разрешения проблем файл-серверных приложений путем разделения компонентов приложения и размещения их там, где они будут функционировать наиболее эффективно. Особенностью архитектуры клиент-сервер является наличие выделенных серверов баз данных, принимающих запросы на языке структурированных запросов (Structured Query Language, SQL) и выполняющих поиск, сортировку и агрегирование информации. Отличительная черта серверов баз данных - наличие хранилища метаданных, в котором записаны структура базы данных, ограничения целостности данных, форматы и серверные процедуры обработки данных по вызову или по событиям в программе. Объектами разработки в таких приложениях, помимо диалога и логики обработки, являются прежде всего реляционная модель данных и связанный с ней набор SQL-операторов для типовых запросов к базе данных.
Рис.1.3 - Двухуровневая архитектура клиент-сервер
Многоуровневая архитектура является развитием архитектуры клиент-сервер и в своей классической форме состоит из трех уровней (Рис.1.4).
Рис.1.4 - Трехуровневая архитектура клиент-сервер
На нижнем уровне на компьютерах пользователей расположены приложения клиентов, выделенные для выполнения функций и логики представлений, обеспечивающие программный интерфейс для вызова приложения на среднем уровне.
На среднем уровне расположен сервер приложений, на котором выполняется прикладная логика и с которого логика обработки данных выполняет операции с базой данных, т.е. этот уровень обеспечивает обмен данными между пользователями и распределенными базами данных. Сервер приложений размещается в узле сети доступно всем клиентам.
На третьем, верхнем, уровне расположен удаленный специализированный сервер баз данных, принимающий информацию от сервера приложений. Сервер баз данных выделен для услуг об работки данных и файловых операций.
Информационные системы на основе интернет технологий, позволяют организовывать распределенные информационные системы, доступ к которым возможен через интернет. При этом создается многоуровневая информационная система.
1.5 Базы данных и системы управления базами данных
База данных (БД) - совокупность данных, организованных по определенным правилам, предусматривающим общие принципы описания, хранения и манипулирования данными, независимая от прикладных программ.
Система управления базами данных (СУБД) - совокупность программ и языковых средств, предназначенных для управления данными в базе данных, ведения базы данных и обеспечения взаимодействия ее с прикладными программами. В настоящее время СУБД должна обеспечивать возможность представления внутренней структуры данных, физическую и логическую независимость данных, минимальную избыточность данных, возможность быстрого поиска, эффективные языки запросов к данным, требования безопасности, надежности, конфиденциальности, целостности
Основные функции СУБД:
– управление данными во внешней памяти (на дисках);
– управление данными в оперативной памяти с использованием дискового кэша;
– журнализация изменений, резервное копирование и восстановление базы данных после сбоев;
– поддержка языков БД (язык определения данных, язык манипулирования данными).
Как правило, современная СУБД содержит следующие компоненты:
– ядро, которое отвечает за управление данными во внешней и оперативной памяти;
– подсистему поддержки времени исполнения, которая интерпретирует программы манипуляции данными, создающие пользовательский интерфейс с СУБД;
– а также сервисные программы (внешние утилиты), обеспечивающие ряд дополнительных возможностей по обслуживанию информационной системы;
– процессор языка базы данных, обеспечивающий оптимизацию, запросов на извлечение и изменения данных и создание, как правило машинно-независимого исполняемого кода.
В данный момент самым популярным таким языком является SQL. Он является инструментом, предназначенным для организации, управления, выборки и обработки информации, содержащейся в базе данных.
SQL представляет собой нечто большее, чем просто инструмент создания запросов, хотя именно для этого он и был первоначально разработан.
Несмотря на то что выборка данных по-прежнему остается одной из наиболее важных функций SQL, сейчас этот язык используется для реализации всех функциональных возможностей, которые СУБД предоставляет пользователю.
– Определение данных. SQL позволяет пользователю определить структуру и организацию хранимых данных и взаимоотношения между элементами сохраненных данных.
– Выборка данных. SQL дает пользователю или приложению возможность извлекать из базы содержащиеся в ней данные и пользоваться ими.
– Обработка данных. SQL позволяет пользователю или приложению изменять базу данных, т.е. добавлять в нее новые данные, а также удалять или обновлять уже имеющиеся в ней данные.
– Управление доступом. С помощью SQL можно ограничить возможности пользователя по выборке, добавлению и изменению данных и защитить их от несанкционированного доступа.
– Совместное использование данных. SQL применяется для координации совместного использования данных пользователями, работающими одновременно, с тем чтобы изменения, вносимые одним пользователем, не приводили к непреднамеренному уничтожению изменений, вносимых примерно в то же время иным пользователем.
– Целостность данных. SQL позволяет обеспечить целостность базы данных, защищая ее от разрушения из-за несогласованных изменений или отказа системы.
– Локальные системы управления базами данных вместе с базой данных находятся на компьютере пользователя. Такие системы не зависят от сетевых процессов, поскольку управление базой данных выполняется автономно.
Серверные системы управления базами данных делятся на два типа файл-серверные и клиент-серверные. В файл-серверных СУБД файлы данных располагаются централизованно на файл-сервере. СУБД располагается на каждом клиентском компьютере (рабочей станции).
Доступ СУБД к данным осуществляется через локальную сеть. Синхронизация чтений и обновлений осуществляется посредством файловых блокировок.
Клиент-серверная СУБД располагается на сервере вместе с БД и осуществляет доступ к БД непосредственно, в монопольном режиме. Все клиентские запросы на обработку данных обрабатываются клиент-серверной СУБД централизованно.
Ядром любой базы данных является модель данных. Модель данных - это совокупность структур данных и операций их обработки. С помощью модели данных могут быть представлены информационные объекты и взаимосвязи между ними. Рассмотрим три основных типа моделей данных:
иерархическую, сетевую и реляционную.
Иерархическая модель данных представляет собой совокупность элементов данных, расположенных в порядке их подчинения и образующих по структуре перевернутое дерево (Рис.1.5). К основным понятиям иерархической модели данных относятся: уровень, узел и связь. Узел - это совокупность атрибутов данных, описывающих информационный объект.
Рис.1.5 - Графическое изображение иерархической структуры данных
Сетевая модель данных основана на тех же основных понятиях (уровень, узел, связь), что и иерархическая модель, но в сетевой модели каждый узел может быть связан с любым другим узлом. На (рис.1.6) схематически изображена сетевая структура организации данных.
Рис.1.6 - Графическое изображение сетевой структуры данных
Реляционная модель данных использует организацию данных в виде двумерных таблиц. Каждая такая таблица, называемая реляционной таблицей или отношением, представляет собой двумерный массив и обладает следующими свойствами:
– все столбцы в таблице однородные, т.е. все элементы в одном столбце имеют одинаковый тип и максимально допустимый размер;
– каждый столбец имеет уникальное имя;
– одинаковые строки в таблице отсутствуют;
– порядок следования строк и столбцов в таблице не имеет значения.
Основными структурными элементами реляционной таблицы являются поле и запись (Рис.1.7). Поле (столбец реляционной таблицы) - элементарная единица логической организации данных, которая соответствует конкретному атрибуту информационного объекта. Запись (строка реляционной таблицы) - совокупность логически связанных полей, соответствующая конкретному экземпляру информационного объекта.
Рис.1.7 - Основные структурные элементы реляционной таблицы
Основными объектами любой базы данных являются таблицы. Таблицы базы данных создаются таким образом, чтобы каждая из них содержала информацию об одном информационном объекте. Между таблицами должны быть установлены реляционные связи. Установка таких связей делает возможным выполнение одновременной обработки данных из нескольких таблиц.
Для идентификации записей используется первичный ключ. Первичный ключ реляционной таблицы - это поле или группа полей, которые позволяют однозначно определить каждую запись в таблице.
Первичный обладает двумя свойствами:
– однозначная идентификация записи - запись должна однозначно определяться значением ключа;
– отсутствие избыточности - никакое поле нельзя удалить из ключа, не нарушая при этом свойства однозначной идентификации записи.
Если первичный ключ состоит из одного поля, то он называется простым ключом или ключевым полем. Если первичный ключ состоит из нескольких полей, то говорят, что таблица имеет составной ключ.
Для настройки связей между таблицами используют ключевые поля. Можно связать две реляционные таблицы, если ключ одной связываемой таблицы ввести в состав ключа другой таблицы (возможно совпадение ключей). Можно ключевое поле одной связываемой таблицы ввести в структуру другой таблицы так, что оно в этой таблице не будет ключевым. В этом случае это поле называется внешним ключом.
Проектирование можно разбить на несколько этапов:
– Определение сущностей. Сущность - это реальный или представляемый тип объекта, информация о котором должна сохраняться и быть доступна. Каждой из них присваивается имя. Имена и их описания записываются в словарь данных. Устанавливается количество экземпляров для каждой сущности, если СУБД поддерживает такую функцию.
– Определение связей между сущностями. Связи определяются только те, что необходимы для того чтобы удовлетворить требования проекта базы данных. Для каждой связи устанавливается тип связи, ее класс принадлежности сущности, устанавливаются имена. Все это вносится в словарь данных.
– Определение атрибутов. Атрибут является некоторым свойством сущности. Выявляются атрибуты описывающие сущности. Каждому атрибуту присваивается свое имя, сведения о каждом из них, такие как имя атрибута и его описание, тип и размер, значение по умолчанию, помещаются в словарь данных, атрибут можно не объявлять при создании экземпляра сущности.
– Определение первичных ключей. На данном этапе определяется первичный ключ, который может быть, как атрибутом, так и набором атрибутов.
Первичный ключ позволяет идентифицировать экземпляры сущности. Вся эта информация также заносится в словарь данных.
Нормализация - это метод организации реляционной базы данных с целью сокращения избыточности. Нормализация позволяет в полной мере реализовать преимущества реляционной модели, заставляет разработчика создавать больше отношений, равномернее распределяя в них информацию, что приводит к снижению избыточности и повышению целостности данных. При разработке и проектировании любой реляционной базы данных одной из первых решается задача нормализации ее отношений, причем этот процесс является итерационным и заключается в последовательном переводе отношений из первой нормальной формы в нормальные формы более высокого порядка. В теории реляционных баз данных обычно выделяется следующая последовательность нормальных форм, всего таких форм восемь, но достаточно соблюдать первые три:
– первая нормальная форма (1NF) Отношение представлено в первой нормальной форме (1НФ) тогда и только тогда, когда все его атрибуты являются простыми, то есть содержат только неделимые порции данных.
– вторая нормальная форма (2NF) Для проведения дальнейшей нормализации отношений необходимо использовать понятие первичного ключа, так как вторая нормальная форма требует, чтобы все атрибуты зависели от первичного ключа. Отношение представлено во второй нормальной форме (2НФ) тогда и только тогда, когда оно представлено в первой нормальной форме, и каждый не ключевой атрибут полностью определяется первичным ключом.
– третья нормальная форма (3NF) Применение первой и второй нормальных форм позволяет избавиться от явного дублирования данных, однако неявное дублирование данных все же имеет место. Решить эту проблему помогает использование третьей нормальной формы. Отношение представлено в третьей нормальной форме (3НФ) тогда и только тогда, когда оно представлено во второй нормальной форме и все не ключевые атрибуты отношения взаимно независимы и полностью зависят от первичного ключа.
При работе с полностью нормализованной базой данных, необходимо применять сложные SQL запросы, что приводит к обратному эффекту, поэтому иногда приходится прибегать к обратной денормализации.
2. Разработка базы данных
2.1 Выбор СУБД для нашей системы
Была поставлена задача разработать локальную систему, которая будет работать только на одном компьютере, у нас есть на выбор несколько способов создать на пользовательском компьютере хранение данных, это использовать полную версию СУБД, использовать встраиваемую систему базы данных или же не использовать систему базы данных вообще.
Была выбрана встраиваемую СУБД по нескольким причинам:
- 0данные будут находится на одном и том же компьютере что и приложение;
- высокая скорость и малый расход памяти;
- отправлять запрос будет только один клиент, одновременных обращений нескольких клиентов не будет;
- нам не потребуется синхронизация данных, так как с ней будет работать лишь один человек;
Для разработки была выбрана СУБД SQLite
SQLite - это встраиваемая реляционные база данных, поставляемая с исходными кодами, она не использует модель клиент сервер, то есть не является отдельным работающем процессом, с которым работает приложение, а предоставляет библиотеку, с которой компонуется программа и движок становится частью программы. База данных SQLite хранится в одном файле в котором и исполняется программа.
SQLite имеет модульную архитектуру, отражающую уникальные подходы к управлению реляционными базами данных. Восемь отдельных модулей сгруппированы в три отдельных подсистемы (Рис.2.1).
Рис.2.1 - Структура SQLite
Они разделяют обработку запроса на отдельные задачи, которые работают подобно конвейеру. Верхние модули компилируют запросы, средние выполняют их, а нижние управляются с диском и взаимодействую с операционной системой.
Читать из данной базы данных может одновременно несколько процессов или потоков, но запись в базу данных можно осуществить только, если никаких других запросов в данный момент не обрабатывается, иначе программа выдаст ошибку. Это можно поправить, запустив автоматическое повторение попытки записи.
Несмотря на меленький размер, SQLite предоставляет широкий спектр особенностей и возможностей. Он поддерживает весьма полный набор стандарта ANSI SQL92 для особенностей языка SQL, а также особенности как триггера, индексы столбцы с автоинкрементом, LIMIT/OFFSET особенности. Так же поддерживаются такие свойства, как динамическая типизация и разрешение конфликтов.
В старых версиях SQLite не было каких-либо ограничений, единственным условием было то, чтобы база данных умещалась в памяти. Это создавало определенные проблемы, поэтому в новых версиях были введены пределы, которые теперь проверяются вместе с общим набором тестов.
Эти ограничения устанавливаются во время компиляции библиотеки, которые при необходимости можно увеличить, нельзя увеличить больше заданного единственное значение - это максимальный размер базы данных. Максимальный размер файла базы данных может составлять примерно тридцать два терабайта. Некоторые ограничения менять во время исполнения программы в сторону уменьшения при помощи задания категории и соответствующего значения функции sqlite3_limit (), такие как:
– Максимальная длина любой строки или BLOB поля или ряда;
– Максимальная длина SQL выражения;
– Максимальное количество колонок в определении таблицы или результате выборки, или индексе, или выражениях с операторами ORDER BY или GROUP BY;
– Максимальная глубина разобранного дерева любого выражения;
– Максимальное количество термов в объединенном выражении с SELECT;
– Максимальное количество инструкция программы виртуальной машины выполняемого SQL выражения;
– Максимальное количество аргументов функции;
– Максимальное количество присоединенных баз;
– Максимальная длина шаблона как аргумента операторов LIKE или GLOB;
– Максимальное количество переменных в SQL выражении, которое можно связать;
– Максимальная глубина рекурсии триггеров;
Сама библиотека написана на языке Си, но существует большое количество привязок к другим языкам программирования. Таким как C++, Java, C#, VB.net, Python, Perl, PHP, Ruby, Haskell, Smalltalk, Lua, Parser и также ко многим другим.
Свою популярность SQLite получила за свою простоту, удобство и надежность. Сейчас она используется практически везде: в медиа плеерах, браузерах и смартфонах.
2.2 Проектирование базы данных
Необходимо разработать базу данных "ОйлТрейдГрупп". Она требуется для хранения и обработки информации о товарах, находящихся на складе.
Главной задачей при проектировании базы данных является уменьшение избыточности хранимых данных, из этого следует уменьшение объема требуемой памяти. Про этапы проектирования базы данных мы говорил до этого, поэтому перейдем к ее разработке.
Цель даталогического проектирования состоит в создании логической модели данных для исследуемой части предметной области. Даталогическая модель данных учитывает лишь те конструкции данных и операции над ними, которые находятся в распоряжении СУБД. На этом этапе уже должно быть известно, какая СУБД будет использоваться в качестве целевой - реляционная, сетевая, иерархическая или объектно-ориентированная (в нашем случае реляционная). В процессе разработки даталогическая модель данных постоянно тестируется и проверяется на соответствие требованиям пользователей (Рис.2.2).
Рис.2.2 - Даталогическая модель
Во время физического проектирования принимаются решения о способах реализации разрабатываемой базы данных. Между логическим и физическим проектированием существует постоянная обратная связь, так как решения, принимаемые на этапе физического проектирования с целью повышения производительности системы, способны повлиять на структуру логической модели данных. В физической модели содержится информация обо всех объектах БД. Взаимосвязи между хранимыми записями, возникающие в результате их группирования или использования индексных структур, могут также рассматриваться как часть физической структуры. Результатом физического проектирования является полностью готовая к внедрению структура базы данных.
...Подобные документы
Выбор методологии проектирования и разработка информационной системы "Расчёт зарплаты" для предприятия ОАО РТП "Авторемонтник". Архитектурное проектирование базы данных информационной системы и разработка её интерфейса. Тестирование программного модуля.
дипломная работа [2,3 M], добавлен 25.05.2014Разработка базы данных для информационной системы "Библиотека". Системный анализ, инфологическое, даталогическое и физическое проектирование. Программирование бизнес-логики, разработка клиентского приложения. Создание web-приложения, web-доступ.
курсовая работа [3,3 M], добавлен 15.09.2014Выбор, обоснование и особенности работы СУБД. Характеристика языков программирования. Разработка структурной и функциональной модели информационной системы аптеки. Проектирование программной среды АИС и ее интерфейса. Построение модели базы данных.
курсовая работа [442,3 K], добавлен 21.04.2012Выявление информационных объектов баз данных и требований целостности к данным. Построение результирующей ER диаграммы. Даталогическое проектирование и разработка сценариев работы информационной системы. Выбор средства реализации клиентского приложения.
курсовая работа [2,7 M], добавлен 28.08.2012Технические средства обеспечения функционирования информационной системы. Проектирование базы данных информационной системы. Разработка веб-приложения – справочно-информационной системы для предприятия. Организация записи информации в базу данных.
дипломная работа [4,4 M], добавлен 16.05.2022Цели проектирования базы данных "Аэропорт": обработка информации о рейсах, расписании самолетов и билетах. Анализ предметной области. Принцип работы модели. Особенности реализации информационной системы. Среда программирования клиентского приложения.
лабораторная работа [2,4 M], добавлен 07.01.2014Создание концептуальной модели информационной системы, включающей в себя данные по магазинам, персоналу, владельцу и поставщикам - "Сеть магазинов". Выбор системы управления базами данных. Разработка клиентского приложения и интерфейса пользователя.
курсовая работа [525,9 K], добавлен 12.04.2015Разработка информационной системы ресторана, определение ее границ для реализации базы данных. Перечень запросов, отчетов и операций по вводу информации в информационной системе "Ресторан". Проектирование базы данных, выбор средств ее реализации.
курсовая работа [7,6 M], добавлен 27.04.2011Анализ входной информации и процессов, уровня автоматизации на предприятии. Выявление объекта и задачи автоматизации. Разработка концепции построения информационной модели информационной системы. Разработка структуры базы данных и клиентского приложения.
дипломная работа [2,0 M], добавлен 22.11.2015Классификация систем управления базами данных. Выбор операционной системы, языка программирования, среды разработки (IDE) и дополнительных компонент. Разработка интерфейса и функций программы по управлению складом, её тестирование и исходный код файлов.
курсовая работа [487,3 K], добавлен 25.12.2015Выбор языка и среды программирования, технологий доступа и взаимодействия с источниками данных. Требования к разработке информационной системы. Проектирование базы данных информационной системы учета и взаимодействующего с ней приложения .NET Framework.
курсовая работа [1,3 M], добавлен 17.05.2013Автоматизация учёта поступления и обучения детей в "Доме детского творчества". Проектирование программного продукта ИС; выбор системы управления базы данных, языка программирования. Разработка концептуальной, логической и физической моделей данных.
дипломная работа [1,5 M], добавлен 10.10.2015Анализ информационных потоков. Разработка структуры таблиц базы данных. Выбор CASE-средства для проектирования информационной системы и среды программирования. Разработка программных модулей (программного обеспечения). Подготовка справочных баз данных.
дипломная работа [6,8 M], добавлен 19.11.2013Системный анализ предметной области. Построение концептуальной и даталогичной модели базы данных. Физическое проектирование базы данных. Описание функциональной модели системы управления базами данных. Разработка экранных форм ввода-вывода и отчета.
курсовая работа [1,1 M], добавлен 09.12.2014Разработка информационной системы, выбор языка программирования, физическое описание базы данных, выбор типа и описание таблиц базы данных. Техническое проектирование, ограничения и значения по умолчанию, представления, хранимые процедуры и триггеры.
курсовая работа [519,8 K], добавлен 25.05.2010Главные составные части среды программирования. Требование к надежности, к составу и параметрам технических средств. Табличные базы данных. Выбор и обоснование выбора системы управления базами данных. Высокопроизводительный компилятор в машинный код.
курсовая работа [793,5 K], добавлен 31.01.2016Разработка системы хранения и обработки данных, интерфейса. Использование технологии Xamarin.Forms для организации заполнения путевых листов. Выбор операционной системы, языка и среды программирования. Аппаратная интеграция информационной системы.
дипломная работа [1,7 M], добавлен 09.07.2017Проектирование многопользовательской информационной системы для автоматизации работы диспетчера отдела грузоперевозок. Выбор среды программирования. Разработка программного обеспечения, таблиц базы данных АСОИ. Построение диаграмм классов и деятельности.
курсовая работа [298,1 K], добавлен 03.06.2014Проектирование модели данных и ее реализация средствами СУБД Microsoft Access. Разработка приложения "Комиссионное вознаграждение". Выполение интерфейса информационной базы средствами системы управления данными. Создание запросов и отчетных форм.
курсовая работа [5,8 M], добавлен 25.09.2013Создание базы данных, построение на ее основе информационной системы в виде веб-сайта. Обоснование и выбор системы управления базой данных. Датологическое проектирование, разработка алгоритма решения задачи, создание форм. Результаты обработки данных.
отчет по практике [904,1 K], добавлен 13.04.2015