Xreferat.com » Рефераты по информатике и программированию » Внедрение автоматизированной системы торговой деятельности для предприятия ЗАО "Полиграфия и коммуникации"

Внедрение автоматизированной системы торговой деятельности для предприятия ЗАО "Полиграфия и коммуникации"

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

2.7 Проектирование приложения “Счета”

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

Для удобства пользователя, счета организованы в виде списка, над которым можно выполнять операции поиска, сортировки и фильтрации по интересующим параметрам, а также добавления и удаления элемента списка. При выборе элемента списка, открывается окно для работы со счетом. В нем содержится полная информация о нем, реализована возможность изменения содержимого. Для внесения изменения в счет предусмотрен визуальный механизм работы с деревом товаров, что позволяет быстро и легко формировать и изменять наборы товаров, “подгонять цену”. Отметим, что добавление или удаление товара по счету не влечет за собой никаких изменений на складе товаров. Форма для работы со списком счетов и со счетом показаны на рисунках 7 и 8.


Рис.7 Приложение “Счет” – список счетов.

Основные операции для работы со списком счетов:

Добавить счет – создание нового счета. Входные данные: дата. Выходные данные – новый счет, измененный список счетов.

Удалить счет – удаляет счет из списка. Входные данные: счет(номер). Выходные данные – измененный список счетов.

Копировать счет – создает копию счета с теми же параметрами, но другим порядковым номером. Входные данные: счет(номер). Выходные данные – измененный список счетов.

Печать – вызывает диалог выбора отчета и его формата для печати. Входные данные: Шаблон для печати, если *.xls-отчет, форма, если *.frf-отчет. Выходные данные – *.xls или *.rtf файл или печатная форма.

Фильтр – вызывает диалог для внесения параметров фильтрации счетов. Входные данные: условия фильтрации. Выходные данные – список счетов, входящих в диапазон.

Редактировать счет – вызывает форму для работы со счетом. Входные данные: Шаблон для печати, если *.xls-отчет, форма, если *.frf-отчет. Выходные данные – *.xls или *.rtf файл или печатная форма.

Рис.8 Приложение “Счет” – работа со счетом.

Основные операции для работы с содержимым счета:

Добавить товар – добавляет товар в счет. Входные данные: товар(номер). Выходные данные – измененный счет.

Удалить товар – удаляет товар из счета. Входные данные: товар(номер). Выходные данные – измененный счет

Сумма – вычисляет сумму товаров, включенных в счет. Входные данные: счет(номер). Выходные данные – сумма в долларах, рублях и евро.

Печать – вызывает диалог выбора отчета и его формата для печати счета. Входные данные: Шаблон для печати, если *.xls-отчет, форма, если *.frf-отчет. Выходные данные – *.xls или *.rtf файл или печатная форма.

Скидка – пересчитывает позиции счета с учетом скидки. Входные данные: размер скидки. Выходные данные – измененный счет.

Состояние – позволяет изменить состояние счета вручную. Входные данные: состояние. Выходные данные – счет.

UML-диаграмма приложения “Счет” представлена на рисунке 9.

Рис.9 UML-диаграмма приложения “Счет”.

Из рисунка видно, что дерево товаров является классом, унаследованным от абстрактного класса “Дерево”. Оно использует класс “Группа” для описания каждого элемента дерева и хранит атрибут “Текущая группа” для определения элемента-родителя каждого товара в списке, представленного классом “Список товаров”. В свою очередь, для хранения товаров класс “Список товаров” использует класс “Товар”, а для описания параметров поиска, сортировки и фильтрации класс “Интерфейс”. Еще два класса “Интерфейс” отвечают за пользовательский интерфейс для работы с деревом и списком товаров. Таким образом, реализовано взаимодействие классов внутри приложения.

2.8 Проектирование приложения “Склад”

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

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


Рис.10 Приложение “Склад” – Главная форма.

Основные операции для работы со складом перечислены ниже.

Со списком поставок:

Добавить поставку – создание новой поставки и включение ее в список. Входные данные: дата. Выходные данные – новая поставка, измененный список поставок.

Удалить поставку – удаляет поставку из списка. Входные данные: поставка(номер). Выходные данные – измененный список поставок.

Копировать поставку – создает копию поставки с теми же параметрами, но другим порядковым номером. Входные данные: поставка(номер). Выходные данные – измененный список поставок.

Печать – вызывает диалог выбора отчета и его формата для печати. Входные данные: Шаблон для печати, если *.xls-отчет, форма, если *.frf-отчет. Выходные данные – *.xls или *.rtf файл или печатная форма списка поставок.

Фильтр – вызывает диалог для изменения параметров фильтрации списка поставок. Входные данные: условия фильтрации. Выходные данные – список поставок, входящих в диапазон.

Редактировать поставку – вызывает форму для работы с содержимым поставки. Входные данные: поставка(номер). Выходные данные содержимое поставки.

Пункты меню формы для работы с содержимым поставки:

Добавить товар – добавляет товар в поставку. Входные данные: товар(номер). Выходные данные – измененная поставка.

Удалить товар – удаляет товар из поставки. Входные данные: товар(номер). Выходные данные – измененная поставка.

Сумма – вычисляет сумму товаров, включенных в поставку. Входные данные: поставка(номер). Выходные данные – сумма товаров в долларах, рублях и евро.

Печать – вызывает диалог выбора отчета и его формата для печати поставки. Входные данные: Шаблон для печати, если *.xls-отчет, то шаблон, если *.frf-отчет. Выходные данные – *.xls или *.rtf файл или печатная форма.

Пункт меню “Склад” – вызывает диалоговое окно для получения представления склада в разрезе товаров или времени.

UML-диаграмма приложения “Склад” представлена на рисунке 12.

Таким образом, абстрактный объект “Склад” представлен совокупностью классов для работы с поставками. Товар, пришедший на склад вне конкретной поставки, заносится в фиктивный объект “Вне поставок”, структура данных которого идентична с обычной поставкой. Однако, свойство этого объекта “Дата прихода” определяет интервал времени, в течении которого он будет рассматриваться как одна поставка, а ссылка на поставщика будет иметь значение для каждого товара. Именно за счет этого можно легко получить точные данные по складу, вне зависимости от способа прихода товара.


Рис.12 UML-диаграмма приложения “Склад”.

Два класса: “Интерфейс” отвечают за пользовательский интерфейс для работы со списком поставок и их содержимым.

2.9 Проектирование приложения “Заказы”

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

Основной принцип функционирования приложения можно разделить на следующие этапы:

Выбор счетов для генерации заказов

Получение списка товаров, содержащихся в счетах

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

Формирование плана закупок, то есть разбиение списка товаров по поставщикам.

Редактирование плана закупок, внесение недостающих товаров (с пометкой “Вне счетов”).

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

Внешний вид главной формы приложения показан на рисунке 13.

Основные функции приложения “Заказы”:

Добавить товар – добавление товара в заказ вне поставок. Входные данные: товар(номер). Выходные данные – список товаров для заказа

Удалить товар – удаление товара из списка товаров для заказа. Так как заказ не связан со счетом, то удалить можно и товар, заказываемый по счету. Входные данные: товар(номер). Выходные данные – список товаров для заказа.

Рис.13 Приложение “Заказы” – главная форма.

Поставки - Формирование списка товаров для заказов по счетам, а затем формирование плана закупок, то есть составление заказов с группировкой по поставщикам. Входные данные: дата, склад, список счетов. Выходные данные – план закупок.

Расчет суммы – расчет суммарной стоимости для плана закупок. Входные данные: план закупок. Выходные данные – стоимость всех товаров плана.

Расчет суммы по заказу – расчет стоимости одного заказа. Входные данные: заказ. Выходные данные – стоимость всех товаров заказа.

Печать – вызывает диалог выбора отчета и его формата для печати. Входные данные: Шаблон для печати, если *.xls-отчет, форма, если *.frf-отчет. Выходные данные – *.xls или *.rtf файл или печатная форма списка поставок.

Фильтр – вызывает диалог для изменения параметров фильтрации списка товаров для заказа. Входные данные: условия фильтрации. Выходные данные – список поставок, входящих в диапазон.

Сохранить план закупок – сохранение отчета по плану закупок в базе данных. Входные данные: отчет. Выходные данные – нет.

UML-диаграмма приложения “Заказы” представлена на рисунке 14

Рис.14 UML-диаграмма приложения “Заказы”.


Функция “Старт” класса “Репликатор” фактически инициирует вызов хранимой процедуры, которая осуществляет сравнение списка товаров, зарезервированных по счетам со списком доступных на складе товаров и вносит соответствующие изменения. Нормальная ситуация при которой вызывается функция “Стоп” – это завершение работы хранимой процедуры. Однако, поскольку процедура формирования списка товаров для закупок довольно трудоемка, то, во-первых, она реализована с помощью отдельного процесса, а, во-вторых, имеет возможность принудительного завершения и отката изменений. Функция “Стоп” проверяет состояние процесса: если он еще не завершил выполнение, то происходит принудительное его завершение.


Глава 3. Экспериментальная проверка программного комплекса.

 

3.1 Исходные данные и постановка задачи для проведения тестирования

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

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

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

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

защита программного комплекса от несанкционированного доступа;

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

добавление, изменение, удаление информации;

поиск нужной информации, при определении пользователем параметров поиска;

выполнение специальных задач, при возникновении нестандартных ситуаций.

3.2 Тестирование приложений

Тестирование приложения “Прайс”.

Прежде всего, была осуществлена попытка доступа к приложению, пользователем “Serebrinnikov_OA” с ролью “Склад”, которая дает права доступа к приложению “Склад” и, частично, “Заказы”, но не дает права доступа к приложению “Прайс”. Результат – отказ в доступе. После входа в систему под учетной записью администратора, были изменены права доступа для данного пользователя и эта учетная запись получила право на чтение, удаление, добавление товаров в прайс-листе. Добавим группу товаров “Нестандартное оборудование” с родителем “Все товары” в дерево товаров. Добавим в эту группу товар “Часы с флэш-накопителем 64Mb Casio-I32” и товар “ИК-порт ACTiSYS IR”. Добавление, удаление этих товаров из прайса, а также редактирование их свойств проходит нормально. При попытке удаление удаления товара “Монитор Sony Multiscan E100” получаем сообщение: “Товар “Монитор Sony Multiscan E100” не может быть удален, так как он включен в счет, заказ или поставку”. При удалении непустой группы товаров, при наличии в ней хотя бы одного товара, фигурирующего в счетах, заказах или поставках получаем такое же сообщение и все изменения в группе отменяются. Попытка другого пользователя изменить свойства товара, в то время, когда их редактирует пользователь “Serebrennikov_OA” приводит к появлению сообщения: “Редактирование текущей записи невозможно. Запись заблокирована пользователем Serebrinnikov_OA 13:20 19.02.2006”.

Тестирование приложения “Счета”.

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

3.3 Анализ результатов, полученных при тестировании

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

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

Рис. 15 Окно «Добро пожаловать».

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

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

Программный комплекс работает устойчиво, если выполняются перечисленные ниже требования:

Сеть функционирует нормально;

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

Сервер функционирует нормально;

Проверка работы поисков показала, что алгоритмы поисков работают

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

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

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

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


Глава 4. Расчет экономической эффективности проекта

 

4.1 Анализ рыночных возможностей продукта

На рынке автоматизированных систем для крупных организаций и финансово-промышленных групп на сегодня можно выделить два основных

Если Вам нужна помощь с академической работой (курсовая, контрольная, диплом, реферат и т.д.), обратитесь к нашим специалистам. Более 90000 специалистов готовы Вам помочь.
Бесплатные корректировки и доработки. Бесплатная оценка стоимости работы.

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

Получить выполненную работу или консультацию специалиста по вашему учебному проекту
Нужна помощь в написании работы?
Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Пишем статьи РИНЦ, ВАК, Scopus. Помогаем в публикации. Правки вносим бесплатно.

Похожие рефераты: