Помощь в написании студенческих работ
Антистрессовый сервис

Разработка автоматизированной информационной системы «Компьютерный склад» на примере отдела технической поддержки ОАО «ГСКБ» Алмаз-Антей

ДипломнаяПомощь в написанииУзнать стоимостьмоей работы

Конфигурации 7. x могут использовать базовые объекты и объекты других «Стандартных компонент». Для использования объекта какой-либо компоненты необходимо наличие соответствующей компоненты в Технологической платформе. Если конфигурация написана с использованием только базовых объектов («компонент-независимая»), то для её использования необходима Технологическая платформа 7. x с любой хотя бы… Читать ещё >

Разработка автоматизированной информационной системы «Компьютерный склад» на примере отдела технической поддержки ОАО «ГСКБ» Алмаз-Антей (реферат, курсовая, диплом, контрольная)

  • СОДЕРЖАНИЕ

1. ОБЩАЯ ЧАСТЬ

1.1 Актуальность информационных систем

1.2 Понятие информационной системы, виды информационных систем

1.3 Классификация ИС по различным признакам: по назначению, по виду деятельности, по структуре аппаратных средств, по используемым режимам работ

1.4 Анализ инструментальных средств для разработки автоматизированных информационных систем.

1.4.1 Microsoft Access

1.4.2 1С: Предприятие

1.4.3 C++ Builder

1.4.4 MySQL

1.5 Выбор технологии проектирования. Обоснование.

2. СПЕЦИАЛЬНАЯ ЧАСТЬ

2.1 Описание процесса создания системы

2.2 Техническое задание.

2.2.1 Введение.

2.2.2 Требования к программе и программному изделию.

2.2.3 Требования к надежности.

2.2.4 Условия эксплуатации.

2.2.5 Требования к программной документации.

2.2.6 Технико-экономические показатели.

2.3 ER-диаграмма (Сущность-связь)

2.4 Диаграмма вариантов использования.

2.4.1 Вариант использования

2.5 Диаграмма деятельности.

2.6 Логическая структура базы данных.

2.7 Описание программы

2.8 Проектирование интерфейса пользователя. Разработка форм графического интерфейса и баз данных.

2.9 Полное руководство пользователя.

3. ЭКОНОМИЧЕСКАЯ ЧАСТЬ

3.1 Организационно-экономическое обоснование проекта.

3.2 Расчет себестоимости.

3.2.1 Расчет трудоемкости

3.2.2 Расчет затрат на электроэнергию и амортизацию оборудования.

3.2.3 Расчет затрат на материалы.

3.2.4 Расчет начислений на заработную плату

3.2.5 Расчет себестоимости разработки программного продукта

ЗАКЛЮЧЕНИЕ

.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

ПРИЛОЖЕНИЯ

Приложение А. Программный код.

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

На всех этапах развития технического оснащения предприятий ставились конкретные задачи по упрощению и развитию систем учета и реализации технических средств. До недавнего времени использовались традиционные методы учета и распределения технических устройств на рабочие места. Но с появлением ЭВМ многие проблемы по учету их реализации свелись к минимуму.

В данном дипломном проекте я хотел бы описать автоматизированную систему учета «Компьютерный склад», аналог которой используют в отделе технической поддержки ОАО «ГСКБ «Алмаз-Антей» им. А. А. Расплетина.

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

Для выполнения поставленной цели необходимо решить следующие задачи:

провести анализ теории и практики внедрения интегрированных систем автоматизации технических средств, для обоснования разрабатываемых решений;

проанализировать проблемы организации распределения ЭВМ и комплектующих внутри предприятия;

разработать проект по созданию автоматизированной системы учета компьютеров и комплектующих в ОАО «ГСКБ „Алмаз-Антей“ им. А.А. Расплетина».

Объект: Процесс учета ЭВМ и комплектующих на предприятии.

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

1. Общая часть

1.1 Актуальность и информационных систем

Актуальность информационных систем заключается в структуризации и упорядоченности необходимой информации, хранящейся в больших объемах и схожих по тематике. В качестве примера: информационные системы позволяют людям, не отходя от рабочего места, узнать все необходимые данные о документации и наличии изделий хранящихся на складе и полностью, или частично избавиться от бумажного документооборота, который имеет ограниченный срок службы, в отличие от электронных средств хранения данных. Информационные системы используют все организации, без исключений. Это могут быть и бухгалтерские системы (1С «Бухгалтерия»), и складские («1С Склад»), а также АИС для внутреннего пользования (Схожие с данной работой), имеющие свой функционал использования.

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

1.2 Понятие информационной системы, виды информационных систем

Информационная система (ИС) — совокупность принципов, методов и способов обработки информации и непосредственно сам процесс ее преобразования. (Т.е процесс + те правила, по которым он выполняется)

Принципы — совокупность требований, правил, которые должны обязательно соблюдаться.

Методы — совокупность таких методов, правил, условий, которые соблюдаются не всегда и не везде, но каждое отступление от них должно и быть декларировано (т.е. содержать то описание, которое позволило бы понять особенность их применения или использования)

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

Обработка информации — все возможные действия, направленные на сбор, хранение, преобразование и получение информации, включая ее передачу от одного объекта к другому. Новая информационная технология — это технология, основанная на информационных или компьютерных системах совместно с телекоммуникационными системами (электронный способ передачи информации). А что же такое Информационная система? Для начала необходимо понять что такое «система» вообще: Понятие Техническая система — любой объект, который одновременно рассматривается как единое целое и как объединенные в интересах достижения поставленных целей, разнородность различных элементов.

1.3 Классификация ИС по различным признакам: по назначению, по виду деятельности, по структуре аппаратных средств, по используемым режимам работ

информационный база данные графический

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

область применения;

по уровню организации;

по аппаратно — техническому обеспечению;

по масштабу.

Классификацию информационных систем можно проводить по ряду признаков: назначению, структуре аппаратных средств, режиму работы, виду деятельности и т. п.

Приведем определения и пояснения ряда терминов и понятий, связанных с классификацией информационных систем.

По назначению информационные системы делят на информационно-управляющие, системы поддержки принятия решений, информационно-поисковые, информационно-справочные и системы обработки данных.

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

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

Информационно-поисковые системы это системы, основное назначение которых — поиск информации, содержащейся в различных базах данных, различных вычислительных системах, разнесенных, как правило, на значительные расстояния. Примером таких систем являются, в частности, поисковые системы (серверы) в сети INTERNET, автоматизированные системы поиска научно-технической информации (АСНТИ) и др. Информационно-поисковые системы делятся на документальные (назначение — поиск документов) и фактографические (назначение — поиск фактов).

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

К системам обработки данных относится класс информационных систем, основной функцией которых являются обработка и архивация больших объемов данных.

По виду деятельности автоматизированные информационные системы делят на:

автоматизированные системы управления предприятием (АСУП);

автоматизированные системы управления технологическими процессами (АСУТП);

системы автоматизированного проектирования (САПР);

автоматизированные обучающие системы (АОС) и т. д.

По структуре аппаратных средств выделяют однопроцессорные, многопроцессорные и многомашинные системы (сети ЭВМ, сосредоточенным системы, системы с удаленным доступом). Сосредоточенные системы это вычислительные системы, весь комплекс оборудования которых, включая терминалы пользователей, сосредоточен в одном месте, так что для связи между отдельными машинам используются интерфейсы ЭВМ и не требуется применять системы передачи данных.

Системы с удаленным доступом (с телеобработкой) обеспечивают связи между терминалами пользователей и вычислительными средствами способом передачи данных по каналам связи (с использованием систем пере дачи данных).

Сети ЭВМ (вычислительные сети) — это взаимосвязанная совокупности территориально рассредоточенных систем обработки данных, средств (или) систем связи и передачи данных, обеспечивающая пользователям дистанционный доступ к вычислительным ресурсам и коллективное использование этих ресурсов.

По режиму функционирования вычислительные системы разделяют на однопрограммные и мультипрограммные.

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

Мультипрограммный режим предусматривает параллельную работу или чередование выполнения двух или более задач.

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

В режиме индивидуального пользования все ресурсы системы предоставляются в распоряжение одного пользователя.

Наглядно вся описанная выше классификация отражена на рисунке1.

Рисунок 1 — Классификация информационных систем

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

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

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

Диалоговый режим — режим взаимодействия человека с системой обработки информации, при котором человек и система обмениваются информацией в темпе, соизмеримом с темпом обработки информации человеком.

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

По особенностям функционирования информационной системы во времени выделяют режим реального времени (real time processing) — режим обработки информации, при котором обеспечивается взаимодействие системы обработки информации с внешними по отношению к ней процессами в темпе, соизмеримом со скоростью протекания этих процессов.

1.4 Анализ инструментальных средств для разработки автоматизированных информационных систем точка в конце заголовка пункта или подпункта не ставится

1.4.1 Microsoft Access

Microsoft Office Access или просто Microsoft Access реляционная СУБД корпорации Microsoft. Имеет широкий спектр функций, включая связанные запросы, связь с внешними таблицами и базами данных. Благодаря встроенному языку VBA, в самом Access можно писать приложения, работающие с базами данных.

Основные компоненты MS Access:

построитель таблиц;

построитель экранных форм;

построитель SQL-запросов (язык SQL в MS Access не соответствует стандарту ANSI);

построитель отчётов, выводимых на печать.

Они могут вызывать скрипты на языке VBA, поэтому MS Access позволяет разрабатывать приложения и БД практически «с нуля» или написать оболочку для внешней БД.

Microsoft Jet Database Engine, которая используется в качестве движка базы данных MS Access, является файл-серверной СУБД и потому применима лишь к приложениям, работающим с небольшими объёмами данных и при небольшом числе пользователей, одновременно работающих с этим данными. Непосредственно в Access отсутствует ряд механизмов, необходимых в многопользовательских базах данных, таких, например, как триггеры.

Встроенные средства взаимодействия MS Access со внешними СУБД (таблица 1) с использованием интерфейса ODBC снимают ограничения, присущие Microsoft Jet Database Engine. Инструменты MS Access, которые позволяют реализовать такое взаимодействие, называются «связанные таблицы» (связь с таблицей СУБД) и «запросы к серверу» (запрос на диалекте SQL, который «понимает» СУБД).

Корпорация Microsoft для построения полноценных клиент-серверных приложений на базе MS Access рекомендует использовать в качестве движка базы данных СУБД MS SQL Server. При этом имеется возможность совместить с присущей MS Access простотой инструменты для управления БД и средства разработки.

Известны также реализации клиент-серверных приложений на базе связки Access 2003 c другими СУБД, в частности, MySQL.

Таблица 1 — Совместимость Access со сторонними источниками данных слово таблица без отступа

СУБД (Источник данных)

Версия Access

Драйвер

Обновляемые запросы

Файлы Excel

все

встроенный

Нет

SQLite

Да

MySQL

2000;2003

MyODBC v.3.51.X, 5.1.X

Да

PostgreSQL

Да

Firebird

Да

1C v.7.7 (dbf)

Visual FoxPro ODBC driver v.6.01.8629.01

Нет

Paradox

Oracle

Текстовые файлы

все

встроенный

Нет

Таблицы html

все

встроенный

Нет

Access, при работе с базой данных, иначе взаимодействует с жёстким (или гибким) диском, нежели другие программы.

В других программах, файл-документ, при открытии, полностью загружается в оперативную память, и новая редакция этого файла (изменённый файл) целиком записывается на диск только при нажатии кнопки «сохранить».

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

Целостность данных в Access обеспечивается также за счёт механизма транзакций.

Кнопка «Сохранить» в Access тоже есть, но в Access в режиме просмотра данных она нужна, в первую очередь, для сохранения изменённого режима показа таблицы или другого объекта — то есть, для сохранения таких изменений, как:

изменение ширины столбцов и высоты строк; перечисления всегда с отступом в 1,25 см.

перестановка столбцов в режиме просмотра данных, «закрепление» столбцов;

освобождение закреплённых столбцов;

изменение сортировки;

применение нового фильтра;

изменение шрифта; цвета текста, сетки и фона, и т. п.

Кроме того, в Access эта кнопка нужна в режиме «Конструктор» для сохранения изменений структуры объекта базы данных, сделанных в этом режиме.

1.4.2 1С: Предприятие

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

Первоначально 1С: Предприятие было предназначено для автоматизации бухгалтерского и управленческого учётов (включая начисление зарплаты и управление кадрами), но сегодня этот продукт находит свое применение в областях, далеких от собственно бухгалтерских задач.

Технологическая платформа «1 С: Предприятие» представляет собой программную оболочку над базой данных (используются базы на основе DBF-файлов в 7.7, собственный формат 1CD с версии 8.0 или СУБД Microsoft SQL Server на любой из этих версий). Кроме того, с версии 8.1 хранение данных возможно в СУБД PostgreSQL и IBM DB2, а с версии 8.2 добавилась и Oracle. Имеет свой внутренний язык программирования, обеспечивающий, помимо доступа к данным, возможность взаимодействия с другими программами посредством OLE и DDE, в версиях 7.7, 8.0 и 8.1 с помощью COM-соединения.

Клиентская часть платформы функционирует в среде Microsoft Windows и, начиная с версии 8.3, в среде Linux. Начиная с версии 8.1, серверная часть платформы в клиент-серверном варианте работы «1С:Предприятия» может функционировать на ОС Linux.

Существуют специальные версии среды исполнения 1С для ноутбуков и PDA, ПО создания веб-приложений, взаимодействующих с базой данных «1С:Предприятие».

Конфигурация прикладное решение, разработанное на технологической платформе «1С:Предприятие».

Базовые (специализированные) конфигурации предназначены для работы на базовых версиях платформы (для версии 7. x с соответствующей «компонентой»). Базовые конфигурации поставляются только фирмой 1С, не допускают внесения изменений, но могут быть преобразованы в типовые. Все неспециализированные, «небазовые» конфигурации, в том числе и типовые от 1С, допускают изменение (конфигурирование) пользователем.

Тиражные решения сторонних фирм часто бывают защищены «системой защиты конфигураций» (СЗК), предлагаемой 1С или аналогичной, и предусматривают наличие дополнительного ключа, распространяемого с конфигурацией. Без этого ключа программа работает в ограниченном или демонстрационном режиме (как рекомендует 1С) или работа вовсе невозможна. Часть текста программы недоступна для прочтения и изменения (даже при наличии ключа). Указанные ключи СЗК не заменяют ключей к технологической платформе, те продолжают оставаться необходимыми.

Конфигурации 7. x могут использовать базовые объекты и объекты других «Стандартных компонент». Для использования объекта какой-либо компоненты необходимо наличие соответствующей компоненты в Технологической платформе. Если конфигурация написана с использованием только базовых объектов («компонент-независимая»), то для её использования необходима Технологическая платформа 7. x с любой хотя бы одной «компонентой», не менее чем «Бухгалтерский учёт (стандартная)». Следует различать термины «базовые объекты» и «базовые конфигурации»: так, неспециализированная конфигурация, использующая только базовые объекты, не будет работать на базовой платформе, а базовые конфигурации не ограничиваются использованием базовых объектов.

Конфигурации часто делятся на две группы «типовые» и «нетиповые». «Типовая» конфигурация это тиражное решение, которое распространяется «в коробке». Также встречается сленговый термин «Правленая» конфигурация имеется в виду изменённая под нужды компании типовая конфигурация, которая в силу внесённых в неё изменений уже не является типовой, однако очень похожа. «Самопальная» конфигурация (от слова «самопал»), «самописная», или конфигурация «с нуля» конфигурация, разработанная независимо от фирмы 1С, обычно под нужды конкретного заказчика. Эти сленговые термины также довольно часто используются представителями фирмы 1С компаниями франчайзи

1.4.3 C++ Builder

C++ Builder программный продукт, инструмент быстрой разработки приложений (RAD), интегрированная среда программирования (IDE), система, используемая программистами для разработки программного обеспечения на языке программирования C++.

Изначально разрабатывался компанией Borland Software, а затем её подразделением CodeGear, ныне принадлежащим компании Embarcadero Technologies.

C++ Builder объединяет в себе комплекс объектных библиотек (STL, VCL, CLX, MFC и др.), компилятор, отладчик, редактор кода и многие другие компоненты. Цикл разработки аналогичен Delphi. Большинство компонентов, разработанных в Delphi, можно использовать и в C++ Builder без модификации, но обратное утверждение не верно.

C++ Builder содержит инструменты, которые при помощи drag-and-drop действительно делают разработку визуальной, упрощает программирование благодаря встроенному WYSIWYG редактору интерфейса и пр.

C++Builder первоначально создавалась только для платформы Microsoft Windows. Поздние версии, содержащие кроссплатформенную компонентную библиотеку Borland, поддерживают и Windows, и Linux.

В 2003 году Borland выпустила C++BuilderX (CBX), написанный при помощи той же инфраструктуры, что и JBuilder, который при этом был мало похож на C++ Builder или Delphi. Этот продукт предназначался для разработки больших программ для крупных предприятий, но коммерческого успеха не достиг. В конце 2004 года Borland объявила, что продолжит развитие классического C++ Builder и объединит его со средой разработки Delphi, прекратив, таким образом, разработку C++ BuilderX. Спустя примерно год после этого объявления, Borland выпустила Borland Developer Studio 2006, который включал в себя Borland C++Builder 2006, предлагавший улучшенное управление конфигурацией и отладкой. Borland Developer Studio 2006 единственный полноценный комплект, содержащий Delphi, C++ Builder и C# Builder.

В 2007 году CodeGear выпустила C++Builder 2007, в котором реализовала полную поддержку API Microsoft Windows Vista, увеличила полноту соответствия стандарту ANSI C++, увеличила скорость компиляции и сборки до 500%, включила поддержку MSBuild, архитектур баз данных DBX4 и «VCL для Web», поддерживающий AJAX. Поддержка API Microsoft Windows Vista включила в себя приложения, изначально оформленные в стиле Vista, и естественную поддержку VCL для Aero и Vista Desktop. CodeGear RAD Studio 2007 содержит C++Builder 2007 и Delphi. Также в 2007 году CodeGear «воскресила» марку «Turbo» и выпустила две «Turbo» версии C++Builder: Turbo C++ Professional и Turbo C++ Explorer (бесплатный), основанных на Borland C++ Builder 2006.

В конце 2008 года компания CodeGear выпустила новую версию RAD Studio, в которую вошли Delphi 2009 и С++Builder 2009. В 2009 году в составе RAD Studio вышел C++Builder 2010.

Ранее сообщалось, что следующая версия, CodeGear C++ Builder (кодовое имя «Commodore»), будет обладать поддержкой x86−64 и возможностью создавать машинный x86−64 код. Однако в 2010 году в состав RAD Studio XE включена версия C++ Builder XE без этой функциональности.

В 2012 году Embarcadero выпустила C++ Builder XE3, совместимый с Windows 8. В 2013 году был выпущен C++ Builder XE4.

1.4.4 MySQL

MySQL свободная реляционная система управления базами данных. Разработку и поддержку MySQL осуществляет корпорация Oracle, получившая права на торговую марку вместе с поглощённой Sun Microsystems, которая ранее приобрела шведскую компанию MySQL AB. Продукт распространяется как под GNU General Public License, так и под собственной коммерческой лицензией. Помимо этого, разработчики создают функциональность по заказу лицензионных пользователей. Именно благодаря такому заказу почти в самых ранних версиях появился механизм репликации.

MySQL является решением для малых и средних приложений. Входит в состав серверов WAMP, AppServ, LAMP и в портативные сборки серверов Денвер, XAMPP, VertrigoServ. Обычно MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы.

Гибкость СУБД MySQL обеспечивается поддержкой большого количества типов таблиц: пользователи могут выбрать как таблицы типа MyISAM, поддерживающие полнотекстовый поиск, так и таблицы InnoDB, поддерживающие транзакции на уровне отдельных записей. Более того, СУБД MySQL поставляется со специальным типом таблиц EXAMPLE, демонстрирующим принципы создания новых типов таблиц. Благодаря открытой архитектуре и GPL-лицензированию, в СУБД MySQL постоянно появляются новые типы таблиц.

26 февраля 2008 года Sun Microsystems приобрела MySQL AB за $ 1 млрд, 27 января 2010 года Oracle приобрела Sun Microsystems за $ 7,4 млрд и включила MySQL в свою линейку СУБД.

Сообществом разработчиков MySQL созданы различные ответвления кода, такие, как Drizzle, OurDelta, Percona Server и MariaDB. Все эти ответвления уже существовали на момент поглощения компании Sun корпорацией Oracle.

1.5 Выбор технологии проектирования. Обоснование

Большинство программ на предприятиях пишутся на языке С++ так как данный язык программирования на сегодняшний день самый перспективный и осваиваемый во всем мире. На 2015 год нет достойных аналогов данному языку по производительности и наличию сторонних библиотек. Данный язык является также кроссплатформенным (Т.е. совместим со всеми популярными и доступными ОС Windows, Linux, Mac OS). Интегрирование данной программной части позволит использовать свой, ни на что не похожий пользовательский интерфейс, что очень популярно во всех организациях. Именно в этом свете данные инструменты очень хороши.

Для данной информационной системы были выбраны стандартные программные средства для реализации — СУБД Access и среда программирования С++ Builder, часть которой интегрирована в данную систему. Преимущества выбранных инструментов заключаются в следующем:

Программы являются наиболее удобными для освоения и решения задач на производстве;

данные инструменты являются лицензионными и не требуют отдельного разрешения на использование;

персоналу отдела технической поддержки не требуется изучать принцип работы классических СУБД Access и SQL, так как все функции и внутренняя реализация срыты под измененным пользовательским интерфейсом;

поддержка офисных приложений (MS Access, Excel, Word). Пользователь может легко открыть файл, изменяемый в приложении с помощью данных программ;

возможность быстрого изменения частей интерфейса без изменения файловой структуры базы данных;

Многие функции по защите от некорректного ввода и несанкционированного удаления/изменения данных уже реализованы стандартными средствами MS Access;

Простота программирования и отладки интерфейса, программной оболочки продукта.

2. Специальная часть

2.1 Описание процесса создания системы

Для начала необходимо создать диаграммы логического представления всех объектов данной АИС. Данные диаграммы позволят представить визуально все будущие компоненты системы для дальнейшей реализации их в виде программного кода.

2.2 Техническое задание

2.2.1 Введение

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

2.2.2 Требования к программе и программному изделию

Требования к функциональным характеристикам

Программа должна обеспечить:

быстрый доступ к данным о поступлении компьютеров и комплектующих на склад предприятия;

данные о реализации компьютеров и комплектующих;

данные о наличии компьютеров и комплектующих;

возможность формирования заявки;

сводную статистическую информацию.

2.2.3 Требования к надежности- нужно обычным шрифтом оформлять

Надежное (устойчивое) функционирование программы должно быть обеспечено выполнением сотрудниками совокупности организационно-технических мероприятий, перечень которых приведен ниже: а) Корректный ввод и вывод информации о заявках и поставках ПЭВМ; б) организацией бесперебойного питания технических средств; в) использованием лицензионного программного обеспечения; г) регулярным выполнением рекомендаций Министерства труда и социального развития РФ, изложенных в Постановлении от 23 июля 1998 г. Об утверждении межотраслевых типовых норм времени на работы по сервисному обслуживанию ПЭВМ и оргтехники и сопровождению программных средств"; регулярным выполнением требований ГОСТ 51 188–98. Защита информации. Испытания программных средств на наличие компьютерных вирусов.

2.2.4 Условия эксплуатации

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

Минимальное количество персонала для работы с данной системой, должно составлять не менее одной штатной единицеруководителя предприятия, либо специалиста отдела технической поддержки (конечный пользователь данной программы). Персонал должен быть ознакомлен с работой программы, иметь представление о работе с ПЭВМ, специалист должен иметь квалификацию не ниже «Оператора ЭВМ».

В состав технических средств должен входить IВМ-совместимый персональный компьютер (ПЭВМ), выполняющий роль сервера, или сервер, включающий в себя:

процессор Pentium-2.0Mz, не менее;

оперативную память объемом, 1Гигабайт, не менее;

HDD, 80 Гигабайт, не менее;

операционную систему Windows 2000 или Windows 2003.

2.2.5 Требования к программной документации

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

2.2.6 Технико-экономические показатели

Программа должна ускорить процессы приемки и реализации ПЭВМ и их комплектующих.

Программа совмещает работу рабочего персонала и автоматизированных систем.

Программа повышает информационную безопасность внутри организации.

2.3 ER-диаграмма (Сущность-связь)

На рисунке 2 изображена ER-диаграмма, хорошо описывающая структуру данных в базе.

Рисунок 2- ER-диаграмма (Сущность-связь)

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

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

2.4 Диаграмма вариантов использования

Диаграммы вариантов использования описывают функциональное назначение системы или то, что система должна делать. Разработка диаграммы преследует следующие цели:

определить общие границы и контекст моделируемой предметной области;

сформулировать общие требования к функциональному поведению проектируемой системы;

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

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

Суть диаграммы вариантов использования состоит в следующем. Проектируемая система представляется в виде множества сущностей или актеров, взаимодействующих с системой с помощью вариантов использования. При этом актером (actor) или действующим лицом называется любая сущность, взаимодействующая с системой извне. Это может быть человек, техническое устройство, программа или любая другая система, которая может служить источником воздействия на моделируемую систему так, как определит сам разработчик. Вариант использования служит для описания сервисов, которые система предоставляет актеру. Диаграмма вариантов использования может дополняться пояснительным текстом, который раскрывает смысл или семантику составляющих ее компонентов.

2.4.1 Вариант использования

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

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

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

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

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

Рисунок 3 — Диаграмма вариантов использования точка не ставится

2.5 Диаграмма деятельности

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

Диаграммы деятельности можно использовать для моделирования динамических аспектов поведения системы. Как правило, они применяются, чтобы промоделировать последовательные (а иногда и параллельные) шаги вычислительного процесса. С помощью диаграмм деятельности можно также моделировать жизнь объекта, когда он переходит из одного состояния в другое в разных точках потока управления. Диаграммы деятельности могут использоваться самостоятельно для визуализации, специфицирования, конструирования и документирования динамики совокупности объектов, но они пригодны также и для моделирования потока управления при выполнении некоторой операции. Если в диаграммах взаимодействий акцент делается на переходах потока управления от объекта к объекту, то диаграммы деятельности описывают переходы от одной деятельности к другой. Деятельность «Activity» — это некоторый относительно продолжительный этап выполнения в автомате. В конечном итоге деятельность сводится к некоторому действию «Action», которое составлено из атомарных вычислений, приводящих к изменению состояния системы или возврату значения.

Рассмотрим последовательность операций при постройке дома. Сначала выбирается место. Затем вы нанимаете архитектора, который проектирует дом. После согласования проекта подрядчик предоставляет смету. После того как договорились о цене и проекте, начинается строительство. Местные власти дают разрешение, роется котлован, заливается фундамент, возводится каркас и так далее, пока работа не будет завершена. Наконец, вам вручают ключи и удостоверение на право проживания, и вы вступаете во владение домом.

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

В строительной индустрии, как правило, применяются методики, основанные на Ganttи Pert-диаграммах, которые позволяют визуализировать, специфицировать, конструировать и документировать последовательность операций при выполнении проекта.

При моделировании программных систем вы сталкиваетесь с аналогичной проблемой. Как лучше всего промоделировать рабочий процесс или функционирование системы? То и другое — аспекты ее динамики. В принципе есть два варианта, которые напоминают применение Ganttи Pert-диаграмм.

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

С другой стороны, динамику поведения можно моделировать с помощью диаграмм деятельности, в которых внимание сосредоточено прежде всего на содержании деятельности, в которой принимают участие объекты. С этой точки зрения диаграммы деятельности напоминают Pert-диа-граммы. Диаграмма деятельности — это своеобразная блок-схема, которая описывает последовательность выполнения операций во времени. Ее можно представлять себе как вывернутую наизнанку диаграмму взаимодействий. Диаграмма взаимодействий — это взгляд на объекты, которые передают друг другу сообщения, а диаграмма деятельности — взгляд на операции, которые передаются от одного объекта другому. Семантическое различие трудноуловимо, но в результате нам открываются два совершенно разных взгляда на мир. В качестве примера на рисунках 4 и 5 отображены все производимые действия с вводом и поиском заявок.

Рисунок 4 — Диаграмма «Поиск заявки».

Рисунок 5 — Диаграмма «Ввод заявок»

2.6 Логическая структура базы данных

На рисунке 6 представлена логическая структура базы данных.

Рисунок 6 — Логическая структура АИС «Компьютерный склад».

Рисунок 7 — Структура таблицы «Заявки».

Примечание: На рисунке 7 все категории были написаны в транслите, во избежание ошибок при компиляции связки базы данных + пользовательский интерфейс. В самой программе все таблицы будут переименованы на русский язык. В последующем описании всех категорий мы будем придерживаться русских названий.

Рисунок 8 — Типы данных в таблице «Заявки»

Из рисунка 8 видно, что категория «Код заявки» является ключевым полем.

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

Рисунок 9 — Структура таблицы «Компьютеры и комплектующие».

Рисунок 10 — Типы данных в таблице «Компьютеры и комплектующие».

Из рисунка 10 видно, что категория «Инвентарный номер» является ключевым полем.

Рисунок 11 — Структура таблицы «Сотрудники».

Примечание: Под каждым сотрудником (Рисунок 11) подписывается заявка, в которой указывается приписанный ему компьютер, если данные строки пусты, это значит что, заявки на получение/ремонт/списание компьютера не было, либо появился новый сотрудник. В данной таблице пока 3 человека подали заявки.

Рисунок 12 — Типы данных в таблице «Сотрудники».

Из рисунка 12 видно, что категория «Код сотрудника» является ключевым полем.

2.7 Описание программы

Общие сведения о программе — Программа «Автоматизированная информационная система «Компьютерный склад» «предназначена для автоматизации учета компьютеров и комплектующих отдела технической поддержки ОАО «ГСКБ «Алмаз-Антей».

Программа написана на языке С++ с использованием компилятора С++ Builder.

Функциональное назначение — Программа предназначена для решения задач по хранению и быстрому доступу к информации о заявках и поставка компьютеров и комплектующих. Программа представляет собой базу данных с пользовательским интерфейсом.

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

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

— пользовательский интерфейс;

— модуль для хранения БД;

— модуль фильтрации поиска;

— модуль поиска через командную строку программы;

— модуль отображения таблиц.

— модуль авторизации.

Интерфейсный модуль построен на двух типах диалогов: диалог «вопрос — ответ» и диалог типа «меню». Интерфейсный модуль управляет навигацией по всем категориям базы данных.

Алгоритм поиска и сортировки представляет собой работу графического интерфейса поиска в сочетании с работой «командной строки» поиска.

Используемые технические средства — Программа эксплуатируется на персональном компьютере (ПК) типа IBM PC/AT. Для работы в диалоговом режиме используется экран дисплея, клавиатура и манипулятор типа «мышь». Входные данные хранятся на гибком и/или жестком дисках. Программа работает под управлением ОС Windows (возможна переработка приложения под ОС Linux).

Вызов и загрузка — Загрузка программы осуществляется запуском файла имени загрузочного модуля — AIS. EXE от имени пользователя.

Входные данные — Входными данными для программы является текст вводимый с клавиатуры в файл базы данных с расширением «.DB» либо ввод данных через пользовательский интерфейс таблиц.

Выходные данные ;

Выходными данными являются:

— выводимая на экран графическая и текстовая информация (результаты анализа системы);

— файл в формате «.DB» .

2.8 Проектирование интерфейса пользователя. Разработка форм графического интерфейса и баз данных

Структура главного меню.

В качестве главного меню (рисунок 13) используется форма, имеющая 3 категории, которые в свою очередь ссылаются на формы с базами данных.

Рисунок 13 — Структура главного меню.

Рисунок 14 — «Компьютеры и комплектующие».

В данной категории (рисунок 14) хранится информация о всех компьютерах и их комплектующих.

(«Инвентарный номер», «Наименование», «Фирма производитель», «Модель», «Характеристики», «Номер пломбы», «Дата поставки», «Статус»)

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

Наименование — указывает на тип изделия.

Фирма производитель — указывает на фирму, изготовившую данное изделие.

Модель — серийный номер данного изделия, указанного производителем.

Характеристики — краткая информация об изделии.

Номер пломбы — указывает на компьютеры, на которых установлена пломба (препятствует вскрытию и изменению целостности ПК).

Дата поставки — указывает на дату поступления на склад данного устройства.

Статус — указывает на наличие или отсутствие данного изделия на складе либо информирует пользователя о ремонте данного устройства.

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

К примеру, «Инвентарный номер» или «Номер пломбы» являются уникальными данными, и повтор в них запрещен.

Рисунок 15 — «Сотрудники»

В этой категории (рисунок 15) хранится информация о всех сотрудниках предприятия. («Имя», «Фамилия», «Отчество», «Должность», «Дата рождения», «Код сотрудника»)

Код сотрудника — хранит в себе уникальный идентификатор для поиска необходимой информации о сотруднике. Остальные пункты предельно ясны и понятны.

Рисунок 16 — «Заявки»

В этой категории (рисунок 16) хранится информация о всех заявках по поставкам оборудования на предприятии. («Код заявки», «Инвентарный номер», «Дата подачи заявки», «Код сотрудника», «Статус», «Дата исполнения»)

Код заявки — хранит в себе уникальный идентификатор для поиска необходимой информации о заявке.

Дата подачи заявки — указывает на день, в который была подана заявка.

Дата исполнения — указывает на день, в который заявка была исполнена. (Осуществлена выдача ПК, ремонт, либо произведено списание.)

По остальным пунктам информацию можно увидеть выше.

Рисунок 17 — Руководство пользователя (Краткое руководство)

Краткая информация, описывающая правила работы с АИС в упрощенной форме для простого изучения системы. Для более подробного изучения данной АИС необходимо воспользоваться полным руководством пользователя (Рисунок 17).

Рисунок 18 — «Поисковик»

Для упрощенного нахождения необходимой информации в базе данных была введена функция «Поисковик» (рисунок 18). Данная функция создана с учетом уровня подготовки пользователя к работе с базами данных.

«Поисковик» — имеет 2 способа поиска необходимых данных («Обычный поиск» и «Многофункциональный поиск»)

«Многофункциональный поиск» (рисунок 20) — производит поиск по нескольким критериям, имеет функцию «Or» (от англ. «Или») и функцию «And» (от англ. «И») и имеет свой собственный командный интерфейс. («Командная строка»)

«Обычный поиск» (рисунок 19) — производит поиск записей по 1 критерию и скрывает реализацию работы «Командной строки».

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

Рисунок 19 — «Обычный поиск» на примере категории «Компьютеры и комплектующие».

Рисунок 20 — «Многофункциональный поиск» на примере категории «Компьютеры и комплектующие».

Рисунок 21 — Информация о разработчике программы.

Небольшая форма, указывающая на автора этой программы и на ссылку сайта страницы пользователя (Рисунок 21).

Рисунок 22 -Система авторизации.

Т.к в ГСКБ «Алмаз-Антей» используются вычислительные машины с использованием «Active directory» (Локального домена), программе не нужно реализовывать сложную структуру шифрования служебных данных т.к. этим всем обладает сервер локального домена, и все данные хранятся внутри корпоративной локальной вычислительной сети (КЛВС), но защиту «от дурака» сделать необходимо. Для этого используется встроенная система авторизации (Рисунок 22). Система позволяет исключить несанкционированное изменение данных в информационной системе при случайном (или специальном) запуске программы. В данном примере используется только одна связка «Логин-пароль», в дальнейшем ее можно будет изменить на авторизацию через локальный домен.

2.9 Полное руководство пользователя.

Пользователь запускает программу и авторизуется.

Пользователь выбирает необходимую категорию. (Например «Заявки»)

Дальше после выбора категории нам необходимо определиться, что нужно делать (вводить/исправлять необходимые данные либо найти нужную запись в уже имеющейся базе данных)

Если необходимо ввести/исправить необходимые данные:

Ищем необходимые записи в таблице, если записей много можно воспользоваться функцией «Поисковик» в нижней части окна программы. (Про многофункциональный и обычный поиск см. «Поиск записей»)

Исправляем в найденных записях нужные данные, если же записей нет, вводим новые.

Поиск записей.

Если нам необходимо найти запись среди множества данных в таблице базы данных нужно:

Воспользоваться функцией «Поисковик» в нижней части окна программы.

Выбрать функцию «Обычный поиск» (Для поиска одной или нескольких записей по одному столбцу таблицы), либо выбрать функцию «Многофункциональный поиск» (Для открытия дополнительных функций поиска данных по нескольким столбцам, и более точным поиском записей.)

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

«Обычный поиск»

После выбора типа поиска в первую строку «Поисковика» вводится необходимая нам запись (Например, имя «Иван»).

Далее выбирается категория, по которой необходимо найти запись. (Например «Имя»)

После выбора категории нажимаем «Поиск».

«Многофункциональный поиск»

Для многофункционального поиска выполняются все те же действия, что и в «Обычном поиске», но данный поиск можно выполнять с дополнительными требованиями, для этого:

Выполняем пункты 3, 4 «Обычного поиска»

Нажимаем And (если необходимо уточнить поиск дополнительными критериями), либо Or (для поиска дополнительных записей с разными критериями поиска).

Пункты 1,2 «Многофункционального поиска» можно выполнять несколько раз для более точного или более обширного поиска данных.

Аналогичен 5 пункту «Обычного поиска».

тобы очистить записи в строке поиска, необходимо нажать кнопки «Очистить» в любом из типов поиска.

Для отмены поиска используется кнопка «Отмена поиска».

Для завершения работы необходимо нажать кнопки «Главное меню» и «Выход». (Либо можно просто закрыть все окна приложения, программа сама сохранит все данные в базе)

«О программе» и «Об авторе» — хранят краткое руководство пользователя, и информацию об авторе программы. Рекомендованы к просмотру перед использованием программы, либо для связи с разработчиком.

3. Экономическая часть

3.1 Организационно-экономическое обоснование проекта

Данное приложение создано для внутреннего пользования специалистов отдела технической поддержки ОАО «ГСКБ «Алмаз-Антей» и круг потребителей достаточно узок для экономического анализа, но оно увеличивает эффективность труда всего отдела в целом, и экономит на офисных расходных ресурсах (бумага, чернила и т. д.).

3.2 Расчет себестоимости

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

3.2.1 Расчет трудоемкости

Таблица 2 — Трудоемкость проекта

п/п

Виды работ

Трудоемкость,

дн.

Получение ТЗ

Сбор информации и ознакомление с предметной областью

Выбор объектного построения программы

Разработка общей методики создания продукта

Разработка основного алгоритма

Создание интерфейса

Отладка

Подготовка технической документации

Сдача продукта

Итого

3.2.2 Расчет затрат на электроэнергию и амортизацию оборудования

Таблица 3 — Затраты на электроэнергию и амортизацию оборудования.

п/п

Наименование

Кол-во

Цена ед.

Сумма,

Руб.

Электропотребление ЭВМ

200 КВт

4.91р

981р

Износ жесткого диска

1 шт.

3000р

3000р

Зачистка систем охлаждения ЭВМ

1500р

1500р

Поддержание работоспособности КЛВС

3000р

3000р

Итого:

8481р

3.2.3 Расчет затрат на материалы

Таблица 4- Калькуляция стоимости основных материалов

№ п/п

Наименование

Кол-во, шт.

Цена ед., руб.

Сумма, руб.

Бумага

Ручки

Колер для принтера

Итого

3.2.4 Расчет начислений на заработную плату

Исходя из месячной зарплаты в 30 000 руб. и трудоемкости проект начисления на заработную плату, в зависимости от категории плательщика, указанных в ФЗ № 212-ФЗ, рассчитываются по следующим ставкам (табл. 5):

Таблица 5 — Начисления на заработную плату

Начисления на заработную плату

Процент, %

Сумма, руб.

Пенсионный фонд (ПФ):

— страховая часть

— накопительная часть

Фонд социального страхования (ФСС)

2,9

Федеральный фонд обязательного медицинского страхования (ФФОМС)

5,1

Итого

3.2.5 Расчет себестоимости и цены разработки программного продукта

Таблица 4 — Смета всех затрат.

№ п/п

Наименование статей затрат

Сумма, руб.

Заработная плата программиста

Расходы на электроэнергию и амортизацию оборудования

Затраты на материалы

Начисления на заработную плату

Итого:

ЗАКЛЮЧЕНИЕ

В конце всего выше перечисленного хотелось бы подвести итог всего, чего мы добились в написании данной программы.

1) Данная программа действительно упрощает работу специалистам отдела технической поддержки (Нет необходимости сохранять лишние копии документов.)

2) Можно полностью переходить на цифровой метод хранения данных.

3) Персоналу не требуется изучать новые программы создания и работы с базами данных, все пункты пользовательского интерфейса предельно просты и понятны.

4) Все данные хранятся очень долгое время и можно отследить все виды работ на складе по заявкам за многие годы работы.

5) Запрещено неумышленное изменение/повторение уникальных данных по комплектующим. (Программа не позволяет делать лишние ошибки)

6) Возможно изменение/расширение функционала программы.(Программу можно в любой момент изменить, исправить недоработки, поменять тематику, расширить функциональные возможности всех пунктов меню, добавить новые.)

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

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Гребенюк Е. И.: Технические средства информатизации. — М.: Академия, 2011

2. Михеева Е. В.: Информационные технологии в профессиональной деятельности. — М.: Академия, 2011

3. Голенищев Э. П.: Информационное обеспечение систем управления. — Ростов н/

4. Кузовкин А. В.: Управление данными. — М.: Академия, 2010

5. Михеева Е. В.: Информационные технологии в профессиональной деятельности. — М.: Академия, 2010

6. под ред. С. В. Симоновича; рец.: Каф. Московского гос. технического ун-та им. Н. Э. Баумана, С. В. Калин: Информатика. — СПб.: Питер, 2010

7. Уткин В. Б.: Информационные системы в экономике. — М.: Академия, 2010

8. [отв. ред. И.В. Коробко]: Программы для ЭВМ. — М.: ФГУ ФИПС, 2009

9. [отв. ред. И.В. Коробко]: Программы для ЭВМ. — М.: ФГУ ФИПС, 2009

10. Могилев А. В.: Информатика. — М.: Академия, 2009

11. Моосмюллер Г.: Маркетинговые исследования с SPSS. — М.: ИНФРА-М, 2009

12. под ред. С. В. Симоновича; рец.: Кафедра САПР Московского гос. технического ун-та им. Н. Э. Баумана, С. В. Калин: Информатика. — СПб.: Питер, 2009

13. Филимонова Е. В.: Информационные технологии в профессиональной деятельности. — Ростов н/Д: Феникс, 2009

14. Алешин Л. И.: Информационные технологии. — М.: Литера, 2008

15. Гиляревский Р. С.: Рубрикатор как инструмент информационной навигации. — СПб.: Профессия, 2008

16. Днепров А. Г.: Видеосамоучитель. Microsoft Access 2007. — СПб.: Питер, 2008

17. Избачков Ю. С.: Информационные системы. — СПб.: Питер, 2008

18. Могилев А. В.: Информатика. — М.: Академия, 2008

19. под общ. ред. д-ра экон. наук, профессора П. В. Акинина: Информационные системы в экономике: Практикум. — М.: КНОРУС, 2008

20. под общ. ред. П. В. Акинина; сост.: Е. Л. Торопцев и др.; рец.: Р. Г. Закинян, А. Н. Байдаков: Информационные системы в экономике. — М.: КноРус, 2008

21. под ред. проф. А. Н. Романова, проф. Б. Е. Одинцова: Информационные системы в экономике. — М.: Вузовский учебник, 2008

22. Рец.: П. Л. Салманов и др.; В. И. Чернов и др.: Информатика. — М.: Дрофа, 2008

23. Родигин Л. А.: Базы данных для карманного персонального компьютера Pocket PC. — М.: КноРус, 2008

24. Сергеев А. В.: Access 2007. Новые возможности. — СПб.: Питер, 2008

25. М. Эллис, Б. Строуструп. Справочное руководство по языку C++ с комментариями: Пер. с англ. — Москва: Мир, 1992. 445с.

26. Стенли, Б. Липпман. C++ для начинающих: Пер. с англ. 2тт. — Москва: Унитех; Рязань: Гэлион, 1992, 304−345сс.

27. Бруно Бабэ. Просто и ясно о Borland C++: Пер. с англ. — Москва: БИНОМ, 1994. 400с.

28. В. В. Подбельский. Язык C++: Учебное пособие. — Москва: Финансы и статистика, 1995. 560с.

29. Ирэ Пол. Объектно-ориентированное программирование с использованием C++: Пер. с англ. — Киев: НИИПФ ДиаСофт Лтд, 1995. 480с.

30. Т. Фейсон. Объектно-ориентированное программирование на Borland C++ 4.5: Пер. с англ. — Киев: Диалектика, 1996. 544с.

31. Т. Сван. Освоение Borland C++ 4.5: Пер. с англ. — Киев: Диалектика, 1996. 544с.

32. Г. Шилдт. Самоучитель C++: Пер. с англ. — Санкт-Петербург: BHV-Санкт-Петербург, 1998. 620с.

33. У. Сэвитч. C++ в примерах: Пер. с англ. — Москва: ЭКОМ, 1997. 736с.

34. К. Джамса. Учимся программировать на языке C++: Пер. с англ. — Москва: Мир, 1997. 320с.

35. В. А. Скляров. Язык C++ и объектно-ориентированное программирование: Справочное издание. — Минск: Вышэйшая школа, 1997. 480с.

36. Х. Дейтел, П. Дейтел. Как программировать на C++: Пер. с англ. — Москва: ЗАО «Издательство БИНОМ», 1998. 1024с.

ПРИЛОЖЕНИЯ

Приложение А

Программный код

Файл Unit1. h

//—————————————————————————————————————;

#ifndef Unit1H

#define Unit1H

//—————————————————————————————————————;

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

//—————————————————————————————————————;

class TForm1: public TForm

{

__published: // IDE-managed Components

TMainMenu *MainMenu1;

TMenuItem *N1;

TMenuItem *N2;

TMenuItem *N3;

TMenuItem *N4;

TLabel *Label1;

TButton *Button1;

TButton *Button3;

TButton *Button4;

TImage *Image1;

TLabel *Label2;

TEdit *Edit1;

TEdit *Edit2;

TButton *Button2;

TLabel *Label3;

TLabel *Label4;

TLabel *Label5;

TLabel *Label6;

void __fastcall N4Click (TObject *Sender);

void __fastcall Button1Click (TObject *Sender);

void __fastcall Button3Click (TObject *Sender);

void __fastcall Button4Click (TObject *Sender);

void __fastcall N2Click (TObject *Sender);

void __fastcall N3Click (TObject *Sender);

void __fastcall Button2Click (TObject *Sender);

void __fastcall FormCreate (TObject *Sender);

private: // User declarations

public: // User declarations

__fastcall TForm1(TComponent* Owner);

};

//—————————————————————————————————————;

extern PACKAGE TForm1 *Form1;

//—————————————————————————————————————;

#endif

Файл Unit2.h.

//—————————————————————————————————————;

#ifndef Unit2H

#define Unit2H

//—————————————————————————————————————;

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

//—————————————————————————————————————;

class TForm2: public TForm

{

__published: // IDE-managed Components

TLabel *Label1;

TLabel *Label2;

TMainMenu *MainMenu1;

TMenuItem *N1;

TMenuItem *N2;

TMenuItem *N3;

TMenuItem *N4;

TMenuItem *N5;

TDataSource *DataSource1;

TDBGrid *DBGrid1;

TDBNavigator *DBNavigator1;

TADOConnection *ADOConnection1;

TADOTable *ADOTable1;

TButton *Button1;

TButton *Button2;

TComboBox *ComboBox1;

TEdit *Edit1;

TEdit *Edit2;

TButton *Button3;

TButton *Button4;

TButton *Button5;

TButton *Button6;

TLabel *Label3;

TRadioButton *RadioButton1;

TRadioButton *RadioButton2;

void __fastcall N5Click (TObject *Sender);

void __fastcall N4Click (TObject *Sender);

void __fastcall FormCreate (TObject *Sender);

void __fastcall Button1Click (TObject *Sender);

void __fastcall Button2Click (TObject *Sender);

void __fastcall ComboBox1Change (TObject *Sender);

void __fastcall Button3Click (TObject *Sender);

void __fastcall Button4Click (TObject *Sender);

void __fastcall Button5Click (TObject *Sender);

void __fastcall Button6Click (TObject *Sender);

void __fastcall N3Click (TObject *Sender);

void __fastcall N2Click (TObject *Sender);

void __fastcall RadioButton2Click (TObject *Sender);

void __fastcall RadioButton1Click (TObject *Sender);

private: // User declarations

public: // User declarations

__fastcall TForm2(TComponent* Owner);

};

//—————————————————————————————————————;

extern PACKAGE TForm2 *Form2;

//—————————————————————————————————————;

#endif

Файл Unit3.h.

//—————————————————————————————————————;

#include

#pragma hdrstop

#include «Unit3.h»

#include «Unit4.h»

#include «Unit7.h»

//—————————————————————————————————————;

#pragma package (smart_init)

#pragma resource «*.dfm»

TForm3 *Form3;

//—————————————————————————————————————;

__fastcall TForm3: TForm3(TComponent* Owner)

: TForm (Owner)

{

}

//—————————————————————————————————————;

void __fastcall TForm3: N5Click (TObject *Sender)

{

Form3->Visible=false;

}

//—————————————————————————————————————;

void __fastcall TForm3: N4Click (TObject *Sender)

{

Form3->Close ();

}

//—————————————————————————————————————;

void __fastcall TForm3: FormCreate (TObject *Sender)

{

Form3->Position = poScreenCenter;

}

//—————————————————————————————————————;

void __fastcall TForm3: ComboBox1Change (TObject *Sender)

{

if (ComboBox1->ItemIndex == 0)

Edit2->Text = Edit2->Text + «Kod_zayavki» + «='» + Edit1->Text + «'» ;

if (ComboBox1->ItemIndex == 1)

Edit2->Text = Edit2->Text + «Inventaeniy_nomer» + «='» + Edit1->Text + «'» ;

if (ComboBox1->ItemIndex == 2)

Edit2->Text = Edit2->Text + «data_podachi_zayavki» + «='» + Edit1->Text + «'» ;

if (ComboBox1->ItemIndex == 3)

Edit2->Text = Edit2->Text + «kod_sotrudnika» + «='» + Edit1->Text + «'» ;

if (ComboBox1->ItemIndex == 4)

Edit2->Text = Edit2->Text + «status» + «='» + Edit1->Text + «'» ;

if (ComboBox1->ItemIndex == 5)

Edit2->Text = Edit2->Text + «data_ispolneniya» + «='» + Edit1->Text + «'» ;

}

//—————————————————————————————————————;

void __fastcall TForm3: Button3Click (TObject *Sender)

{

Edit1->Clear ();

}

//—————————————————————————————————————;

void __fastcall TForm3: Button4Click (TObject *Sender)

{

Edit2->Clear ();

}

//—————————————————————————————————————;

void __fastcall TForm3: Button1Click (TObject *Sender)

{

Form3->ADOTable1->Filter = Edit2->Text;

Form3->ADOTable1->Filtered = true;

}

//—————————————————————————————————————;

void __fastcall TForm3: Button2Click (TObject *Sender)

{

ADOTable1->Filtered = false;

Edit2->Clear ();

Edit1->Clear ();

}

//—————————————————————————————————————;

void __fastcall TForm3: Button5Click (TObject *Sender)

{

Edit2->Text = Edit2->Text + «AND «;

}

//—————————————————————————————————————;

void __fastcall TForm3: Button6Click (TObject *Sender)

{

Edit2->Text = Edit2->Text + «OR «;

}

//—————————————————————————————————————;

void __fastcall TForm3: Button7Click (TObject *Sender)

{

Edit2->Text = Edit2->Text + «< «;

}

//—————————————————————————————————————;

void __fastcall TForm3: Button8Click (TObject *Sender)

{

Edit2->Text = Edit2->Text + «> «;

}

//—————————————————————————————————————;

void __fastcall TForm3: N3Click (TObject *Sender)

{

Form7->Show ();

}

//—————————————————————————————————————;

void __fastcall TForm3: N2Click (TObject *Sender)

{

Form4->Show ();

}

//—————————————————————————————————————;

void __fastcall TForm3: RadioButton2Click (TObject *Sender)

{

Button4->Visible=false;

Edit2->Visible=false;

Button5->Visible=false;

Button6->Visible=false;

}

//—————————————————————————————————————;

void __fastcall TForm3: RadioButton1Click (TObject *Sender)

{

Button4->Visible=true;

Edit2->Visible=true;

Button5->Visible=true;

Button6->Visible=true;

}

//—————————————————————————————————————;

Файл Unit5.h.

//—————————————————————————————————————;

#ifndef Unit5H

#define Unit5H

//—————————————————————————————————————;

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

//—————————————————————————————————————;

class TForm5: public TForm

{

__published: // IDE-managed Components

TLabel *Label2;

TLabel *Label1;

TMainMenu *MainMenu1;

TMenuItem *N1;

TMenuItem *N2;

TMenuItem *N3;

TMenuItem *N4;

TMenuItem *N5;

TADOConnection *ADOConnection1;

TADOTable *ADOTable1;

TDataSource *DataSource1;

TDBGrid *DBGrid1;

TDBNavigator *DBNavigator1;

TLabel *Label3;

TButton *Button1;

TButton *Button2;

TComboBox *ComboBox1;

TEdit *Edit1;

TEdit *Edit2;

TButton *Button3;

TButton *Button4;

TButton *Button5;

TButton *Button6;

TRadioButton *RadioButton1;

TRadioButton *RadioButton2;

void __fastcall N5Click (TObject *Sender);

void __fastcall N4Click (TObject *Sender);

void __fastcall FormCreate (TObject *Sender);

void __fastcall Button3Click (TObject *Sender);

void __fastcall ComboBox1Change (TObject *Sender);

void __fastcall Button4Click (TObject *Sender);

void __fastcall Button1Click (TObject *Sender);

void __fastcall Button2Click (TObject *Sender);

void __fastcall Button5Click (TObject *Sender);

void __fastcall Button6Click (TObject *Sender);

void __fastcall N3Click (TObject *Sender);

void __fastcall N2Click (TObject *Sender);

void __fastcall RadioButton1Click (TObject *Sender);

void __fastcall RadioButton2Click (TObject *Sender);

private: // User declarations

public: // User declarations

__fastcall TForm5(TComponent* Owner);

};

//—————————————————————————————————————;

extern PACKAGE TForm5 *Form5;

//—————————————————————————————————————;

#endif

Файл Unit6.h.

//—————————————————————————————————————;

#ifndef Unit6H

#define Unit6H

//—————————————————————————————————————;

#include

#include

#include

#include

//—————————————————————————————————————;

class TFrame6: public TFrame

{

__published: // IDE-managed Components

private: // User declarations

public: // User declarations

__fastcall TFrame6(TComponent* Owner);

};

//—————————————————————————————————————;

extern PACKAGE TFrame6 *Frame6;

//—————————————————————————————————————;

#endif

Файл Unit7.h.

//—————————————————————————————————————;

#ifndef Unit7H

#define Unit7H

//—————————————————————————————————————;

#include

#include

#include

#include

//—————————————————————————————————————;

class TForm7: public TForm

{

__published: // IDE-managed Components

TButton *Button1;

TLabel *Label1;

TLabel *Label2;

TLabel *Label3;

TLabel *Label4;

TLabel *Label5;

void __fastcall FormCreate (TObject *Sender);

void __fastcall Button1Click (TObject *Sender);

void __fastcall Label3Click (TObject *Sender);

private: // User declarations

public: // User declarations

__fastcall TForm7(TComponent* Owner);

};

//—————————————————————————————————————;

extern PACKAGE TForm7 *Form7;

//—————————————————————————————————————;

#endif

Файл JPEG.hpp.

// Borland C++ Builder

// Copyright © 1995, 2002 by Borland Software Corporation

// All rights reserved

// (DO NOT EDIT: machine generated header) 'jpeg.pas' rev: 6.00

#ifndef jpegHPP

#define jpegHPP

#pragma delphiheader begin

#pragma option pushw;

#pragma option pushVx

#include // Pascal unit

#include // Pascal unit

#include // Pascal unit

#include // Pascal unit

#include // Pascal unit

#include // Pascal unit

//— user supplied —————————————————————————————;

#pragma link «jpeg.obj»

namespace Jpeg

{

//— type declarations ———————————————————————————;

class DELPHICLASS TJPEGData;

class PASCALIMPLEMENTATION TJPEGData: public Graphics: TSharedImage

{

typedef Graphics: TSharedImage inherited;

private:

Classes:TCustomMemoryStream* FData;

int FHeight;

int FWidth;

bool FGrayscale;

protected:

virtual void __fastcall FreeHandle (void);

public:

__fastcall virtual ~TJPEGData (void);

public:

#pragma option pushw-inl

/* TObject. Create */ inline __fastcall TJPEGData (void): Graphics: TSharedImage () { }

#pragma option pop

};

typedef Shortint TJPEGQualityRange;

#pragma option pushb;

enum TJPEGPerformance { jpBestQuality, jpBestSpeed };

#pragma option pop

#pragma option pushb;

enum TJPEGScale { jsFullSize, jsHalf, jsQuarter, jsEighth };

#pragma option pop

#pragma option pushb;

enum TJPEGPixelFormat { jf24Bit, jf8Bit };

#pragma option pop

class DELPHICLASS TJPEGImage;

class PASCALIMPLEMENTATION TJPEGImage: public Graphics: TGraphic

{

typedef Graphics: TGraphic inherited;

private:

TJPEGData* FImage;

Graphics:TBitmap* FBitmap;

int FScaledWidth;

int FScaledHeight;

HPALETTE FTempPal;

bool FSmoothing;

bool FGrayScale;

TJPEGPixelFormat FPixelFormat;

TJPEGQualityRange FQuality;

bool FProgressiveDisplay;

bool FProgressiveEncoding;

TJPEGPerformance FPerformance;

TJPEGScale FScale;

bool FNeedRecalc;

void __fastcall CalcOutputDimensions (void);

Graphics:TBitmap* __fastcall GetBitmap (void);

bool __fastcall GetGrayscale (void);

void __fastcall SetGrayscale (bool Value);

void __fastcall SetPerformance (TJPEGPerformance Value);

void __fastcall SetPixelFormat (TJPEGPixelFormat Value);

void __fastcall SetScale (TJPEGScale Value);

void __fastcall SetSmoothing (bool Value);

protected:

virtual void __fastcall AssignTo (Classes:TPersistent* Dest);

virtual void __fastcall Changed (System:TObject* Sender);

virtual void __fastcall Draw (Graphics:TCanvas* ACanvas, const Types: TRect &Rect);

virtual bool __fastcall Equals (Graphics:TGraphic* Graphic);

void __fastcall FreeBitmap (void);

virtual bool __fastcall GetEmpty (void);

virtual int __fastcall GetHeight (void);

virtual HPALETTE __fastcall GetPalette (void);

virtual int __fastcall GetWidth (void);

void __fastcall NewBitmap (void);

void __fastcall NewImage (void);

virtual void __fastcall ReadData (Classes:TStream* Stream);

void __fastcall ReadStream (int Size, Classes: TStream* Stream);

virtual void __fastcall SetHeight (int Value);

virtual void __fastcall SetPalette (HPALETTE Value);

virtual void __fastcall SetWidth (int Value);

virtual void __fastcall WriteData (Classes:TStream* Stream);

__property Graphics: TBitmap* Bitmap = {read=GetBitmap};

public:

__fastcall virtual TJPEGImage (void);

__fastcall virtual ~TJPEGImage (void);

void __fastcall Compress (void);

void __fastcall DIBNeeded (void);

void __fastcall JPEGNeeded (void);

virtual void __fastcall Assign (Classes:TPersistent* Source);

virtual void __fastcall LoadFromStream (Classes:TStream* Stream);

virtual void __fastcall SaveToStream (Classes:TStream* Stream);

virtual void __fastcall LoadFromClipboardFormat (Word AFormat, unsigned AData, HPALETTE APalette);

virtual void __fastcall SaveToClipboardFormat (Word &AFormat, unsigned &AData, HPALETTE &APalette);

__property bool Grayscale = {read=GetGrayscale, write=SetGrayscale, nodefault};

__property bool ProgressiveEncoding = {read=FProgressiveEncoding, write=FProgressiveEncoding, nodefault};

__property TJPEGQualityRange CompressionQuality = {read=FQuality, write=FQuality, nodefault};

__property TJPEGPixelFormat PixelFormat = {read=FPixelFormat, write=SetPixelFormat, nodefault};

__property bool ProgressiveDisplay = {read=FProgressiveDisplay, write=FProgressiveDisplay, nodefault};

__property TJPEGPerformance Performance = {read=FPerformance, write=SetPerformance, nodefault};

__property TJPEGScale Scale = {read=FScale, write=SetScale, nodefault};

__property bool Smoothing = {read=FSmoothing, write=SetSmoothing, nodefault};

};

#pragma pack (push, 1)

struct TJPEGDefaults

{

TJPEGQualityRange CompressionQuality;

bool Grayscale;

TJPEGPerformance Performance;

TJPEGPixelFormat PixelFormat;

bool ProgressiveDisplay;

bool ProgressiveEncoding;

TJPEGScale Scale;

bool Smoothing;

} ;

#pragma pack (pop)

//— var, const, procedure —————————————————————————;

extern PACKAGE TJPEGDefaults JPEGDefaults;

} /* namespace Jpeg */

using namespace Jpeg;

#pragma option pop // -w;

#pragma option pop // -Vx

#pragma delphiheader end.

//— end unit ————————————————————————————————

#endif // jpeg

Размещено на

Показать весь текст
Заполнить форму текущей работой