Введение
Одним из важнейших инструментов социологического исследования является анкетирование респондентов.
Опросы - незаменимый прием получения информации о субъективном мире людей, их склонностях, мотивах деятельности, мнениях. Он является почти универсальным методом. При соблюдении надлежащих предосторожностей позволяет получить не менее надежную информацию, чем при исследовании документов или наблюдении.
С развитием информационных систем и возрастающим влиянием Интернет технологий наступил новый этап в сфере социологических исследований. В настоящий момент именно благодаря всемирной сети легко проводить опросы и анкетирования большой и разноплановой аудитории.
Подобный способ сбора информации имеет больше преимуществ в сравнении с традиционными методами. Во-первых, Интернет-опрос позволяет охватить значительные географические территории. Во-вторых, результаты можно получить в любой момент. К тому же, подобный способ изучения общественного мнения значительно снижает трудовые и финансовые затраты.
Высокая эффективность метода проведения опросов в Интернете связана с тем, что благодаря своим коммуникативным свойствам, он максимально «сближает» анкетируемого и интервьюера. Кроме того, Интернет позволяет существенно снизить время, затрачиваемое на прохождение анкеты по цепочке «интервьюер — анкетируемый — заполненная анкета — введение анкеты в базу данных — анализ анкеты — представление результатов в графическом виде». Современные информационные средства позволяют уменьшить время прохождения данных по этой цепи буквально до нескольких минут. Для сравнения, выполнение всех этих этапов вручную требует, по меньшей мере, нескольких дней.
К числу отличительных особенностей проведения опросов с использованием Интернета также относится их невысокая стоимость, автоматизация процесса опроса и анализа его результатов, и возможность сосредоточения опроса на целевой аудитории.
Проведение анкетирования при отсутствии автоматизированной системы — весьма трудоемкий процесс, требующий больших человеческих ресурсов. Подведение итогов анкетирования вручную — процесс, отнимающий очень много времени, причем этом случае не исключены человеческие ошибки. Разработанная система может существенно облегчить работу отдела маркетинга, снизить временные затраты на подведение итогов анкетирования, уменьшить количество сотрудников, задействованных в процессе проведения анкетирования, а также свести к нулю вероятность ошибок при подведении итогов анкетирования.
Заказчиком данной системы выступает отдел маркетинга БФ МЭСИ. Одной из решаемых задач отдела маркетинга является проведение маркетинговых исследований. В настоящее время при реализации этой задачи отделом маркетинга затрачиваются определенные ресурсы, как материальные, так и человеческие. Процесс проведения анкетирования от подготовки до непосредственного сбора анкет в БФ МЭСИ проводится вручную. Поэтому возникла необходимость в создании Web-приложения, которая сможет автоматизировать бизнес-процессы проведения маркетингового исследования.
Основная бизнес цель проекта – снижение издержек при проведении маркетинговых исследований в БФ МЭСИ. Достижение этой цели планируется за счет автоматизации процесса анкетирования и процесса обработки данных с помощью Web-приложения.
1. Выбор методологии разработки
Созданию любого качественного приложения сопутствует применение какой-либо методологии. Методология [19]– это систематизированная совокупность технических приемов, методик и принципов построения, поддержки и/или усовершенствования программного обеспечения. Методология создаёт основу для обмена информацией, предоставляет инструментарий и технические приемы для организации надежного, повторяемого процесса разработки ПО. Методология разделяет весь объем работы на организованные фазы и/или этапы, которые затем, в свою очередь, делятся на план и задания, входные данные и результаты, технологические приемы, инструменты, роли членов команды в процессе разработки продукта. Набор систематизированных образцов работ представлен в виде шаблонов, маршрутов, сценариев действий и примеров организации действий. Образцы работ легко адаптируются к проектам любой специфики, создавая надёжную базу для формирования структуры организации. На основе выбранной методологии производится выбор конкретных проектных инструментов и программных средств. Наиболее известными и популярными методологиями для организации качественного процесса разработки приложений являются Rational Unified Process (RUP) и Microsoft Solutions Framework (MSF) [3]
Rational Unified Process (RUP) [14] предлагает итеративную модель разработки, включающую четыре фазы: начало, исследование, построение и внедрение. Каждая фаза может быть разбита на этапы (итерации), в результате которых выпускается версия для внутреннего или внешнего использования. Прохождение через четыре основные фазы называется циклом разработки, каждый цикл завершается генерацией версии системы. Если после этого работа над проектом не прекращается, то полученный продукт продолжает развиваться и снова минует те же фазы. Суть работы в рамках RUP - это создание и сопровождение моделей, а не бумажных документов, поэтому этот процесс привязан к использованию конкретных средств моделирования (UML), а так же конкретной технологии проектирования и разработки (объектно-ориентированный анализ, object-oriented analysis, OOA, объектно-ориентированное программирование, object-oriented programming, OOP). RUP – это технологический процесс, позволяющий повысить продуктивность деятельности команды и унифицировать процесс разработки сложных информационных систем, предоставляя готовые модели организации работы и шаблоны документов. Целью RUP является создание условий для разработки продуктов, полностью соответствующих требованиям заказчиков. Схемы планирования, предоставленные RUP, позволяют рационализировать процесс разработки и тем самым придерживаться заранее оговоренных сроков и бюджета проекта.
MicrosoftR Solutions Framework (MSF) – это пакет подробных руководств "как действовать" при разработке, как приложений, так и инфраструктурных проектов. Наряду с помощью в выборе технологии, MSF делает акцент на человеческом факторе, а также отдельных составляющих процесса разработки. Система включает принципы, модели и примеры проектов, которые помогают идентифицировать наиболее типичные ошибки и адресовать их для корректировки ответственным за данную часть проекта. Дисциплинированный подход критически важен для разработки качественных бизнес-решений в соответствии с оговоренными сроками, требованиями и бюджетом. MSF сходна с RUP, так же включает четыре фазы: анализ, проектирование, разработка, стабилизация, является итерационной, предполагает использование объектно-ориентированного моделирования. MSF в сравнении с RUP в большей степени ориентирована на разработку бизнес-приложений.
В качестве методологии разработки я остановился на MSF, так как эта методология разработана компанией Microsoft и адаптирована под программные продукты этой компании. MSF представляет собой набор моделей, принципов и рекомендаций по проектированию и разработке решений масштаба предприятия, который позволит успешно управлять такими составляющими проекта, как люди, процессы и инструментальные средства. В MSF также предлагаются проверенные на практике методы планирования, проектирования, разработки и развертывания корпоративных решений
Модель процессов определяет порядок проектирования и описывает жизненный цикл проекта. Различают две основные формальные модели жизненного цикла - каскадная и спиральная модели.
Рис.1.1 Модели жизненного цикла
Эти модели представляют два разных подхода к организации жизненного цикла проекта.
Каскадная модель [12]. Здесь оценка и переход проекта на следующий этап выполняется в контрольных точках. Все задачи, относящиеся к одной фазе, должны быть завершены до того, как начнется следующая фаза. Каскадная модель работает наилучшим образом, когда на начальном этапе проекта можно четко определить неизменный набор требований к разрабатываемому решению. Фиксация переходов от одной фазы к другой облегчает распределение ответственности, отчетность и следование календарному графику проекта.
Спиральная модель [13]. Эта модель учитывает необходимость постоянного пересмотра, уточнения и оценки проектных требований. Такой подход может быть очень эффективным при быстрой разработке небольших проектов. Он стимулирует активное взаимодействие между проектной группой и заказчиком, поскольку заказчик оценивает ход и результаты работы на протяжении всего проекта. Недостатком спиральной модели является отсутствие четких вех, что может привести к хаотизации процесса разработки
Модель процессов MSF описывает общую последовательность действий по созданию и развертыванию решений уровня предприятия. Модель достаточно гибка и адаптируется в соответствии с самыми различными требованиями в проектах самого разного масштаба. Модель процессов MSF ориентирована на этапы, и управление в ней организовано на основе контрольных точек, а итерационный подход применяется при разработке и развертывании традиционных прикладных программ, корпоративных решений электронной коммерции и распределенных прикладных Web-программ.
В модели процессов MSF собрано все лучшее из каскадной и спиральной моделей: планирование на основе промежуточных контрольных точек и предсказуемость из водопадной модели наряду с обратной связью и коллективным творческим подходом, характерными для спиральной модели.
Модель процессов MSF состоит из пяти четко определенных этапов:
• создания общей картины приложения;
• планирования;
• разработки;
• стабилизации;
• развертывания.
Каждый этап завершается контрольной точкой.
На стадии создания общей картины приложения команда, заказчик и спонсоры проекта определяют высокоуровневые бизнес-требования и общие цели проекта. Главная задача — согласовать то, как видят проект разные его участники, и выработать у членов команды единое мнение о полезности проекта для компании и его реализуемости. На этой стадии основное внимание уделяется четкости формулировки задач.
На этапе создания общей картины приложения команда решает различные задачи.
• Определение состава команды, в которой должны быть представлены все роли, предусмотренные моделью команд MSF. (Сотрудника, ответственного за создание команды, обычно назначает руководство компании.) При организации команды важно учесть навыки, опыт и эффективность работы отдельных ее членов. Кроме того, не забудьте о практических соображениях, таких, как наличие и доступность ресурсов и бюджета.
• Определение структуры проекта — определение административной структуры проектной команды и стандартов управления проектом.
• Определение бизнес-целей — анализ бизнес-задачи и возможностей для выявления целей создания продукта.
• Оценка существующей ситуации — анализ текущего состояния и оценка разрыва между реальным и ожидаемым положением дел. Цель подобного анализа — сформулировать перечень задач и определить направление развития проекта.
• Создание документа общей картины и области действия проекта — разработка концепции решения, которым должна руководствоваться проектная команда, чтобы достичь долгосрочных бизнес-целей проекта, и ее документирование. Область действия проекта определяет, что включается в контекст проекта, а что выходит за его рамки.
• Определение требований и профилей пользователей — определение всех заинтересованных сторон, конечных пользователей и спонсоров проекта, а также документирование их требований к решению. Эта информация помогает «набросать» черновик обшей картины и границ проекта, а также создать концепцию решения.
• Разработка концепции решения — создание базовой концепции решения, то есть «костяка» решения, которое станет основой будущего продукта. Концепция создается на основе собранных требований.
• Оценка риска — определение и выяснение важности различных видов риска для проекта, а также разработка мероприятий по устранению или снижению рисков. Это итерационная процедура, выполняемая на всех этапах жизненного цикла продукта.
• Закрытие этапа создания обшей картины решения — завершение этапа, которое подтверждается документом обшей картины и области действия решения, одобренным всеми заинтересованными лицами и проектной командой
Результаты решения каждой задачи этапа формируют контекст и направление последующих этапов проекта, а также общую картину и область действия решения, которые предоставляются заказчику. Вот цели, которых команда достигает на этапе создания общей картины решения.
Общая картина и область действия решения:
· формулировка задач и бизнес-целей;
· анализ существующих процессов;
· наиболее общее определение требований пользователей;
· профили пользователей, определяющие, кто будет работать с продуктом;
· документ общей картины и определение области действия;
· концепция решения, описывающая способ планирования проекта;
· стратегии проектирования решения.
Структура проекта:
· описание всех ролей команд MSF и списки членов команд;
· структура проекта и стандарты процессов, которых должна придерживаться команда.
Оценка риска:
· предварительная оценка риска;
· список предварительно определенных рисков;
· планы устранения или снижения влияния выявленных рисков.
На этапе планирования команда решает, что следует разработать, и создает планы реализации продукта. Команда готовит функциональную спецификацию, создает дизайн решения и планы работы, а также оценивает стоимость и сроки получения запланированных результатов.
На этапе планирования выполняется анализ требований, которые делятся на бизнес-требования, пользовательские, функциональные и системные требования. Они необходимы для проектирования продукта и ето функций, а также для проверки корректности проекта.
После сбора и анализа требований команда создает проект решения. Создаются профили, которые определяют пользователей продукта и их роли и обязанности. Затем команда формирует сценарии использования системы. Сценарий использования системы (СИС) — это описание процесса, выполняемого пользователями определенного типа. Команда создает отдельные СИС для всех пользовательских профилей. Затем формируются варианты использования системы (ВИС), которые определяют последовательность шагов, выполняемых пользователем в СИС.
Этап планирования состоит из трех стадий.
• Концептуальный дизайн. Задача рассматривается с точки зрения пользовательских и бизнес-требований и определяется в виде сценариев использования системы.
• Логический дизайн. Задача рассматривается с точки зрения проектной команды, и решение определяется как набор сервисов.
• Физический дизайн. Задача рассматривается с точки зрения разработчиков (программистов). На этой стадии уточняются технологии, интерфейсы компонентов и сервисы решения.
На этапе разработки проектная команда создает решение, в том числе разрабатывает и документирует код продукта, а также создает инфраструктуру решения.
Процесс разработки
На этапе разработки команда выполняет несколько задач.
• Начало цикла разработки. Команда проверяет выполнение всех задач, характерных для этапов создания общей картины решения и планирования, и готовится к началу разработки продукта.
• Создание прототипа приложения. Проверка концепций, заложенных в проекте решения, в среде, которая аналогична окружению, где в конечном счете предполагается развернуть будущий продукт. Среда должна максимально точно воспроизводить промышленную среду. Эта задача выполняется до начала разработки.
• Разработка компонентов решения. Разработка основных компонентов решения и их адаптация в соответствии с потребностями решения.
• Создание решения. Последовательность ежедневных или более частых сборок, которая завершается выпуском базовых сборок, знаменующих реализацию основных функций продукта.
• Закрытие этапа разработки. Завершение работы над всеми функциями приложения и поставка кода и документации. Решение считается готовым, а команда переходит к процессу одобрения контрольной точки.
На этапе стабилизации команда собирает, загружает и выполняет бета-тестирование продукта, а также проверяет сценарии развертывания. Основное внимание уделяется обнаружению, определению важности и разрешению неполадок — все это готовит решение к финальному выпуску. На этом этапе обеспечивается заданный уровень качества продукта. Кроме того, по завершении этапа решение готово к развертыванию в промышленной среде.
На этом этапе команда развертывает технологии и компоненты окружения, необходимые для работы созданного продукта, устанавливает и стабилизирует решение в развернутом состоянии, передает проект в руки команды сопровождения и поддержки и получает окончательное одобрение проекта заказчиком.
После развертывания команда выполняет анализ проекта и проводит опрос, чтобы выяснить уровень удовлетворен кости заказчика. Этап развертывания завершается контрольной точкой «Решение развернуто».
В качестве инструмента моделирования будет использоваться UML(Unified Modeling Language) - стандартный язык, применяемый для моделирования информационных систем различной сложности — от крупных корпоративных ИТ-систем до распределенных систем, основанных на Web [5].
Создатели UML стремились предоставить пользователям стандартный визуальный язык, позволяющий разрабатывать понятные модели и обмениваться ими. UML не зависит от конкретных языков программирования и процессов разработки и применяется для:
• визуализации программной системы набором строго определенных символов. Разработчик приложения может однозначно интерпретировать UML-модель, созданную другим разработчиком;
• описания спецификаций информационной системы. UML помогает строить точные, однозначные и полные модели;
• конструирования моделей ИТ-системы, которые могут напрямую преобразовываться в текст на различных языкам программирования;
• документирования моделей программной системы, выражая требования к системе на стадиях разработки и развертывания
Основные черты UML:
• простой, расширяемый и выразительный язык визуального моделирования;
• состоит из набора нотаций и правил моделирования программных систем различной степени сложности;
• дает возможность создавать простые, хорошо документированные и легкие для понимания модели ПО;
• не зависит как от языка программирования, так и от платформы.
UML позволяет разработчикам систем создавать стандартные планы любых систем и предоставляет огромное количество графических инструментов, которые применяют для визуализации и анализа системы с различных точек зрения. На основе диаграмм создают различные представления системы. В совокупности все представления системы составляют модель системы.
Модели или представления используются для наглядного изображения сложной информационной системы, причем различные аспекты информационной системы отображают в виде UML- представлений (UML views). Обычно применяются следующие представления:
• Пользовательское представление (user view) выражает цели и задачи системы с точки зрения пользователей и их требований к системе. Это представление относится к части системы, с которой взаимодействует пользователь. Пользовательское представление также называют представлением в виде набора диаграмм UseCase
• Структурное представление (structural view) отражает статическое или нерабочее состояние системы. Его также называют представлением дизайна (designview).
• Представление поведения (behavioral view) отражает динамическое или изменяющееся состояние системы. Его иногда называют представление процессов (process view).
• Представление реализации (implementation view) представляет структур} логических элементов системы.
• Представление окружения (environment view) отражает распределение физических элементов системы. Окружение системы определяет ее функции с точки зрения пользователей. Представление окружения также называют представлением развертывания (deployment view).
Различные UML-представления содержат диаграммы, показывающие разрабатываемое решение с различных точек зрения. Не обязательно разрабатывать диаграммы для каждой создаваемой системы, но вы должны уметь разбираться в представлениях системы и соответствующих UML-диаграммах. Также, не обязательно использовать все диаграммы для моделирования системы. Следует выделить лишь те модели, которые позволят успешно смоделировать систему.
Применяются следующие UML-диаграммы для изображения различных представлений системы:
• диаграммы классов (class diagrams) содержат классы и их связи. Связи (ассоциации) между классами изображаются двунаправленными соединительными линиями;
• диаграммы объектов (object diagrams) изображают различные объекты системы и их взаимосвязи;
• диаграммы ВИС (use case diagrams) показывают набор функций, который система предоставляет внешним объектам;
• диаграммы компонентов (component diagrams) отображают представление реализации системы. Она содержит различные компоненты системы и их взаимосвязи, такие, как исходный код, объектный код и исполняемый код;
• диаграммы развертывания (deployment diagram) показывают соответствие программных компонентов узлам физической реализации системы;
• диаграммы коллективного взаимодействия (collaboration diagrams) представляют собой набор классов и отправляемых и принимаемых ими сообщений;
• диаграммы последовательностей (sequence diagrams) описывают взаимодействие между классами — посдедовательность сообщений, которыми обмениваются классы;
• диаграммы состояний (state diagrams) описывают поведение класса в моментобращения к нему внешнего процесса или объекта. Она отображает состояния и ответные сигналы класса при выполнении действия.
2. Создание общей картины решения
2.1 Общие сведения
Сбор информации является сложным процессом. Основной сложностью в этом процессе является сбор достаточного количества информации и соответствия высокому качеству. Такая информация дает возможность вырабатывать обоснованные рекомендации и направлять их на рассмотрение руководству организации или учреждения, формировать методологию для качественного управления процессом подготовки, переподготовки и повышенияквалификации служащих.
Конечно, информация приобретается из двух основных источников:
· существующая- имеющаяся в учреждении;
· информация из различных видов опросовслужащих.
Как правило, сначала используют информацию, которая уже существует в учреждении, хотя количество такого рода информации будет различаться, а его полезность будет зависеть от характера ее анализа. Однако, в самом начале реализации проекта только такая информация доступная для обработки и анализа поэтому важно собирать и анализировать эту информацию. Это поможет определить дополнительные потребности в информации и подойти к дальнейшему собору данных уже с другой точки зрения проинформированного человека.
В процессе анализа учебных потребностей обязательно нужно будет собирать «сырую» и «свежую» информацию, то есть взгляды руководителей и работников организации, потребителей на ход развития подготовки, переподготовки и повышение квалификации работников и учебного процесса. Обычным средством получения такой информации есть опрос .
Наиболее распространенными формами опроса есть:
· структурированный;
· полуструктурированный;
· групповые обсуждения и встречи;
· анкеты.
При структурированном опросе корреспондент предлагает серию подготовленных вопросов, которые размещенные одно за другим с целью выяснения информации, которая собирается. Недостатком такой формы опросаявляется то, что предмет разговора определен заведомо, и можно уронить некоторого ключевые и интересные для проекта аспекты, поскольку они не были предварительно отмечены.
При использовании полуструктурированного опроса широкая область для исследования определенная еще к разговору, но дополнительные области пересматриваются во время беседы и корреспондент время от времени решает, следует ли продолжать обсуждения данного конкретного вопроса.
Групповые обсуждения и встречи, полезные в рамках анализа учебных потребностей, так как увеличивают качественные показатели информации. Руководящий состав и работники обговаривают идеи и предлагают, через дискуссию, новые подходы по ее решению, которое обеспечивает получение более аргументированной информации. Но при использовании групповых обсуждений от руководителей отделов кадров учреждения или учебных центров требуются эффективные привычки ведения дискуссий.
Анкеты наиболее распространенное средство сбора разнообразной информации, но анкеты являются и наибольшей проблемой. Проблема состоит в их конструкции и анализе, а не в их приемлемости. В организациях и учреждениях сбольшим количеством персоналаили с большим количеством офисов - анкетирование может быть основной частью методологии.
Главной целью отдела маркетинга региональной структуры является выявление, формирование и эффективное удовлетворение образовательных потребностей различных групп потребителей на региональном уровне.
В соответствии с основными стратегическими целями МЭСИ и его текущими задачами отдел маркетинга региональной структуры в своей повседневной деятельности обязан реализовывать следующие основные задачи:
1. Обеспечение отдела маркетинга головной структуры необходимой маркетинговой информацией для совместной разработки стратегии и тактики развития и рыночного поведения региональной структуры при продвижении образовательных продуктов и услуг на региональных рынках. Отдел маркетинга региональной структуры обязан при необходимости уточнять и дополнять указанную информацию, а также выполнять все необходимые работы по анализу и оценке различного рода текущих и перспективных рыночных ситуаций на региональных рынках.
2. Проведение всего комплекса рыночных исследований, связанных с рынком образовательных продуктов и услуг в регионах, регионального рынка труда, потребителями региональных структур, как по утвержденному плану-графику исследований, так и по специальным указаниям отдела маркетинга.
3. Изучение деятельности региональных конкурентов, стратегии и тактики их воздействия на покупателей (рекламы, ценовой политики, других методов конкурентной борьбы) и предоставление отчетной информации в отдел маркетинга, в соответствии с планом-графиком маркетинговых мероприятий.
4. Постоянное участие в разработке стратегии и тактики рыночного поведения регионального структурного подразделения ЕАОИ посредством формирования стратегии маркетинга: товарной, ценовой, сбытовой, рекламной и сервисной.
5. Формирование спроса, организация рекламной деятельности, стимулирование сбыта, разработка комплекса PR – мероприятий, согласование с отделом маркетинга и предоставление отчетной информации, в соответствии с планом-графиком маркетинговых мероприятий.
6. Периодическая консультация с отделом маркетинга головного вуза по вопросам маркетинговой деятельности региональной структуры.
7. Разработка долгосрочных (на год) и текущих планов (на месяц) регионального маркетинга и согласование с отделом маркетинга головного вуза.
8. Разработка и утверждение структуры и объема бюджета маркетинга с отделом маркетинга головного вуза.
9. Разработка предложений по концепции ценовой стратегии, включая систему скидок в регионах и утверждение с отделом маркетинга головного вуза
10. Анализ причин неудовлетворенного спроса на образовательные услуги и продукты региональной структуры на рынке образовательных услуг и разработка предложений по снижению его размеров.
11. Создание и оперативное ведение баз данных «Потребители» и «Конкуренты».
12. Разработка предложений по освоению новых видов образовательных услуг в регионах, отвечающих запросам новых Потребителей/Студентов.
13. Разработка предложений по формированию/корректировке положительного имиджа МЭСИ в сознании региональных Потребителей/Студентов и единой корпоративной культуры, непосредственное участие в их практическом осуществлении с использованием средств рекламы.
14. Поиск исполнителей/соисполнителей для проведения работ по маркетингу и рекламе среди сторонних организаций, постановка перед ними задач, оперативный контроль и анализ выполненных ими работ.
При проведении маркетинговых исследований огромная часть времени затрачивается на проведение анкетирования и дальнейшую обработку полученных данных. В соответствии с Положением о маркетинговой деятельности региональных структур отдел маркетинга должен проводить следующие виды анкетирования [2]:
1. Старшеклассники и выпускники ССУЗов (довузовские мероприятия) (анкета+форма отчета - Word);
2. Абитуриенты, в том числе посетители ДОД (анкета+форма отчета - Word);
3. Студенты 1, 5 курсов (анкета+форма отчета - Word);
4. Студенты 2, 3, 4 курсов (анкета+форма отчета - Word).Студенты (качество обучения) (анкета+форма отчета - Word);
5. Студенты – экстерны (анкета+форма отчета - Word);
6. Слушатели семинаров, курсов и т.д. (анкета+форма отчета - Word).
7. Анкетирование работодателей (определение отношения к экстернату) (анкета+форма отчета - Word);
8. Анкетирование работодателей (выявление потребности в специалистах и требований предъявляемых к их подготовке) (анкета+форма отчета - Word).
Процесс проведения анкетирования от подготовки до непосредственного сбора анкет проводится вручную, на что тратится очень много времени и бумаги и при этом велика вероятность возникновения ошибки, которая может привести к получению неправильных результатов. Далее возможно возникновение необходимости в выборке той части анкет, которая отвечает определённому критерию. Например: как отвечали на данные вопросы только женщины и т.п. Это приведёт к повторной обработке анкет. Тут возникает необходимость в создании программы, которая сможет многие действия по сбору и обработке информации выполнять автоматически, что существенно снижает время на получение результата и сводит возможность возникновения ошибки к минимуму. Но, учитывая, что подобные исследования надо проводить достаточно регулярно, то предприятию невыгодно каждый раз платить за новую программу, поэтому создаваемая система должна быть универсальной и подходить под различные типы анкет. Для сбора данных необходимо использовать современные информационные технологии, которые дают возможность размещения информации на рабочем месте в виде экранной формы анкеты для локальной реализации системы в отдельных региональных центрах опроса (организациях), или размещать форму на отдаленном сервере, доступ к которому, выполняется пользователями с помощью стандартизированных средств Интернет и Интранет технологий.
2.2 Область действия
Цель любого проекта состоит в решении какой-то проблемы, поэтому она в основном и определяет проект решения. Формулировка задач позволяет определить задачи, которые команда будет решать.
Основная цель проекта - это снижение издержек при проведении маркетинговых исследований.
Для достижения заданной цели необходимо выполнение следующих задач:
· Подготовка анкет
· Проведение анкетирования
· Обработка данных
· Хранение и дальнейший поиск
Для данной системы определены следующие пользователи:
· Администратор системы
· Сотрудник отдела маркетинга
· Обычный пользователь (абитуриент, студент, работодатель)
Одно из критически важных условий успеха проекта — четкость определения области действия проекта (project scope), то есть того, что входит в рамки проекта. Этот параметр определяют на основе обшей картины решения и ограничений, обусловленных конечностью проектных ресурсов, времени и других факторов. Область действия также зависит от функций, которые заказчик считает обязательными и которые команда должна реализовать в первой версии решения. При определении границ проекта команда вправе перенести в будущие версии функциональные возможности, которые напрямую не связаны с базовыми функциями решения. Функциональность, не входящая в область действия, документируется в следующей версии или следующем проекте
На рисунке показана UseCase-диаграмма, представляющая часть бизнес-операций.
Рис. 2.1 Общая диаграмма использования для системы
Реализация системы предусматривает решение таких задач:
· создание макета анкеты;
· удобное редактирование существующей анкеты;
· экспорт и импорт анкеты
· проведение анкетирования (заполнение анкет);
· обработка результатов анкетирования;
· просмотр статистики (формирование отчетов).
· Ведение базы данных, в которой хранятся результаты анкетирования.
2.3 Создание концепции решения
Концепция решения описывает подход команды к решению задач проекта и служит основанием для перехода на этап планирования. После определения бизнес-задачи и создания общей картины и области действия решения команда создает концепцию решения, где в общих словах описано, как команда планирует решать поставленную задачу.
В качестве браузера будет использоваться “тонкий клиент“. «Тонкие клиенты» - это терминальные станции, за которыми работают пользователи, а все приложения при этом выполняются на сервере. Таким образом, данное решение основывается на многопользовательской операционной системе, в нашем случае это Windows Server 2003, выполнении всех приложений на сервере под управлением IIS (Internet Information Services).
В качестве платформы для разработки будет использоваться технология .NET. Она открывает широкие перспективы совершенствования способов разработки корпоративных приложений. Visual Studio .NET обеспечивает каркас общей среды, на которой базируются несколько языков. Среда Visual Studio .NET также больше, чем предыдущие версии, ориентирована на работу в Интернете — серьезное внимание уделено в ней Web-службам, XML и распределенным приложениям.
В качестве СУБД будет использоваться Microsoft SQL Server 2005, представляет новое поколение масштабируемых решений в области систем управления базами и хранилищ данных для задач, требующих быстрого получения и анализа информации. Он нацелен на решение широкого круга задач во всех областях бизнеса, в том числе и в электронной коммерции.
Преимущества Microsoft SQL Server 2005:
Полная Web ориентированность. Осуществление запросов, анализ и управление данными через Web. Использование языка XML для обмена данными между удаленными системами. Простой и безопасный доступ к данным с помощью Web - браузеров, быстрый поиск необходимых документов. Анализ потоков данных и получение информации о пользователях, в том числе и через Web.
Масштабируемость и надежность. SQL Server 2005 обеспечивает практически неограниченный рост объемов хранения данных за счет увеличения надежности и масштабируемости системы, используя все преимущества мультипроцессорной обработки данных.
Скорость построения решений. SQL Server 2005 уменьшает время создания, развертывания и выхода на рынок современных приложений для задач бизнеса, электронной коммерции, использует встроенный отладчик T-SQL. Совершенствует и ускоряет процесс поиска данных, упрощает управление, позволяет использовать создаваемые пользователем функции в других приложениях, предоставляет широкие возможности для создания Web приложений.
Рекордные показатели скорости работы. Еще до окончательного выхода на рынок SQL Server 2005 установила новый мировой рекорд по производительности, далеко опередив конкурирующие решения на различных платформах.
Основные возможности
SQL Server 2005 интегрируется в существующие системы без программирования, используя встроенную поддержку W3C стандартов, включая XML, Xpath, XSL и HTTP. Позволяет просмотр и доступ к реляционным данным, используя технику простого сопоставления XML элементов и атрибутов реляционной схемы.
SQL Server 2005 осуществляет доступ к данным посредством URL (используя в запросах язык SQL, XML шаблоны или Xpath), возвращает XML объекты из SQL запросов и управляет их формой, используя опции форматирования.
SQL Server 2005 поддерживает применение XML для выделения, вставки, обновления и удаления табличных данных из любого места даже через межсетевой экран (firewall), что позволяет передавать, преобразовывать и загружать данные целиком из любого источника в реляционные таблицы SQL Server 2005. Продукт работает с XML документами, как с SQL таблицами, используя T-SQL и встроенные процедуры.
В SQL Server 2005 в полном объеме используются преимущества многозадачности и параллельной обработки данных, такие как надежная работа с разделяемыми на уровне пользователей или приложений базами данных, разделение потока данных между серверами, параллельное создание индексов, ускорение сканирования баз данных в многопроцессорных системах, а также синхронизирует данные на всех серверах в кластере независимо от их местонахождения. Продукт переустанавливает и восстанавливает любую ветвь при сбое в кластере, не затрагивая остальные, легко конфигурируется для репликации и распределения потоков, обладает встроенной технологией клонирования серверов.
SQL Server 2005 позволяет анализировать собираемые реляционные и OLAP данные, включая входные потоки и историю обращений, чтобы понять тренды и сформировать прогнозы, выполняет анализ больших объемов данных (10М+ записей), за счет связанного хранения. При этом продукт оставляет сервер доступным для других задач при обновлении индексов, поддерживает быстрое архивирование с небольшими затратами системных ресурсов, архивируя только измененные элементы, позволяет перемещать и копировать базы данных и объекты между серверами, используя специальные мастера.
Отладчик T-SQL позволяет отлаживать сохраненные процедуры, устанавливает точки останова, определяет точки контроля, просматривает значения переменных, позволяет пошаговое выполнение кода, отслеживает исполняемый код на сервере и клиентах, создает шаблоны.
Встроенный MDX конструктор, поддержка сетей SAN, обработка OLAP, алгоритмы самонастройки и управления, поддержка функций создаваемых пользователем, интеграция с Active Directory - все это увеличивает возможности и области применения SQL Server 2005.
Полнотекстовый поиск через Web или интрасеть для форматированных документов (Word, Excel, HTML).
Поддержка резервных серверов - MS SQL 2005 использует активную и пассивную модель отказоустойчивости с резервным оборудованием.
Запросы на английском языке.
Сервисы анализа и безопасности. MS SQL 2005 закрывает данные, используя системы безопасности для массивов и ячеек, и ограничивает доступ к специальным наборам ячеек.
Сервисы преобразования данных. MS SQL 2005 импортирует и экспортирует данные и ключи между поддерживаемыми базами данных, программирует многофазную подкачку данных и сохраняет пакеты DTS как код Visual Basic.
Безопасность. MS SQL 2005 включает поддержку SSL соединений, имеет сертификат безопасности С2. При установке по умолчанию устанавливается высокий уровень защиты. В мае 2005 года Microsoft SQL Server 2000 Enterprise Edition получила сертификат Федеральной службой по техническому и экспортному контролю о соответствии оценочному уровню доверия ОУД 1 (усиленному) при работе под управлением Microsoft Windows Server 2003 Enterprise Edition, в соответствии с руководящим документом «Безопасность информационных технологий. Критерии оценки безопасности информационных технологий» (Гостехкомиссия России, 2002г.). Сертификат подтверждает, что Microsoft SQL 2000 Enterprise Edition может использоваться для построения автоматизированных систем до класса защищенности 1Г включительно.
Соединение OLAP кубов на различных серверах для анализа производительности. Поддерживается безопасный доступ к данным куба через Internet.
Параллельное DBCC - быстро и эффективно проверяет данные в базах данных с поддержкой многопроцессорной работы.
3. Планирование
3.1 Общие сведения этапа планирования
Информации, собранной командой на этапе создания общей картины решения, обычно достаточно для начала работы над проектом. На этой стадии создается базовый документ общей картины и области действия решения. Ближе к концу этапа создания общей картины команда переходит к планированию модели процессов MSF. На этом этапе необходимо убедиться, что решаемая бизнес-проблема понимается полностью и команда в состоянии спроектировать адекватное решение. Кроме того, следует спланировать порядок разработки решения и оценить, достаточно ли для этого ресурсов.
На этапе планирования создается набор моделей и документов с перечнем требований — функциональная спецификация, или черновой план решения. Работа над ним начинается на этапе планирования.
На этапе планирования команда проекта продолжает работу, начатую на этапе создания общей картины решения, а именно: работает над предварительными требованиями, задачами, их последовательностью и профилями пользователей.
В результате должна быть выработана архитектура и дизайн решения, планы по его разработке и развертыванию и календарные графики выполнения задач и загрузки ресурсов. На этом этапе команда составляет как можно более четкую и ясную картину решения. Процесс планирования должен двигать проект вперед, однако многие команды на нем спотыкаются, слишком много времени уделяя планированию. Ключ к успеху — уловить тот момент, когда информации уже достаточно для дальнейшего движения вперед. При недостатке информации рискованно переходить к следующему этапу, с другой же стороны, избыток информации может стать причиной стагнации проекта
На этапе планирования разрабатываются три вида дизайна: концептуальный, логический и физический, причем эти процессы выполняются не параллельно. Они имеют «плавающие» начало и конец и зависят друг от друга.
Логический дизайн строится на основе концептуального, а физический — по результатам логического. Любые изменения концептуального дизайна отражаются на логическом дизайне и, в свою очередь, приводят к модификации физического дизайна.
3.2 Концептуальное проектирование
Концептуальный дизайн — это процесс сбора, анализа и определения приоритетов особенностей бизнеса и точек зрения пользователей на проблему и будущее решение, с последующим созданием высокоуровневого представления решения.
Во время сбора информации собираются предварительные требования. Очень важно, чтобы команда понимала разницу между различными категориями требований: пользовательскими, системными, процедурными и бизнес-требованиями.
Предварительные требования обычно формулируют на основе начальных интервью и другой информации, собранной на тот момент. По мере углубления понимания проблемы бизнеса предварительные требования расширяют и уточняют.
3.2.1 Описание модели бизнес процессов
AS-IS
В настоящее время процесс сбора и обработки маркетинговых исследований методом анкетирования происходит следующим образом.
Рис. 3.1. Общий план анкетирования
Планирование проведения анкетирования:
На основании плана-графика предоставления маркетинговой отчетности составляется внутренний график проведения маркетинговых исследований. На данном этапе производится сбор всей необходимой информации для проведения анкетирования и составления анкет, который включает в себя формирование списка групп, в которых будет проводиться анкетирование, составление графика проведения анкетирования в соответствии с расписанием учебного процесса.
Рис. 3.2. Планирование проведения анкетирования
Создание анкеты
Назначается лицо, ответственное за создание анкеты, которое на основании шаблона формирует анкету, разрабатывает вопросы анкеты, а также перечень необходимых ответов. В дальнейшем сформированная форма анкеты тиражируется для дальнейшего распространения.
Рис. 3.2. Создание анкеты
Проведение анкетирования
Назначаются лица, ответственные за проведение анкетирования. Ими производится распространение анкет среди опрашиваемого контингента, а также объяснение по заполнению анкеты. Ими же производится сбор заполненных анкет.
Рис. 3.3. Проведение анкетирования
Обработка данных
Назначаются ответственные лица, которые просматривают собранные анкеты, анализируют их, и на основании проведенного анализа получают результаты. Анализ собранных данных осуществляется с использованием MicrosoftExcel. На основании собранных данных формируются отчеты маркетингового исследования, которые оформляются в соответствии с шаблоном.
Рис. 3.4. Обработка данных
Чтобы создать точный и пригодный к использованию концептуальный дизайн решения, необходим эффективный метод для представления и обсуждения решения с пользователями. Для этого создаются модели задач проекта. Один из способов моделирования таких задач и их последовательностей — построение вариантов использования системы.
3
.2.2. Построение диаграммы вариантов использования
Вариант использования(Use case) специфицирует поведение системы или ее части и представляет собой описание множества последовательностей действий, выполняемых системой для того, чтобы актер мог получить определенный результат.
С помощью вариантов использования можно описать поведение разрабатываемой системы, не определяя ее реализацию. Таким образом, они позволяют достичь взаимопонимания между разработчиками, экспертами и конечными пользователями продукта. Кроме того, варианты использования помогают проверить архитектуру системы в процессе ее разработки. Реализуются они кооперациями.
Хорошо структурированные варианты использования описывают только существенное поведение системы или подсистемы и не являются ни слишком общими, ни слишком специфическими.
Важнейшая особенность разработки вариантов использования состоит в том, что вы не специфицируете, как они будут реализованы. Варианты использования специфицируют желаемое поведение, но ничего не говорят о том, как его достичь. И, что очень важно, это позволяет вам как эксперту или конечному пользователю общаться с разработчиками, конструирующими систему в соответствии с требованиями, не углубляясь в детали реализации.
В UML поведение моделируется с помощью прецедентов, специфируемых в отрыве от реализации. Прецедент - это описание множества последовательностей действий (включая их варианты), которые выполняются системой для того, чтобы актер получил результат, имеющий для него определенное значение. Это определение включает в себя несколько важных пунктов.
Прецедент описывает множество последовательностей, каждая из которых представляет взаимодействие сущностей, находящихся вне системы (ее актеров), с системой как таковой и ее ключевыми абстракциями. Такие взаимодействия являются в действительности функциями уровня системы, которыми вы пользуетесь для визуализации, специфицирования, конструирования и документирования ее желаемого поведения на этапах сбора и анализа требований. Прецедент представляет функциональные требования к системе в целом.
Прецеденты предполагают взаимодействие актеров и системы. Актер представляет собой логически связанное множество ролей, которые играют пользователи прецедентов во время взаимодействия с ними. Актерами могут быть как люди, так и автоматизированные системы.
Развитие прецедентов может осуществляться по-разному. В любой хорошо продуманной системе существуют прецеденты, которые либо являются специализированными версиями других, более общих, либо входят в состав прочих прецедентов, либо расширяют их поведение. Общее поведение множества прецедентов, допускающее повторное применение, можно выделить, организуя их в соответствии с тремя описанными видами отношений.
Всякий прецедент должен выполнять некоторый объем работы. С точки зрения данного актера, прецедент делает нечто представляющее для него определенную ценность, например, вычисляет результат, создает новый объект или изменяет состояние другого объекта.
Прецеденты могут быть применены ко всей системе или к ее части, в том числе к подсистемам или даже к отдельным классам и интерфейсам. В любом случае прецеденты не только представляют желаемое поведение этих элементов, но могут быть использованы как основа для их тестирования на различных этапах разработки.
На следующей диаграмме описывается процесс создания анкеты:
Рис. 3.5. Диаграмма вариантов использования Создать анкеты
Рис. 3.7. Диаграмма вариантов использования Опубликовать анкеты
Рис. 3.8. Диаграмма вариантов использования Создать отчеты
Из данных диаграмм становится ясным тот функциональный набор, который потребуется реализовать.
3.3 Логическое проектирование
В процессе концептуального дизайна решение описывается с точки зрения бизнеса и пользователей. Далее следует продумать решение с точки зрения проектной команды. Именно это и выполняется на стадии логического дизайна.
На этапе анализа в процессе создания логического дизайна, команда разделяет проблему, и ее решение на более мелкие части, или модули.
3.3.1 Создание модулей и сервисов
Модульная декомпозиция
· Модуль “Создание анкет”
· Модуль “Опубликование анкет”
· Модуль “Анкетирование”
· Модуль “Создание отчетов”
· Модуль “Просмотр отчетов”
В модуле “Создание анкет” реализованы следующие функции:
· Создание анкет— при создании новой анкеты указывается название анкеты и ее заголовок, а также указываются дополнительные параметры, например, вводный текст.
· Редактирование существующих анкет — существует возможность редактирования всех тех параметров, которые указываются при создании анкеты.
· Удаление анкет.
· Добавление вопросов в анкету — при добавлении новых вопросов из списка типов выбирается нужный тип вопроса. Типы вопросов зависят от формы ответа. Например, может быть вопрос, подразумевающий выбор одного варианта из нескольких, вопрос, подразумевающий ввод строки ответа и т. д. В зависимости от выбранного типа вопроса задаются различные параметры вопроса, например, список ответов.
· Редактирование вопросов — при редактировании вопросов существует возможность изменения типа вопроса, а также всех необходимых параметров.
· Просмотр анкеты — на любой этапе создания анкеты можно просмотреть получающуюся анкету.
Модуль “Опубликование анкет” позволяет размещать на странице сайта различные анкеты, задавать интервалы проведения анкетирования.
Модуль “Анкетирование” позволяет пользователям проходить различные виды анкетирования.
Модуль “Создание отчетов” позволяет формировать различные шаблоны для формирования отчетов, а также их дальнейшее редактирования и удаление.
Модуль “Просмотр отчетов” позволяет проанализировать введенные данные и просмотреть отчеты на основании созданных шаблонов
3.3.2 Логическая модель данных
Для представления логического дизайна используют логическую модель объектов или данных. Однако проектная команда иногда создает обе модели, представляя логический проект с разных сторон. Это необходимо, когда одна из моделей представляет какую-либо часть проекта особо четко.
Логический дизайн — это промежуточный этап между концептуальным и физическим дизайном. Создавая модель данных, происходит преобразование концептуальных требований к данным (они определяются при концептуальном дизайне) в реальные объекты-сущности и отношения, отображающие реальное взаимодействие данных. Полученная информация помогает в дальнейшем моделировать физический дизайн.
При переходе к логической стадии дизайна данных одна из первоочередных задач заключается в формулировке сущностей на основании требований к данным и другой связанной информации. Сущностью(entity) обычно считают человека, место, элемент или понятие, которое определяет данные или о котором данные собираются и хранятся. Атрибут — это характеристика, представляющая собой дополнительное определение и описание свойств экземпляра сущности. У сущности обычно несколько атрибутов.
После определения сущностей следует определить необходимые атрибуты — они описывают сущности решения.
При реализации физического дизайна атрибуты обычно превращаются в столбцы таблиц базы данных.
Логическая модель данных представляется в виде диаграмм “сущность-связь” (ERD), предназначены для разработки моделей данных и обес
Данная нотация была введена Ченом (Chen) и получила дальнейшее развитие в работах Баркера (Barker). Нотация Чена предоставляет богатый набор средств моделирования данных, включая собственно ERD, а также диаграммы атрибутов и диаграммы декомпозиции. Эти диаграммные техники используются прежде всего для проектирования реляционных баз данных (хотя также могут с успехом применяться и для моделирования как иерархических, так и сетевых баз данных).
Сущность представляет собой множество экземпляров реальных или абстрактных объектов (людей, событий, состояний, идей, предметов и т.п.), обладающих общими атрибутами или характеристиками. Любой объект системы может быть представлен только одной сущностью, которая должна быть уникально идентифицирована. При этом имя сущности должно отражать тип или класс объекта, а не его конкретный экземпляр.
Отношение в самом общем виде представляет собой связь между двумя и более сущностями. Именование отношения осуществляется с помощью грамматического оборота глагола (имеет, определяет, может владеть и т.п.).
Другими словами, сущности представляют собой базовые типы информации, хранимой в базе данных, а отношения показывают, как эти типы данных взаимоувязаны друг с другом. Введение подобных отношений преследует две основополагающие цели:
· обеспечение хранения информации в единственном месте (даже если она используется в различных комбинациях);
· использование этой информации различными приложениями.
Для идентификации требований, в соответствии с которыми сущности вовлекаются в отношения, используются связи. Каждая связь соединяет сущность и отношение и может быть направлена только от отношения к сущности.
Пара значений связей, принадлежащих одному и тому же отношению, определяет тип этого отношения. Практика показала, что для большинства приложений достаточно использовать следующие типы отношений:
1. 1*1 (один-к-одному). Отношения данного типа используются, как правило, на верхних уровнях иерархии модели данных, а на нижних уровнях встречаются сравнительно редко.
2. 1*n (один-к-многим). Отношения данного типа являются наиболее часто используемыми.
3. n*m (многие-к-многим). Отношения данного типа обычно используются на ранних этапах проектирования с целью прояснения ситуации. В дальнейшем каждое из таких отношений должно быть преобразовано в комбинацию отношений типов 1 и 2 (возможно, с добавлением вспомогательных сущностей и с введением новых отношений).
В результате исследования usecase были выделены следующие сущности:
1. Анкета
2. Вопрос
3. Ответ
4. Опрос
5. Пользователь
6. Роли
7. Результаты
Анкета содержит список всех вопросов и, в то же время один и тот же вопрос может быть использована в разных анкетах. Поэтому сущности Анкета и Вопрос состоят в отношениях «многие ко многим»
Вопрос – один из пунктов анкеты, формулирует некоторую проблему, отношение к которой должен выразить опрашиваемый человек. За каждым вопросом закрепляется фиксированный список вопросов, поэтому сущности Вопрос и Ответы находятся в отношении «один ко многим».
Одна и та же анкета может быть использована в разных опросах, то есть использоваться огромное количество раз в различные периоды времени, в то время как текущий опрос проходит только по одной анкете. Поэтому сущности Анкета и Опрос состоят в отношении «один ко многим»
Анкетирование может проходить произвольное количество пользователей, однако пользователь может участвовать только в одном опросе. Поэтому сущности Пользователь и Опрос находятся в отношении «один ко многим».
Один пользователь может иметь несколько ролей, с другой стороны одна и та же роль может принадлежать различным пользователям. Поэтому сущности Пользователь и Роли находятся в отношении «один ко многим».
Пользователь может быть автором нескольких анкет, однако анкета может принадлежать только одному автору. Поэтому сущности Пользователь и Анкета находятся в отношении «один ко многим».
В результате анкетирования пользователь выбирает определенный вариант ответа на поставленный вопрос, в результате чего формируются результаты ответов, которые могут принадлежать только данному опросу, с другой стороны опрос содержит некоторое количество результатов ответов. Поэтому сущности Опрос и Результаты находятся в отношении «один ко многим».
Итак, получаем следующие отношения сущностей:
«Анкета» : «Вопрос» = «многие ко многим»
«Вопрос» : «Ответ» = «один ко многим»
«Анкета» : «Опрос» = «один ко многим»
«Пользователь» : «Опрос» = «один ко многим»
«Пользователь» : «Роли» = «многие ко многим»
«Опрос» : «Результаты» = «один ко многим»
Логическая модель данных представлена на рисунке
Рис. 3.9 Диаграмма сущность-связь
3.4
Физическое проектирование
3.4.1 Построение диаграммы классов
Физический дизайн — последний шаг этапа планирования в модели процессов MSF. Проектная команда переходит к нему после того, как все ее члены подтвердят, что на этапе логического дизайна получено достаточно информации, На этапе физического дизайна на концептуальный и логический дизайн налагаются технологические ограничения. Поскольку физический дизайн «вырастает» из этих двух типов дизайна, его успех сильно зависит от тщательности их проработки, кроме того, этот факт гарантирует, что физический дизайн удовлетворяет требования бизнеса и пользователей.
На этапе планирования проектная команда основное внимание уделяет анализу требований и созданию удовлетворяющего им дизайна решения. Таким образом, помимо определения функций будущего продукта проектная команда анализирует требования к данным и определяет, как их следует структурировать, как они будут храниться и проверяться и как обеспечить к ним доступ.
Изучение и анализ требований к данным начинается на этапе концептуального дизайна. Требования позволяют определить, что именно должно хранить и обрабатывать бизнес-решение. В процессе логического дизайна проектная команда выявляет набор сущностей данных на основании логической модели объектов, сценариев использования и таких артефактов данных, как схема, триггеры, ограничения и топология существующего хранилища данных. В процессе физического дизайна команда создает схему данных, определяя таблицы, связи, типы данных для полей и индексы и завершает работу над сервисами данных.
Кроме того, планируются мероприятия по переносу данных, резервному копированию и восстановлению данных, а также обеспечению отказоустойчивости.
Центральное место в ООАП занимает разработка модели системы в виде диаграммы классов. Нотация классов в языке UML проста и интуитивно понятна всем, кто когда-либо имел опыт работы с CASE-инструментариями. Схожая нотация применяется и для объектов - экземпляров класса, с тем различием, что к имени класса добавляется имя объекта и вся надпись подчеркивается.
Нотация UML предоставляет широкие возможности для отображения дополнительной информации (абстрактные операции и классы, стереотипы, общие и частные методы, детализированные интерфейсы, параметризованные классы). При этом возможно использование графических изображений для ассоциаций и их специфических свойств, таких как отношение агрегации, когда составными частями класса могут выступать другие классы.
Диаграмма классов (class diagram) служит для представления статической структуры модели системы в терминологии классов объектно-ориентированного программирования. Диаграмма классов может отражать, в частности, различные взаимосвязи между отдельными сущностями предметной области, такими как объекты и подсистемы, а также описывает их внутреннюю структуру и типы отношений. На данной диаграмме не указывается информация о временных аспектах функционирования системы. С этой точки зрения диаграмма классов является дальнейшим развитием концептуальной модели проектируемой системы.
Диаграмма классов представляет собой некоторый граф, вершинами которого являются элементы типа "классификатор", которые связаны различными типами структурных отношений. Следует заметить, что диаграмма классов может также содержать интерфейсы, пакеты, отношения и даже отдельные экземпляры, такие как объекты и связи. Когда говорят о данной диаграмме, имеют в виду статическую структурную модель проектируемой системы. Поэтому диаграмму классов принято считать графическим представленном таких структурных взаимосвязей логической модели системы, которые не зависят или инвариантны от времени.
Диаграмма классов состоит из множества элементов, которые в совокупности отражают декларативные знания о предметной области. Эти знания интерпретируются в базовых понятиях языка UML, таких как классы, интерфейсы и отношения между ними и их составляющими компонентами. При этом отдельные компоненты этой диаграммы могут образовывать пакеты для представления более общей модели системы. Если диаграмма классов является частью некоторого пакета, то ее компоненты должны соответствовать элементам этого пакета, включая возможные ссылки на элементы из других пакетов.
На следующем рисунке показана диаграмма клас сов
Рис. 3.10. Диаграмма классов
3.4.2. Модель пользовательского интерфейса
При проектировании приложения важно выбрать наиболее подходящую модель пользовательского интерфейса, так как это влияет на процесс развертывания, способы взаимодействия пользователей с данными, пути поддержки текущего состояния на протяжении диалога приложения и пользователя. К наиболее распространенным моделям и технологиям реализации пользовательского интерфейса относятся:
• стандартный пользовательский интерфейс Windows;
• Web-интерфейс;
Стандартный интерфейс Windows
Стандартный интерфейс Windows применяется, когда необходимо обеспечить работу пользователей в автономном режиме и когда необходима богатая функциональность системы. Он также позволяет эффективно управлять состоянием и обеспечивает постоянство (persistence) данных, а также все преимущества локальной обработки данных.
Web-интерфейс
В Microsoft .NET пользовательский Web-интерфейс разрабатывается средствами ASP.NET. Эта технология предоставляет богатую функциями среду, позволяющую создавать сложные Web-интерфейсы. Вот лишь некоторые из возможностей ASP.NET:
• унифицированная среда разработки;
• привязка данных к пользовательскому интерфейсу;
• интерфейс на основе компонентов с элементами управления;
• встроенная модель безопасности каркаса .NET;
• широкие возможности по поддержке кэширования и управления состоянием;
• доступность, производительность и масштабируемость Web-обработки данных)
Предполагается что система будет использовать Web-интерфейс
После выбора дизайна пользовательского интерфейса переходят к созданию прототипа пользовательского интерфейса, взяв за основу данные интервью, документы с требованиями, варианты использования системы, созданные на этапе планирования.
3.4.3 Создание физической модели данных
База данных (БД) — это особым образом организованный набор значений данных, а схема БД определяет, как именно организованы данные в БД. В процессе физического дизайна члены проектной команды создают схему БД, чтобы определить, что именно нужно создавать, о том же, какими инструментами это будет реализовываться, следует думать позже.
В процессе логического дизайна команда описывает сущности и атрибуты, которые будут храниться в БД, и то, как пользователи будут получать к ним доступ, оперировать ими и просматривать их. В процессе физического дизайна команда создает схему базы данных, которая представляет собой спецификацию по созданию, чтению, изменению и удалению используемых в продукте данных.
В начале разработки схемы БД она сильно связана с логической моделью объектов. Схема определяет главные объекты-сущности, необходимые для будущего решения, их атрибуты и связи между этими сущностями. В большинстве методов моделирования данных сущность определяется как абстрактное представление объекта реального мира. Как правило, объекты базы данных моделируются в диаграммах «сущность-связь». Логический дизайн базы данных был рассмотрен на стадии логического проектирования.
Типы физических моделей данных
Помимо определения логического дизайна базы данных необходимо выбрать технологию физического хранении данных. Физическая модель данных системы управления базами данных (СУБД) определяет внутреннюю структуру, которая применяется в СУБД для управления данными. В этой структуре отражены типы таблиц базы данных, которые разрешается создавать, а также скорость доступа и универсальность базы данных. Далее перечислены наиболее распространенные типы физических моделей данных.
• БД на плоских файлах, или неструктурированные БД. В такой базе данных все данные располагаются в одном файле в виде набора строк и столбцов. В этой архитектуре отсутствует связь между различными плоскими файлами, поскольку ни одна из этих БД ничего не знает об остальных. Она поддерживает быстрое обновление и чтение данных за счет метода индексирования ISAM (indexed sequential access method — индексно- последовательны и метод доступа). Технология ISAM применяется в унаследованных мэйнфреймовых БД и небольших базах данных, располагающихся на ПК.
• Иерархические БД способны хранить самую разнообразную информацию в самом различном формате. Их отличает расширяемость и гибкость, поэтому подобные БД используются, когда требования по хранению информации могут сильно отличатся или изменяться. Пример иерархической базы данных — сервер Microsoft Exchange, способный хранить самые различные типы информации в формате, который удовлетворяет требованиям приложений обмена сообщениями и поддержки совместной работы. Эти требования заключаются в возможности инкапсуляции в сообщениях самой разнородной информации.
• Реляционные БД. Здесь данные хранятся в наборе таблиц и столбцов. Реляционные базы данных сочетают преимущества плоских файлов и иерархических баз данных, обеспечивая хорошую производительность и гибкость в хранении данных. Благодаря возможности определять связи между таблицами на основании уникальных значений, реляционные базы данных — одни из самых популярных. Однако важно понимать, что другие модели также применяются и что разработчикам систем масштаба предприятия иногда приходится работать с несколькими типами баз данных одновременно. В реляционной модели основное внимание уделяется хранению, выборке и обеспечению целостности данных. Структурированный язык запросов SQL (Structured Query Language) позволяет эффективно извлекать связанные элементы данных вне зависимости от того, в одной или нескольких таблицах они хранятся. Целостность данных обеспечивается механизмом правил (rules) и ограничений (constraints).
В Белгородском филиале МЭСИ в настоящее время для хранения дынных применяется Microsoft SQL Server 2000. Поэтому для системы было выбрано предпочтение реляционной базе данных. Физическая модель отражает целевую среду реализации.
В процессе логического дизайна были проанализированы варианты использования системы для определения объектов-сущностей и атрибутов. Сущности и атрибуты формируют базис логического дизайна и используются в процессе физического дизайна для моделирования физического дизайна будущего продукта. Логический дизайн позволяет гарантировать, что дизайн данных решения корректно отражает концептуальные требования. Однако реальная инфраструктура хранения данных оптимизируется для среды, в которой предполагается реализовать физическую модель данных.
Результаты логического дизайна в процессе физического дизайна используются для создания компонентов, спецификаций пользовательского интерфейса и физического дизайна БД. Полученные в процессе логического дизайна объекты-сущности, атрибуты и ограничения преобразуются в таблицы, поля, связи и ограничения базы данных, которая таким образом становится физической реализацией логической модели.
Определение таблиц
Таблицы являются физическим представлением объекте в-сущностей в реляционной базе данных. Они способны хранить самые разные данные — имена, адреса, изображения, аудио и видео файлы, документы Microsoft Word и т.п. Благодаря своей гибкости базы данных применяются для хранения не только простых текстовых данных, но и корпоративной базы знаний предприятия, независимо от формы этих знаний. База данных представляет связи между различными элементами данных.
Данные в таблице хранятся в виде строк, или записей, каждая из которых должна быть уникальной.
Традиционный формат взаимодействия с реляционными данными — ANSI строки, а язык — SQL. Этот язык, напоминает английский и представляет операции, выполняемые с базой данных, в виде понятных человеку выражений, таких, как Insert (вставка), Update (обновление) и Delete (удаление). Большинство баз данных удовлетворяют ANSI-стандарту SQL, хотя его версии и расширения в разных системах отличаются.
Определение столбцов
Данные в каждой таблице хранятся в столбцах (колонках), или полях, которые определяются на основании атрибутов объекта-сущности, представленной и виде таблицы. Каждое поле содержит различные элементы данных, например имя пользователя.
В ходе анализа диаграммы сущность-связь были определены следующие таблицы:
1. Users.
2. UserRoles
3. Roles
4. Form
5. Common
6. Question
7. Answer
8. Survey
9. Results
Таблица Users содержит описание пользователей.
Таблица № 3.1
Поле таблицы | Тип данных | Описание |
UserID | INTEGER | Уникальный идентификатор пользователя |
Login: | VARCHAR(20) | Логин пользователя |
Password | VARCHAR(100) | Пароль пользователя |
LastName | VARCHAR(100) | Фамилия |
VARCHAR(100) | Электронная почта | |
FirstName | VARCHAR(100) | Имя пользователя |
Таблица Roles содержит описание ролей пользователя
Таблица № 3.2
Поле таблицы | Тип данных | Описание |
RoleID | INTEGER | Уникальный идентификатор |
RoleName | VARCHAR(100) | Название роли |
Description | VARCHAR(100) | Описание роли |
Сущности Пользователь и Роли состоят в отношениях один ко многим, поэтому в результате нормализации была выделена таблица UserRoles, в которой определенному пользователю соответствует определенная роль.
Таблица №3.3
Поле таблицы | Тип данных | Описание |
UserRoleID | INTEGER | Уникальный идентификатор |
UserID | VARCHAR(100) | Идентификатор пользователя |
RoleID | VARCHAR(100) | Идентификатор роли |
Таблица Form содержит необходимую информацию об анкете
Таблица № 3.4
Поле таблицы | Тип данных | Описание |
FormID | INTEGER | Уникальный идентификатор пользователя |
FormName | VARCHAR(250) | Название анкеты |
CreatedDate | DATETIME | Дата создания |
Author | VARCHAR(100) | Идентификатор пользователя (автора) |
Таблица Question содержит список вопросов
Таблица № 3.5
Поле таблицы | Тип данных | Описание |
QuestionID | INTEGER | Уникальный номер вопроса |
QuestionType | INTEGER | Тип вопроса |
QuestionText | TEXTt | Текст вопроса |
Таблица Answer содержит список ответов на конкретный вопрос
Таблица № 3.6
Поле таблицы | Тип данных | Описание |
AnswerID | INTEGER | Уникальный идентификатор ответа |
AnswerText | TEXT | Текст ответа |
QuestionID | INTEGER | Идентификатор вопроса, определяет к какому вопросу соответствует ответ |
Так как Анкета состоит из множества вопросов, а один и тот же вопрос может присутствовать в разных анкетах, то в результате нормализации была выделена таблица Common, в которой содержится список ответов на конкретный вопрос.
Таблица № 3.7
Поле таблицы | Тип данных | Описание |
FormID | INTEGER | Уникальный идентификатор анкеты |
QuestionID | INTEGER | Идентификатор вопроса |
Таблица Survey содержит опубликованные анкеты по которым в данный момент происходит анкетирование
Таблица № 3.8
Поле таблицы | Тип данных | Описание |
SurveyID | INTEGER | Уникальный идентификатор ответа |
AnswerText | TEXT | Текст ответа |
QuestionID | INTEGER | Идентификатор вопроса, определяет к какому вопросу соответствует ответ |
Рис. 3.11. Физическая модель данных
4. Разработка
4.1. Общие сведения этапа разработки
«Разработка» — третья стадия модели процесса разработки MSF. Она следует за стадией «Планирование», которая завершается одобрением плана проекта. До сих пор проектная группа занималась в основном концепцией, архитектурой продукта и планированием. На стадии «Разработка» основная задача — выполнение проекта.
Главный вопрос, которым задается проектная группа на этой стадии: как организовать разработку, чтобы создать спроектированный продукт в запланированные сроки? Ответ на этот вопрос основан на понимании концепции продукта с учетом необходимости выпуска работающего приложения.
Стадия «Разработка» завершается написанием кода и выпуском первой версии приложения. Результаты этапа «Завершение разработки» таковы:
все необходимые функциональные возможности приложения реализованы (хотя, вероятно, и не самым оптимальным образом);
продукт прошел первоначальное тестирование; продолжается устранение выявленных ошибок (завершение этой работы на данном этапе не обязательно);
проектная группа и другие участники проекта согласны с тем, что все реализованные функциональные возможности отвечают концепции и функциональным спецификациям, и реализованы успешно;
завершена подготовка к тестированию производительности продукта и его стабилизации.
Фаза «Разработка» во многом схожа с другими стадиями модели процесса разработки MSF. Например, фаза «Планирование» завершается подготовкой функциональных спецификаций. Эти документы становятся исходными для стадии «Разработка». Кроме того, они необходимы для оценки различных характеристик процесса разработки. Помните, что эти документы не остаются неизменными — они вполне могут претерпевать изменения по мере выполнения стадии «Разработка». Эта стадия завершается, когда подготовлены пересмотренные варианты этих документов, а также:
исходный код и исполняемые модули проекта;
результаты исследования производительности;
основные составляющие процесса тестирования.
Стадию «Разработка» программисты часто называют «настоящей работой». Действительно, основная ее задача – создание работающего продукта.
Проектирование архитектуры продукта на стадии «Проектирование» определяет успех его реализации на стадии «Разработка». Стив Мак-коннелл в своей книге «SoftwareProjectSurvivalGuide» описывает связь этих стадий, сравнивая их с движением против течения реки и по течению. Разработка архитектуры на стадии «Планирование», считает он, похожа на движение вверх по течению — чем выше вы заберетесь, тем проще будет сплавляться вниз на стадии «Разработка». Этот процесс, начинающийся по завершении стадии проектирования и заканчивающийся выпуском продукта, будет тем успешнее и проще, чем лучше продумана архитектура.
Функциональные спецификации описывают концептуальный, логический и физический проекты приложения, представляющие собой основу кодирования.
В процессе разработки каждый вариант приложения считается промежуточной версией. Промежуточные версии, полученные ближе к завершению процесса «Разработка», передают пользователям.
В качестве средства разработки было принято решение использовать MicrosoftVisualStudio.NET
4.2 Выбор инструментального средства разработки
Система Visual Studio .NET сегодня позволяет разработчикам создавать Интернет-приложения нового поколения [18]. Обеспечивая самую современную и многофункциональную среду разработки, система Visual Studio .NET предоставляет разработчикам средства для интеграции приложений с любыми операционными системами и языками программирования. С помощью Visual Studio .NET можно легко осуществить преобразование имеющейся бизнес-логики в веб-службы XML, допускающие повторное использование благодаря инкапсуляции процессов и предоставлению доступа к ним из приложений, независимо от того, на какой платформе они работают. Разработчики могут легко объединять любое число веб-служб, каталогизированных и доступных в различных каталогах UDDI, обеспечивая прочную базу для служб и бизнес-логики создаваемых приложений.
В своем универсальном подходе к языкам Visual Studio .NET поддерживает VB.NET, C#, C++ и J#. C# — совершенно новый язык. VB.NET настолько изменился, что его можно считать практически новым языком. По большей части языки Visual Studio используют обновленную IDE-среду, а для создания программных компонентов и элементов пользовательского интерфейса применяются один или несколько из трех форматов: Windows-формы, Web-формы и Web-службы. Во всех языках применяется .NET Framework Classes — библиотека классов, которые обеспечивают поддержку “родных” для среды Visual Studio функций.
В Visual Studio .NET все дороги ведут к общеязыковой среде исполнения (Common Language Runtime, CLR). Независимо от используемого языка — C++, C#, VB.NET или J# — в конце концов программа преобразуется в формат языка MSIL (MicrosoftIntermediateLanguage — промежуточный язык Microsoft), который интерпретируется CLR-компилятором. Visual Studio .NET — это по-настоящему интегрированная среда разработки, независимо от выбранного языка или типа создаваемого приложения, полностью объектно-ориентированная и построенная на единой платформе (.NET Framework). Общий вид и логика работы с инструментальными средствами в Visual Studio .NET в основном сохранены, а огромное количество кода и большая часть инструментов разработки (в частности, средства проектирования, редактирования и отладки) могут Visual Studio .NET — это также попытка Microsoft повлиять на будущее Web-служб и всего рынка ПО для разработчиков. Компания предприняла все возможные усилия, чтобы предоставить обычному программисту инструментальные средства для создания Web-служб; в то же время не остались без внимания средства разработки серверных и Web-приложений, прикладных программ для работы на мобильных устройствах и в локальной сети.
Новая комбинация ASP.NET и Web-форм существенно улучшена. Вместо объединения HTML, ASP-кода и текста сценариев в единый файл Web-формы позволяют разнести HTML и код программной логики в различные файлы, которые затем можно успешно скомпилировать.
В Visual Studio .NET управление данными и подключение к ним радикально изменились, чтобы соответствовать более ориентированной на Интернет среде. В частности, практически полностью переписана технология ADO, и в новой версии, которая называется ADO.NET, поддерживается XML и существенно расширены функциональные возможности работы с данными в условиях отключения от источников данных.
Рис. 4.1. Microsoft Visual Studio 2003
Наиболее заметная особенность Visual Studio .NET — это поддержка Web-служб. Для представления данных в .NET Framework по умолчанию используется язык XML, который к тому же прекрасно увязан с протоколом SOAP.
Microsoft автоматизировала практически все этапы создания и использования Web-служб. Программист может практически ничего не знать о SOAP, WSDL и UDDI и при этом создавать работающие Web-службы.
В дополнение к присутствующим в Visual Studio .NET возможностям уровня предприятия, например, надежной системе отладки, версия Enterprise Architect содержит инструментальные средства поддержки групповой разработки проектов, а также Enterprise Templates (шаблоны предприятий) и систему моделирования Visio. Предоставляется также полная поддержка языка UML с применением восьми типов диаграмм и свободной формы.
4.3 Создание модулей
Согласно методологии MSF фаза Разработки разбивается на условное число итераций, а они, в свою очередь, если это необходимо в силу сложности задачи, – на работы.
Итерации распределялись в соответствии с выделенными модулями. Далее описывается последовательность работ. Поэтому была выстроена четкая последовательность в реализации Системы. Сам процесс кодирования и использования алгоритмов не регламентировался. Это прерогатива программиста.
На первом этапе был реализован модуль создания анкет, который в свою очередь в дальнейшем был протестирован. Результаты предоставлены на рисунке.
Рис. 4.1. Создание анкеты
Рис. 4.2. Создание/ редактирование вопросов
На следующем этапе был реализован модуль для опубликования анкет, результаты, который также был протестирован и результаты представлены на рисунке.
Рис. 4.2. Опубликование анкеты.
Следующим этапом реализации было написание модуля для непосредственного проведения анкетирования, затем было произведено его тестирования. Результаты представлены на рисунке.
Рис. 4.3. Прохождение анкетирования
Следующим этапом было написание модуля создания отчетов, который в свою очередь, тоже был протестирован. Результаты представлены на рисунке.
Рис. 4.5. Отчетоб анкетировании
5. Экономическое обоснование заказного решения
5.1 План анализа экономической эффективности
Для дальнейшего развития Системы необходимо рассчитать экономическую эффективность проекта. Для этого необходимо выбрать направление распространения Системы. Заказчиком системы выступил Белгородский филиал МЭСИ. Произведем расчет экономической эффективности проекта с точки зрения заказного проекта. Структура экономической части при создании программного обеспечения по заказу фирмы следующая:
1. Технико-экономическое обоснование разработки ПО;
2. Расчет затрат на разработку ПО;
3. Стоимость внедрения ПО Заказчиком;
4. Расходы заказчика при эксплуатации ПО;
5. Эффективность внедрения для Заказчика ПО;
6. Правовые аспекты.
5.2 Технико-экономическое обоснование разработки ПО
Данный программный продукт предназначен для помощи в работе лицам, ответственным за проведение маркетинговых исследований, начиная от создания анкеты и заканчивая обработкой полученных данных.
Целью внедрения данного продукта является снижение издержек при проведении маркетинговых исследований– это количественный показатель, который можно увидеть в денежном выражении.
5.3 Расчет затрат на разработку ПО
К единовременным затратам разработчика относятся затраты на теоретические исследования, постановку задачи, проектирование, разработку алгоритмов и программ, отладку, опытную эксплуатацию, оформление документов, исследование рынка и рекламу.
Затраты на разработку.
Поскольку Система разрабатывалась полностью по методологии MSF, было решено отказаться от традиционной системы оценки затрат (ТЗ, эскизный проект, технический проект, рабочий проект, внедрение) в пользу более приемлемой методики. Фазы и содержание работ представлены в таблице 3.1:
Таблица № 5.1
Фаза MSF | Содержание работ | Трудоемкость | |
дни | % | ||
Создание общей картины решения | сбор информации, анализ требований, определение образа проекта в целом | 5 | 6.94 |
Планирование | Анализ требований и проектирование системы, описание бизнес-процессов, планирование необходимых действий и ресурсов, документирование | 13 | 27.8 |
Реализация | низкоуровневая разработка и кодирование | 30 | 58.3 |
Стабилизация и внедрение | тестирование, обучение пользователей, разрешение открытых проблем | 5 | 6.94 |
Итого | 53 | 100 |
Общая трудоемкость разработки ПО рассчитывается по формуле:
,
где – общая трудоемкость разработки, дн; Тi – трудоемкость по стадиям, дн; n – количество стадий разработки.
На создание Системы было потрачено 53 рабочих дня. Оценка затрат включает следующие пункты:
· основная и дополнительная зарплаты;
· отчисления на социальные нужды;
· стоимость инструментальных средств;
· накладные расходы.
Фонд оплаты труда
Основная заработная плата при выполнении НИР включает зарплату всех сотрудников, принимающих непосредственное участие в разработке ПО. В данном случае необходимо учитывать основную зарплату разработчика (студента), дипломного руководителя, консультанта по экономической части.
Таким образом, основная заработная плата (Зосн
) при выполнении НИР рассчитывается по формуле:
,
где Зср.днj
- среднедневная зарплата j-го сотрудника, руб.; n - количество сотрудников, принимающих непосредственное участие в разработке ПО.
Среднедневная зарплата разработчика определена из расчета 7000 руб. в месяц и равна:
Зср. дн. р.
=7000/20=350 руб./день
На консультации запланировано:
24 часа - дипломный руководитель,
3 часа - консультант по экономике.
Заработная плата дипломного руководителя составляет 100 руб./ч. Следовательно, зарплата дипломного руководителя:
Зрук
= 24 * 100 = 2400 руб.
Заработная плата консультанта по экономике составляет 80 руб./ч.
Зконс
= 3 * 80 = 240 руб.
Получаем, основная заработная плата при выполнении НИР равна:
Зосн
= Зраз
+ Зрук
+ Зконс
= 350 * 53 + 2400 + 240 = 21290 руб.
Дополнительная заработная плата равна 10% от основной, следовательно:
Здоп
= (10 * Зосн
)/100= (10 * 21290)/100 = 2129 руб.
Итого основная и дополнительная заработная плата составляет:
Зобщ
= 21290 + 2129 = 23419руб.
Отчисления на социальные нужды составляют на сегодняшний день 26% от общего фонда заработной платы, следовательно:
Осоц
= Зобщ
*0,26 = 23419*0,26 = 6088,94 рублей.
Стоимость машинного времени на подготовку и отладку программ.
Стоимость машинного времени Зомв
зависит от себестоимости машино-часа работы ЭВМ СМЧ
, а также времени работы на ЭВМ ТЭВМ
, и включает амортизацию ЭВМ и оборудования, затраты на электроэнергию,
Себестоимость машино-часа ЭВМ равна:
Время использования оборудования:
Затраты на оборудование.
,
где АМ
– амортизационные отчисления, руб.; Оф
– стоимость ЭВМ и оборудования, руб.; Нам
– норма амортизации, %; Тм
– время использования оборудования, дни
Затраты на электроэнергию.
,
Таким образом, стоимость машинного времени на подготовку и отладку программ равно:
Использование инструментария.
Стоимость инструментальных средств включает стоимость системного программного обеспечения (СПО), использованного при разработке ПО, в размере износа за период использования.
Норма амортизации для СПО 30%, а время использования 36,55 дней.
Использованные средства представлены в таблице 3.2.
Таблица 5.2
Продукт | Стоимость (у.е.) | Стоимость (руб.) |
MicrosoftVisualStudio 2003 | 825 | 23397 |
Microsoft Visio Standard 2003 | 180 | 5104,8 |
Итого | 1005 | 28501,8 |
Аи
=((Оф
*Нам
)/(365*100))*Тм
=((28501,8*30)/(365*100))*36,55= 856,22 руб.
где Оф
– стоимость использованных средств;
Нам
- норма амортизации;
Тм
– время использования инструментария, дни.
Итак, смета затрат на разработку приведена в таблице 5.3:
Таблица № 5.3
Вид затрат | Затраты (руб.) |
Основная и дополнительная зарплата | 23419 |
Отчисления на социальные нужды | 6088,94 |
Оплата машинного времени | 480.38 |
Стоимость инструментальных средств | 856.22 |
Итого | 30903,94 |
5.4 Стоимость внедрения ПО Заказчиком
К единовременным затратам пользователя программного обеспечения Kобщ
относятся затраты на оплату:
· программного обеспечения Цпо
;
· инструментальных средств Цис
;
· ЭВМ, прочих аппаратных средств и сетевого оборудования Кэвм
;
· обучение персонала Косв
.
Стоимость программного обеспечения.
В этом случае стоимость равна себестоимости плюс прибыль разработчика (на практике обычно составляет 20-30% от себестоимости), а также налог на добавленную стоимость 20%. Для расчета можно использовать следующую формулу , где - себестоимость ПО, - прибыль разработчика, - налог на добавленную стоимость. Для заказчика нет необходимости приобретать программное обеспечение, так как работа построена практически вся на программном обеспечении заказчика (рабочее место сотрудника с необходимым ПО).
Прибыль разработчика составляет 6180,78 рублей
Стоимость инструментальных средств, необходимых для функционирования системы. В их состав обычно входят операционные системы, а также прикладное программное обеспечение. На предприятии заказчика уже установлены и используются все необходимые инструментальные средства. Поэтому при внедрении не предусматривается расходов по данным статьям.
Стоимость технического обеспечения требуемого для развертывания Системы. Так как опять же в организации установлено все необходимое техническое обеспечение и при внедрении не требуется никакого дополнительного оборудования, то расходы по данной статье не предусматриваются.
Стоимость обучения персонала организации. Расчет производится по следующей формуле: , где - численность персонала на обучение, - стоимость обучения одного человека в день, - время обучения. Предполагается, что в организации системой будет пользоваться 1 сотрудник. Время необходимое для обучения предположительно оценивается в два рабочих. Стоимость обучения одного человека в день 200 рублей. Итого получается затраты на обучение персонала 400 рублей.
Суммарные затраты для заказчика представлены в таблице 5.4.
Таблица 5.4
Вид затрат | Затраты (руб.) |
Прибыль разработчика | 6180,78 |
Обучение персонала | 400 |
Итого | 6580,78 |
Суммарные затраты для заказчика и разработчика, представлены в таблице 5.5.
Таблица 5.5
Вид затрат | Затраты (руб.) |
Затраты заказчика | 6580,78 |
Затраты разработчика | 30903,94 |
Итого | 37484,72 |
Распределение инвестиций по времени реализации проекта осуществляется на основе предварительных расчётов времени необходимого для разработки ПО по отдельным стадиям проектирования (таблица 3.7), затрат на разработку и общей суммы единовременных капитальных вложений.
Таблица 5.6
Этапы реализации | 1 | 2 | 3 | 4 |
Создание общей картины рения | 5 | |||
Планирование | 13 | |||
Реализация | 2 | 20 | 8 | |
Стабилизация и внедрение | 5 |
Результаты расчетов оформлены в виде инвестиционного плана
Таблица 5.7
Этапы реализации | 1 | 2 | 3 | 4 |
Создание общей картины рения | 3536,29 | |||
Планирование | 9194,37 | |||
Реализация | 1414,52 | 14145,18 | 5658,07 | |
Стабилизация и внедрение | 3536,29 | |||
Итого | 14145,18 | 14145,18 | 5658,07 | 3536,29 |
5.5 Эффективность внедрения для Заказчика
Оценим эффективность от внедрения продукта с точки зрения сокращения материальных издержек. До внедрения продукта практически вся работа по проведению анкетирования проводилась вручную с использование бумажных носителей.
В соответствии с планом графиком предоставления маркетинговой отчетности проведение анкетирования ведется по 15-ти видам анкет, которые в свою очередь состоят примерно из двух листов. Получается, что единовременно затрачивается 30 листов бумаги. По данным прошлого года было распечатано около 6500 анкет, из которых заполнено было 4350 анкет.
Таким образом, получаем, что было затрачено 2*6500=13000 листов бумаги. Так как пачка бумаги состоит из 500 листов, то получается, что на проведение анкетирования в прошлом году было потрачено 26 пачки бумаги. Стоимость одной пачки бумаги составляет 120 рублей. В результате получаем:
26*120 = 3120 рулей необходимо только на бумажные ресурсы
Также в затраты на тиражирование анкет входит стоимость печати, тиражирование анкет происходит на ксероксе, и она включает в себя стоимость использования ксерокса, а также затраты на краску. Один картридж стоит 1700 рулей, ресурса которого хватает на 2500 листов, получается, что необходимо использовать около 3 картриджей. В итоге получаем, что затраты на краску составляют: 3*1700 = 4420 рублей
Также необходимо учесть затраты сотрудника проводящего маркетинговое исследование. Так как Москва присылает шаблоны анкет, то их необходимо доработать для дальнейшего тиражирования. На редактирование 15-ти шаблонов анкет у сотрудника проводящего маркетинговое исследование уходит около 15 часов. После того как анкетирование проведено, необходимо обработать все полученные анкеты, т.е. внести данные в Exel. На данный вид работ затрачивается около 240 часов в год. На составление отчета по одному виду анкеты уходит один рабочий день, что в итоге составляет 120 часов на все виды анкет. В итоге получаем, что сотрудник затрачивает 375 часов (45,85 рабочих дней) в год на проведение маркетингового исследования посредством анкетирования. Оклад работника составляет 5394 рубля.
Общая сумма затрат на проведение анкетирования составляет 20182 рубля.
Так как данный программный продукт подразумевает автоматизацию процесса создания анкет, которые будут храниться в электронном виде, а также непосредственное прохождение анкетирования, используя компьютер и возможность составления отчетов, то данные затраты составляют экономический эффект.
Затратив на внедрение модуля 37484,72 рубля и экономя в год 20182 рублей, получим, что период окупаемости составит:
37484,72/20182 = 1 год и 8 месяцев.
5.6 Правовые аспекты
Легальность инструментария
При разработке Системы строго соблюдались все условия лицензионных соглашений продуктов Microsoft и сопутствующих компонентов. Затраты на коммерческое использование инструментов разработчика были посчитаны выше.
Лицензионное соглашение
Понятие лицензионного соглашения пришло с Запада. Enduserlicenseagreement (EULA) – документ как правило существующий в электронной форме, подписание которого является необходимым условием использования программы на ЭВМ. EULA разработанной системы содержит следующие пункты:
· общие положения
· авторские права на программу
· права на распространение программы
· защита ответственности разработчика (принцип "как есть")
· защита целостности и тиражирования (копирование, дизассемблирование, декомпилирование и т.п.)
Защита авторских прав
При создании Системы разработчик руководствовался Федеральным Законом РФ от 23 сентября 1992 г. N 3523-I (в ред. Федерального закона от 24.12.2002 N 177-ФЗ) "О правовой охране программ для электронных вычислительных машин и баз данных". Статья 4 Закона содержит описание условий признания авторского права. Согласно статье, «для признания и осуществления авторского права на программу для ЭВМ или базу данных не требуется депонирования, регистрации или соблюдения иных формальностей. Правообладатель для оповещения о своих правах может, начиная с первого выпуска в свет программы для ЭВМ или базы данных, использовать знак охраны авторского права, состоящий из трех элементов:
буквы С в окружности или в круглых скобках;
наименования (имени) правообладателя;
года первого выпуска программы для ЭВМ или базы данных в свет.»
Таким образом, в окне «О программе…» появилась следующая запись:
«Copyright ©, БФ МЭСИ, 2006г.»
Выводы по главе
Проанализировав все вышеуказанные показатели можно сказать о том, что проект является экономически эффективным.
В ходе вычислений были получены результаты:
· Рассчитаны затраты на разработку – 37484,72 рублей;
· Рассчитан экономический эффект от внедрения - 20182 рублей;
· Срок окупаемости проекта составляет 1 год и 8 месяцев.
Заключение
При выполнении дипломной работы мной была спроектирована и разработана автоматизированная система проведения маркетинговых исследований и произведен расчет экономических показателей внедрения системы для заказчика.
Перед разработчиком ставилась цель - создать решение, позволяющее автоматизировать процесс проведения маркетингового исследования посредством анкетирования, что в свою очередь поможет снизить издержки и существенно облегчить работу отдела маркетинга.
В ходе реализации данного проекта я получил и закрепил теоретические и практические навыки в области определения требований заказчика, исследования предметной области и объектно-ориентированного подхода к разработке ПО. Я познакомился с признанной мировой методологией MSF, и вся работа была проделана согласно данной методологии.
На стадии создания общей картины принятия решения были определены бизнес требования и проектные цели, а также область действия проекта, т.е. определены те задачи, которые необходимо автоматизировать для достижения поставленной цели.
На стадии планирования были более детально изучены бизнес процессы отдела маркетинга и в результате чего были построены диаграммы AS-IS и диаграммы вариантов использования системы. В результате исследования диаграмм UseCase были определены модули системы. Также были выделены сущности и построена логическая модель данных, представленная в виде диаграммы “сущность-связь”.
На стадии физического проектирования были выделены классы системы и спроектирована физическая модель базы данных.
На стадии реализациивкачестве средства разработки было принято решение использовать MicrosoftVisualStudio.NET, с помощью которого были разработаны модули системы.
В последней главе описана экономическая часть диплома, в которой была рассчитана экономическую эффективность и актуальность разработанного проекта.
Список использованной литературы
1. Федеральный Закон РФ от 23.09.1992 г. № 3523-I (в редакции от 24.12.2002 № 177-ФЗ) О правовой охране программ для электронных вычислительных машин и баз данных.
2. Положение о маркетинговой деятельности региональных структур
3. Анализ требований и создание архитектуры решений на основе Microsoft .NET. Учебный курс MCSD/Пер. с англ. -- М.: Издательско-торговый дом «Русская Редакция», 2004.— 416 стр.
4. Беляевский И.К. Маркетинговое исследование: информация, анализ, прогноз: Учебное пособие. – М.: Финансы и статистика, 2001
5. Буч Г. Рамбо. Д. Джекобсон А. Язык UML. Руководство пользователя: Пер. с англ. ДМК, 2000. - 432 с.
6. Вилдермьюс, Шон. Практическое использование ADO.NET. Доступ к данным в Internet. : Пер. с англ. — М. : издательский дом "Вильяме", 2003. — 288 с.
7. Котлер Ф. Основы маркетинга / Пер. с англ. – М., Прогресс, 1999
8. Проектирование экономических информационных систем: Учебник/Г.Н.Смирнова, А.А.Сорокин, Ю.Ф.Тельнов. – М: Финансы и статистика, 2003. – 512стр.
9. Разработка Web- приложений на Microsoft Visual Basic .NET и Microsoft Visual C# .NET. Учебный курс MCAD/MCSD/Пер. с англ. — М.: Издательско-торговый дом «Русская Редакция», 2003. — 704стр.:
10. Сеппа Д. Microsoft ADO.NET/Пер. с англ. — М.: Издательско-торговый дом «Русская Редакция», 2003- — 640 стр.
11. Теория и практика построения баз данных: Д. Крёнке. – Питер, 2003. – 800стр.
12. Royce, Winston W., "Managing the Development of Large Software Systems," Proceedings of IEEE Wescon (August 1970): pp 1-9
13. Barry Boehm, "A Spiral Model of Software Development and Enhancement", IEEE Computer, Vol.21, No. 5 (May 1988): pp 61-72
14. Аналитическая информация http://www.citforum.ru/
15. Документы по MSF на русском языке http://www.microsoft.com/rus/msf
16. Маркетинговые исследования http://4p.net.ua/content/blogcategory/3/35/
17. МаркетПРО. Маркетинговые исследования в России и за рубежом. http://www.marketpro.spb.ru
18. Официальный сайт Microsoft Россия http://www.microsoft.com/rus/
19. Статьи и аналитические материалы по рынку КИС http://erp.mctlab.ru/
Приложени
е 1