С этим файлом связано 14 файл(ов). Среди них: слепцов яковПрактическая.docx, Спиридонов Стас Средства и протоколы (1).pptx, 999999Практическая.docx, Отчет Ник.docx, Курсовая работа.docx, MOODLE.doc, Спридонов Стас.ppt, Лекция 1..docx, Отчет.docx, Лабораторная работа №1.docx, (з)Разработка рекомендаций по созданию комплексной системы защит, МДК.2.1. ПЗИ (1).doc, ПЗИ.pptx, свободнаяПРЕЗЕНТАЦИЯ.pdf и ещё 4 файл(а).
Показать все связанные файлы
Подборка по базе: Практическая работа №2.docx, Практическая работа № 1.docx, 2.2 практическая.docx, Практическая работа №2.docx, Практическая работа «Целостный педагогический процесс_ единство , Домашняя работа.docx, 1.1 Практическая работа №1.docx, Практическая работа № 1.docx, Практическая работа.docx, Пракическая работа № 2.docx
Практическая работа №1 «Анализ предметной области»
Цель работы: описать и проанализировать ИС, определить необходимые элементы КТС ИС и системного ПО ИС.
Теоретические сведения
Проблемы управления программными проектами впервые появились в 60-х– начале70- х годов прошлого века, когда провалились многие большие проекты по разработке программных продуктов. Были зафиксированы задержки в создании ПО, программное обеспечение было ненадежным, затраты на разработку в несколько раз превосходили первоначальные оценки и т.д. Провалы этих проектов обуславливались не только некомпетентностью руководителей и программистов. Напротив, в этих больших поисковых проектах принимали участие люди, уровень квалификации которых был явно выше среднего. Причины провалов коренились в тех подходах, которые использовались в управлении проектами. Применяемая методика была основана на опыте управления техническими проектами и оказалась неэффективной при разработке программных проектов.
Руководители программных проектов выполняют такую же работу, что и руководители технических проектов. Вместе с тем процесс разработки ПО существенно отличается от процессов реализации технических проектов. Ниже приведен небольшой список этих отличий.
- Программный продукт нематериален. Менеджер судостроительного проекта или проекта постройки здания видит результат выполнения своего проекта. Если реализация проекта отстает от графика, то это видно по незавершенности конструкции. В противоположность этому процент незавершенности программного проекта нельзя увидеть или потрогать. Менеджер программного проекта может полагаться только на документацию, которая фиксирует процесс разработки программного продукта.
- Не существует стандартных процессов разработки программного обеспечения. На сегодняшний день не существует четкой зависимости между процессом создания ПО и типом создаваемого программного продукта. Другие технические дисциплины имеют длительную историю, процессы разработки технических изделий многократно опробованы и проверены. Изучением же процессов создания ПО специалисты занимаются только последние несколько лет. Поэтому прока нельзя точно предсказать, на каком этапе процесса разработки ПО могут возникнуть проблемы, угрожающие всему проекту.
- Большие программные проекты – это часто одноразовые проекты. Большие программные проекты, как правило, значительно отличаются от проектов, реализованных ранее. Поэтому, чтобы уменьшить неопределенность в планировании проекта, руководители проектов должны обладать очень большим практическим опытом. Но постоянные технологические изменения в компьютерной технике обесценивают предыдущий опыт. Перечисленные особенности могут привести к тому, что реализация проекта выйдет за рамки временного графика или бюджетных ассигнований. Об этом всегда нужно помнить.
Процессы управления программными проектами
Невозможно описать и стандартизировать все работы, выполняемые менеджером проекта по созданию ПО, но в большинстве случаев к ним относятся.
- Написание предложений по созданию ПО.
- Планирование и составление графика работ проекта.
- Оценивание стоимости проекта.
- Контроль процессов выполнения работ.
- Подбор персонала.
- Написание отчетов и представлений.
Время выполнения больших программных проектов может занимать несколько лет. В течение этого времени цели и намерения организации, оказавшей программный проект, могут существенно измениться. Может оказаться, что разрабатываемый программный продукт стал уже ненужным либо исходные требования к ПО устарели и их нужно кардинально менять. В такой ситуации руководство организации-разработчика может принять решение о прекращении разработки ПО или об изменении проекта в целом.
Планирование проекта
Эффективное управление проектами напрямую зависит от правильного планирования работ. План, разработанный на начальном этапе проекта, рассматривается всеми его участниками как руководящий документ, выполнение которого должно привести к успешному завершению
проекта. Этот первоначальный план должен максимально подробно описывать все этапы реализации проекта.
План проекта должен показать ресурсы, необходимые для реализации проекта, разделение работ на этапы и временной график выполнения этих этапов. Детализация планов проектов очень разнится в зависимости от типа разрабатываемого программного продукта и организации-
Разработчика. Но в любом случае большинство планов содержит следующие разделы.
- Введение. Краткое описание целей проекта и проектных ограничений (бюджетных, временных и т.д.).
- Организация выполнения проекта. Описание способа подбора команды разработчиков и распределение обязанностей между членами команды.
- Анализ рисков. Описание возможных проектных рисков, вероятность их проявления и стратегий, направленных на их уменьшение.
- Аппаратные и программные ресурсы для реализации проекта. Перечень аппаратных средств и программного обеспечения, необходимого для разработки программного продукта.
- Разбиение работ на этапы. Проект разбивается на отдельные процессы, определяются этапы выполнения проекта, приводится описание результатов каждого этапа и контрольные отметки.
- График работ. В графике работ отображаются зависимости между отдельными этапами разработки по, оценки времени их выполнения и распределение членов команды проекта по отдельным этапам.
- Механизмы контроля и мониторинга за ходом выполнения проекта. Описываются механизмы и сроки предоставления отчетов о ходе работ, а также механизмы мониторинга всего проекта.
При планировании проекта разработки ПО определяются контрольные точки – вехи, отмечающие окончание определенного этапа работ. Для каждой вехи создается отчет, который предоставляется руководству проекта.
При определении контрольных точек весь процесс создания ПО должен быть разбит на отдельные этапы с указанным «выходом» (результатом) каждого этапа. Например, на рис. 1 показаны этапы разработки спецификации требований в случае, когда для ее проверки используется прототип системы.
Рисунок 1. Этапы процесса разработки спецификации
Информационный процесс — это осуществление всей совокупности следующих элементарных информационных актов: прием или создание информации, ее хранение, передача и использование. Информационная система — это совокупность механизмов, обеспечивающих полное осуществление информационного процесса.
Вне ИС информация может лишь сохраняться в виде записей на тех или иных физических носителях, но не может быть ни принятой, ни переданной, ни использованной.
Информационная система — организационно-техническая система, которая предназначена для выполнения информационно-вычислительных работ или предоставления информационно- вычислительных работ или предоставления информационно-вычислительных услуг, удовлетворяющих потребности системы управления и ее пользователей — управленческого персонала, внешних пользователей путем использования и/или создания информационных продуктов. Информационные системы существуют в рамках системы управления и полностью подчинены целям функционирования этих систем.
Информационно-вычислительная работа — деятельность, связанная с использованием информационных продуктов. Типичным примером информационной работы является поддержка информационных технологий управления.
Информационно-вычислительная услуга — это разовая информационно-вычислительная работа.Под информационным продуктом понимается вещественный или нематериальный результат интеллектуального человеческого труда, обычно материализованный на определенном носителе, например разнообразных программных продуктов, выходной информации в виде документов управления, баз данных, хранилищ данных, баз знаний, проектов ИС и ИТ.
Методологическую основу изучения ИС составляет системный подход, в соответствии с которым любая система представляет собой совокупность взаимосвязанных объектов, функционирующих совместно для достижения общей цели.
Информационная система представляет собой совокупность функциональной структуры, информационного, математического, технического, организационного и кадрового обеспечения, которые объединены в единую системы в целях сбора, хранения, обработки и выдачи необходимой информации для выполнения функций управления. Она обеспечивает информационные потоки:
- — информационный поток из внешней среды в систему управления, который, с одной стороны, представляет собой поток нормативной информации, создаваемый государственными учреждениями в части законодательства, а с другой стороны — поток информации о конъюнктуре рынка, создаваемый конкурентами, потребителями, поставщиками;
- — информационный поток из системы управления во внешнюю среду (отчетная информация, прежде всего финансовая в государственные органы, инвесторам, кредиторам, потребителям; маркетинговая информация потенциальным потребителям);
- — информационный поток из системы управления на объект, представляет собой совокупность плановой, нормативной и распорядительной информации для осуществления хозяйственных процессов;
- — информационный поток от объекта в систему управления, который отражает учетную информацию о состоянии объекта управления экономической системой (сырья, материалов, денежных, энергетических, трудовых ресурсов, готовой продукции и выполненных услугах) в результате выполнения хозяйственных процессов.
Задачи информационных систем
Корпоративные системы позволяют решить следующие задачи:
- гарантировать требуемое качество управления предприятием;
- повысить оперативность и эффективность взаимодействия между подразделениями;
- обеспечить управляемость качеством выпускаемой продукции;
- увеличить экономическую эффективность деятельности предприятия;
- создать систему статистического учета на предприятии;
- осуществлять прогноз развития предприятия;
- создать систему стратегического и оперативного планирования, систему прогнозирования.
Задания для практической работы
- Выберите предметную область
- Выберите название ИС в рамках предметной области.
- Определите цель ИС
- Проведите анализ осуществимости ИС
- Что произойдет с организацией, если система не будет введена в эксплуатацию?
- Какие текущие проблемы существуют в организации и как новая система поможет их решить?
- Каким образом (и будет ли) ИС способствовать целям бизнеса?
- Требует ли разработка ИС технологии, которая до этого раньше не использовалась в организации?
- Где будет размещена ИС? Кто является пользователем ИС?
- Комплекс технических средств ИТ
- Какие средства компьютерной техники необходимы для ИС?
- Какие средства коммуникационной техники необходимы для ИС?
- Какие средства организационной техники необходимы для ИС?
- Какие средства оперативной полиграфии необходимы для ИС?
- Опишите системное ПО ИТ.
Таблица 1. Варианты предметных областей
Предметная область | Сущность задачи |
Страховая медицинская компания | Страховая медицинская компания (СМК) заключает договоры добровольного медицинского страхования с населением и договоры с лечебными учреждениями на лечение застрахованных клиентов. При возникновении страхового случая клиент подает заявку на оказание медицинских услуг по условиям договора инспектору, который работает с данным клиентом. Инспектор направляет данного клиента в лечебное учреждение. Отчеты о своей деятельности инспектор предоставляет в бухгалтерию. Бухгалтерия проверяет оплату договоров, перечисляет денежные средства за оказанные услуги лечебным учреждениям, производит отчисления в налоговые органы и предоставляет отчетность в органы государственной статистики. СМК не только оплачивает лечение застрахованного лица при возникновении с ним страхового случая, но и, при возникновении каких-либо осложнений после лечения, оплачивает лечение этих осложнений |
Агентство недвижимости | Агентство недвижимости занимается покупкой, продажей, сдачей в аренду объектов недвижимости по договорам с их собственниками. Агентство управляет объектами недвижимости как физических, так и юридических лиц. Собственник может иметь несколько объектов. В случае покупки или аренды клиент может произвести осмотр объекта. В качестве одной из услуг, предлагаемых агентством, является проведение инспектирования текущего состояния объекта для адекватного определения его рыночной цены. По результатам своей
деятельности агентство производит отчисления в налоговые органы и предоставляет отчетность в органы государственной статистики |
Кадровое агентство | Кадровое агентство способствует трудоустройству безработных граждан. Агентство ведет учет и классификацию данных о безработных на основании резюме от них. От предприятий города поступают данные о свободных вакансиях, на основании которых агентство предлагает различные варианты трудоустройства соискателям. В случае положительного исхода поиска вакансия считается заполненной, а безработный становится трудоустроенным. По результатам своей
деятельности кадровое агентство производит отчисления в налоговые органы и предоставляет отчетность в органы государственной статистики |
Компания по разработке программных продуктов | Компания заключает договор с клиентом на разработку программного продукта согласно техническому заданию. После утверждения технического задания определяется состав и объем работ, составляется предварительная смета. На каждый проект назначается ответственный за его выполнение – куратор проекта, который распределяет нагрузку между программистами и следит за выполнением технического задания. Когда программный продукт готов, то его внедряют, производят обучение клиента и осуществляют дальнейшее сопровождение. По результатам своей деятельности компания производит отчисления в налоговые органы и предоставляет отчетность в органы государственной статистики |
Туроператор | Туроператор предоставляет возможность своим клиентам осуществить туристическую или деловую поездку в различные города России и мира. При разработке нового тура сначала анализируется текущая ситуация на рынке туризма и выбирается направление тура. После этого определяется статус тура, бронируются места в гостиницах и билеты на переезд к месту тура, разрабатывается культурная/ деловая/ развлекательная программа, утверждаются сроки тура. На каждый тур назначается ответственное лицо от туроператора, которое будет вести данный тур для улаживания проблем в случае возникновения каких-нибудь чрезвычайных или форс-мажорных ситуаций. Клиент приходит в офис туроператора, где вместе с менеджером выбирает уже разработанный тур и оформляет путевку. После возвращения из тура клиент может высказать свои замечания или пожелания, которые будут учтены при доработке существующих туров или при разработке новых. Также, для дальнейшего улучшения тура, туроператор проводит анализ отчетов от посредников (гостиница, гиды и т.д.). По результатам своей деятельности туроператор производит отчисления в налоговые органы и
предоставляет отчетность в органы государственной статистики |
Работа добавлена на сайт samzan.net: 2016-06-20
Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой — мы готовы помочь.
Предоплата всего
от 25%
Подписываем
договор
СОДЕРЖАНИЕ
стр. |
|
Введение 1.Анализ предметной области разрабатываемого программного продукта 1.1Постановка задачи 1.2 Назначение задачи 1.3 Выбор технологии и среды разработки 1.4 Анализ технических требований и уточнение спецификаций 2. Проектирование структуры и компонентов программного продукта 2.1Разработка интерфейса пользователя 2.2Разработка структурной схемы программного продукта 2.3 Разработка основных алгоритмов программного продукта 2.4 Отладка и тестирование 2.5 Инструкция пользователю Заключение Литература Приложение 1. Техническое задание Приложение 2. Текст программы Приложение 3. Окна работающей программы Приложение В. Руководство пользователю |
Введение
В ходе выполняемой курсовой работы будет разрабатываться игровая программа «Парные картинки», которая и будет являться объектом исследования. Потребуется создать полноценную правильно-функционирующую программу и самостоятельно изучим некоторые процедуры и функции.
Delphi — это комбинация нескольких важнейших технологий:
— Высокопроизводительный компилятор в машинный код;
— Объектно-ориентированная модель компонент;
— Визуальное (а, следовательно, и скоростное) построение приложений из программных прототипов;
— Масштабируемые средства для построения баз данных;
Компилятор, встроенный в Delphi, обеспечивает высокую производительность, необходимую для построения приложений в архитектуре “клиент-сервер”. Этот компилятор в настоящее время является самым быстрым в мире, его скорость компиляции составляет свыше 120 тысяч строк в минуту на компьютере 486DX33. Он предлагает легкость разработки и быстрое время проверки готового программного блока, характерного для языков четвертого поколения (4GL) и в то же время обеспечивает качество кода, характерного для компилятора 3GL. Кроме того, Delphi обеспечивает быструю разработку без необходимости писать вставки на C++ или ручного написания кода (хотя это возможно).
1.Анализ предметной области разрабатываемого программного продукта 1.1Постановка задачи
Разработать программу, реализующую функции тренировки памяти.
Программа должна иметь уровни сложности тренировки, на более сложный нельзя попасть не пройдя предыдущий.
1.2 Назначение задачи
Суть программы состоит в том, что на экран выдается определённое количество парно одинаковых изображений, они открыты на небольшой промежуток времени, после чего закрываются, и пользователю необходимо угадать попарно одинаковые картины за заданное время, если он не успевает этого сделать, то игра возобновится.
Каждое прохождение уровня должно сопровождаться звуковым сигналом
1.3 Выбор технологии и среды разработки
Я выбрал среду разработки Borland Delhi7, так как я думаю что это наиболее благоприятная среда для разработки игр, так же язык программирования Pascal один один из наиболее известных языков программирования, используется для обучения программированию в старших классах и на первых курсах вузов, является базой для ряда Delphi — результат развития языка Турбо Паскаль, который, в свою очередь, развился из язык Паскаль.
Язык Паскаль был создан Никлаусом Виртом в 1968—1969 годах после его участия в работе комитета разработки стандарта языка Алгол-68. Язык назван в честь французского математика, физика, литератора и философа Блеза Паскаля, который создал первую в мире механическую машину, складывающую два числа. Первая публикация Вирта о языке датирована 1970 годом, представляя язык, автор указывал в качестве цели его создания — построение небольшого и эффективного языка, способствующего хорошему стилю программирования, использующему структурное программирование и структурированные данные.
Последующая работа Вирта была направлена на создание на основе Паскаля языка системного программирования, с сохранением возможности вести на его базе систематический, целостный курс обучения профессиональному программированию.
Pascal был уникальным в своём роде – он имел самый быстрый компилятор в мире, да и в нем впервые была разработана технология создания платформенно независимых программ, которая нашла широкое применение в таком языке, как Java. Своё имя он получил в честь великого французкого физика Паскаля. Позднее, разработкой Pascal`ей занялась компания Borland, с помощью которой Pascal встал на серийное производство, надо заметить, что кроме Turbo Pascal компанией выпускался Borland Pascal, который выходил в свет несколько позднее, чем Turbo Pascal, но в отличие от него обладал большими способностями, как то различные режимы компиляции программы, более расширенный набор функций. Так, версия за версией было выпущенно семь Turbo и Borland Pascal. С появлением Windows у Pascal появилась новая разновидность – Turbo и Borland Pascal for Windows. Данная программа была не чуть не лучше обыкновенного блокнота, разве что только цифры отображала синим. Но время шло, требования к качеству оформления программ росли, а языки программиравания оставались всё теми же – Dos. И вот, наконец, компанией Microsoft был совершен переворот в области прикладного программирования – ими впервые была создана визуальная система разработки прикладных программ, которую они реализовали в Visual Basic. К новому стандарту стали приобщать все языки программирования, не избежал своей участи и Pascal. В тот момент, когда разработчики Pascal в компании Borland наконец добрались до него – находился он довольно в запущенном состоянии. Было пересмотрено и переработано множество функций, добавлено, а вернее сказать создано, многое. И в итоге внесения оказались столь колоссальными, что разработчики создали, можно сказать, новый язык программирования.
Delphi 7 — это достаточно мощная система, предназначенная для быстрой разработки приложений самого разного характера и назначения, в том числе для работы с базами данных (драйверы dbExpress, DB2 7.2, InterBase 6.5, MySQL, MSSQL) и Интернет.
В Delphi 7 достигнут высокий уровень возможностей и нет избыточных и дублирующих друг друга средств.
Скорость и производительость программиста при создании программ на Delphi достигаются благодаря IDE (Integrated Development Environment — интегрированная среда разработки) в которой они создаются.
Интегрированная среда разработки в Delphi 7 — это пользовательский интерфейс, состоящий из множества окон, перечень которых зависит от настроек программиста и соответственно от выполняемых задачь.
Таким образом разработка приложения в Delphi делиться на 2 основных этапа:
непосредственное создание пользовательского интерфейса
определение функциональности приложения
Пользовательский интерфейс — в данном случае это внешний вид программы (формы), с помощью интерфейса происходит взаимодействие пользователя с приложением.
В Delphi 7 интерфейс создается очень просто — он конструируется элементами управления (компонентами), которые располагаются на форме приложения.
Функциональность создаваемого приложения формируется процедурами, которые выполняются при возникновении событий, например при нажатии на кнопку и т.д.
Таким образом, разработка приложений сводиться к размещению на форме необходимых компонентов и настройки и написания их свойств, возникающих при том или ином событии.
Многие только переходили к Delphi из DOS, многие использовали Borland Pascal for Windows и работали с Windows API напрямую. Объекты еще были в диковинку, и полное разъяснение новых принципов было просто обязательно.
Но и сейчас писать об этом вполне актуально. Конечно, выросло поколение программистов, которые «с молоком матери» впитали новые понятия. Но от понимания объектов до их грамотного использования — дистанция огромного размера. Для создания более или менее сложных приложений нужны навыки объектно-ориентированного дизайна, а для приложений в свою очередь — четкое знание возможностей вашей среды программирования. Поэтому в данной главе мы постараемся акцентировать внимание читателя на применение ООП в среде Delphi 7.
По сравнению с традиционными способами программирования ООП обладает рядом преимуществ. Главное из них заключается в том, что эта концепция в наибольшей степени соответствует внутренней логике функционирования операционной системы (ОС) Windows. Программа, состоящая из отдельных объектов, отлично приспособлена к реагированию на события, происходящие в ОС. К другим преимуществам ООП можно отнести большую надежность кода и возможность повторного использования отработанных объектов.
1.4 Анализ технических требований и уточнение спецификаций
2. Проектирование структуры и компонентов программного продукта
2.1 Разработка интерфейса пользователя
Интерфейс пользователя , он жепользовательский интерфейс — разновидность интерфейсов, в котором одна сторона представлена человеком (пользователем), другая — машиной/устройством. Представляет собой совокупность средств и методов, при помощи которых пользователь взаимодействует с различными, чаще всего сложными, машинами, устройствами и аппаратурой.
Весьма часто термин применяется по отношению к компьютерным программам, однако под ним может подразумеваться набор средств, методов и правил взаимодействия любой системы, управляемой человеком.
Несколько широко распространённых примеров:
меню на экране телевизора + пульт дистанционного управления;
дисплей электронного аппарата (автомагнитолы, часов) + набор кнопок и переключателей для настройки;
приборная панель (автомобиля, самолёта) + рычаги управления.
Интерфейс двунаправленный (интерактивный) — когда устройство, получив команды от пользователя и исполнив их, выдаёт информацию пользователю наличествующими у неё средствами — визуальными, звуковыми, тактильными и т. п. (приняв которую, пользователь выдаёт устройству последующие команды предоставленными в его распоряжение средствами: кнопки, переключатели, регуляторы, сенсоры, голосом, и т. д.).
Поскольку интерфейс есть совокупность, то есть он состоит из элементов, которые, сами по себе, также могут состоять из элементов (так, экран дисплея может содержать в себе другие окна, которые, в свою очередь, могут содержать панели, кнопки и прочие интерфейсные элементы).
Мой интерфейс очень интуитивен и понятен, для любого круга лиц , состоящий из 3-х вкладок
- Первая вкладка «Новая игра» при нажатии на нее открываются уровни сложности
- При нажатии на вторую вкладку «Рекорды» показывает рекорды игроков на три уровня сложности,
- Во вкладке «Справка» есть два пункта :
- Правила
- Опрограмме
Компоненты Delphi используемые в программе
2.2Разработка структурной схемы программного продукта
Компонент TMainMenu
TMainMenu – позволяет поместить главное меню в программу. При помещении TMainMenu на форму это выглядит, как просто иконка . Иконки данного типа называют невидимым (невизуальным) компонентом, поскольку они невидимы во время выполнения программы.
Создание меню включает три шага:
- помещение TMainMenu на форму;
- вызов Menu Designer
- определение пунктов меню в Menu Designer.
Этот компонент доступен из модуля MENUS, и находится на странице Палитры компонентов Standard.
Этот компонент представляет главное меню формы и наследует все методы и свойства TMenu. Особенность его в том, что в нем реализован сложный механизм объединения меню. Это необходимо по следующим причинам:
- Если в приложении имеется несколько форм со своими меню, то для упрощения работы целесообразно соединить их в одно и управлять меню из главной формы.
- Объединение меню нужно при работе с интерфейсом MDI и его подокнами.
- Механизм объединения меню используется серверами OLE, запускаемыми по месту нахождения объекта OLE. Загружаясь, сервер дописывает осуществляемые им операции к меню другого приложения.
Для того чтобы реализовать объединение меню, у тех форм, меню которых будут присоединены к главному, необходимо установить в True свойство:
(Pb) property AutoMerge: Boolean;
При этом у главного меню оно должно оставаться равным False, иначе главное меню будет вообще невидимым. Объединение будет происходить автоматически при активизации новых форм или серверов OLE. Кроме автоматического режима, объединение меню можно выполнить при вызове метода:
procedure Merge(Menu: TMainMenu);
1.2 Компонент TLabel
TLabel – служит для отображения текста на экране. Можно изменить шрифт и цвет метки, если дважды щелкнуть на свойство Font в Инспекторе Объектов. Видно, что это легко сделать и во время выполнения программы, написав всего одну строчку кода.
Этот компонент доступен из модуля STDCTRLS, и находится на странице Палитры компонентов Standard.
Компонент представляет собой статический текст. С помощью этого компонента на рабочей поверхности формы можно отобразить информацию, сделать пояснения и показать названия других компонентов. Но он имеет и другую важную функцию – если в составе текста TLabel есть символы-акселераторы, информация об их нажатии может передаваться от TLabel другому элементу управления.
1.3 Компонент TPanel
TPanel – управляющий, похожий на TGroupBox, используется в декоративных целях. Чтобы использовать TPanel, просто поместите его на форму и затем положите другие компоненты на него. Теперь при перемещении TPanel будут передвигаться и эти компоненты. TPanel используется также для создания панели инструментов и окна статуса.
Этот компонент доступен из модуля EXTCTRLS, и находится на странице Палитры компонентов Standard.
Этот компонент — является несущей конструкцией для размещения других элементов управления. В отличие от простой рамки (TBevel) панель сама является оконным элементом управления и родителем для всех размещенных на ней компонентов. Часто ее используют для создания панелей инструментов, строк состояния и т. п.
На границах панели размещаются две специальные окаймляющие рамки (bevels): BevelInner и BevelOuter. При помощи комбинации белого и серого цветов они имитируют трёхмерность – приподнятость (bvRaised) или утопленность (bvLowered). Также рамки могут быть невидимыми (bvNone).
Выравнивание текста заголовка панели определяется при помощи свойства:
(Pb) property Alignment: TAlignment;
1.4 Компонент TImage
TImage – отображает графическое изображение на форме. Воспринимает форматы BMP, ICO, WMF. Если картинку подключить во время дизайна программы, то она прикомпилируется к EXE файлу.
Этот компонент доступен из модуля EXTCTRLS, и находится на странице Палитры компонентов Additional.
Этот компонент служит надстройкой над классом TPicture и замыкает всю иерархию графических объектов VCL. Он предназначен для показа на форме изображения: битовой карты (TBitmap), метафайла (TMetafile), значка (TIcon).
1.5 Компонент TImageList
TImageList представляет собой контейнер для хранения множества рисунков одинакового размера. Он может быть полезен при программном создании набора инструментальных кнопок, секций управляющего заголовка, при разработке программ, использующих анимационные эффекты, и вообще там, где требуется индексированный доступ к изображениям. Воспринимает форматы BMP, ICO.
При помещении TImageList на форму это выглядит, как просто иконка. Иконки данного типа называют невидимым (невизуальным) компонентом, поскольку они невидимы во время выполнения программы. Этот компонент находится на странице Палитры компонентов Win 32.
1.6 Компонент TTimer
TTimer (таймер) служит для отсчета интервалов реального времени. Его свойство interval определяет интервал времени в миллисекундах, который должен пройти от включения таймера до наступления события onTimer. Таймер включается при установке значения True в его свойство Enabled. Раз включенный таймер все время будет возбуждать события onTimer до тех пор, пока его свойство Enabled не примет значения False.
2.3 Разработка основных алгоритмов программного продукта
2.4 отладка и тестирование
при отлатке программы ошибок не обнаружено
- инсткурция пользователю
Описание пользовательского интерфейса
- Файл → Новая игра – начало новой игры.
- Файл → Выход – выход из программы.
- Справка → О программе – Вывод дополнительной информации о программе и о её создателе.
Заключение
В результате выполнения данной курсовой работы мной была разработана игровая программа под названием “Крестики-нолики”. Было проведено исследование компонентов программной среды Borland Delphi 6.0, которые использовались при создании программы, использовалось множество процедур и функций. Была использована и изучена процедура блокировки кнопки “максимизации”.
При создании программы использовались следующие компоненты: TMainMenu, TLabel, TPanel, TImage, TImageList, TTimer.
Также использовались и другие программы:
- Adobe Photoshop CS v8.0 – использовался для создания дополнительных надписей на картинке для формы “О программе”;
- Restorator 2005 v3.50 build 1442 – использовался для изменения иконки EXE файла игры;
- Microsoft Paint v5.1 – использовался для создания рисунков к данному курсовому проекту
Изначально я подумывал сделать данную программу с искусственным интеллектом, т.е. сделать возможной игру человека с компьютером, но потом передумал, т.к. компьютер ходил бы на бум, а разработка более серьёзного искусственного интеллекта пока не в моих силах.
Список используемой литературы
- Михаил Фленов «Библия Delphi» БХВ-Петербург, 2004г. 880с.
- Интернет портал http://delphiworld.narod.ru
- Интернет портал http://delphikingdown.ru
Приложение 1
Исходный текст
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, unit2, ExtCtrls, ComCtrls, unit3, StdCtrls, ImgList;
type
TForm1 = class(TForm)
MainMenu1: TMainMenu;
FileMenuItem: TMenuItem;
NewMenuItem: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
InformationMenuItem: TMenuItem;
AboutMenuItem: TMenuItem;
Panel1: TPanel;
Panel2: TPanel;
Panel3: TPanel;
Panel4: TPanel;
Panel5: TPanel;
Panel6: TPanel;
Panel7: TPanel;
Panel8: TPanel;
Panel9: TPanel;
Panel10: TPanel;
Timer1: TTimer;
ImageList1: TImageList;
procedure AboutMenuItemClick(Sender: TObject);
procedure Panel2Click(Sender: TObject);
procedure Panel5Click(Sender: TObject);
procedure Panel8Click(Sender: TObject);
procedure Panel3Click(Sender: TObject);
procedure Panel6Click(Sender: TObject);
procedure Panel9Click(Sender: TObject);
procedure Panel4Click(Sender: TObject);
procedure Panel7Click(Sender: TObject);
procedure Panel10Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure NewMenuItemClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure N4Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
Implementation
{$R *.dfm}
procedure clean; // Процедура общего сброса («Новая игра»)
begin
Form1.Timer1.Enabled:=false; // Для надежности выключаем таймер
Form1.Panel2.BevelInner:=bvNone; // Меняем стиль панели на начальный
Form1.Panel2.Caption:=»; // Убираем заголовок панели
Form1.Panel3.BevelInner:=bvNone;
Form1.Panel3.Caption:=»;
Form1.Panel4.BevelInner:=bvNone;
Form1.Panel4.Caption:=»;
Form1.Panel5.BevelInner:=bvNone;
Form1.Panel5.Caption:=»;
Form1.Panel6.BevelInner:=bvNone;
Form1.Panel6.Caption:=»;
Form1.Panel7.BevelInner:=bvNone;
Form1.Panel7.Caption:=»;
Form1.Panel8.BevelInner:=bvNone;
Form1.Panel8.Caption:=»;
Form1.Panel9.BevelInner:=bvNone;
Form1.Panel9.Caption:=»;
Form1.Panel10.BevelInner:=bvNone;
Form1.Panel10.Caption:=»;
Form1.Tag:=0;
Form1.Timer1.Enabled:=true; // Возобновляем работу таймера
end;
procedure TForm1.AboutMenuItemClick(Sender: TObject);
begin
Form2.ShowModal; // Вызываем окно «О программе»
end;
procedure TForm1.Panel2Click(Sender: TObject);
begin
if Panel2.Caption<>» then exit; // Проверка на заголовок панели (анти-мухлеж)
Panel2.BevelInner:=bvLowered; // Присваиваем стиль при нажатии на панель
if Form1.Tag=0
then // Меняем tag формы (для чередования X и O)
begin
Panel2.Caption:=’X’; // если таг=0 тогда вписываем X
Form1.Tag:=1;
end
else
begin
Panel2.Caption:=’O’; // если таг=1 тогда вписываем O
Form1.Tag:=0;
end;
end;
procedure TForm1.Panel5Click(Sender: TObject);
begin
if Panel5.Caption<>» then exit;
Panel5.BevelInner:=bvLowered;
if Form1.Tag=0
then
begin
Panel5.Caption:=’X’;
Form1.Tag:=1;
end
else
begin
Panel5.Caption:=’O’;
Form1.Tag:=0;
end;
end;
procedure TForm1.Panel8Click(Sender: TObject);
begin
if Panel8.Caption<>» then exit;
Panel8.BevelInner:=bvLowered;
if Form1.Tag=0
then
begin
Panel8.Caption:=’X’;
Form1.Tag:=1;
end
else
begin
Panel8.Caption:=’O’;
Form1.Tag:=0;
end;
end;
procedure TForm1.Panel3Click(Sender: TObject);
begin
if Panel3.Caption<>» then exit;
Panel3.BevelInner:=bvLowered;
if form1.Tag=0
then
begin
Panel3.Caption:=’X’;
Form1.Tag:=1;
end
else
begin
Panel3.Caption:=’O’;
Form1.Tag:=0;
end;
end;
procedure TForm1.Panel6Click(Sender: TObject);
begin
if Panel6.Caption<>» then exit;
Panel6.BevelInner:=bvLowered;
if form1.Tag=0
then
begin
Panel6.Caption:=’X’;
Form1.Tag:=1;
end
else
begin
Panel6.Caption:=’O’;
Form1.Tag:=0;
end;
end;
procedure TForm1.Panel9Click(Sender: TObject);
begin
if Panel9.Caption<>» then exit;
Panel9.BevelInner:=bvLowered;
if form1.Tag=0
then
begin
Panel9.Caption:=’X’;
Form1.Tag:=1;
end
else
begin
Panel9.Caption:=’O’;
Form1.Tag:=0;
end;
end;
procedure TForm1.Panel4Click(Sender: TObject);
begin
if Panel4.Caption<>» then exit;
Panel4.BevelInner:=bvLowered;
if Form1.Tag=0
then
begin
Panel4.Caption:=’X’;
Form1.Tag:=1;
end
else
begin
Panel4.Caption:=’O’;
Form1.Tag:=0;
end;
end;
procedure TForm1.Panel7Click(Sender: TObject);
begin
if Panel7.Caption<>» then exit;
Panel7.BevelInner:=bvLowered;
if Form1.Tag=0
then
begin
Panel7.Caption:=’X’;
Form1.Tag:=1;
end
else
begin
Panel7.Caption:=’O’;
Form1.Tag:=0;
end;
end;
procedure TForm1.Panel10Click(Sender: TObject);
begin
if Panel10.Caption<>» then exit;
Panel10.BevelInner:=bvLowered;
if Form1.Tag=0
then
begin
Panel10.Caption:=’X’;
Form1.Tag:=1;
end
else
begin
Panel10.Caption:=’O’;
Form1.Tag:=0;
end;
end;
procedure TForm1.Timer1Timer(Sender: TObject); // Процедура проверки на выигрыш;
begin
try // защита от непредвиденных ошибок
if (Panel2.BevelInner=bvLowered) and (Panel4.BevelInner=bvLowered) and (Panel3.BevelInner=bvLowered) then
// Если панели нажаты, то проверяем заголовки
if (Panel2.Caption=Panel3.Caption) and (Panel2.Caption=Panel4.Caption)
then
begin
Form3.Label1.Caption:=Form1.Panel2.Caption; // Если выигрышная комбинация то присваиваем Х или О в Лейбл формы поздравления
Form3.ShowModal; // Открываем окно поздравления «:-)»
clean; // Очистка игрового поля
end;
if (Panel7.BevelInner=bvLowered) and (Panel5.BevelInner=bvLowered) and (Panel6.BevelInner=bvLowered) then
if (Panel5.Caption=Panel6.Caption) and (Panel5.Caption=Panel7.Caption)
then
begin
Form3.Label1.Caption:=Form1.Panel5.Caption;
Form3.ShowModal;
clean;
end;
if (Panel9.BevelInner=bvLowered) and (Panel10.BevelInner=bvLowered) and (Panel8.BevelInner=bvLowered) then
if (Panel8.Caption=Panel9.Caption) and (Panel8.Caption=Panel10.Caption)
then
begin
Form3.Label1.Caption:=Form1.Panel10.Caption;
Form3.ShowModal;
clean;
end;
if (Panel5.BevelInner=bvLowered) and (Panel2.BevelInner=bvLowered) and (Panel8.BevelInner=bvLowered) then
if (Panel2.Caption=Panel5.Caption) and (Panel2.Caption=Panel8.Caption)
then
begin
Form3.Label1.Caption:=Form1.Panel2.Caption;
Form3.ShowModal;
clean;
end;
if (Panel9.BevelInner=bvLowered) and (Panel3.BevelInner=bvLowered) and (Panel6.BevelInner=bvLowered) then
if (Panel6.Caption=Panel3.Caption) and (Panel6.Caption=Panel9.Caption)
then
begin
Form3.Label1.Caption:=Form1.Panel3.Caption;
Form3.ShowModal;
clean;
end;
if (Panel4.BevelInner=bvLowered) and (Panel7.BevelInner=bvLowered) and (Panel10.BevelInner=bvLowered) then
if (Panel4.Caption=Panel7.Caption) and (Panel10.Caption=Panel4.Caption)
then
begin
Form3.Label1.Caption:=Form1.Panel4.Caption;
Form3.ShowModal;
clean;
end;
if (Panel6.BevelInner=bvLowered) and (Panel2.BevelInner=bvLowered) and (Panel10.BevelInner=bvLowered) then
if (Panel2.Caption=Panel6.Caption) and (Panel2.Caption=Panel10.Caption)
then
begin
Form3.Label1.Caption:=Form1.Panel2.Caption;
Form3.ShowModal;
clean;
end;
if (Panel6.BevelInner=bvLowered) and (Panel8.BevelInner=bvLowered) and (Panel4.BevelInner=bvLowered) then
if (Panel4.Caption=Panel6.Caption) and (Panel8.Caption=Panel4.Caption)
then
begin
Form3.Label1.Caption:=Form1.Panel4.Caption;
Form3.ShowModal;
clean;
end;
except;
end;
if (Panel2.BevelInner=bvLowered) and (Panel3.BevelInner=bvLowered) and (Panel4.BevelInner=bvLowered) and (Panel5.BevelInner=bvLowered) and (Panel6.BevelInner=bvLowered) and (Panel7.BevelInner=bvLowered) and (Panel8.BevelInner=bvLowered) and (Panel9.BevelInner=bvLowered) and (Panel10.BevelInner=bvLowered)
then
begin
Form1.Timer1.Enabled:=False;
ShowMessage (‘Ничья, попробуйте ещё раз!’);
clean;
end;
end;
procedure TForm1.NewMenuItemClick(Sender: TObject);
begin
clean; // Очистка игрового поля для новой игры
end;
procedure TForm1.FormCreate(Sender: TObject);
var
l:DWORD; // Процедура блокировки кнопки «Развернуть»
begin
l:=GetWindowLong(Self.Handle,GWL_STYLE);
l:=l and not(WS_MAXIMIZEBOX);
l:=SetWindowLong(Self.Handle,GWL_STYLE,l);
end;
procedure TForm1.N4Click(Sender: TObject);
begin
Close; // Выход из программы
end;
end.
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, jpeg, ExtCtrls;
type
TForm2 = class(TForm)
Image1: TImage;
Label1: TLabel;
Label3: TLabel;
Label2: TLabel;
Label4: TLabel;
procedure Image1Click(Sender: TObject);
procedure Label1Click(Sender: TObject);
procedure Label2Click(Sender: TObject);
procedure Label3Click(Sender: TObject);
procedure Label4Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
Implementation
{$R *.dfm}
procedure TForm2.Image1Click(Sender: TObject);
begin
Close; // Закрытие окна при нажатии на него
end;
procedure TForm2.Label1Click(Sender: TObject);
begin
Close;
end;
procedure TForm2.Label2Click(Sender: TObject);
begin
Close;
end;
procedure TForm2.Label3Click(Sender: TObject);
begin
Close;
end;
procedure TForm2.Label4Click(Sender: TObject);
begin
Close;
end;
end.
unit Unit3;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, jpeg;
type
TForm3 = class(TForm)
Image1: TImage;
Label3: TLabel;
Label2: TLabel;
Label1: TLabel;
procedure FormShow(Sender: TObject);
procedure Image1Click(Sender: TObject);
procedure Label1Click(Sender: TObject);
procedure Label2Click(Sender: TObject);
procedure Label3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form3: TForm3;
implementation
uses Unit1;
{$R *.dfm}
procedure TForm3.FormShow(Sender: TObject);
begin
Form1.Timer1.Enabled:=False; // Выключаем таймер
end;
procedure TForm3.Image1Click(Sender: TObject);
begin
Close; // Закрытие окна при нажатии на него
end;
procedure TForm3.Label1Click(Sender: TObject);
begin
Close;
end;
procedure TForm3.Label2Click(Sender: TObject);
begin
Close;
end;
procedure TForm3.Label3Click(Sender: TObject);
begin
Close;
end;
end.
Приложение 2
Блок схема
нет
да
нет
да
PAGE 16
Содержание:
Введение
Практически у каждой организации или предприятие введется учет данных в документальной форме, а также с использованием определенных программных продуктов для той или иной сферы деятельности. Каждая организация хочет как можно больше упростить и как можно лучше оптимизировать учет своей сферы. В некоторых организациях возникает актуальность быстрого обслуживания клиентов при продаже продавцом той или иной продукции. Не всегда удобно использовать большие электронные таблицы расчетов, такие как Microsoft Excel, в которых можно сбиться и запутаться, так как она может визуально содержать много информации для пользователя. Трудно сделать восстановление информации и отследить ошибку при вводе при учете тех или иных данных.
Система 1С всегда имела широкий интерес у любой компании. Использование 1С:Предприятие облегчает документооборот и ускоряет выполнение рутинных задач. Однако, создание конфигурации и настройка инфраструктуры для её использования – непростая задача. К тому же, для каждой сферы деятельности нередко приходится создавать с нуля уникальную конфигурацию, соответствующую специфичным условиям работы фирмы.
В рамках данной курсовой работы будет произведена разработка конфигурации 1С:Предприятите. Конфигурация должна быть одновременно как достаточно функциональной, обладающей спектром всех необходимых функций и возможностей, удовлетворяющей требованиям заказчика, так и простой и понятной, чтобы сократить время обучения персонала и внедрения системы.
Будет разработана комплексная система, содержащая широкий спектр объектов конфигурации 1С, таких как документы, справочники, регистры накопления и прочие. В то же время в системе будут созданы роли, разграничивающие возможности пользователей в соответствии с их рабочими обязанностями.
Для достижения этих целей необходимо решить следующие задачи:
- изучить предметную область;
- составить техническую и программную архитектуру предприятия;
- охарактеризовать текущие бизнес-процессы компании;
- проанализировать требования заказчика и среду разработки;
- разработать и протестировать базу данных конфигурации 1С: Предприятия.
Глава 1. Теоретическая часть.
Краткий анализ предметной области
Автосервис, предоставляющий широкий спектр качественных услуг по обслуживанию и доработке автомобилей. Компания занимается как проведением регулярного технического обслуживания, шиномонтажом, так и выполнением более сложных работ, включая кузовной ремонт, покрасочные работы, мероприятия по увеличению производительности транспортных средств.
Основан в 2015 году. В своём штате имеет высококлассных специалистов, способных выполнять свою работу на высочайшем уровне, за что особо ценится среди клиентов и выгодно выделает на фоне прочих автосервисов.
В компании присутствует call-центр, при помощи которого можно произвести запись, получить краткую консультацию, а также записаться на приём в сервис для диагностики или проведения определённого типа работ. К каждому из клиентов формируется индивидуальный подход. Для каждого клиента создаётся индивидуальная карточка в системе, куда записывается основная информация о клиенте, автомобиле клиента.
Основными целями компании являются:
- Получение прибыли;
- Увеличение получаемой прибыли;
- Повышение качества обслуживания и ремонта;
- Упрощение ведения документооборота за счёт информатизации и автоматизации соответствующих областей деятельности;
Главные технико-экономические показатели за 2020 год приведены в таблице 1.
Таблица 1.
Технико-экономические показатели ООО «Движок».
№ п/п |
Наименование характеристики (показателя) |
Значение показателя за 2020 год |
1. |
Количество обслуженных автомобилей, штук |
8257 |
2. |
Площадь помещения, м2 |
1120 |
3. |
Выручка, тыс. руб. |
109758 |
4. |
Чистая прибыль, тыс. руб |
762 |
Организационная структура управления предприятием
Управление автосервисом имеет линейную организационную структуру. В ней каждый отдел подчиняется единоличному руководителю, которые, в свою очередь, подчиняются только одному лицу – непосредственному вышестоящему руководителю. Линейная структура проста и понятна, широко используется и в современных условиях, однако требует современных методов организации работы предприятия. Обязанности каждой роли имеют чёткую характеристику, что даёт возможность к оперативному решению поставленных задач. Все взаимосвязи в компании имеют выраженную структуру подчинения, каждый уровень зависим от вышестоящего и обязан выполнять поставленные им задачи, равно как и предоставлять отчёты о проделанной работе.
Организационная структура показана на рисунке 1.
Рисунок 1. Организационная структура предприятия.
Основное руководство компанией осуществляется генеральным директором. Им определяются векторы дальнейшего развития автосервиса, маркетинговые стратегии компании, необходимость в пополнении или обновлении штата сотрудников. В подчинении у генерального директора находятся главный бухгалтер, руководитель ремонтного отдела, руководитель отдела по работе с клиентами и руководитель отдела закупок.
Главный бухгалтер руководит всей бухгалтерией и финансами предприятия. В его задачи входит управление всеми финансовыми потоками компании, планирование бюджета, ведение бухгалтерской и налоговой отчётности, формирование отчётности, обеспечение финансовой стабильности. В подчинении у главного бухгалтера находится отдел бухгалтерии.
Отдел бухгалтерии занимается ведением бухгалтерской и налоговой отчётности. Основными обязанностями бухгалтерского отдела являются подбор и предоставление документов для предоставления в банки и другие учреждения в бумажном и цифровом виде, разработка и выполнение мероприятий для снижения налогообложения, ведение отчётности, а также выполнение разовых поручений вышестоящих лиц.
В непосредственные обязанности главного механика входят подбор персонала для выполнения ремонта, контроль выполнения ремонтных и покрасочных работ, контроль правильности составления документов, распределение заказов между сотрудниками сервиса.
В обязанности сотрудников ремонтного отдела входит непосредственно выполнение ремонтных работ, формирование документов о выполнении каких-либо работ, формирование закупок запчастей, необходимых для выполнения ремонта.
Руководитель Call-центра обязан следить за правильностью заполнения заявок на ремонт, а также при высокой загруженности также принимать участие в формировании заявок на ремонт.
Call-центр формирует заявки на ремонт, а также проводит первичную консультацию по телефону. В некоторых случаях применяется практика рекламных звонков абонентам, которым могут быть интересны услуги автосервиса.
Программная и техническая архитектура ИС предприятия
Техническая архитектура изображена на рисунке 2.
В сети установлен межсетевой экран, обеспечивающий создание виртуальной закрытой сети и повышающий безопасность.
Всё предприятие поделено на три подсети. Первая подсеть находится непосредственно в автосервисе и состоит из точки доступа Wi-Fi и 3 рабочих станций. В этой области наличие беспроводного доступа необходимо, так как компьютеры нередко приходится перемещать по основному цеху автосервиса для выполнения специализированных задач.
Вторая подсеть отвечает за административное здание. Здесь находятся рабочие станции генерального директора и бухгалтерии, принтер для печати документов, а также рабочие станции Call-центра с установленными IP-телефонами.
На всех рабочих станциях установлен одинаковый пакет программ. Он состоит из пакета Microsoft Office 2019, клиента приложения 1С:Предприятие, а также встроенным браузером для выхода в сеть интернет Microsoft Edge. Также на рабочие станции механиков установлен различный диагностический и настроечный софт от автопроизводителей. На всех компьютерах установлена операционная система Windows 10.
Третья подсеть содержит все сервера компании. Первый сервер представляет из себя сервер приложений. Второй сервер – сервер базы данных. На всех серверах установлена операционная система Windows Server 2016. На сервере приложений установлен сервер 1С. На сервере базы данных установлена MS SQL Server 2019.
На межсетевом экране установлено встроенное ПО производителя. Программа SecuExtender Software позволяет произвести настройку виртуальной сети предприятия и производить фильтрацию контента, поступающего из сети.
Рисунок 2. Техническая архитектура ООО «Движок».
В таблице 2 представлено описание технических характеристики элементов технической архитектуры.
Таблица 2.
Технические характеристики элементов технической архитектуры.
№ |
Наименование устройства |
Основные характеристики |
1 |
Межсетевой экран ZyXEL ZyWall VPN50 |
Поддержка IPv6: есть Сетевые стандарты: IEEE 802.1q (VLAN), автоопределение MDI/MDIX Количество LAN-портов: 4 Базовая скорость передачи данных: 1 Гбит/с Количество uplink/стек/SFP-портов и модулей: 1 Максимальная скорость uplink/SFP-портов: 1 Гбит/с DHCP-сервер: есть Межсетевой экран (Firewall): есть NAT: Есть WAN-порт: Ethernet 10/100/1000 Мбит/сек Количество WAN-портов: 2 Консольный порт: есть Web-интерфейс: есть Поддержка Telnet: есть |
2 |
Ноутбук Lenovo IdeaPad S145 |
Процессор: Ryzen 5 3500U Разрешение экрана: 1920×1080 Оперативная память: 8Гб Встроенный накопитель: 1Тб Диагональ дисплея: 15.6” Wi-Fi: 802.11ac |
3 |
Коммутатор D-LINK DES-3200-26 |
Базовая скорость передачи данных: 100 Мбит/сек Общее количество портов коммутатора: 26 Количество портов 100 Мбит/сек: 24 Количество портов 1 Гбит/сек: 2 Размер таблицы МАС адресов: 8000 Внутренняя пропускная способность: 8.8 Гбит/сек Скорость обслуживания пакетов: 6 Буфер пакетов: 1500 Кбайт |
4 |
Сервер НИКС S6000 / 1U |
Процессор: Intel XEON E3 1240 v6 (3.7-4.1 ГГц, 4 ядра, 8 потоков) Оперативная память: 16Гб DDR4 2666 МГц Объём накопителя: 2х2 Тб HDD SATA Сетевая карта: 2х10/100/1000 Мбит/сек Высота: 1U Приблиз. Кол-во пользователей 1с: 5-20 |
5 |
Принтер HP LaserJet Pro M404dn |
Технология печати: лазерный Тип печати: черно-белый Формат печати: A4 Скорость печать (ч/б): до 38 стр/мин, формата А4 Разрешение печати (ч/б): 4800 x 600 dpi |
6 |
Wi-Fi роутер TP-LINK Archer C6 |
Стандарты Wi-Fi: 4 (802.11n) , 5 (802.11ac) Количество LAN портов: 4 Скорость передачи по проводному подключению: 1000 Мбит/сек Поддержка DHCP: есть Статическая маршрутизация: есть |
7 |
Телефон IP Yealink SIP-T19 E2 |
Наличие WAN порта: Да Наличие LAN порта: Да Конференц-связь: Да Количество линий: 1 шт. |
На рисунке 3 изображена программная архитектура предприятия.
Рисунок 3. Программная архитектура предприятия.
-
-
Характеристика существующих бизнес-процессов и определение места проектируемой задачи в комплексе задач и её описание
-
Основным видом деятельности для предприятия является ремонт транспортных средств. Характеристика процесса представлена на рисунке 4.
Рисунок 4. Схема основного бизнес-процесса ООО «Движок»
На рисунке 5 представлена декомпозиция процесса.
Рисунок 5. Декомпозиция основного бизнес-процесса ООО «Движок»
На входе имеется потребность в ремонте автомобиля (а также достоверность владения транспортным средством либо доверенностью на выполнение определённых операций), а на выходе – выполненные работы, прибыль и отчётная документация. Управление существующими бизнес-процессами происходит в соответствии с нормативно-правовой базой в данной области, а также внутренние инструкции и регламенты компании по выполнению указанных ранее типов работ. Механизмами выполнения работ являются сотрудники компании.
Анализ существующего программного обеспечения, позволяющего решить поставленную задачу
На рынке представлено немало программ ERP, предоставляющих автоматизацию процессов работы и учёта. В связи с этим необходимо провести сравнительный анализ этих программ по нескольким критериям. Результаты анализа представлены в таблице 3.
Таблица 3.
Сравнительный анализ программ ERP.
Название параметра |
1С:Предприятие |
Галактика-ERP |
Парус-ERP |
Microsoft Dynamics AX |
Oracle Business Intelligence Enterprise Edition |
Стоимость (включая лицензию) (тыс. руб.) |
10-30 |
15-45 |
30-60 |
40-150 |
50-200 |
Срок внедрения (мес) |
3-9 |
4-18 |
4-12 |
8-48 |
12-60 |
Русскоязычный интерфейс |
+ |
+ |
+ |
+ |
— |
Наличие мобильного приложения |
+ |
+ |
— |
+ |
+ |
Интеграция с сайтом |
+ |
+ |
— |
+ |
+ |
1С:Предприятие – единая платформа для автоматизации деятельности организации. Система обладает гибкой настройкой, позволяющей адаптировать её под любые задачи и предприятия. Также программа обладает открытым кодом, однако за функционалом и открытостью также следует увеличение сроков обучения сотрудников и снижение быстродействия.
Галактика-ERP – интегрированная система управления предприятием, позволяющая в едином информационном пространстве оперативно решать главные управленческие задачи, а также обеспечивать персонал предприятия различного уровня управления необходимой и достоверной информацией для принятия управленческих решений. Обладает модульной структурой, позволяющей тонко настроить итоговый продукт. ИЗ недостатков можно выделить трудный программный код, который лишь частично находится в открытом доступе, и заметное ухудщение быстродействия при обработке большого количества данных.
Парус-ERP — серия программных продуктов, предназначенных для автоматизации деятельности организаций сектора государственного и муниципального управления, а также коммерческих предприятий, выпускаемое одноимённой российской компанией. Из недостатков можно выделить отсутствие мобильной версии и интеграции с сайтом, а также, как и в случае с Галактика-ERP, заметное снижение быстродействия при работе с большими объёмами данных.
Microsoft Dynamics AX — одно из программных решений корпорации Microsoft для автоматизации управления предприятием (ERP-систем), поставляемых подразделением Microsoft Dynamics. Система была разработана для среднего и крупного сегментов бизнеса и предоставляет функции финансового менеджмента, бизнес-анализа, управления процессами производства.
Oracle Business Intelligence Enterprise Edition (OBIEE, OBI) — программная платформа для решения задач бизнес-аналитики: интерактивных и публикуемых отчетов, мониторинга KPI и бизнес-процессов.
К главным недостаткам зарубежных ERP-систем можно отнести большую стоимость продукта и более долгие сроки внедрения. Также эти системы более сложны в освоении, в связи с чем увеличиваются сроки обучения сотрудников. Если рассматривать каждое решение отдельно, то в решении от Oracle отсутствует русскоязычный интерфейс, а решение от Microsoft обладает закрытым программным кодом.
Глава 2. Практическая часть
2.1. Анализ среды разработки
Разработка решения будет производиться при помощи системы 1С: Предприятие версии 8.3. Ключевым понятием архитектуры 1с является разделение программного приложения на платформу и конфигуратор. Разделение на платформу и конфигурацию необходимо для экономии времени на создание программного продукта.
Сама платформа не является программным продуктом для использования конечным пользователем. Она содержит основные типовые элементы будущей конфигурации, называющиеся метаданными. На основе метаданных создаётся конкретное программное решение, которое впоследствии использует заказчик. Также платформа предназначена для осуществления автоматизации взаимодействия программного приложения 1С со всеми ресурсами компьютера.
Второй основной блок – конфигуратор. Конфигурация определяет некоторые нестандартные, нетиповые методы и средства, которые и определяют созданную конфигурацию. Можно сказать, что конфигуратор настраивает программу на конкретную прикладную область. Конфигуратор определяет следующие функции:
- Структура учётных данных, форма ввода, вывода, печати.
- Состав механизмов учёта, итоговых данных и движение учётных данных
- Состав различных отчётов и обработок
- Набор пользовательских интерфейсов
- Набор ролей (прав доступа)
- Набор общих процедур и функций
- Набор вспомогательных объектов
Система 1С имеет два варианта работы: файловый и серверный. В файловом режиме работы система «имитирует» функции сервера на компьютере пользователя, потому при разработке любой конфигурации следует придерживаться клиент-серверного механизма работы. Такой режим работы прост в настройке и обслуживании и подойдёт для небольших компаний с малым документооборотом (до 5 сотрудников). В данном случае файл информационной базы (содержащий конфигурацию, данные, движения по регистрам и настройки пользователей) хранится в одном файле и располагается на общем сетевом ресурсе, доступном всем пользователям системы.
Для компаний с большим количеством пользователей и сложным документооборотом целесообразней будет использовать серверный вариант хранения в реляционных базах данных, однако такой вариант требует определённых навыков по установке, настройке и администрированию.
При использовании клиент-серверной архитектуры происходит разделение всей работающей системы на три части: клиентское приложение, кластер серверов 1С:Предприятие, сервер базы данных. При этом кластер серверов 1С:Предприятие и сервер базы данных могут физически располагаться и на одном компьютере.
2.2. Архитектура разрабатываемого прикладного решения
В результате анализа требований и согласования с руководством были разработаны следующие объекты конфигурации, описание которых приведено далее.
Конфигурация состоит из 4 справочников, хранящих данные о клиентах, данные о сотрудниках, контакты поставщиков запчастей, а также справочник каталога услуг.
В конфигурации имеются 5 документов. Первый документ представляет собой заявку на ремонт, формирующуюся работниками Call-центра при звонке клиента. Второй документ содержит в себе результаты диагностики транспортного средства, в том числе список проведённых работ, список необходимых работ и список необходимых запчастей. Третий документ – заказ-наряд, формирующийся при непосредственном проведении ремонта и содержащий список проведённых работ, использованных запчастей, а также итоговую сумму оплаты. Четвёртый документ свидетельствует о закупке запчастей мастером у определённого поставщика. Пятый документ является свидетельством о выплате сотруднику зарплаты и заработанных бонусов.
Все движения регистрируются двумя регистрами накоплений. Первый регистр отслеживает поступления и расходы средств в целом: оплаты запчастей компанией, оплаты ремонтов клиентами, выплату заработных плат сотрудникам. Второй регистр накоплений отслеживает выполненные сотрудниками ремонты и диагностики и вычитывает размер бонуса сотрудника с каждой оплаты.
Для просмотра информации в системе присутствует три отчёта. Первый отчёт даёт возможность в удобном виде просмотреть информацию о сотрудниках. Второй отчёт позволяет посмотреть обороты фирмы за выбранный период. Третий отчёт предназначен для расчёта зарплаты сотрудникам. Он имеен два варианта. Первый вариант отчёта включает в себя оклад сотрудника и высчитывает всю заработную плату сотрудника за указанный период. Второй вариант отчёта предполагает только просмотр бонусов сотрудника за выбранный период.
Конфигурация содержит 4 роли, которые ограничивают доступ пользователей к некоторой информации:
- Механики имеют полный доступ к созданию документов из подсистемы Ремонт, имеют право на просмотр и добавление клиентов в справочник, могут просматривать справочник каталога услуг, но имеют только частичный доступ ко справочнику сотрудников (не доступна информация об окладе);
- Сотрудники Call-центра имеют право просматривать, изменять и дополнять информацию в справочнике о клиентах, просматривать справочники с сотрудниками и каталогом услуг, и формировать заявки на ремонт, однако доступ к остальным документам и справочникам им не предоставлен.
- Бухгалтерия имеет доступ ко всем справочникам, имеет право формировать отчёты, а также может просматривать созданные документы и просматривать движения по регистрам накопления.
- Директор имеет неограниченный доступ ко всем объектам конфигурации. Единственным ограничением является невозможность редактировать регистры накопления.
Все эти объекты распределены по 3 подсистемам – бухгалтерия, ремонт и справочники.
2.3. Описание основных объектов (элементов) разрабатываемого прикладного решения
Вся конфигурация разделена на 3 подсистемы. Их состав представлен на рисунке 6.
Рисунок 6. Состав подсистем конфигурации.
Следующими основными элементами конфигурации являются справочники. Для текущей конфигурации необходимо 4 справочника. Все они входят в подсистему «Справочники». Их список и содержащиеся данные представлены на рисунке 7.
Рисунок 7. Содержание справочников.
Первый справочник – список сотрудников компании. Реквизиты справочника:
- Наименование (стандартный) – ФИО сотрудника;
- Код (стандартный) – код записи в справочнике;
- Должность – содержит данные о должности, занимаемой сотрудником;
- Оклад – содержит оклад сотрудника.
Второй справочник – список клиентов компании. Реквизиты справочника:
- Наименование (стандартный) – ФИО клиента;
- Код (стандартный) – код записи в справочнике;
- Телефон – содержит номер мобильного телефона клиента для связи;
- Название – содержит название автомобиля клиента;
- VIN – содержит код VIN (Vehicle Identification Number, автомобильный идентификационный номер) автомобиля;
- ГосНомер – содержит государственный регистрационный номер автомобиля.
Третий справочник – каталог услуг. Справочник содержит иерархическую структуру для более удобного разделения услуг на подкатегории. Реквизиты справочника:
- Наименование (стандартный) – наименование услуги;
- Код (стандартный) – код записи в справочнике.
- Четвёртый, последний справочник – список поставщиков. Реквизиты справочника:
- Наименование (стандартный) – наименование фирмы-поставщика;
- Код (стандартный) – код записи в справочнике;
- КонтактноеЛицо – содержит ФИО контактного лица компании в фирме-поставщике;
- Телефон – телефон контактного лица;
- Email – электронная почта контактного лица.
Следующими объектами конфигурации являются документы. В конфигурации представлено 5 документов: «Заявка на ремонт», «Диагностика», «Заказ-наряд», «Закупка запчастей» и «Платёжка зарплаты». Они представлены на рисунке.
Документ «Заявка на ремонт» относится к подсистеме «ремонт». Он формируется сотрудником Call-центра и представляет собой свидетельство и записи клиента на приём в определённый день для выполнения работ, указанных при формировании заявки. Реквизиты и табличная часть документа «Заявка на ремонт» указаны на рисунке. Программный код модуля формы документа указан в приложении 1.
Описание реквизитов документа «Заявка на ремонт»:
- Дата (стандартный реквизит) – Дата создания документа;
- Номер (стандартный реквизит) – номер документа в системе;
- Клиент – ФИО клиента из справочника;
- Телефон – мобильный телефон клиента;
- Автомобиль – название автомобиля клиента;
- VIN – VIN-код автомобиля;
- ГосНомер – регистрационный номер автомобиля;
- ДатаИВремяПриема – дата и время, на которые записан клиент.
Документ содержит одну табличную часть ПредполагаемыйСоставРабот. Единственный реквизит – наименование работы, которое выбирается из справочника «Каталог услуг».
Документ «Диагностика» формируется механиком, когда клиенту необходимо только продиагностировать определённые узлы транспортного средства и рассчитать примерную стоимость ремонта. Входит в подсистему «Ремонт». Реквизиты и табличная часть документа «Заявка на ремонт» указаны на рисунке. Программный код модуля, форма печати, а также программный код модуля формы документа указаны в приложениях 2, 3 и 4 соответственно.
Описание реквизитов документа «Диагностика»:
- Дата (стандартный реквизит) – Дата создания документа;
- Номер (стандартный реквизит) – номер документа в системе;
- Клиент – ФИО клиента из справочника;
- Телефон – мобильный телефон клиента;
- Автомобиль – название автомобиля клиента;
- VIN – VIN-код автомобиля;
- ГосНомер – регистрационный номер автомобиля;
- Пробег – пробег автомобиля;
- ДиагностикуПровёл – ФИО сотрудника, проводившего диагностику;
- ИтогоРасчёт – итоговая сумма необходимого ремонта
- Итого – стоимость услуг автосервиса.
Описание реквизитов табличной части СтоимостьУслуг:
- Наименование – наименование услуги из справочника «Каталог услуг»;
- Стоимость – стоимость услуги.
Описание реквизитов табличной части РасчётРемонта:
- Наименование – наименование услуги из справочника «Каталог услуг»;
- Количество – количество раз, которые необходимо оказать услугу;
- Цена — цена услуги;
- Стоимость – стоимость оказания услуг в указанном количестве.
Описание реквизитов табличной части РекомендуемыеЗапчасти:
- Наименование – наименование запчасти;
- Количество – количество указанной запчасти;
- Цена — цена за штуку;
- Стоимость – стоимость указанного количества запчастей.
Документ «Заказ-наряд» формируется мастером или маляром по факту выполнения работ с указанием оказанных услуг и использованных запчастей или материалов. Входит в подсистему «Ремонт». Содержит форму печати документа. Реквизиты и табличная часть документа «Заявка на ремонт» указаны на рисунке. Программный код модуля, форма печати, а также программный код модуля формы документа указаны в приложениях 5, 6 и 7 соответственно.
Описание реквизитов документа «Заказ-наряд»:
- Дата (стандартный реквизит) – Дата создания документа;
- Номер (стандартный реквизит) – номер документа в системе;
- Клиент – ФИО клиента из справочника;
- Телефон – мобильный телефон клиента;
- Автомобиль – название автомобиля клиента;
- VIN – VIN-код автомобиля;
- ГосНомер – регистрационный номер автомобиля;
- Пробег – пробег автомобиля;
- РаботуПровёл – ФИО сотрудника, выполнившего ремонт;
- Итого – стоимость ремонта.
Описание реквизитов табличной части ВыполненныеРаботы:
- Наименование – наименование услуги из справочника «Каталог услуг»;
- Количество – количество раз, которые была оказана услуга;
- Цена — цена услуги;
- Стоимость – стоимость оказания услуг в указанном количестве.
Описание реквизитов табличной части ИспользованныеЗапчасти:
- Наименование – наименование запчасти;
- Количество – количество указанной запчасти;
- Цена — цена за штуку;
- Стоимость – стоимость указанного количества запчастей.
Документ «ЗакупкаЗапчастей» формируется механиком и содержится в подсистеме «Бухгалтерия». Закупка запчастей производится заблаговременно при создании заявки на ремонт либо по ходу выполнения работ в случае, если количество работ окажется больше ожидаемого. Реквизиты и табличная часть документа «Заявка на ремонт» указаны на рисунке. Программный код модуля, а также программный код модуля формы документа указаны в приложениях 8 и 9 соответственно.
Описание реквизитов документа «ЗакупкаЗапчастей»:
- Дата (стандартный реквизит) – Дата создания документа;
- Номер (стандартный реквизит) – номер документа в системе;
- Мастер – ФИО сотрудника из справочника;
- Поставщик – наименование поставщика, у которого были закуплены запчасти.
- Итого – итоговая стоимость закупленных запчастей.
Описание реквизитов табличной части ЗакупленныеЗапчасти:
- Наименование – наименование запчасти;
- Количество – количество указанной запчасти;
- Цена — цена за штуку;
- Стоимость – стоимость указанного количества запчастей.
Документ «ПлатёжкаЗарплата» представляет собой документ для выплаты заработной платы сотруднику. В него вводится ФИО сотрудника, автоматически подставляется оклад и при необходимости заполняются бонусы на основании соответствующего отчёта. Реквизиты и табличная часть документа «Заявка на ремонт» указаны на рисунке. Программный код модуля, форма печати, а также программный код модуля формы документа указаны в приложениях 10, 11 и 12 соответственно.
Описание реквизитов документа «ПлатёжкаЗарплата»:
- Дата (стандартный реквизит) – дата создания документа;
- Номер (стандартный реквизит) – номер документа в системе;
- Сотрудник – ФИО сотрудника;
- Оклад – размер оклада сотрудника;
- РазмерБонуса – размер бонуса к окладу, полученный из отчёта;
- Итого – сумма оклада и бонусов.
После этого приступаем к созданию регистров накопления. В данной конфигурации нам понадобится 2 регистра накопления – первый будет отслеживать все движения финансов в компании, второй будет отвечать за учёт работ, выполненных сотрудниками, и расчёт доли сотрудника от каждой работы.
Первый регистр накоплений называется «ДвиженияФинансов». Он принадлежит к подсистеме «Бухгалтерия». В меню данных указываем в качестве измерений – дату, в ресурсах – количество средств, полученных или потраченных в результате операции, а в качестве реквизита будет выступать описание операции (например, оплата за ремонт или выплата зарплаты). Итоговые данные указаны на рисунке 8.
Рисунок 8. Данные регистра накопления «ДвиженияФинансов».
Регистраторами выступают все документы, по которым производится оплата, а именно «Диагностика», «ЗаказНаряд», «ЗакупкаЗапчастей» и «ПлатёжкаЗарплата». Указанные параметры представлены на рисунке 9.
Рисунок 9. Регистраторы регистра накопления «ДвиженияФинансов».
Второй регистр накоплений носит название «БонусСРаботы». Данный регистр также относится к подсистеме «Бухгалтерия». Он предназначен для подсчёта бонуса к зарплате сотрудника с каждой выполненной им в течение периода работой. В качестве измерений присваиваются Сотрудник и Дата, ресурсами выступают СтоимостьРабот и БонусСотруднику (высчитывается по формуле СтоимостьРабот*0.10), а реквизитом является ТипВыполненнойРаботы. Данные регистра накопления отражены на рисунке 10.
Рисунок 10. Данные регистра накопления «БонусСРаботы».
Регистраторами в этот раз выступают лишь 2 документа: Диагностика и ЗаказНаряд, т.к. именно они заполняются при выполнении работ и именно с них и производится расчёт бонуса. Выбранные регистраторы показаны на рисунке 11.
Рисунок 11. Регистраторы регистра накопления «БонусСРаботы».
Последними элементами, необходимыми для конфигурации, являются отчёты. В конфигурации для формирования будут доступны 3 отчёта. Первый отчёт позволяет в удобной форме посмотреть данные о сотрудниках. На рисунке 12 представлены наборы данных и код запроса отчёта. На рисунке 13 представлены настройки отчёта.
Рисунок 12. Наборы данных и код запроса отчёта «ПросмотрСотрудников».
Рисунок 13. Настройки отчёта «ПросмотрСотрудников».
Следующий отчёт – «ПросмотрОборотов», предлагает просмотреть обороты предприятия за выбранный период. Наборы данных, ресурсы и настройки отчёта представлены в рисунках 14, 15 и 16 соответственно.
Рисунок 14. Наборы данных и код запроса отчёта «ПросмотрОборотов».
Рисунок 15. Ресурсы отчёта «ПросмотрОборотов».
Рисунок 16. Настройки отчёта «ПросмотрОборотов».
Последний отчёт – «РасчётЗарплаты». Принадлежит подсистеме «Бухгалтерия». Позволяет узнать размер заработной платы сотрудника за указанный период. Имеет два варианта – первый ведёт подсчёт полной зарплаты, складывая оклад и бонусы, второй производит только подсчёт бонусов. Наборы данных для отчёта, ресурсы, а также настройки и параметры отбора представлены на рисунках 17, 18 и 19 соответственно.
Рисунок 17. Наборы данных и код запроса отчёта «РасчётЗарплаты».
Рисунок 18. Ресурсы отчёта «РасчётЗарплаты».
Рисунок 19. Наборы данных и код запроса отчёта «РасчётЗарплаты».
2.4 Тестирование разработанного прикладного решения
После создания конфигурации необходимо провести тестирование итогового программного продукта. Рассмотрим различные варианты использования программного продукта.
При запуске необходимо выбрать роль и ввести пароль. В первом варианте использования авторизуемся как сотрудник call-центра. Выбираем соответствующего пользователя (рисунок 20).
Рисунок 20. Окно авторизации.
После авторизации на начальном экране присутствует форма для быстрого создания документа «Заявка на ремонт». (Рисунок 21)
Рисунок 21. Начальный экран пользователя «СотрудникКЦ».
Однако сначала перейдём в категорию «Справочники» и откроем справочник «Клиенты» (рисунок 22).
Рисунок 22. Справочник «Клиенты».
Нам необходимо внести данные о новом клиенте.
Нажимаем «Создать» и вводим необходимые данные (Рисунок 23).
Рисунок 23. Создание новой записи в справочник «Клиенты».
Далее открываем категорию «Ремонт» и выбираем документ «Заявка на ремонт».
Создаём новый документ (Рисунок 24).
Рисунок 24. Создание документа «Заявка на ремонт».
Записываем документ и выходим из учётной записи. Снова авторизуемся, но уже под учётной записью механика.
Главная страница учётной записи содержит две формы создания документов – «Заказ-Наряд» и «Диагностика». Однако в данный момент нам необходимо заказать запчасти для выполнения ремонта. Открываем категорию «Бухгалтерия» и создаем документ «Закупка запчастей» (Рисунок 25).
Рисунок 25. Создание документа «Закупка запчастей».
После этого переходим в категорию «Ремонт» и создаём документ «Заказ-наряд» в соответствии с данными, указанными в созданной ранее заявке на ремонт (Рисунок 26, 27).
Рисунок 26. Создание документа «Заказ-наряд».
Рисунок 27. Создание документа «Заказ-наряд» (продолжение).
Проводим и закрываем документ. Теперь проводим диагностику для другого клиента. Для этого в той же категории открываем документ «Диагностика» и создаём его (Рисунок 28, 29).
Рисунок 28. Создание документа «Диагностика».
Рисунок 29. Создание документа «Диагностика» (продолжение).
Проводим документ и выходим из учётной записи механика. Авторизуемся снова как бухгалтер. Открываем категорию и просматриваем регистр накоплений «Движения финансов» (рисунок 30).
Рисунок 30. Просмотр регистра накоплений.
Сформируем отчёт «Список сотрудников». Переходим в категорию «Справочники», из выпадающего меню «Отчёты» выбираем «Просмотр сотрудников». Нажимаем кнопку сформировать (Рисунок 31).
Рисунок 31. Формирование отчёта «Просмотр сотрудников».
Вернёмся в категорию «Бухгалтерия» и создадим отчёт расчёте заработной платы для сотрудника с именем Сидоров Иван Анатольевич за период с 13.12.2020 по 13.01.2021 (Рисунок 32).
Рисунок 32. Формирование отчёта «Расчёт зарплаты».
На основании данных, полученных из этого отчёта, формируем платёжку зарплаты (Рисунок 33).
Рисунок 33. Формирование платёжки.
Проводим документ. Формируем отчёт по оборотам компании (Рисунок 34).
Рисунок 34. Формирование отчёта по оборотам компании.
Тестирование можно считать завершённым. Все функции работают в соответствии с требованиями компании.
Заключение
В последнее время информатизация и цифровизация различных отраслей нашей жизни только ускоряется и захватывает всё больше областей бизнеса. Современное управление компанией, продвижение компании, ведение учёта, документооборота невозможно без использования компьютера и сети Internet. Регулярно происходят обновления технических и программных компонентов.
Система 1С позволяет связать традиционное ведение учёта и современные технологии воедино. С помощью этого симбиоза можно значительно ускорить выполнение рутинного заполнения документов, позволяя выполнять больше рабочих задач и соответственно увеличить прибыль предприятия. Система 1С может использоваться как для крупных предприятий с большим количеством сотрудников и сложным документооборотом, так и для небольших фирм с малым штатом.
В результате выполнения курсовой работы мы познакомились с основными функциональными возможностями платформы 1С. Было изучено создание основных объектов конфигурации, настройка конфигурации, ограничение доступа. Также мы ознакомились с другими вариантами ERP-систем, изучили из особенности, достоинства и недостатки.
Для использования в итоговом предприятии был выбран серверный вариант использования системы 1С. Такой вариант позволяет ускорить вычисления и выдачу результата, в то же время снижая нагрузку на рабочие станции пользователей.
Настройка конфигурации была произведена в соответствии с требованиями заказчика. Уникальность созданной конфигурации показывает гибкость платформы 1С, позволяющую подстроиться под любые условия работы и особенности ведения документооборота и учёта. С помощью системы легко создавать как собственные формы документов, так и унифицированные формы, требуемые государством и различными органами налогообложения.
Практическое ознакомление с созданием конфигураций также помогло узнать об особенностях внутренней работы платформы, особенностях формирования запросов и возможностях встроенного языка 1С, позволяющего тонко настроить аспекты работы созданной конфигурации.
Список использованной литературы
1. Сборник лабораторных работ для студентов учебных заведений, изучающих программирование в системе- П.А.Чистов, А.А. Мальгинова 2020 год
2. Хозяйственные операции в «1С:Бухгалтерии 8» Задачи, решения, результаты. Издание 1 — Д.В. Чистов, С.А. Харитонов 2017 год
3. Хозяйственные операции в «1С:Бухгалтерии 8» Задачи, решения, результаты. Издание 2- Д.В. Чистов, С.А. Харитонов 2018 год
4. Хозяйственные операции в «1С:Бухгалтерии 8» (редакция 3.0). Задачи, решения, результаты. Издание 4- Д.В. Чистов, С.А. Харитонов 2020 год
5. Секреты профессиональной работы с «1С:Бухгалтерией 8» Банк и касса». Издание 3- Е.А. Кадыш, И.В. Фадеева 2018 год
6. Сборник задач для подготовки к экзамену «1С:Специалист» по конфигурированию и внедрению бухгалтерской подсистемы в прикладных решениях «1С:Предприятия 8» — Е.А. Кадыш, И.В. Фадеева 2020 год.
7. Байдаков В., Дранищев В, Краюшкин А, Кузнецов И, Лавров М, Моничев А.1С: Предприятие 8.0 Описание встроенного языка. В 4-х томах.- М.: Фирма «1С», 2004. — 2575с.
8. Белоусов П.С., Островерх А.В. 1С: Предприятие 8.0 от 8.1. Практическое пособие. – М.: ООО”1С-Паблишинг”, 2010. — 286с.: ил.
9. Филимонова Е.В. — Разработка и реализация конфигураций в системе 1С:Предприятие: учебник / Е. В. Филимонова. – Москва: Университет «Университет», 2020. – 208 с.
- Разработка стандартов сервиса в ресторанах.
- Процедура налогового учета в организации
- Понятие жизненного цикла организации.
- Социологическая теория права
- Теоретические основы организации отдыха и развлечений в курортных гостиницах
- Характеристика предприятия общественного питания
- Налоги с физических лиц, экономическое значение их
- Теоретические основы опеки и попечительства
- Конфликтные ситуации в группе и психологические методы их профилактики
- АППАРАТ ГОСУДАРСТВЕННОЙ ВЛАСТИ.
- Разработка сайта по обмену книгами BookChange
- Характеристика предприятия и его деятельности.
Предварительное исследование предметной области при разработке программного обеспечения
Предметная область — это окружение, часть реального мира, связанная или влияющая на объект рассматриваемой деятельности. Без предварительного изучения и анализа предметной области существует огромный риск разработки неэффективного продукта, который останется невостребованным у конечных пользователей или большая вероятность срыва сроков сдачи в эксплуатацию.
Первым этапом нашей работы при получении запроса на разработку программного продукта является определение целей его создания и перечня задач, которые он в перспективе должен решить. Если заказчик не предоставляет нам формулировку целей и перечень задач, то мы выявляем это совместно, путем анкетирования. Вот некоторые вопросы, которые могут быть заданы заказчику в процессе анкетирования:
- В чем вы видите назначение будущей системы?
- Какие проблемы она должна решить?
- Какие возможности должна предоставить?
- Как должна выглядеть?
- Известны ли вам аналогичные продукты?
- Будет ли система единичной или тиражируемой?
- В каких странах она будет работать?
- Предполагается ли обмен данными с другими существующими продуктами?
- Сколько пользователей будет работать с системой к моменту реализации и в перспективе?
- С какими системами и как давно вы работаете?
Для целей качественного и всеобъемлющего исследования предметной области мы можем запросить документацию, которая ведется заказчиком по автоматизируемой деятельности, это, например, могут быть:
- правила ведения документооборота;
- заполняемые отчеты, бланки отчетности;
- должностные инструкции;
- внутренние регламенты, инструкции;
- документация из области управления качеством.
Довольно результативным способом исследования предметной области также является интервьюирование сотрудников компании-заказчика. Иногда нам удается выявить противоречивые ожидания и, конечно, нужно их сопоставить и прийти к общему видению.
На основе анализа собранной информации формируется ряд требований к будущему программному продукту: способ реализации, особенности дизайна, характер взаимодействия с пользователем, пользовательские роли, модель хранения данных и т. д. Первичное документирование требований производится в технической спецификации, а их детализация, архитектура и подробный способ реализации описываются в техническом задании.
Сбором и анализом информации, проводимой в целях исследования предметной области, формированием требований к программному продукту и их документированием в нашей компании занимается специализированное подразделение, состоящее из квалифицированных инженеров-аналитиков под руководством главного конструктора.
Исследование предметной области и разработка технической документации выделена нами в отдельную услугу. Тем, кто заинтересован в такой услуге, предлагаем обратиться к нам:
- тел.: +7(7212)50-50-85,
- e-mail: contact@toowto.kz
-
- Рекомендуем ознакомиться с другими статьями нашего блога:
- • Взаимодействие с клиентом в процессе создания программного продукта
- • На что обращать внимание при поиске разработчика программного продукта
- • От чего зависит стоимость и сроки разработки программного обеспечения
Статья подготовлена
Аннотация
Рассматриваются вопросы, связанные с анализом предметной области и выделением требований к разрабатываемой программной системе, а также основные графические модели, используемые в этих деятельностях — диаграммы потоков данных и вариантов использования.
Ключевые слова
Анализ предметной области, схема Захмана, модели предметной области, диаграммы потоков данных, диаграммы сущностей и связей, функции ПО, требования к ПО, варианты использования, действующие лица, диаграммы вариантов использования.
Текст лекции
Анализ предметной области
Для того, чтобы разработать программную систему, приносящую реальные выгоды определенным пользователям, необходимо сначала выяснить, какие же задачи она должна решать для этих людей и какими свойствами обладать.
Требования к ПО определяют, какие свойства и характеристики оно должно иметь для удовлетворения потребностей пользователей и других заинтересованных лиц. Однако сформулировать требования к сложной системе не так легко. В большинстве случаев будущие пользователи могут перечислить набор свойств, который они хотели бы видеть, но никто не даст гарантий, что это — исчерпывающий список. Кроме того, часто сама формулировка этих свойств будет непонятна большинству программистов: могут прозвучать фразы типа «должно использоваться и частотное, и временное уплотнение каналов», «передача клиента должна быть мягкой», «для обычных швов отмечайте бригаду, а для доверительных — конкретных сварщиков», и это еще не самые тяжелые для понимания примеры.
Чтобы ПО было действительно полезным, важно, чтобы оно удовлетворяло реальные потребности людей и организаций, которые часто отличаются от непосредственно выражаемых пользователями желаний. Для выявления этих потребностей, а также для выяснения смысла высказанных требований приходится проводить достаточно большую дополнительную работу,
которая называется анализом предметной области или бизнес-моделированием, если речь идет о потребностях коммерческой организации. В результате этой деятельности разработчики должны научиться понимать язык, на котором говорят пользователи и заказчики, выявить цели их деятельности, определить набор задач, решаемых ими. В дополнение стоит выяснить, какие вообще задачи нужно уметь решать для достижения этих целей, выяснить свойства результатов, которые хотелось бы получить, а также определить набор сущностей, с которыми приходится иметь дело при решении этих задач. Кроме того, анализ предметной области позволяет выявить места возможных улучшений и оценить последствия принимаемых решений о реализации тех или иных функций.
После этого можно определять область ответственности будущей программной системы — какие именно из выявленных задач будут ею решаться, при решении каких задач она может оказать существенную помощь и чем именно. Определив эти задачи в рамках общей системы задач и деятельностей пользователей, можно уже более точно сформулировать требования к ПО.
Анализом предметной области занимаются системные аналитики или бизнес-аналитики, которые передают полученные ими знания другим членам проектной команды, сформулировав их на более понятном разработчикам языке. Для передачи этих знаний обычно служит некоторый набор моделей, в виде графических схем и текстовых документов.
Анализ деятельности крупной организации, такой, как банк с сетью региональных отделений, нефтеперерабатывающий завод или компания, производящая автомобили, дает огромные объемы информации. Из этой информации надо уметь отбирать существенную, а также надо уметь находить в ней пробелы — области деятельности, информации по которым недостаточно для
48
четкого представления о решаемых задачах. Значит, всю получаемую информацию надо каким-то образом систематизировать. Для систематизации сбора информации о больших организациях и дальнейшей разработки систем, поддерживающих их деятельность, применяется схема Захмана
(автор — John Zachman, [1,2]) или архитектурная схема предприятия (enterprise architecture framework).
Мотивация |
Люди |
Данные |
Функции |
Место |
Время |
|
Контекст |
||||||
Модель бизнеса |
||||||
Системная |
||||||
модель |
||||||
Технологическая |
||||||
модель |
||||||
Детальное |
||||||
представление |
||||||
Работающая |
Стратегия и |
Структура |
Данные |
Выполняемые |
Географическое |
Планы |
организация |
тактика |
организации |
функции |
расположение и |
||
сети |
||||||
Таблица 5. Схема Захмана. Приведены примеры моделей для отдельных клеток.
В основе схемы Захмана лежит следующая идея: деятельность даже очень большой организации можно описать, используя ответы на простые вопросы — зачем, кто, что, как, где и когда, — и разные уровни рассмотрения. Обозначенные 6 вопросов определяют 6 аспектов рассмотрения.
•Цели организации и базовые правила, по которым она работает.
•Персонал, подразделения и другие элементы организационной структуры, связи между ними.
•Сущности и данные, с которыми имеет дело организация.
•Выполняемые организацией и различными ее подразделениями функции и операции над данными.
•Географическое распределение элементов организации и связи между географически разделенными ее частями.
•Временные характеристики и ограничения на деятельность организации, значимые для ее деятельности события.
Также выделены несколько уровней рассмотрения, из которых при бизнес-моделировании особенно важны три верхних.
•Самый крупный — уровень организации в целом, рассматриваемой в ее развитии совместно с окружением, уровень общего планирования ее деятельности. Этот уровень содержит долговременные цели и задачи организации как цельной системы, основные связи организации с внешним миром и основные виды ее деятельности.
49
•Уровень бизнеса, на котором организация рассматривается во всех аспектах как отдельная сущность, имеющая определенную структуру, которая соответствует ее основным задачам.
•Системный уровень, на котором определяются концептуальные модели всех аспектов организации, без привязки к конкретным их воплощениям и реализациям, например, логическая модель данных в виде набора сущностей и связей между ними, логическая архитектура системы автоматизации в виде набора узлов, с привязанными к ним функциями и пр.
Наиболее удобной формой представления информации при анализе предметной области являются графические диаграммы различного рода. Они позволяют достаточно быстро зафиксировать полученные знания, быстро восстанавливать их в памяти и успешно объясняться с заказчиками и другими заинтересованными лицами. Набросать рисунок из прямоугольников и связывающих их стрелок обычно можно гораздо быстрее, чем записать соответствующий объем информации, и на рисунке за один взгляд видно гораздо больше, чем в тексте. Изредка встречаются люди, лучше ориентирующиеся в текстах и более адекватно их понимающие, но чаще рисунки все же более удобны для иллюстрации мыслей и объяснения сложных вещей.
Рисунок 16. Схема деятельности компании в нотации Йордана-ДеМарко.
Часто для описания поведения сложных систем и деятельности крупных организаций используются диаграммы потоков данных (data flow diagrams). Эти диаграммы содержат 4 вида графических элементов: процессы, представляющие собой любые трансформации данных в рамках описываемой системы, хранилища данных, внешние по отношению к системе сущности и потоки данных между элементами трех предыдущих видов.
Используются несколько систем обозначений для перечисленных элементов, наиболее известны нотация Йордана-ДеМарко (Yourdon-DeMarco, [3,4]) и нотация Гэйна-Сарсона (GaneSarson, [5]), обе предложенные в 1979 году. Рис. 16 показывает диаграмму потоков данных, которая описывает деятельность компании, управляющей небольшим магазином. Эта диаграмма изображена в нотации Йордана-ДеМарко: процессы изображаются кружками, внешние сущности
— прямоугольниками, а хранилища данных — двумя горизонтальными параллельными линиями. На Рис. 17 изображена та же диаграмма в нотации Гейна-Сарсона: на ней процессы —
50
прямоугольники со скругленными углами, внешние сущности — прямоугольники с тенью, а хранилища данных — вытянутые горизонтально прямоугольники без правого ребра.
Рисунок 17. Схема деятельности компании в нотации Гэйна-Сарсона.
Процессы на диаграммах потоков данных могут уточняться: если некоторый процесс устроен достаточно сложно, для него можно нарисовать отдельную диаграмму, описывающую потоки данных внутри этого процесса. На ней показываются те элементы, с которыми этот процесс связан потоками данных, и составляющие его более мелкие процессы и хранилища. Таким образом, возникает иерархическая структура процессов. Обычно на самом верхнем уровне находится один процесс, представляющий собой систему в целом, и набор внешних сущностей, с которыми она взаимодействует.
На Рис. 18 показана возможная детализация процесса «Управление персоналом».
Диаграммы потоков данных появились как один из первых инструментов представления деятельности сложных систем при использовании структурного анализа. Для представления структуры данных в этом подходе используются диаграммы сущностей и связей (entityrelationship diagrams, ER diagrams) [6], изображающие набор сущностей предметной области и связей между ними. И сущности, и связи на таких диаграммах могут иметь атрибуты. Пример такой диаграммы представлен на Рис. 19.
Хотя методы структурного анализа могут значительно помочь при анализе систем и организаций, дальнейшая разработка системы, поддерживающей их деятельность, с использованием объектно-ориентированного подхода часто требует дополнительной работы по переводу полученной информации в объектно-ориентированные модели.
Методы объектно-ориентированного анализа предназначены для обеспечения более удобной передачи информации между моделями анализируемых систем и моделями разрабатываемого ПО. В качестве графических моделей в этих методах вместо диаграмм потоков данных используются рассматривавшиеся при обсуждении RUP диаграммы вариантов использования, а вместо диаграмм сущностей и связей — диаграммы классов.
51
Рисунок 18. Детализация процесса «Управление персоналом».
Однако диаграммы вариантов использования несут несколько меньше информации по сравнению с соответствующими диаграммами потоков данных: на них процессы и хранилища в соответствии с принципом объединения данных и методов работы с ними объединяются в варианты использования, и остаются только связи между вариантами использования и действующими лицами (аналогом внешних сущностей). Для представления остальной информации каждый вариант использования может дополняться набором разнообразных диаграмм UML — диаграммами деятельностей, диаграммами сценариев, и пр. Обо всех этих видах диаграмм будет рассказано в лекции, посвященной архитектуре программного обеспечения.
Заказ |
Заказанный товар |
Товар |
|
Дата |
Наименование |
||
Количество единиц |
|||
Стоимость |
Цена за единицу |
||
Товар у поставщика |
|||
Цена за единицу |
|||
Клиент |
|||
Размер партии |
|||
Имя |
Поставщик |
Стоимость доставки |
|
Адрес |
|||
Название |
|||
Адрес |
|||
Реквизиты |
|||
Рисунок 19. Модель сущностей и связей.
52
Соседние файлы в папке Книги
- #
- #
- #
- #
- #
- #
- #
- #
- #
СОДЕРЖАНИЕ
ВВЕДЕНИЕ 4
ГЛАВА 1 АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ И ИСПОЛЬЗУЕМОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ 7
1.1 Описание аналогов существующей информационной системы 7
1.2. Анализ предметной области и построение концептуальной модели программного продукта 18
ГЛАВА 2 ТЕОРИТИЧЕСКИЕ И ПРАКТИЧЕСКИЕ АСПЕКТЫ РАЗРАБОТКИ ИС 19
2.1 Разработка логической схемы модели БД информационной системы 24
2.2 Физическая реализация модели базы данных 42
ГЛАВА 3 ЭКОНОМИЧЕСКАЯ ЭФФЕКТИВНОСТЬ ИНФОРМАЦИОННОЙ СИСТЕМЫ УЧЁТА ТОВАРОВ 76
3.1 Анализ методик расчетов экономической эффективности 76
3.2 Расчёт экономической эффективности использования информационной системы 80
ЗАКЛЮЧЕНИЕ 85
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ………………………………… 87
Введение
Деятельность большинства социальных и производственных предприятий, огромного количества людей в настоящее время зависит от быстроты и качества обработки и применения информации во всех сферах деятельности. В процессе правильного принятия решения, необходимо применять большое количество этапов преобразования информации, такие как: сбор информации, переработку, анализ, хранение, передача и использование во всех сферах деятельности людей.
Кроме того на данном этапе развития экономики и конкуренции среди производителей и сети торговых предприятий невозможно обойтись в процессе управления без применения современных информационных технологий в процессе преобразования информации и принятия управленческих решений.
В процессе стремительного развития современных автоматизированных информационных систем и повсеместного применения информационных технологий, становится необходимостью применять последние достижения информационных технологий в процессе управления и мониторинга управления организациями. Успешная деятельность предприятий как производственного так и социального характера во многом зависит используемого программного обеспечения и применения современных информационных технологий
Если руководители организаций и менеджеры высшего звена не будут следить за внедрением последних программных разработок в соответствующие организации, то развитие предприятия прекратится и оно на сможет продолжать свою борьбу с конкурентами на рынке производителей и потребителей своей продукции. Новые информационные технологии позволяют не только обрабатывать текстовые документы, но и строить сложные графики и диаграммы, кроме того применение таких программ как Project Expert позволяют делать оценку эффективности бизнес-планов, что позволит избежать многие ошибки и финансовые затраты и позволит определить дальнейшую политику управления предприятием
В тоже время, большие потоки информации обуславливаются:
- чрезвычайно быстрым ростом числа документов, отчетов и т.п., в которых представлены результаты научных исследований и опытных разработок;
- увеличивающимся числом периодических изданий по разным областям деятельности человека;
- разнообразными видами представления данных, не попадающих в сферу действия системы коммуникации.
Как результат – наступает информационный кризис, который проявляется в:
- появлении множества противоречивой информации;
- существовании большого количества избыточной информации, которая затрудняет выбор полезной для потребителя;
- возникновении определенных барьеров, которые препятствуют распространению информации.
В результате была получена ситуация, когда в мире накоплен громадный потенциал, но человечество не может использовать его. Внедрение ЭВМ, современных средств переработки и передачи информации в различные сферы деятельности послужило началом нового эволюционного процесса, называемого информатизацией, в развитии человеческого общества, находящегося на этапе индустриального развития.
Целью дипломной работы является разработка и внедрение информационной системы учёта товаров на складе магазина ИП «Припен». Для реализации цели были поставлены следующие задачи:
- проанализировать и изучить предметную область;
- описать предметную область. Построить ее информационно-логическая модель;
- выбрать технологии реализации системы ввода, хранения и обработки информации;
- провести тестирование и отладку ПО.
Объектом исследования является информационная система на предприятии, методы сбора, анализа, хранения и обработки информации.
Предметом исследования является создание информационной системы учёта товаров на складе магазина ИП «Припен».
Методы исследования. В ходе работы был проведен сбор данных о предметной области, деятельности организации, входящих и исходящих потоках информации, путем анализа документов. Исследования, проведенные в данной работе, проводятся на основе нескольких методов:
Теоретические (анализ предметной области, сбор необходимых данных, книжного и электронного материала для изучения поставленной задачи).
Статистические (методы обработки экспериментальных данных).
Была применена технология предметно – ориентированного программирования в среде VB 6.0.
Использование разработанного программного продукта позволить увеличить производительность труда сотрудников торговой организации, повысить эффективность работы и контроль над всеми этапами трудовой деятельности.
Новизна работы заключается в системе учёта товаров, поставки и отображения текущих заказов.
Практическая значимость. Использование информационной системы складского учёта позволит упорядочить работу на складе по учету товаров и получению отчетности, обеспечив работу в единой информационной базе. Разработанное программное обеспечение может быть использовано для автоматизации деятельности складского учёта, где схема работы организации такая же или более простая, чем у данного предприятия.
1. АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ И ИСПОЛЬЗУЕМОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
1.1 Описание аналогов существующей информационной системы
Информационные системы, прежде всего, различаются по масштабу на одиночные, групповые и корпоративные. Одиночные информационные системы реализуются на автономном компьютере, как правило, ПК. Такая система может содержать несколько простых приложений, связанных общим информационным фондом, и рассчитана на работу одного пользователя или группы пользователей, разделяющих по времени одно рабочее место. Подобные приложения создаются с помощью так называемых «настольных СУБД» (Clarion, Clipper, FoxPro, Paradox, dBase, MS Access) или с помощью файловой системы и диалоговой оболочки для ввода, редактирования и обработки данных.
Групповые информационные системы ориентированы на коллективное использование информации членами рабочей группы (одного подразделения), чаще всего строятся как локальная вычислительная сеть ПК или реже как многотерминальная централизованная вычислительная система. Однотипные или специализированные рабочие места обеспечивают вызов одного или нескольких конкретных приложений. Общий информационный фонд представляет собой базу данных или совокупность файлов документов. Совместное использование информации организуется с помощью блокировок записей и файлов. При разработке таких приложений используются многопользовательские «настольные СУБД», серверы БД для рабочих групп (Btrieve, NetWare SQL, Gupta SQLBase, Sybase Anywhere SQL, MS SQL Server, Progress, Informix-SE, Workgroup Oracle и др.) и соответствующие инструменты разработки или системы управления документами и их инструментальные средства. Взаимодействие пользователей происходит через централизованную базу данных или посредством сетевой файловой системы или через электронную почту.
Корпоративные информационные системы являются развитием систем для рабочих групп и ориентированы на масштаб предприятия, могут поддерживать территориально разнесенные узлы или сети. Они могут иметь иерархическую структуру из нескольких уровней. Главная особенность — обеспечение доступа из подразделения к центральной или распределенной базе данных предприятия (организации) помимо доступа к информационному фонду рабочей группы. Для таких систем характерна архитектура клиент-сервер со специализацией серверов. Они строятся на корпоративных SQL-серверах БД (Oracle7, Informix-OnLine, Informix- DSA, Sybase, CA-Ingress и др.) и соответствующих инструментальных средствах. Помимо собственных средств разработки часто находят применение независимые многоплатформенные инструментальные средства, дополненные интерфейсами, драйверами и шлюзами для связи с разными СУБД.
Для таких систем повышаются требования к надежности функционирования и сохранности данных. Последнее свойство обеспечивается поддержкой целостности данных, ссылок и транзакций в серверах баз данных. Транзакция представляет собой неделимый набор операций с БД, она завершается успешно, когда выполнены все ее операции, в противном случае происходит откат в состояние, предшествующее выполнению транзакции.
По оперативности обработки данных различают пакетные и оперативные информационные системы (реального времени). Информационные системы с пакетной обработкой в чистом виде можно встретить на больших централизованных ЭВМ. В информационных системах организационного управления преобладает режим оперативной обработки транзакций OLTP (OnLine Transaction Processing) для отражения актуального состояния предметной области в любой момент времени, а пакетная обработка занимает весьма ограниченную нишу. Для систем OLTP характерен регулярный (возможно, интенсивный) поток довольно простых транзакций, играющих роль заказов, платежей, запросов и т. п. Важными требованиями являются высокая производительность обработки транзакций и гарантированная доставка информации при удаленном доступе к БД по телекоммуникациям.
Групповые и корпоративные информационные системы и соответствующие приложения могут строиться различными способами:
- системы на основе локальной сети ПК (файл-серверные приложения);
- системы с архитектурой клиент-сервер;
- системы на основе Internet/Intranet-технологий.
Для лучшего понимания ограничений различных архитектур информационных систем, разделим приложения на типовые компоненты:
PS (Presentation Services) — средства представления. Обеспечиваются устройствами, принимающими ввод от пользователя и отображающим то, что сообщает ему компонент логики представления PL, плюс соответствующая программная поддержка. Может быть текстовым терминалом или Х-терминалом, а также ПК или рабочей станцией в режиме программной эмуляции терминала или Х-терминала.
PL (Presentation Logic) — логика представления. Управляет взаимодействием между пользователем и ЭВМ. Обрабатывает действия пользователя по выбору альтернативы меню, по нажатию кнопки или при выборе элемента из списка.
BL (Business or Application Logic) — прикладная логика. Набор правил для принятия решений, вычислений и операций, которые должно выполнить приложение.
DL (Data Logic) — логика управления данными. Операции с базой данных (SQL-операторы SELECT, UPDATE и INSERT), которые нужно выполнить для реализации прикладной логики управления данными.
DS (Data Services) — операции с базой данных. Действия СУБД, вызываемые для выполнения логики управления данными, такие как манипулирование данными, определения данных, фиксация или откат транзакций и т. п. СУБД обычно компилирует SQL-предложения.
FS (File Services) — файловые операции. Дисковые операции чтения и записи данных для СУБД и других компонент. Обычно являются функциями ОС. Можно привести несколько схем построения информационных систем в зависимости от размещения типовых компонентов приложения по узлам сети.
Файл-серверные приложения
Системы «файл-сервер» (Рисунок 1.1) не имеет сетевого разделения компонентов диалога PS и PL, использует ПК для функций отображения, что облегчает построение графического интерфейса. Файл-сервер только извлекает данные из файлов, так что дополнительные пользователи и приложения добавляют лишь незначительную нагрузку на ЦП. Каждый новый клиент добавляет вычислительную мощность к сети.
Рисунок 1.1 – Варианты построения файл-серверных приложений
Объектами разработки в файл-серверном приложении являются компоненты приложения, определяющие логику диалога PL, а также логику обработки BL и управления данными DL. Разработанное приложение реализуется либо в виде законченного загрузочного модуля или в виде специального кода для интерпретации.
Однако такая архитектура имеет два основных недостатка: некоторые запросы к БД могут перекачивать всю БД клиенту, загружая сеть и имея непредсказуемое время реакции, тем самым, создавая значительный сетевой график, а также возникающая проблема «толстого клиента» — Windows-интерфейс, коды приложения и СУБД могут перегрузить даже мощный ПК.
Первый недостаток особенно сказывается при организации удаленного доступа к базам данных на файл- сервере через низкоскоростные каналы связи. В этом случае система с удаленными рабочими станциями оказывается практически неработоспособной. В данном случае единственное решение — удаленное управление файл-серверным приложением в сети. В локальной сети ставится сервер приложений, совмещенный с телекоммуникационным сервером (сервер доступа). В многозадачной среде этого сервера выполняются обычные файл-серверные приложения. Особенность состоит в том, что диалоговый ввод-вывод поступает через телекоммуникации от удаленных клиентов. Приложения не должны быть слишком сложными, иначе шансы перегрузки сервера увеличиваются, или же нужна очень мощная платформа для сервера приложений. На клиентских узлах работают программы удаленного управления или эмуляции терминалов, которые передают сигналы от клавиатуры и мыши серверу приложений, а в ответ получают копии экранов и отображают их на видеомониторе. Помимо перечисленных недостатков нужно отметить, что многие «настольные СУБД», как традиционные инструменты файл-серверных приложений, не отвечают требованиям сохранности данных, в частности не поддерживают транзакции. Однако СУБД для ПК привлекают простотой использования и доступностью, поэтому файл-серверные приложения еще будут использоваться для рабочих групп.
Основой разработки файл-серверных приложений для локальных сетей ПК является инструментальное окружение различных «персональных» СУБД: FoxPro, Clipper, Paradox, Clarion, Paradox, dBase и т. п.
Приложения клиент-сервер
Архитектура клиент-сервер предназначена для разрешения проблем файл-серверных приложений путем разделения компонентов приложения и размещение их там, где они будут функционировать более эффективно. Особенностью архитектуры клиент-сервер является использование выделенных серверов баз данных, понимающих запросы на языке структурированных запросов SQL и выполняющих поиск, сортировку и агрегирование информации на месте без излишней перекачки, данных на рабочие станции.
Другая отличительная черта серверов БД — наличие справочника данных, в котором записаны структура БД, ограничения целостности данных, форматы и даже серверные процедуры обработки данных по вызову или по событиям в программе. Объектами разработки в таких приложениях помимо диалога и логики обработки являются, прежде всего, реляционная модель данных и связанный с ней набор SQL-операторов для типовых запросов для этой БД.
Большинство конфигураций клиент-сервер использует двухзвенную модель, состоящую из клиента, который обращается к услугам сервера (рисунок 1.2). Для эффективной реализации такой схемы часто применяют неоднородную сеть. Как минимум, предполагается, что диалоговые компоненты PS и PL размещаются на клиенте, что позволяет обеспечить графический интерфейс. Далее возможно разместить компоненты управления данными DS и FS на сервере, а диалог (PS, PL), логику BL и DL на клиенте. Типовое определение архитектуры клиент-сервер — приложение на клиенте, СУБД — на сервере — использует эту схему.
Рисунок 1.2 –Варианты построения приложения клиент-сервер
Поскольку эта схема предъявляет наименьшие требования к серверу, она обладает наилучшей масштабируемостью. Однако сложные приложения, вызывающие большое взаимодействие с БД, могут жестко загрузить как клиента, так и сеть. Результаты SQL-запроса должны вернуться клиенту для обработки, потому что там находится логика принятия решения. Такая схема возлагает дополнительное бремя администрирования приложений, разбросанных по различным клиентским узлам.
Можно сократить нагрузку на клиента и сеть, переместив целиком компонент BL на сервер, при этом вся логика принятия решений оформлена в виде хранимых процедур и выполняется на сервере БД. Хранимая процедура — процедура с операторами SQL для доступа к БД, вызываемая по имени с передачей требуемых параметров и выполняемая на сервере БД. Компиляция повышает скорость исполнения хранимых процедур и сокращает нагрузку на сервер. Но, перегрузив хранимые процедуры прикладной логикой, можно потерять преимущества по производительности. Хранимые процедуры улучшают целостность приложений и БД, гарантируют актуальность коллективно используемых операций и вычислений. Улучшается сопровождение таких процедур, а также безопасность (нет прямого доступа к данным).
Переместив с клиента часть логики приложения на сервер, получим систему клиент-сервер с разделенной логикой. Часть прикладной логики может быть реализована на клиенте, а другая часть логики — в виде обработчиков событий (триггеров) и хранимых процедур на сервере БД. Такая схема при удачном разделении логики приводит к сбалансированной загрузке клиентов и сервера, но при этом затрудняется сопровождение приложений.
База данных – это организованная структура, предназначенная для хранения информации. В современных базах данных хранятся не только данные, но и информация.
Это утверждение легко пояснить, если, например, рассмотреть базу данных крупного банка. В ней есть все необходимые сведения о клиентах, об их адресах, кредитной истории, состояние расчетных счетов, финансовых операциях и т.д. Доступ к этой базе данных имеется у достаточно большого количества сотрудников банка, но среди них вряд ли найдется такое лицо, которое имеет доступ ко всей базе полностью и при этом способно единолично вносить в нее произвольные изменения. Кроме данных, база содержит методы и средства, позволяющие каждому из сотрудников оперировать только с теми данными, которые входят в его компетенцию. В результате взаимодействия данных, содержащихся в базе, с методами, доступными конкретным сотрудникам, образуется информация, которую они потребляют и на основании которой в пределах собственной компетенции производят ввод и редактирование данных.
С понятием базы данных тесно связано понятие системы управления базой данных. Это комплекс программных средств, предназначенных для создания структуры новой базы, наполнение ее содержимым, редактирование содержимого и визуализации информации. Под визуализацией информации базы понимается отбор отображаемых данных в соответствии с заданным критерием, их упорядочение, оформление и последующая выдача на устройства вывода или передачи по каналам связи.
В мире существует множество систем управления базами данных. Несмотря на то, что они могут по-разному работать с разными объектами и предоставляют пользователю различные функции и средства, большинство СУБД опираются на единый устоявшийся комплекс основных понятий. Это дает нам возможность рассмотреть одну систему и обобщить ее понятия, приемы и методы на весь класс СУБД. В качестве такого учебного объекта мы выберем СУБД Microsoft Access, входящую в пакет Microsoft Office.
В настоящее время рынок программного обеспечения предлагает довольно богатый выбор инструментальных средств для создания приложений, ориентированных на решение широкого круга задач. Из всего многообразия доступных средств разработки ПО был выбран продукт фирмы Microsoft Visual Basic 6.0.
Объектно-ориентированное программирование (ООП) в настоящее время завоевало положение доминирующей парадигмы почти во всех областях современного программирования. Оно значительно потеснило в практике методы структурного про¬граммирования и продолжает оказывать решающее влияние на развитие всех областей современного программирования — язы¬ки и системы программирования, операционные системы, базы данных и знаний.
В основе ООП лежит идея «упакованной функциональности» [3]. Прикладная программа строится из объектов с некоторыми характеристиками (свойствами) и некоторыми операциями, которые эти объекты могут выполнять. Текущее состояние объекта через какое-то время может изменяться, но программа всегда зависит от объектов, в том смысле, что они не могут вза¬имодействовать друг с другом произвольным способом. Про¬граммист сам решает, формировать ли оригинальные объекты или использовать уже имеющиеся. Чаще всего если существую¬щие объекты удовлетворят требованиям относительно того, что они могут выполнять и как они могут реагировать на внешние воздействия, программиста не заботит, как эта функциональ¬ность реализована. На языке ООП его интересует только то, какие возможности объект может предоставить и как их можно использовать в интересах прикладной программы.
ООП оказало влияние на создание и использование офисных пакетов, в том числе на наиболее распространенный в нашей стране MS Office. На идеях и принципах ООП развивается новый вид программирования — офисное nрограммирование.
Основным инструментом офисного программирования в па¬кетах MS Office является язык Yisual Basic for Application (УВА).
Почему именно этот, а не другой язык, легко понять, проследив историю создания фирмы Мiсrosоft и личных пристрастий ее создателя Билла Гейтса. Этот язык является, с одной стороны, подмножеством языка Visual Basic (УВ), так что, если пользователь офисного пакета ранее программировал на УВ или просто знаком с любой версией Basic, он может легко перейти к про¬граммированию в офисных пакетах. С другой стороны, УВА — это надмножество VВ и «for Application» означает многое. Прежде всего это дополнение множества объектов УВ огромным мно¬жеством объектов приложений MS Office. Важно отметить, что для основных приложений MS Office 2000 (Word Excel Access PowerPoint, Outlook) VВА стал практически единым.
В VВА используется технология визуального программиро¬вания, при которой конструирование рабочей поверхности приложения и его элементов управления про изводится непосредственно на экране монитора, а запись программы или ее частей осуществляется при помощи макрорекордера. При поверхностном знакомстве с технологией визуального программирования может даже создаться впечатление, что она сводится к записи макросов, помещению в формы элементов управления и определению их связи с макросами. При решении простей¬ших задач так и происходит. Но если требуется создать серьезное приложение с содержательной обработкой данных то на первый план выступает сам язык VВА.
Основной задачей офисного программирования является создание документа. Документ понимается как объект в объектнo-ориентированном программировании и представляет собой собрание структурированных данных разного типа и программ, обрабатывающих эти данные. Программные компоненты документа объединяются в единое целое — проект, который является частью документа, хранится вместе с ним, образуя единое целое. Нужно заметить. что VВА — относительно легкий язык про¬граммирования. Он прост в изучении, легко осваивается даже пользователем-непрограммистом и позволяет быстро получать ощутимые результаты.
Отметим преимущества офисного программирования на VВА для конечного пользователя:
• пользователь всегда работает в единой офисной среде независимо от того, с каким документом он работает в данный момент и какой программист разрабатывал данный документ;
• большинство доступных при работе с документами функций являются общими для всех документов, поскольку их представляет сама офисная среда. Различные офисные документы имеют единый стиль интерфейса;
• пользователь-непрограммист может сам создавать простые виды документов, постепенно совершенствуясь в этой деятельности;
• идеи визуального и событийно-управляемого программирования получают в офисном программировании свое естественное развитие. Пользователь в полной мере берет в руки управление своим документом. Программист, предоставляя средства обработки документа, может даже не подозревать, чего может добиться с их помощью пользователь, понимающий в своем деле.
Программист, работающий в MS Office, имеет следующие возможности:
• в его распоряжении мощная интегрированная среда. Большинство повседневных задач становится для него простым делом — для их решения достаточно стандартных средств;
• в том случае, если не удается обойтись стандартными средствами, доступен язык программирования УВА, который обеспечивает возможность работы с объектами любого приложения MS Office и позволяет создать проект любой сложности;
• в распоряжении программиста имеется такое мощное сред¬ство, как Макрорекордер (Macrorecorder), который в ряде случаев позволяет вместо написания про граммы на УВА получить ее автоматически. В этом случае, например, для создания неко¬торой таблицы пользователь не пишет программу, а создает ее непосредственно, Макрорекордер при этом транслирует его действия в программу. после этого программист может доработать (оптимизировать) полученную таким образом программу.
Естественно, что могут быть и такие задачи (программы), для решения которых стандартных средств MS Office и УВА не¬достаточно. В этом случае возможно потребуется использование Visual С++С# или Delphi. Однако таких задач немного. Объектно-ориентированное программирование можно описать как методику анализа, проектирования и написания приложений, манипулируя объектами. Определить объект в повседневной жизни можно следующим образом: объект — это некоторая сущность, воспринимаемая органами чувств как единое целое. В VВА объект — это комбинация программного кода и данных, вос¬принимаемая как не которая единица, которой можно каким-либо образом манипулировать. Объектами являются сами приложения и все их компоненты: документы Word, книги Excel, таблицы Access и др. Для каждого приложения центральным является объект-приложение: Word.Application, Excel.Application и другие Аррliсаtiоп-объекты. Все остальные объекты данного приложе¬ния встроены в него и являются его элементами (members).
Объекты офисных приложений можно разделить на несколько групп:
1) объекты, являющиеся общими для всех приложений (т.е. для Word, Ехсеl, Access и т. д.);
2) объекты, являющиеся специфическими для каждого при¬ложения;
3) стандартные объекты, определяющие формы УВА;
4) объекты, подключаемые по стандартной технологии фир¬мы Мicrosоft;
5) объекты языка VВА.
В MS Office имеются сотни встроенных объектов. Среди них важным является объект Collection (Коллекция), содержащий несколько других объектов, как правило, одного и того же клас¬са. Например, объект Workbooks (Рабочая книга) содержит все открытые объекты Workbook, т.е. это коллекция всех открытых в данный момент объектов Workbook. Пользователь может од¬новременно управлять целой коллекцией объектов или отдель¬ным объектом этой коллекции. Каждый элемент коллекции ну-меруется и может быть идентифицирован по имени или номеру. Например, Worksheet(l) означает первый рабочий лист актив¬ной книги, а Wогkshееts«<Листl») — рабочий лист с именем Листl.
Полная ссылка на объект состоит из ряда имен вложенных последовательно друг в друга объектов. Если имя объекта содержит пробелы, его необходимо заключать в квадратные скобки. Для разделения имен применяются два специальных оператора: восклицательный знак (!) и точка (.). Восклицательный знак при¬меняется при переходе от коллекции к одному из ее элементов:
N ameCollection!N ameObject
Например, запись Forms!Forml в приложении Access может быть использована для перехода от коллекции форм к форме Рогml.
Точка используется при переходе от объекта к одному из его элементов:
N ameObject. N ameCollection
Точка ставится также перед именем свойства или метода, который может применяться для указанного перед ним объекта. Например, запись
Application.Forms!Form 1. Controls!Labell. Сарпоп
позволяет обратиться к свойству Сарпоп (Надпись) элемента управления Labell. Часто используется неявная ссылка на объект, в которой можно опускать имена активных в данный момент объектов. Например, если активны рабочая книга и рабочий лист, то для ссылки на ячейку Al вместо записи
Application. WorkЬooks(» Ведомость»). Worksheets(» Лист 1″). Range(» Al») можно использовать запись Range(«Al»).
Всем объектам, с которыми работает пользователь, незави¬симо от типа объекта присущи некоторые стандартные свойства. Они представляют собой атрибуты объекта, определяющие его характеристики, такие, как размер, цвет, положение на экране и т.п., а также состояние объекта, например доступность или видимость. Объект каждого типа обладает также некоторыми методами. Они определяют действия, которые можно совершать над объектом. Свойства и методы реализуются программным кодом и образуют интерфейс объекта.
С программной точки зрения каждый объект является экзем¬пляром некоторого «первородного» объекта, или прототипа — клас¬са. Такой объектно-ориентированный подход упрощает задачу
создания приложений и более близко и точно, чем другие модели разработки программ, отражает представление проектировщика относительно компонентов приложения и их взаимосвязей.
Объекты офисных приложений могут быть вполне осязаемыми для пользователя, как, например, окно диалога, командные кнопки, текстовые поля и т. д. Объекты могут также представлять собой некоторые программные категории, которые непосредственно не являются частью пользовательского интерфейса и которые нельзя «потрогать» курсором мыши. Это, например, в приложениях Access рабочие области, соединения, наборы записей (объекты Workspace, Tabledef, Connection, Recordset). При построении приложения разработчик программирует действия объектов или задаст реакцию этих объектов на некоторые события или состояние среды, или приложения. На¬пример, добавляя программный код к стандартному методу, яв¬ляющемуся характеристикой объекта «командная кнопка», можно задать действия, которые должна выполнять форма, когда пользо¬ватель нажимает кнопку.
Если объекту надо выполнить действие, не являющееся для него стандартным, он должен иметь доступ к объекту, который может выполнить эту задачу, и передать этому объекту запрос на выполнение действия. Другими словами, в этом случае объек¬ты-клиенты передают сообщения объектам-серверам. Один объект не может непосредственно манипулировать внутренними данными другого объекта. Вся связь между объектами долж¬на реализовываться только через сообщения. Разрабатывая объек¬ты, которыми можно управлять некоторым набором сообщений, и предоставляя объектам возможность самим манипулировать своими внутренними данными, можно обеспечить возможность многократного использования объектов.
Кроме встроенных в VВА объектов для построения офисных приложений могут применяться специально подключаемые объекты. В VВА широко используется механизм OLE (Object Linking and Embedding — связывание и встраивание объектов), который позволяет взаимодействовать с любыми программами, поддерживающими технологию OLE. От обычного объекта OLE¬объект отличается тем, что при вызове внедренного объекта ак¬тивизируется программа, связанная с этим объектом, и меню приложения заменяется меню программы, создавiей объект.
Теперь можно, не выходя из основного приложения, работать с данным объектом, редактируя и изменяя его средствами создания программы. Кроме того, ОLЕ-технология обладает так называемым свойством Automation, с помощью которого можно устанавливать свойства, при менять методы и обрабатывать события внедренных объектов как обычных объектов приложения. В настояшее время эта технология внедрения объектов усовершенствована фирмой Мiсrоsоft и именуется ActiveX Ашогпацоп, а ОLЕ-объекты называются объектами ActiveX.
В офисных приложениях VВА манипулировать объектами можно двумя способами: во-первых, изменяя свойства объектов и, во-вторых, заставляя объект выполнять специфические задания активацией методов, ассоциированных с объектом. Оба эти метода чаще всего связаны с наступлением не которого пользовательского или системного события.
Событие (Event) — это действие или ситуация, связанная с объектом и распознаваемая им. Объект каждого типа в VВА имеет определенный набор событий, допустимых для данного объекта. Суть программирования в VВА заключается в двух понятиях: событие и отклик на него. В качестве отклика выполняется про¬граммный код созданной пользователем процедуры.
В традиционной процедурной модели проектирования по-следовательность и логика выполнения тех или иных частей про¬граммного кода управляется непосредственно приложением. Выполнение начинается с первой строки кода и следует стандартным путем через код приложения с вызовом необходимых процедур. В событийно-управляемом приложении выполнение не является предопределенным и не следует жестко кодированным путем. Вместо этого разделы программного кода выполняются в ответ на события. Последовательность этих событий оп¬ределяет последовательность выполнения кода, и, таким образом, путь выполнения кода приложения каждый раз будет разным.
1.2. Анализ предметной области и
построение концептуальной модели программного продукта
С древних времен поставщики оснащали рынки и латки улиц. Продавцы при получении товара учитывали в своих книгах информацию о поставщиках и о товарах этих поставщиков. Подсчитывали суммы затрат в месяц или за квартал. Но время не стоит на месте, как и техника. Стали появляться счеты, за тем печатные машинки, и только после этого компьютеры, что очень облегчило работу с цифрами. В дальнейшем компьютеры стали более усовершенствованы, и компактными. За тем появляются персональные компьютеры. Появляются программы для бухгалтеров.
В настоящее время компьютеры получили широкое распространение во всех сферах деятельности человека. Создание и обработка баз данных — одна из широчайших областей применения ЭВМ. Они дают возможность накапливать огромное количество информации, производить ее сортировку и выборку по различным признакам, производить формирование различного рода списков и таблиц, что позволяет существенно облегчить и ускорить труд людей по выполнению данных операций. Одна из задач такого типа – это распределение поставщиков и товаров, представляющая собой проблемы учета и сортировки различных продовольственных товаров в магазинах. В данной области возникает необходимость быстрого получения информации, как об отдельных единицах товара, так и о целых отделах, в которых сгруппированы товары по качественным признакам.
Для решения этой задачи является целесообразным применение баз данных и средств их обработки:
— программа обеспечивает быстрое и удобное получение информации, имеет простой и интуитивно понятный интерфейс;
— пользователь иметь возможность ввода новой информации, корректировки и просмотра уже имеющейся.
Программа «Учет товаров на складе» предназначена для облегчения учета движения товаров. В некоторых небольших торговых помещениях, нет автоматического контроля за поставкой и прибытием товара, и приходится все записывать вручную. Но эта, простейшая в своем пользование, программа решит все проблемы, связанные с «волокитой» бумаг.
Построение концептуальной модели программного продукта
Определение модели данных предусматривает указание множества допустимых информационных конструкций, множества допустимых операций над данными и множества ограничений для хранимых значений данных.
Модель данных, с одной стороны, представляет собой формальный аппарат для описания информационных потребностей пользователей, а с другой — большинство СУБД ориентируются на конкретную модель данных, и, таким образом, если информационные потребности удается точно выразить средствами одной из моделей данных, то соответствующая СУБД позволяет относительно быстро создать работоспособный фрагмент ИС.
Access 2010 — это средство проектирования и развертывания приложений баз данных, с помощью которого можно отслеживать важную информацию. Данные можно хранить на компьютере, а можно опубликовать их в Интернете, чтобы другие пользователи работали с базой данных в браузере.
Многие пользователи начинают работать с приложением Access, когда возможностей программы, которую они использовали ранее для отслеживания каких-либо данных, становится недостаточно. Предположим, например, что вы занимаетесь планированием мероприятий, и для успешного проведения мероприятия необходимо отслеживать все его аспекты. Если для этой задачи использовать текстовый редактор или редактор электронных таблиц, могут возникнуть проблемы, связанные с дублированием и несогласованностью данных. Эту задачу также можно решить с помощью программы для работы с календарями, однако календарь плохо подходит для отслеживания финансовых данных.
В некоторых случаях для отслеживания подобной информации необходима реляционная база данных — хранилище данных, с целью устранения избыточности разбитых на небольшие наборы (таблицы) и связанных друг с другом через общие элементы (поля). Например, реляционная база данных для планирования мероприятий может содержать таблицу со сведениями о клиентах, таблицу со сведениями о поставщиках и таблицу со сведениями о мероприятиях. Таблица со сведениями о мероприятиях может включать поле для связи с таблицей клиентов и поле для связи с таблицей поставщиков. Таким образом, например, при изменении номера телефона поставщика соответствующие данные нужно будет изменить только в таблице поставщиков, а не в каждом мероприятии с участием этого поставщика.
Приложение Access позволяет легко и быстро разрабатывать приложения с реляционными базами данных для управления информацией. В нем можно создавать базы данных для отслеживания практически любых сведений, например складских запасов, профессиональных контактов или бизнес-процессов. Приложение Access поставляется с готовыми шаблонами, с помощью которых можно работать с самыми разнообразными данными.
При запуске приложения Access 2010 открывается представление Microsoft Office Backstage. В представлении Backstage доступны многие команды, с помощью которых можно настраивать базы данных, обслуживать их и предоставлять к ним общий доступ. Команды в представлении Backstage обычно применяются ко всей базе данных, а не к отдельным ее объектам.
Переключиться в представление Backstage можно в любой момент, открыв вкладку Файл.
Чтобы найти и применить шаблон к базе данных, нужно выполнить указанные ниже действия.
На вкладке Файл нажать кнопку Создать.
В разделе Доступные шаблоны нужно выполнить одно из указанных ниже действий.
Чтобы заново применить недавно использовавшийся шаблон, нужно щелкнуть по элементу Последние шаблоны и выбрать нужный шаблон.
Чтобы применить уже установленный шаблон, нужно щелкнуть по элементу Мои шаблоны и выбрать нужный шаблон.
Чтобы найти шаблон на сайте Office.com, нужно выбрать в разделе Шаблоны Office.com категорию шаблона и нужный шаблон, после чего нажать кнопку Загрузить, чтобы загрузить шаблон с сайта Office.com на компьютер.
Также можно выполнить поиск шаблонов на сайте Office.com в самом приложении Access. Чтобы начать поиск, нужно ввести запрос в поле Поиск шаблонов на сайте Office.com и нажать кнопку со стрелкой.
Кроме того, можно щелкнуть значок папки рядом с полем Имя файла и выбрать расположение, в котором необходимо создать базу данных. Если не выбрать расположение, приложение Access создаст базу данных в расположении по умолчанию, которое отображается под полем Имя файла.
Нажмите кнопку Создать.
Приложение Access создаст базу данных и откроет ее для работы.
Если ни один из шаблонов не подходит или данные, которые необходимо использовать в приложении Access, хранятся в другой программе, эффективнее будет создать базу данных с нуля. В Access 2010 можно создать стандартную базу данных для настольных компьютеров или веб-базу данных.
Чтобы создать базу данных, нужно выполнить указанные ниже действия.
- Запустить Microsoft Access.
- На вкладке Создать в представлении Backstage нажать кнопку Новая база данных или Пустая веб-база данных.
- От выбранного варианта будет зависеть функциональность базы данных. Базы данных для настольных компьютеров нельзя опубликовать в Интернете, а веб-базы данных не поддерживают некоторые возможности баз данных для настольных компьютеров, например итоговые запросы.
- Ввести имя базы данных в расположенное справа поле Имя файла.
- Чтобы изменить расположение создаваемого файла, нужно нажать кнопку Обзор рядом с полем Имя файла, указать новое расположение и нажать кнопку ОК.
- В заключении нужно нажать кнопку Создать.
Приложение Access создаст базу данных и откроет в режим таблицы пустую таблицу (с именем «Таблица1»).
Ввод данных в режиме таблицы похож на ввод данных в электронную таблицу Microsoft Excel. Основное ограничение заключается в том, что данные следует вводить в смежные строки и столбцы, начиная с левого верхнего угла таблицы. Не следует пытаться форматировать данные, добавляя пустые строки и столбцы, как в электронной таблице Microsoft Excel, поскольку это приведет к потере места в таблице. Таблица просто содержит введенные данные. Наглядное представление данных обеспечивается с помощью форм и отчетов.
Структура таблицы создается при вводе данных. При добавлении каждого нового столбца в таблицу задается новое поле. Приложение Access задает тип данных поля в зависимости от типа вводимых данных в соответствии с таблицей 1. Например, если в столбец введены только даты, приложение Access задаст для этого поля тип «Дата и время». Если впоследствии попытаться ввести в это поле значение, не являющееся датой (например, имя или номер телефона), будет выведено сообщение о том, что значение не соответствует типу данных столбца. По возможности следует спланировать таблицу таким образом, чтобы каждый столбец содержал данные одного типа (текст, даты, номера или другой тип). Это позволит упростить построение запросов, форм и отчетов, включающих только необходимые данные.
Таблица 1 – Основные типы данных в Access
Формат |
Служит для отображения |
Текст |
Короткие буквенно-цифровые значения, например фамилия или адрес. |
Числовой |
Числовые значения, например расстояния. Имейте в виду, что для денежных значений есть отдельный тип. |
Денежный |
Денежные значения. |
Да/Нет |
Значения «Да» и «Нет», а также поля, содержащие только одно из двух возможных значений. |
Дата/время |
Значения даты и времени для годов с 100 по 9999. |
Форматированный текст |
Текст или сочетания текста и чисел, которые можно отформатировать с помощью элементов управления цветами и шрифтом. |
Вычисляемое поле |
Результаты вычисления. В вычислении должны использоваться поля в той же таблице. Для создания вычислений используется построитель выражений. |
Вложение |
Изображения, листы, документы, диаграммы и файлы других поддерживаемых типов, прикрепленные к записям в базе данных (аналогично файлам, вложенным в сообщения электронной почты). |
Продолжение таблицы 1
Гиперссылка |
Текст или сочетания текста и цифр, хранящиеся в виде текста и используемые в качестве адреса гиперссылки. |
MEMO |
Длинные фрагменты текста. Поле типа MEMO часто используется для хранения подробного описания продукта. |
Подстановка |
Список значений, возвращаемых запросом или из таблицы, либо набор значений, указанных при создании поля. Поле подстановки можно создать с помощью мастера подстановок. Такое поле обычно имеет текстовый или числовой тип данных в зависимости от того, какие параметры были выбраны в мастере. |
Примечание |
Поля подстановки имеют дополнительный набор свойств, доступных на вкладке Подстановка в области Свойства поля. |
В зависимости от используемого шаблона для начала работы с новой базой данных может потребоваться выполнить одно или несколько из указанных ниже действий.
Если в приложении Access появилось диалоговое окно Вход с пустым списком пользователей, нужно выполнить указанные ниже действия.
- Нажать кнопку Новый пользователь.
- Заполнить форму Сведения о пользователе.
- Нажать кнопку Сохранить и закрыть.
- Выбрать введенное имя пользователя и нажать кнопку Вход.
Если в приложении Access отображается пустая таблица данных, можно начать вводить данные непосредственно в эту таблицу либо воспользоваться другими кнопками.
Если в приложении Access открылась страница Приступая к работе, можно получить дополнительные сведения о базе данных с помощью ссылок на этой странице.
Если в приложении Access на панели сообщений появилось предупреждение системы безопасности и можно доверять источнику, из которого получен шаблон, нужно нажать кнопку Включить содержимое. Если база данных требует входа, потребуется выполнить вход заново.
Для обычных и веб-баз данных также можно выполнить одно из указанных ниже действий.
- Добавление таблицы и ввод в нее данных.
- Импорт данных из других источников с созданием новых таблиц.
- Добавить новую таблицу в существующую базу данных можно с помощью средств в группе Таблицы на вкладке Создание.
Независимо от того, в каком режиме была начата работа, всегда можно переключиться в другой режим с помощью кнопок режимов в строке состояния окна Access.
В режиме таблицы можно сразу же приступить к вводу данных, позволив приложению Access сформировать структуру таблицы автоматически. Имена полей задаются номерами («Поле1», «Поле2» и т. д.), а тип данных поля определяется на основе типа вводимых данных.
В режиме конструктора сначала следует создать структуру новой таблицы. Затем необходимо переключиться в режим таблицы для ввода данных либо ввести данные другим способом, например с помощью формы.
Список SharePoint позволяет работать с данными пользователям, у которых не установлено приложение Access. Более того, данные списка хранятся на сервере, что обычно обеспечивает более надежную защиту от потери данных, чем хранение файлов на настольном компьютере. Можно либо создать новый список, либо подключиться к существующему. Для создания списка необходимо обладать достаточными разрешениями на соответствующем сайте SharePoint; разрешения зависят от конкретного сайта, поэтому нужно обратиться к администратору SharePoint за дополнительными сведениями.
Если данные хранятся в другой программе, например в Excel, их можно скопировать и вставить в таблицу Access. Этот способ работает лучше всего, если данные уже разделены на столбцы, как это сделано в таблице Excel. Если данные введены в текстовом редакторе, необходимо сначала разделить их на столбцы с помощью знаков табуляции либо преобразовать в таблицу в текстовом редакторе, а затем скопировать их.
В приложении Access имена назначаются полям в зависимости от содержимого первой строки вставленных данных. Если первая строка вставляемых данных похожа по типу на последующие строки, она определяется в приложении Microsoft Access как строка данных, а полям присваиваются стандартные имена («Поле1», «Поле2» и т. д.). Если первая строка вставляемых данных отличается от последующих, ее содержимое используется только для выбора имен полей и не включается в сами данные.
Если приложение Access назначает полям стандартные имена, во избежание путаницы их следует переименовать как можно быстрее.
Иногда данные, хранящиеся в другой программе, требуется использовать в Access. Например, вы можете работать с людьми, которые хранят данные в других программах, а вам необходимо работать с этими данными в Access. Или если данные поступают из множества различных источников, может потребоваться общая «площадка» для их объединения и более глубокого анализа.
Приложение Access позволяет легко импортировать данные из других программ и создавать связь с такими данными. Данные можно получать из листов Excel, таблиц других баз данных Access, списков SharePoint и множества других источников. Процесс импорта немного различается в зависимости от источника.
Пользователи, имеющие опыт работы с другими СУБД или редакторами электронных таблиц, вероятно, знают основные принципы работы этих программ и использования баз данных. В отличие от многих других приложений баз данных, в Microsoft Access можно создавать реляционные базы данных, а отличие от большинства редакторов электронных таблиц заключается в наличии средств разработки сложных запросов, форм и отчетов. Кроме того, Microsoft Access позволяет работать с другими СУБД, такими как Microsoft SQL Server.
Многие пользователи начинают знакомство с приложением Microsoft Access после создания списка в Microsoft Excel. Приложение Microsoft Excel удобно для создания списков, но по мере увеличения списка возникают трудности с его обработкой и обновлением. Следующим логическим шагом обычно является перемещение списка в Microsoft Access.
Таблица базы данных структурно похожа на лист тем, что данные хранятся в строках и столбцах, поэтому лист обычно легко импортируется в таблицу базы данных. Главное различие хранения данных в листе и базе данных состоит в том, как эти данные организованы. Простой импорт всего листа в новую таблицу базы данных не решит проблем, связанных с организацией и обновлением данных, особенно если лист содержит избыточные данные. Для решения этих проблем нужно разбить данные листа на отдельные таблицы со связанными данными. Дополнительные сведения об упорядочении данных в таблицах см. в статье Основные сведения о создании баз данных.
Приложение Access включает мастер анализа таблиц, который может оказаться полезным при выполнении этого процесса. После импорта данных в таблицу мастер поможет разбить ее на отдельные таблицы, каждая из которых будет содержать данные, не повторяющиеся в других таблицах. Кроме того, мастер создаст необходимые связи между таблицами.
После импорта данных в таблицу Microsoft Access можно воспользоваться мастером анализа таблиц для быстрого выявления избыточных данных. Мастер позволяет легко распределить данные по отдельным таблицам, чтобы обеспечить максимальную эффективность хранения. Приложение Access сохраняет исходную таблицу в качестве резервной копии, а затем создает новые таблицы, которые можно использовать в качестве основы приложения баз данных.
Приложение Access 2010 предоставляет средства для работы с данными, сохраненными в других программах.
В Microsoft Access можно открыть файл другого формата, например текстовый, dBASE или лист. При этом приложение Access автоматически создает базу данных и связи с этим файлом.
Данные из других источников или программ можно импортировать в таблицы Microsoft Access, чтобы они хранились в файле Microsoft Access, а также связать с Microsoft Access, чтобы они оставались в исходном файле (вне файла Microsoft Access).
Если база данных Microsoft Access или проект Microsoft Access были созданы в приложении Microsoft Access 2000 или более поздней версии, их можно использовать в версии Microsoft Access, в которой они были созданы, или более поздней, даже если для файла включены средства обеспечения безопасности. Например, файлы Access 2000 можно использовать в приложениях Access 2000, Access 2002, Access 2003, Access 2007 и Access 2010.
Иногда данные необходимо хранить в более ранней версии Access, но при этом ряду пользователей более поздней версии Access необходимо подключаться к этим данным, сохраняя преимущества более поздней версии. Решение состоит в том, чтобы создать новую «клиентскую» базу данных в более поздней версии (содержащую формы, отчеты, запросы и макросы, но не таблицы), и связать ее с таблицами в файле более ранней версии. Воспользуйтесь для этого одной из описанных ниже процедур в зависимости от того, хранится ли база данных в одном файле или уже разделена на клиентская и серверная части приложения.
Если все таблицы, формы и другие объекты базы данных содержатся в одном MDB-файле и нужно использовать эту базу данных в нескольких версиях Access, можно создать новую клиентскую базу данных в более поздней версии и связать ее с исходным файлом. Пользователи более ранней версии Access смогут продолжать работать с исходной базой данных, а пользователи более поздних версий смогут подключаться к этим же данным с помощью новой клиентской базы данных. При наличии нескольких версий Access можно создать несколько клиентских версий базы данных.
Если база данных Access уже реализована в виде клиентская и серверная части приложения, можно преобразовать клиентскую часть в новый формат. Серверную базу данных изменять не нужно.
Знакомство с таблицами, формами, запросами и прочими объектами базы данных облегчает выполнение самых разных задач, таких как ввод данных в форму, добавление или удаление таблиц, поиск и замена данных и выполнение запросов.
Форма — это объект базы данных, который можно использовать для создания интерфейса пользователя для приложения базы данных. «Привязанная» форма напрямую соединена с источником данных, например к таблице или запросу, и может использоваться для ввода, изменения или отображения данных из источника данных. Как вариант, можно создать «свободную» форму, которая не связана напрямую с источником данных, но которая все равно может содержать кнопки, надписи и другие элементы управления, необходимые для работы приложения.
С помощью инструмента «Форма» можно создать форму одним щелчком мыши. При использовании этого средства все поля базового источника данных размещаются в форме. Можно сразу же начать использование новой формы либо при необходимости изменить ее в режиме макета или конструктора.
Разделенная форма позволяет одновременно отображать данные в двух представлениях — в режиме формы и в режиме таблицы.
Разделенная форма отличается от сочетания формы и подчиненной формы тем, что эти два представления связаны с одним источником данных и всегда синхронизированы друг с другом. При выделении поля в одной части формы выделяется то же поле в другой части. Данные можно добавлять, изменять или удалять в любой части (при условии, что источник записей допускает обновление, а параметры формы не запрещают такие действия).
Разделенная форма позволяет использовать преимущества обоих типов форм в одной форме. Например, можно воспользоваться табличной частью формы, чтобы быстро найти запись, а затем просмотреть или изменить запись в другой части формы.
В форме, созданной с помощью средства «Форма», одновременно отображается только одна запись. Если нужна форма, в которой отображается сразу несколько записей, и при этом требуются более широкие возможности настройки, чем у таблицы, можно воспользоваться инструментом «Несколько элементов».
Для получения большей свободы выбора полей, отображаемых на форме, вместо упомянутых выше инструментов можно воспользоваться мастером форм. Кроме того, можно указать способ группировки и сортировки данных, а также включить в форму поля из нескольких таблиц или запросов при условии, что заранее заданы отношения между этими таблицами и запросами.
Если мастер или инструменты создания форм не подходят, для создания формы можно воспользоваться инструментом «Пустая форма». Так можно очень быстро построить форму, особенно если на ней будет лишь несколько полей.
Режим макета представляет собой наиболее наглядный режим изменения форм. Его можно использовать для внесения практически любых изменений в форму в Access. При создании базы данных с помощью команды Пустая веб-база данных в представлении Microsoft Backstage режим макета является единственным режимом, в котором можно проектировать формы.
В режиме макета форма уже запущена. Таким образом, данные отображаются практически так же, как при реальном использовании формы. При этом в данном режиме можно изменять структуру формы. Поскольку при изменении формы отображаются реальные данные, в режиме макета удобно задавать размер элементов управления и выполнять иные задачи, влияющие на вид и удобство использования форм.
При разработке стандартной базы данных для настольных компьютеров (не являющейся веб-базой данных) некоторые задачи невозможно выполнить в режиме макета. В этом случае можно переключиться в режим конструктора. В некоторых случаях приложение Access выводит сообщение о необходимости переключиться в режим конструктора для внесения определенных изменений.
Режим конструктора обеспечивает более подробное представление структуры формы. В нем отображаются разделы колонтитулов и данных формы. В этом режиме форма не выполняется, поэтому при внесении изменений невозможно просмотреть соответствующие данные. Однако некоторые задачи удобнее выполнять в режиме конструктора, а не макета, например следующие:
- добавление в форму дополнительных элементов управления, таких как границы привязанных объектов, разрывы страниц и диаграммы;
- изменение источников элемента управления «текстовое поле» непосредственно в самом поле, без использования окна свойств;
- изменение размеров разделов формы, таких как «Заголовок формы» или «Область данных»;
- изменение определенных свойств формы, которые нельзя изменить в режиме макета.
Запрос представляет собой обращение к данным для получения необходимой информации и (или) выполнения действий с данными. Запрос можно использовать для получения ответа на простой вопрос, выполнения расчетов, объединения данных из разных таблиц или даже для добавления, изменения или удаления данных в таблице. Запросы, используемые для извлечения данных из таблицы или выполнения расчетов, называются запросами на выборку. Запросы, используемые для добавления, изменения или удаления данных, называются запросами на изменение.
Запросы можно также использовать для включения данных в форму или отчет. В грамотно спроектированной базе данных сведения, которые требуется представить с использованием формы или отчета, часто хранятся в разных таблицах. С помощью запроса можно собрать необходимые данные перед проектированием формы или отчета.
Иногда необходимо просмотреть все данные из таблицы, но в других случаях может потребоваться просмотреть только данные из определенных полей или только данные, соответствующие определенным условиям. Для просмотра некоторых данных в таблице можно использовать запрос на выборку.
Иногда необходимо выполнить запрос, который лишь немногим отличается от существующего запроса. Можно изменить исходный запрос для использования новых условий, но если часто требуется запускать различные варианты одного запроса, лучше воспользоваться запросом с параметрами. При выполнении запроса с параметрами у пользователя запрашиваются значения полей, которые затем используются для создания условий запроса.
Можно также указать, данные какого типа разрешается вводить в качестве значения параметра. Тип данных можно настроить для любого параметра, но особенно важно сделать это для числовых и денежных данных, а также данных о дате и времени. Когда для параметра указан тип данных, пользователи получают более понятные сообщения об ошибках в случае ввода данных неправильного типа, например ввода текста, когда ожидаются денежные данные.
Если параметр настроен таким образом, чтобы принимать текстовые данные, любое введенное значение интерпретируется как текст и сообщение об ошибке не отображается.
Обычно таблицы не используются для хранения значений, вычисленных на основе данных из той же базы данных. В некоторых случаях вычисленные значения могут устареть, поскольку данные, на основе которых они были рассчитаны, изменились. Например, не стоит хранить чей-либо возраст в таблице, поскольку придется обновлять это значение каждый год; вместо этого можно хранить дату рождения, а затем использовать в запросе выражение для расчета возраста.
При использовании таблиц для записи операций или хранения регулярно встречающихся числовых данных удобно иметь возможность просмотреть статистические показатели этих данных, например суммарные или средние значения.
В Access можно просмотреть простые статистические показатели в любой defDatasheet, добавив строку «Итог». Она находится в нижней части таблицы и содержит итоговое или другое статистическое значение.
Строка «Итог» в таблице очень полезна, но для ответа на более сложные вопросы следует использовать запрос итоговых значений. Такой запрос представляет собой запрос на выборку, позволяющий группировать данные и составлять их сводку. Например, пусть требуется просмотреть итоги продаж каждого товара. В запросе итоговых значений можно использовать defAggregateFunction Sum для просмотра итогов продаж каждого товара.
Если необходимо просмотреть промежуточные суммы для товаров, а также статистические показатели по месяцам, т. е. в каждой строке должны отображаться промежуточные суммы для товара, а в каждом столбце — промежуточные суммы за месяц. Для вывода промежуточных сумм для товара и промежуточных сумм за месяц используйте defCrosstabQuery.
Для создания новой таблицы на основе данных, которые хранятся в других таблицах, можно использовать запрос на создание таблицы.
Для извлечения данных из одной или нескольких таблиц и добавления их в другую таблицу можно использовать запрос на добавление.
Для изменения данных в таблицах, а также для ввода условий, указывающих, какие строки следует обновить, можно использовать запрос на обновление. Запрос на обновление позволяет просмотреть обновленные данные перед выполнением обновления.
Запрос на изменение невозможно отменить. Возможно, перед обновлением следует создать резервные копии всех таблиц, которые будут обновлены запросом на обновление.
Для удаления данных из таблиц, а также для ввода условий, указывающих, какие строки следует удалить, можно использовать запрос на удаление. Запрос на удаление позволяет просмотреть удаляемые строки перед выполнением удаления.
Создать веб-запрос, являющийся запросом на удаление, невозможно.
Как правило, данные проще анализировать, если они разделены на группы. Например, отчет с группировкой продаж по регионам может помочь выявить тенденции, которые иначе могли бы остаться незамеченными. К тому же, поместив итоговые значения (например, суммы или средние значения) в конце каждой группы своего отчета, вы тем самым замените множество операций, выполняемых на калькуляторе.
Access упрощает работу над отчетами с группировкой. Вы можете создать простой отчет с группировкой при помощи мастера отчетов, добавить группировку или сортировку в уже созданный отчет, а также изменить уже заданные параметры группировки или сортировки.
Если у вас уже есть отчет и вам нужно добавить в него сортировку или группировку, либо вам нужно изменить в нем условия сортировки или группировки.
Вы можете выполнять операции сортировки, группировки и подведения итогов, щелкнув правой кнопкой мыши поля в режиме макета, а затем выбрав в контекстном меню нужную операцию. Чтобы перейти в режим макета, нужно щелкнуть правой кнопкой мыши отчет в области навигации и выбрать пункт Режим макета.