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

Автор работы: Пользователь скрыл имя, 01 Апреля 2011 в 21:21, курсовая работа

Описание работы

В данной работе будут показаны преимущества разработки и внедрения собственного программного продукта в дополнение к имеющемуся типовому решению "1С Предприятие: Торговля и склад".

Файлы: 1 файл

Курсовая раббота.docx

— 394.69 Кб (Скачать файл)

     Введение

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

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

     В данной работе будут показаны преимущества разработки и внедрения собственного программного продукта в дополнение к имеющемуся типовому решению "1С  Предприятие: Торговля и склад".

     ЗАО "Белгородский бройлер" было основано в 2000 году. Цель деятельности компании – производство и реализация мяса птицы и сопутствующих товаров. В процессе своего роста, компания стала  больше внимания уделять сбыту продукции  конечному потребителю. Для этого  за несколько лет была создана  розничная сеть магазинов, специализирующихся на продаже продукции ЗАО "Белгородский бройлер" и сторонних компаний. Ассортимент продукции компании постоянно расширялся, поэтому и  управлять товарно-материальными  потоками становилось все сложнее  и сложнее. Среди прочих проблем  все острее вставал вопрос складского учёта – от производства продукции  до ее реализации конечному потребителю.

     В отделе сбыта и розничных продаж ЗАО "Белгородский бройлер" используется пакет программ "1С Предприятие". Пока количество филиалов (розничных  магазинов) ограничивалось двумя и ассортимент продукции состоял из нескольких наименований особых проблем не было. Но с развитием филиальной сети магазинов (сейчас их семь) появились новые требования к ПО складского учета. 

     Рисунок 1

 

     На  рисунке 1 изображена существующая модель ведения складского учета компании. Её суть заключается в том, что  учет ведется в головном офисе и каждый магазин лишь регулярно предоставляет соответствующие данные о продажах. Она обладает рядом недостатков:

  • высокий человеческий фактор – так как передача данных производится либо вербально, либо с помощью заполненных вручную документов высока вероятность ошибок;
  • низкая актуальность данных – обновление данных происходит не чаще 1 раза в день;
  • двойной ввод данных – первый раз – при продаже\поступлении товара, второй раз – при учете этой же операции в системе "1С: Предприятие";
  • низкая доступность отчетной информации для пользователей – руководство компании настаивает на создании такой системы, которая бы позволила пользователю получать различную отчетную информацию в любой момент времени при наличии подключения к Интернет.

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

     Снижение  затрат на сбор данных о движении товаров  в розничных магазинах компании.

     Для достижения этой цели необходимо:

  • Минимизировать человеческий фактор при сборе данных о товарообороте;
  • Увеличить скорость сбора данных о товарообороте;
  • Создать единую картину товарооборота всех филиалов.

     Также для компании немаловажным будет  являться побочный эффект от проекта:

  • Повышение имиджа компании как IT ориентированной.

     В описанной модели под "АС Складского учета" понимается некая автоматизированная система, в которую заносятся данные о движении товара и из которой эти данные попадают в "1С: Предприятие" бухгалтерии головного офиса компании.

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

     По  ряду причин для решения поставленных задач заказчику не подошло клиент-серверное  решение в формате "1С: Предприятие":

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

     Было  решено, что разработка некоего простого (с точки зрения пользовательского  интерфейса) и легкого (с точки  зрения системных требований и требований к каналам связи) web-ориентированного приложения с функцией конвертации данных в "1С: Предприятие" будет лучшим решением сложившейся ситуации.

 

     Глава 1. Выбор методологии разработки

 

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

     Существует  множество различных методологий. Среди них выделяют тяжеловесные и гибкие методологии. Для тяжеловесных методологий необходимо детальное  планирование большого объема разработок, большой объем документации, и  такой подход работает - однако до тех  пор, пока не начнутся изменения. Следовательно, для этих методологий сопротивляться всяким изменениям совершенно естественно. Гибкие же методологии, напротив, изменения  приветствуют. В отличие от тяжеловесных, они были задуманы как процессы, которые адаптируют изменения и  только выигрывают от них, даже в том  случае, когда изменения происходят в них самих. Наиболее известными и популярными гибкими методологиями  в настоящее время является RUP (Rational Unified Process) и XP (eXtreme Programming).

     RUP и XP исходят из различных философских основ. RUP - это система процессных компонент, методов и техник, которые вы можете применить в любом конкретном программном проекте. Предполагается, что пользователь будет адаптировать RUP. С другой стороны XP - более ограниченный процесс, требующий дополнений для того, чтобы соответствовать полному циклу разработки проекта. Эта разница объясняет предпочтения в сообществе разработчиков программного обеспечения. Разработчики крупных систем рассматривают RUP в качестве решения своих проблем, в то время как сообщество разработчиков малых систем решение своих проблем видит в XP. XP это упрощенный, ориентированный на кодирование процесс, для небольших проектов. Эта технология основана на итерациях, объединяющих некоторые приемы, такие как небольшие релизы, простое проектирование, тестирование и постоянная интеграция. RUP – это итеративная методология, основанная на шести признанных в отрасли лучших технологиях. Основной целью RUP является сокращение рисков. Методология RUP уточнялась в ходе тысяч проектов, выполненных тысячами клиентов и партнеров компании Rational.

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

     Учитывая  сложность разрабатываемой системы, а также требования к адаптивности, мы выбрали в качестве методологии  разработки RUP. Создатели RUP определяют его как итеративный, архитектурно-ориентированный и управляемый прецедентами использования процесс разработки программного обеспечения [9]. Основа RUP: разработка концепции; управление по плану; снижение рисков и отслеживание их последствий; тщательная проверка экономического обоснования; использование компонентной архитектуры; прототипирование, инкрементное создание и тестирование продукта; регулярные оценки результатов; управление изменениями; создание продукта, пригодного к употреблению; адаптация RUP под нужды своего проекта.

     Прежде  чем приступать к разработке, необходимо определиться с программными продуктами, которые будут использоваться в  ходе построения системы. По мере повышения  сложности программных проектов резко возрастают требования к эффективности  их реализации. Это тем более важно  сегодня, когда разработчики ПО вовлечены  практически во все аспекты работы предприятий и число таких  специалистов растет. В то же время  данные исследований в этой области  говорят о том, что результаты как минимум половины "внутренних" проектов разработки программных средств  не оправдывают возложенных на них  надежд. В этих условиях становится особенно актуальной задача оптимизации  всего процесса создания программных  средств с охватом всех его  участников - проектировщиков, разработчиков, тестеров, служб сопровождения и  менеджеров. Управление жизненным циклом приложений (Application Lifecycle Management, ALM) рассматривает процесс выпуска программных средств как постоянно повторяющийся цикл взаимосвязанных этапов:

  • определение требований (Requirements);
  • проектирование и анализ (Design & Analysis);
  • разработка (Development);
  • тестирование (Testing);
  • развертывание и сопровождение (Deployment & Operations).

     Каждый  из этих этапов должен тщательно отслеживаться  и контролироваться. Правильно организованная ALM-система позволяет:

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

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

     Платформа .NET

 

     13 февраля 2002 года состоялся официальный  старт новой платформы Microsoft .NET — на грандиозной презентации в Сан-Франциско были представлены рабочие версии двух главных ее элементов: операционной среды .NET Framework и инструментального набора Visual Studio .NET. Что нового предлагают эти средства, что они сулят разработчикам и пользователям?

     К сожалению, несмотря на обилие публикаций о данных продуктах, многое остается весьма туманным. Самое удивительное, что "дымовую завесу" активно  поддерживает и сама Microsoft. Например, в официальном пресс-релизе по поводу выхода новинок написано, что это "краеугольные камни в реализации стратегии Microsoft в отношении XML Web Services". Хотя даже при поверхностном взгляде видно, что .NET Framework и VS.NET никак явно не связаны с этими сервисами.

Информация о работе Разработка и внедрение собственного программного продукта