Автор: Пользователь скрыл имя, 10 Июня 2014 в 22:50, дипломная работа
В данном дипломном проекте была решена задача по автоматизации учета основных средств на предприятии ООО "Алеф". В качестве основы для автоматизации был выбран и сконфигурирован под нужды предприятия комплекс УСН 1С Бухгалтерия. Второй частью создания АРМ бухгалтера была разработка отдельного программного блока для формирования унифицированных форм учета основных средств предприятия. Программный блок был разработан в СУБД MS Access, что позволяет автономно быстро и легко формировать унифицированные формы документов. Основными плюсами разработанного модуля является его относительная автономность, низкая экономическая затратность, легкость с точки зрения технологической установки, а также широкие возможности по дальнейшему усовершенствованию. Проведена предварительная работа по подбору технических средств реализации блока, проанализирована и доказана его экономическая окупаемость. Продумана дальнейшая оптимизация бухгалтерского документооборота и учета на предприятии "Алеф" - добавление полной его интеграции с экспортными данными из программного комплекса УСН 1С Бухгалтерии 7.7.
РЕФЕРАТ
ВВЕДЕНИЕ
1. АНАЛИТИЧЕСКАЯ ЧАСТЬ
1.1 ОРГАНИЗАЦИОННО-ЭКОНОМИЧЕСКАЯ ХАРАКТЕРИСТИКА ПРЕДМЕТНОЙ ОБЛАСТИ. КРАТКОЕ ОПИСАНИЕ КОМПАНИИ ООО "АЛЕФ", АНАЛИЗ АДМИНИСТРАТИВНОЙ И ХОЗЯЙСТВЕННОЙ ДЕЯТЕЛЬНОСТИ ПРЕДПРИЯТИЯ
1.1.1 ОРГАНИЗАЦИОННАЯ СТРУКТУРА ОБЪЕКТА УПРАВЛЕНИЯ
1.1.2 ФУНКЦИОНАЛЬНАЯ ХАРАКТЕРИСТИКА ОБЪЕКТА УПРАВЛЕНИЯ
1.1.3 ЭКОНОМИЧЕСКАЯ ХАРАКТЕРИСТИКА ПРЕДМЕТНОЙ ОБЛАСТИ
1.2 ЭКОНОМИЧЕСКАЯ СУЩНОСТЬ КОМПЛЕКСА ЭКОНОМИЧЕСКИХ ИНФОРМАЦИОННЫХ ЗАДАЧ. РЕАЛИЗАЦИЯ ЭКОНОМИЧЕСКОЙ МОДЕЛИ ПРЕДПРИЯТИЯ С ПОМОЩЬЮ УЧЕТНОЙ СИСТЕМЫ 1С УCН
1.2.1 ОБЩИЕ СВЕДЕНИЯ О ЗАДАЧАХ. ОПИСАНИЕ ИМЕЮЩЕЙСЯ УЧЕТНОЙ СХЕМЫ ПРЕДПРИЯТИЯ В РАМКАХ УСН 1С
1.2.2 ОБОСНОВАНИЕ ВЫБОРА ЗАДАЧ, ВХОДЯЩИХ В КОМПЛЕКС. ПРЕИМУЩЕСТВА ОСНОВНОЙ УЧЕТНОЙ СИСТЕМЫ 1С УСН, А ТАКЖЕ НЕДОСТАЮЩИЕ ЗВЕНЬЯ АВТОМАТИЗИРОВАННОГО УЧЕТА
1.2.3 СПОСОБЫ РЕШЕНИЯ ЗАДАЧИ. ОБЩАЯ МОДЕЛЬ ПОДБОРА РЕШЕНИЯ
1.3 ОБОСНОВАНИЕ ПРОЕКТНЫХ РЕШЕНИЙ ПО АВТОМАТИЗИРОВАННОМУ РЕШЕНИЮ ЭКОНОМИКО-ИНФОРМАЦИОННЫХ ЗАДАЧ. ОСНОВНЫЕ МОМЕНТЫ АВТОМАТИЗАЦИИ УЧЕТА ДЕЯТЕЛЬНОСТИ ПРЕДПРИЯТИЯ. РЕШЕНИЕ НАШИХ ЗАДАЧ С ТОЧКИ ЗРЕНИЯ АВТОМАТИЗАЦИИ УЧЕТА НА ПРЕДПРИЯТИИ
1.3.1 ОБОСНОВАНИЕ ПРОЕКТНЫХ РЕШЕНИЙ ПО ИНФОРМАЦИОННОМУ ОБЕСПЕЧЕНИЮ КОМПЛЕКСА ЗАДАЧ. ПОДБОР ИНФОРМАЦИОННОГО ОБЕСПЕЧЕНИЯ ДЛЯ БЛОКА РАБОТЫ С УНИФИЦИРОВАННЫМИ ФОРМАМИ
1.3.2 ОБОСНОВАНИЕ ПРОЕКТНЫХ РЕШЕНИЙ ПО ТЕХНОЛОГИИ СБОРА, ПЕРЕДАЧИ, ОБРАБОТКИ И ВЫДАЧИ ИНФОРМАЦИИ. РЕАЛИЗАЦИЯ НЕДОСТАЮЩЕГО В УСН БЛОКА РАБОТЫ С УНИФИЦИРОВАННЫМИ ФОРМАМИ
1.3.3 ОБОСНОВАНИЕ ПРОЕКТНЫХ РЕШЕНИЙ ПО ПРОГРАММНОМУ ОБЕСПЕЧЕНИЮ КОМПЛЕКСА ЗАДАЧ
1.3.4 ОБОСНОВАНИЕ НЕОБХОДИМОСТИ ИСПОЛЬЗОВАНИЯ ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ И СОЗДАНИЯ АРМ ДЛЯ РЕШЕНИЯ ДАННОГО КОМПЛЕКСА ЗАДАЧ
2. ПРОЕКТНАЯ ЧАСТЬ
2.1 ИНФОРМАЦИОННОЕ ОБЕСПЕЧЕНИЕ КОМПЛЕКСА ЗАДАЧ
2.1.1 ИНФОЛОГИЧЕСКАЯ (ИНФОРМАЦИОННАЯ) МОДЕЛЬ (СХЕМА ДАННЫХ) И ЕЕ ОПИСАНИЕ
2.1.2 ИСПОЛЬЗУЕМЫЕ КЛАССИФИКАТОРЫ И СИСТЕМЫ КОДИРОВАНИЯ
2.1.3 ХАРАКТЕРИСТИКА ВХОДНОЙ ИНФОРМАЦИИ
2.1.4 НОРМАТИВНО-СПРАВОЧНАЯ ИНФОРМАЦИЯ
2.1.5 ХАРАКТЕРИСТИКА РЕЗУЛЬТАТНОЙ ИНФОРМАЦИИ
2.2 ВНУТРИМАШИННАЯ РЕАЛИЗАЦИЯ КОМПЛЕКСА ЗАДАЧ
2.2.1 ФОРМАЛИЗАЦИЯ РАСЧЕТОВ (АЛГОРИТМЫ РАСЧЕТА И РЕШЕНИЯ ЗАДАЧ)
2.2.2 СТРУКТУРНАЯ СХЕМА ИСПОЛЬЗОВАНИЯ КОМПЛЕКСА ПРОГРАММ (ДЕРЕВО ДИАЛОГА). ВЗАИМОДЕЙСТВИЕ УСН С БЛОКОМ ФОРМИРОВАНИЯ УНИФИЦИРОВАННЫХ ФОРМ
2.2.3 ОПИСАНИЕ ИНТЕРФЕЙСА ПРИЛОЖЕНИЯ.
2.3.1 ОРГАНИЗАЦИЯ ТЕХНОЛОГИИ СБОРА, ПЕРЕДАЧИ, ОБРАБОТКИ И ВЫДАЧИ ИНФОРМАЦИИ
2.3.2 СХЕМА ТЕХНОЛОГИЧЕСКОГО ПРОЦЕССА СБОРА, ПЕРЕДАЧИ, ОБРАБОТКИ И ВЫДАЧИ ИНФОРМАЦИИ
2.4 ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ КОМПЛЕКСА ЗАДАЧ
2.4.1 ОБЩИЕ ПОЛОЖЕНИЯ
2.4.2 СТРУКТУРНАЯ СХЕМА ПАКЕТА (ДЕРЕВО ВЫЗОВА ПРОЦЕДУР И ПРОГРАММ). ОПИСАНИЕ ПРОГРАММНЫХ МОДУЛЕЙ
2.5 СХЕМА ВЗАИМОСВЯЗИ ПРОГРАММНЫХ МОДУЛЕЙ И ИНФОРМАЦИОННЫХ ФАЙЛОВ
2.6 ВЫБОР И ОБОСНОВАНИЕ ТЕХНИЧЕСКИХ СРЕДСТВ
2.7 ЭКОНОМИЧЕСКОЕ ОБОСНОВАНИЕ ПРОЕКТА
ЗАКЛЮЧЕНИЕ
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
Ниже сформулированы два крайних подхода к автоматизации предприятий, полностью игнорирующие приведенные тезисы.
1. Короткое и “легкое" обследование предприятия и дальнейшее лоббирование одной из интегрированных систем управления предприятием под красивыми лозунгами настройки и адаптации под конкретного заказчика (кстати, стоимость такой настройки может на порядок превышать стоимость модулей системы и требовать серьезных временных затрат, совместимых с затратами на разработку новой системы). При этом, как правило, фирма-исполнитель еще до проведения обследования (да и вообще, до появления заказчика на ее горизонте) знает, какую именно систему она будет внедрять, и осуществляет соответствующую “адаптацию” результатов обследования.
2. Детальное обследование предприятия и разработка на его основе собственной системы управления, дублирующей существующие на предприятии технологии, что только усугубляет ситуацию (автоматизируя хаос и неразбериху, можно получить только “автоматизированный хаос”).
Очевидно, что перечисленные подходы к автоматизации уже не могут устроить заказчика, желающего “увидеть” и скорректировать будущую систему до того, как она будет реализована физически, и в конечном итоге за свои немалые деньги получить реальную выгоду от ее эксплуатации.
С другой стороны, самостоятельно с задачей выбора и тем более разработки собственной системы предприятие справиться не в состоянии. И прежде всего потому, что на предприятии, как правило, отсутствует единая концепция автоматизации. Возникает необходимость в услугах независимых от производителей систем автоматизации консалтинговых фирм.
На основе системного проекта и принятых решений по автоматизации осуществляется проектирование системы. Фактически здесь дается ответ на вопрос: "Как (каким образом) мы будем строить систему, чтобы она удовлетворяла предъявленным к ней требованиям?".
Этот этап разделяется на два подэтапа:
проектирование архитектуры системы, включающее разработку структуры и интерфейсов ее компонент (автоматизированных рабочих мест), согласование функций и технических требований к компонентам, определение информационных потоков между основными компонентами, связей между ними и внешними объектами;
детальное проектирование, включающее разработку спецификаций каждой компоненты, разработку требований к тестам и плана интеграции компонент, а также построение моделей иерархии программных модулей и межмодульных взаимодействий и проектирование внутренней структуры модулей.
При этом происходит расширение системного проекта:
за счет его уточнения;
за счет построения моделей автоматизированных рабочих мест, включающих подсхемы информационной модели и функциональные модели, ориентированные на эти подсхемы вплоть до идентификации конкретных сущностей информационной модели;
за счет построения моделей межмодульных и внутримодульных взаимодействий с использованием техники структурных карт.
Что касается конкретно нашей задачи, то для ее решения удобно использовать какое-то хранилище данных (для формирования документов), а также интерфейсную часть, для того чтобы организовать программное и интерфейсное взаимодействие с самими данными. Для того, чтобы провести разработку такого дополнительного модуля, нам надо было провести работу по выбору инструментария для разработки интерфейсной части, а также СУБД для хранения данных.
Эта работа предваряет собственно систему автоматизации (именно, фазой анализа требований к системе), на которой требования заказчика уточняются, формализуются и документируются. Фактически на этом этапе дается ответ на вопрос: "Что должна делать будущая система?". Именно здесь лежит ключ к успеху всего проекта автоматизации. В практике создания больших программных систем известно немало примеров неудачной реализации именно из-за неполноты и нечеткости определения системных требований.
На этом этапе определяются:
архитектура системы, ее функции, внешние условия ее функционирования, распределение функций между аппаратной и программной частями;
интерфейсы и распределение функций между человеком и системой;
требования к программным и информационным компонентам системы, необходимые аппаратные ресурсы, требования к базе данных, физические характеристики компонент системы, их интерфейсы;
состав людей и работ, имеющих отношение к системе;
ограничения в процессе разработки (директивные сроки завершения отдельных этапов, имеющиеся ресурсы, организационные процедуры и мероприятия, обеспечивающие защиту информации).
Системный проект строится на основе модели “как должно быть” и включает функциональную модель будущей системы в соответствии с одним из общеупотребительных стандартов (например, IDEF0 или IDEF3), информационную модель, например, в соответствии со стандартом IDEF1X, а также техническое задание на создание автоматизированной системы (например, в соответствии с ГОСТ 34.602-89).
По завершении данного этапа (после согласования системного проекта с заказчиком) изменяется роль консультанта. Отныне он как бы становится на сторону заказчика, и одной из его основных функций на всех последующих этапах работ будет являться контроль на соответствие требованиям, зафиксированным в системном проекте.
Необходимо отметить следующее достоинство системного проекта. Для традиционной разработки характерно осуществление начальных этапов кустарными неформализованными способами. В результате заказчики и пользователи впервые могут увидеть систему после того, как она уже в большей степени реализована. Естественно, эта система отличается от того, что они ожидали увидеть. Поэтому далее следует еще несколько итераций ее разработки или модификации, что требует дополнительных (и значительных) затрат денег и времени. Ключ к решению этой проблемы и дает системный проект, позволяющий:
описать, "увидеть" и скорректировать будущую систему до того, как она будет реализована физически;
уменьшить затраты на разработку и внедрение системы;
оценить разработку по времени и результатам;
достичь взаимопонимания между всеми участниками работы (заказчиками, пользователями, разработчиками, программистами и т.д.);
улучшить качество разрабатываемой системы, а именно: создать оптимальную структуру интегрированной базы данных, выполнить функциональную декомпозицию типовых модулей.
Системный проект полностью независим и отделяем от конкретных разработчиков, не требует сопровождения его создателями и может быть безболезненно передан другим лицам. Более того, если по каким-либо причинам предприятие не готово к реализации на основе проекта, он может быть положен "на полку" до тех пор, пока в нем не возникнет необходимость. Кроме того, его можно использовать для самостоятельной разработки или корректировки уже реализованных на его основе программных средств силами программистов отдела автоматизации предприятия.
На основании системного проекта осуществляется:
составление перечня автоматизированных рабочих мест предприятия и способов взаимодействия между ними;
анализ применимости существующих систем управления предприятиями для решения требуемых задач и формирование рекомендаций по выбору такой системы;
совместное с заказчиком принятие решения о выборе конкретной системы управления предприятием или разработке собственной системы;
разработка требований к техническим средствам;
разработка требований к программным средствам;
разработка предложений по этапам и срокам автоматизации.
Что касается конкретно нашей задачи, то исключительно практическая необходимость и целесообразность позволяет правильно сформировать постановку задачи и разработать схему интерфейса, а также саму структуру данных.
Что касается информационного обеспечения комплекса для решения поставленной задачи, то как мы выше уже указывали для этих целей нам необходимо подобрать максимально простую, но эффективную СУБД для работы с данными, а также собственно язык программирования, который сможет обеспечить взаимодействие с данными и пользовательский интерфейс. Начнем с СУБД.
Общая классификация. База данных (БД) - это данные, организованные в виде набора записей определенной структуры и хранящиеся в файлах, где, помимо самих данных, содержится описание их структуры. Система управления базами данных (СУБД) - это система, обеспечивающая ввод данных в БД, их хранение и восстановление в случае сбоев, манипулирование данными, поиск и вывод данных по запросу пользователя. По моделям представления данных базы данных делят на:
иерархические
сетевые
реляционные
объектно-реляционные
Иерархические базы данных - это самая первая модель представления данных, в которой все записи базы данных представлены в виде дерева, с отношениями предок-потомок. Физически данные отношения реализуются в виде указателей на предков и потомков, содержащихся в самой записи. Такая модель представления данных связана с тем, что на ранних этапах базы данных часто использовались для планирования производственного процесса: каждое выпускаемое изделие состоит из узлов, каждый узел из деталей и т.п.
Однако иерархическая модель не является оптимальной. Допустим, что один и тот же тип болтов используется в автомобиле 300 раз в различных узлах. При использовании иерархической модели, данный тип болтов будет фигурировать в базе данных не 1 раз, а 300 раз (в каждом узле - отдельно). Налицо дублирование информации. Чтобы устранить этот недостаток была введена сетевая модель представления данных.
Сетевая база данных - это база данных, в которой одна запись может участвовать в нескольких отношениях предок-потомок. Т.е. фактически, база данных представляет собой не дерево, а граф.
Физически данная модель также реализуется за счет хранящихся внутри самой записи указателей на другие записи, только, в отличие от иерархической модели, число этих указателей может быть произвольным. И иерархическая и сетевая модель достаточно просты, однако они имеют общий недостаток: для того, чтобы получить ответ даже на простой вопрос, программист был должен написать программу, которая просматривала базу данных, двигаясь по указателям от одной записи к другой. Написание программы занимало некоторое время, и часто к тому моменту, когда такая программа была написана, необходимость в получении данных уже отпадала. Поэтому в середине 80-х годов 20 века произошел практически повсеместный переход к реляционным базам данных.
В реляционной базе данных вся информация представляется в виде таблиц и любые операции над данными - это операции над таблицами. Таблицы состоят из строк и столбцов. Строки - это записи, а столбцы представляют структуру записи (каждый столбец имеет определенный тип данных и длину данных). Строки в таблице не упорядочены - не существует первой или десятой строки. Однако поскольку на строки надо как-то ссылаться, то вводится понятие "первичный ключ". Первичный ключ - это столбец, значения которого во всех строках разные. Используя первичный ключ можно однозначно сослаться на какую-либо строку таблицы. Первичный ключ может состоять и из нескольких столбцов (составной первичный ключ).
Некоторые СУБД требуют в явном виде указать первичный ключ таблицы, а некоторые позволяют пользователю не задавать для таблицы первичный ключ - в таком случае СУБД сама добавляет в таблицу столбец - первичный ключ, не отображаемый на экране (так, например, в СУБД Oracle у любой таблицы существует псевдо-столбец ROWID, формируемый Oracle, который содержит уникальный адрес каждой строки).
Отношения предок-потомок в реляционных БД реализуются при помощи внешних ключей. Внешний ключ это столбец таблицы, значения которого совпадают со значениями первичного ключа некоторой другой таблицы.
Объектно-реляционные базы данных появились в последнее время у значительного числа производителей СУБД (Oracle, Informix, PostgreSQL) и сочетают в себе реляционную модель данных с концепциями объектно-ориентированного программирования (полиморфизм, инкапсуляция, наследование).
СУБД Oracle. СУБД ORACLE является на сегодняшний день самой мощной, многофункциональной и легко масштабируемой СУБД, построенной по архитектуре "клиент/сервер", поддерживающей практически все существующие платформы. Это прекрасный выбор для крупной организации: первоначальные затраты на установку (лицензия, приобретение высокопроизводительных серверов) в будущем обернутся значительной экономией средств при необходимости расширения базы данных. Для небольшой организации мощь Oracle может оказаться чрезмерной, в таком случае можно рекомендовать использование Microsoft SQL Server (Windows NT/2000) или PostgreSQL (Linux/Unix). Для фирм малого бизнеса стандартом остается СУБД MS Access. Тем не менее, Oracle продолжает занимать значительную долю рынка, являясь пожалуй самой передовой СУБД.
База данных Oracle содержит различные типы объектов. Эти объекты можно подразделить на две категории: объекты схемы и объекты, не принадлежащие схемам. Схема (schema) - это набор объектов различной логической структуры данных. Каждая схема принадлежит пользователю базы данных и имеет одинаковое с ним имя. Каждый пользователь владеет одной схемой. Схема может содержать следующие объекты:
таблицы;
индексы;
кластеры;
представления (виды);
снимки - snapshots, журналы репликаций;
линки/связи базы данных (содержат информацию о подключении к удаленной базе данных);
последовательности;
синонимы;
пакеты, хранимые процедуры, функции, триггеры;
библиотеки внешних процедур;
СУБД MS SQL Server, сравнение с MS Access. MS SQL Server - это реляционная СУБД, построенная по архитектуре клиент-сервер. MS SQL Server ориентирован на использование в операционных системах Windows NT/2000 и использует в своей работе системные функции этих ОС, что значительно упрощает архитектуру MS SQL Server, в отличие от других СУБД, вынужденных дублировать некоторые функции ядра операционной системы, для обеспечения межплатформенной переносимости. За счет такой тесной интеграции с Windows NT/2000, СУБД MS SQL Server работает на всех платформах, для которых реализована Windows NT/2000.
SQL Server - это не просто улучшенный Access. В SQL Server реализована система разграничения доступа к объектам базы данных (разные пользователи имеют разные права по работе с различными таблицами, запросами и т.д.). Ограничения доступа можно выставлять не только на таблицу в целом, но даже и на отдельные ее столбцы. Также в SQL Server поддерживается механизм ролей. Роль - это набор прав доступа к объектам базы данных. Роли для каждой базы данных можно определять самостоятельно или пользоваться заранее определенными ролями. Например, роль администраторы безопасности (security admin) - это пользователи которые могут допускать других пользователей к работе с базой данных, роль создатели базы данных (db creators, database creators) - пользователи которые могут создавать и изменять структуру базы данных и т.д. Используя роли можно быстро и удобно разграничить доступ между пользователями, предоставив им только те права, которые действительно необходимы. Причем нарушения прав доступа, также как и сама работа SQL Server будут протоколироваться в специальных log-файлах. SQL Server также позволяет пользователям, правильно указавшим свой пароль при входе в сеть (домен Windows NT/2000), повторно не вводить пароль при доступе к базе данных (Windows authentication mode).