Разработка программного обеспечения для автоматизации работы склада произвольного предприятия. Описание методов решения задач, алгоритмов, структуры программы. Создание интерфейса и методов доступа к данным. Требование к аппаратной и программной части.
Аннотация к работе
Уральский технический институт связи и информатики (филиал) Федерального государственного бюджетного учреждения высшего профессионального образования Сибирского государственного университета телекоммуникаций и информатикиВ век автоматизации процессов, люди стараются автоматизировать всю свою деятельность - автоматические системы управления заводами, автоматизация работы предприятий, автоматизация документооборота фирмы. Заполнять длинные формы отчетности руками стало плохим тоном на предприятиях всех уровней. В этом курсовом проекте будет разработана программа “Склад”, которая поможет автоматизировать и систематизировать работу склада инструментов и запчастей произвольного предприятия. Она поможет сократить время обработки заявок на получение и расходов склада.Разработать программу для автоматизации работы склада произвольного предприятия имеющим на хранении запчасти и инструменты. Она должна предоставлять сведения о приборах: название, назначение, дата последней проверки у метролога, цех, которому может понадобиться этот прибор, количество приборов, цена, завод изготовитель, срок гарантии, когда получен прибор.Из этой диаграммы можно сделать вывод: - необходимо выделить отдельные сущности - Инструмент, Запчасть, Приход, Заказ; Сущности “Заказ” и “Приход” должны содержать в себе коллекции инструментов и запчастей, но создать отношение “1-к-многим” не представляется возможным, так как в позиции заказа или прихода необходимо указать колво необходимых в заказе или приходе запчастей или инструментов; Исходя из предыдущего пункта, необходимо выделить еще две сущности - “Корзина инструментов” в которой хранится коллекция инструментов заказа или прихода с указанием необходимого количества и “Корзина запчастей”, в которой хранится коллекция запчастей заказа или прихода с указанием необходимого количества; Для экономии памяти сервера базы данных было принято решение в таблицах “Корзина инструментов” и “Корзина запчастей” сделать внешние ключи сразу к двум сущностям - “Приход” и “Заказ”. Определим сущности, необходимые для хранения информации в программе: - Instruments - таблица хранящая информацию о инструментах;Для разработки данной программы была выбрана среда разработки Visual Studio 2013 Ultimate Edition. Среда разработки Visual Studio представляет собой полный набор инструментов для создания как настольных приложений, так и корпоративных веб-приложений для совместной работы групп. Используя эффективные инструменты разработки Visual Studio, основанные на использовании компонентов, и другие технологии, можно не только создавать эффективно работающие настольные приложения, но и упрощать совместное проектирование, разработку и развертывание корпоративных решений. Для конкретной реализации была выбрана связка двух технологий: 1) WPF - Windows Presentation Foundation (WPF) представляет собой обширный API-интерфейс для создания настольных графических программ имеющих насыщенный дизайн и интерактивность. Шаблон MVVM имеет три основных компонента: модель, которая представляет бизнес-логику приложения, представление пользовательского интерфейса XAML, и представление-модель, в котором содержится вся логика построения графического интерфейса и ссылка на модель, поэтому он выступает в качестве модели для представления.Структура программы полностью соответствует шаблону проектирования Model-View-VIEWMODEL, это отображено на рисунке 4. Для создания базы данных использовался подход Code first - разработчик создает класс модели данных, которые будут храниться в базе данных, а затем Entity Framework по этому модели генерирует базу данных и ее таблицы. В папке DATACONTEXT располагается файл с описанием строки подключения к базе данных. В папке Model хранятся файлы-описания моделей сущностей.{get {return INSTRUMENTID; } set } private string name = ""; public string Name {get {return name; } set {get {return BUYDATE; } setДля того, что бы в дальнейшем можно было бы менять способы доступа к данным(в случае работы с разными базами данных), необходимо реализовать интерфейс, в котором определеным методы доступа к данным. Листинг интерфейса приведен в листенге 2. public interface IINSTRUMENTSERVICEAGENT Создание интерфейса доступа к таблице “Инструменты” В листинге 3 приведена реализация интерфейса IINSTRUMENTSERVICEAGENT. public class MOCKINSTRUMENTSERVICEAGENT : IINSTRUMENTSERVICEAGENT using(var db = new STORECONTEXT())В дальнейшем, в шаблоне проектирования MVVM, необходимо реализовать такую часть шаблона как VIEWMODEL. Листинг 4 демонстрирует реализацию VIEWMODEL, которая получает коллекцию всех инструментов из базы данных. public class INSTRUMENTLISTVIEWMODEL : VIEWMODELBASE {get {return instruments; } set // Добавляем сервис агент реализующий интерфейс доступа к данным private IINSTRUMENTSERVICEAGENT SERVICEAGENT;Последним этапом в шаблоне проектирования MVVM создается представление для набора данных полученных VIEWMODEL.
План
Содержание
Введение
1. Проектирование программного продукта
1.1 Постановка задачи
1.2 Проектирование базы данных
1.3 Обоснование выбора среды разработки
2. Реализация программного продукта
2.1 Описание методов решения задач, алгоритмов, структуры программы
2.2 Пример реализации шаблона проектирования
2.2.1 Создание модели
2.2.2 Создание интерфейса и реализации методов доступа к данным