База данных Рекламного агентства


Введение

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

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

В любом случае основной задачей  информационной системы является удовлетворение конкретных информационных потребностей в рамках конкретной предметной области. Современные ИС буквально немыслимы без использования баз данных и СУБД, поэтому термин «информационная система» на практике сливается по смыслу с термином «система баз данных».

Тема курсовой работы проектирование информационной системы для Рекламного агентства. Количество Рекламных Агентств по России (на сегодняшний день) исчисляется десятками тысяч. Это и крупные международные сетевые рекламные агентства, и мелкие рекламные агентства, состоящие из 2-3 сотрудников. Словом все те, чей вид деятельности так или иначе связан с рекламной.

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

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

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

 

 

Для достижения цели следует выполнить следующие задачи:

  1. Выбор CASE-средства для моделирования информационной системы.
  2. Разработать диаграммe вариантов использования.
  3. Провести анализ предметной области. Для этого нужно рассмотреть структуру всей организации, установить конкретные задачи, выполняемые каждым сотрудником;
  4. Выделить основные информационные потоки и сущности процесса осуществления коммерческой деятельности;
  5. построить модель информационной системы на основе полученных данных с использованием унифицированного языка моделирования UML;
  6. сгенерировать программный код для будущей информационной системы на языке C++.

Объект исследования – автоматизация Рекламного агенства

Предмет исследования – возможности моделирования информационных систем с помощью языка UML в среде Rational Rose.

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

1 Анализ предметной области

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

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

Как правило, первый контакт с клиентом устанавливает сотрудник рекламного агентства, ответственный за прием клиентов и работу с ними, его называют координатор.

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

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

 Это подразделение рекламного  агентства придумывает рекламный  сюжет, готовит текст и необходимые  иллюстрации.  Главой этого подразделения является главный дизайнер.

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

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

Сотрудники рекламного агентства  должны помочь клиенту:

    1. выбрать оптимальный вид распространения рекламы;
    2. забронировать эфирное время или печатную площадь для рекламного объявления.

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

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

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

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

Еще одним шагом в  разработке рекламной компании является составление и подписание договора. Для этого необходимо обсудить с координатором рекламного агентства определенные моменты соглашения:

    1. необходимые виды услуг;

    1. смета расходов на рекламу;

    1. дополнительные виды услуг;

    1. авторские права на рекламную продукцию;

    1. график взаимодействия с сотрудниками агентства;

    1. рамки консультационного обслуживания со стороны агентства;

    1. срок действия соглашения с рекламным агентством;

    1. условия расторжения соглашения с рекламным агентством.

 Это далеко не все вопросы, которые клиент мог бы обсудить с координатором рекламного агентства.

 Далее идет обсуждение, внесение поправок и изучение данного документа и соответственно его подписание, если был достигнут компромисс.

1.2 Структура предприятия

Рассмотрим общую структуру  управленческого аппарата Биржи  труда. На рисунке 1 представлена схема организационной структуры организации "Шанс", работа которой рассмотрена в данном курсовом проекте. Организация состоит из следующих элементов:

    1. Директор;
    2. Бухгалтерия;
    3. Дизайнерская группа;
    4. Координатор;
    5. Отдел по работе с клиентами;
    6. Производственный отдел.

 

Рисунок 1 - Схема организационной  структуры рекламного агентства

 

Функции и должностные обязанности:

Бухгалтерия - готовят все необходимые для оплаты счета, включая оплату услуг использованного канала распространения рекламы предприятия

Дизайнерская группа - придумывает рекламный сюжет, готовит текст и необходимые иллюстрации. Главой  этого подразделения является главный дизайнер.

Координатор – ответственный за прием клиентов и работу с ними.

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

           На рисунке 2 представлена схема основных информационных потоков в Рекламном агентстве.

1.3 Информационные потоки организации

 

Рисунок 2 - Схема информационных потоков

 

Описание информационных потоков:

1) Параметры рекламной компании, которые указывает клиент;

2) Задание дизайнеру, выдается координатором;

3) Проект на рекламную компанию, составляет дизайнер который выбирает наиболее оптимальный вид размещения, после проведения анализа продукции;

4) Расчет стоимости рекламной  компании, выполняется бухгалтерией по запросу координатора;

5) подписание и выполнение договора, выполняется после обсуждения проекта рекламной компании;

6) предоставление отчета о проделанной работе.

2 Выбор средства моделирования

CASE (англ. Computer-Aided Software Engineering) — набор инструментов и методов программной инженерии для проектирования программного обеспечения, который помогает обеспечить высокое качество программ, отсутствие ошибок и простоту в обслуживании программных продуктов.

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

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

Типичными CASE инструментами являются:

    1. инструменты управления конфигурацией;
    2. инструменты моделирования данных;
    3. инструменты анализа и проектирования;
    4. инструменты преобразования моделей;
    5. инструменты редактирования программного кода;
    6. инструменты рефакторинга кода;
    7. генераторы кода;
    8. инструменты для построения UML-диаграмм.

Примерами  CASE программ являются:

    1. umbrello — среда UML-моделирования. Это приложение является свободным программным обеспечением, предназначенным для построения UML диаграмм на платформе Unix;
    2. комплект программ Rational Software компании IBM;
    3. power Designer компании Sybase;
    4. oracle Designer компании Oracle;
    5. ERwin компании CA Technologies.

Rational Rose в отличие от подобных  средств проектирования способна  проектировать системы любой  сложности, то есть инструментарий  программы допускает как высокоуровневое  (абстрактное) представление (например, схема автоматизации предприятия), так и низкоуровневое проектирование (интерфейс программы, схема базы данных, частичное описание классов). Вся мощь программы базируется всего на 7 диаграммах, которые в зависимости от ситуации способны описывать различные действия. Именно по этому из всех  выше перечисленных инструментов предпочтение было отддано именно Rational Rose. Ко всему прочему нужно добавить, что Rational Rose, являясь объектно-ориентированым средством проектирования, способна моделировать ситуации любой сложности: от проектирования банковской системы до разработки кода на С++, что необходимо при данном моделировании.

 

Rose базируется на UML (Universal Modeling Language) - универсальном языке моделирования,  который был разработан компанией Rational именно с целью создания наиболее оптимального и универсального языка для описания как предметной области, так и конкретной задачи в программировании. Любая задача программируется при помощи определенных диаграмм. UML поддерживает построение следующих диаграмм:

    1. Activity diagram (диаграммы описаний технологий, процессов, функций);
    2. Use case diagram (диаграммы функций);
    3. Class diagram (диаграммы классов);
    4. State diagram (диаграммы состояний);
    5. Sequence diagram (диаграммы последовательностей действий);
    6. Collaboration diagram (диаграммы взаимодействий
    7. Component diagram (диаграммы компонент);
    8. Deployment diagram (диаграммы топологии).

Соответственно, Rational Rose является инструментом, который позволяет строить указанные  диаграммы при проектировании программных систем.

3 Проектирование информационной  системы

3.1 Логическое представление информационной  системы

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

- определить общие границы и контекст моделируемой предметной области;

- сформулировать общие требования к функциональному поведению проектируемой системы;

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

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

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

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

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

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

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

 

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

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

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

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

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

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

В языке UML существует несколько стандартных видов отношений между актерами и вариантами использования:

ассоциации (association relationship);

расширения (extend relationship);

общения (generalization relationship);

включения (include relationship).

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

 

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

Отношение расширения между вариантами использования обозначается пунктирной линией со стрелкой (вариант отношения зависимости), направленной от того варианта использования, который является расширением для исходного варианта использования. Данная линия со стрелкой помечается ключевым словом «extend» (расширяет).

Отношение расширения отмечает тот факт, что один из вариантов использования может присоединять к своему поведению некоторое дополнительное поведение, определенное для другого варианта использования. Данное отношение включает в себя некоторое условие и ссылки на точки расширения в базовом варианте использования. Чтобы расширение имело место, должно быть выполнено определенное условие данного отношения. Ссылки на точки расширения определяют те места в базовом варианте использования, в которые должно быть помещено соответствующее расширение при выполнении условия.

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

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

 

 

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

Отношение включения, направленное от варианта использования А к варианту использования В, указывает, что каждый экземпляр варианта А включает в себя функциональные свойства, заданные для варианта В. Эти свойства специализируют поведение соответствующего варианта А на данной диаграмме. Графически данное отношение обозначается пунктирной линией со стрелкой, которая помечается ключевым словом «include» (включает).

На рисунке 3 представлена диаграмма  вариантов для нашей системы.

Рисунок 3 - диаграмма вариантов  использования.

Здесь мы выделили двух актеров, активно взаимодействующих с информационной системой: клиент и координатор.

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

Далее координатор  начинает выполнение заказа.

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

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

3.2 Динамическое представление

3.2.1 Диаграмма последовательности

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

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

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

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

Вторым  измерением диаграммы последовательности является вертикальная временная ось, направленная сверху вниз. Начальному моменту времени соответствует  самая верхняя часть диаграммы. Взаимодействия объектов реализуются  посредством сообщений, которые посылаются одними объектами другим. Сообщения изображаются в виде горизонтальных стрелок с именем сообщения, а их порядок определяется временем возникновения. То есть, сообщения, расположенные на диаграмме последовательности выше, инициируются раньше тех, которые расположены ниже. Масштаб на оси времени не указывается, поскольку диаграмма последовательности моделирует лишь временную упорядоченность взаимодействий типа «раньше-позже».

Линия жизни  объекта (object lifeline) изображается пунктирной вертикальной линией, ассоциированной с единственным объектом на диаграмме последовательности. Линия жизни служит для обозначения периода времени, в течение которого объект существует в системе и, следовательно, может потенциально участвовать во всех ее взаимодействиях. Если объект существует в системе постоянно, то и его линия жизни должна продолжаться по всей плоскости диаграммы последовательности от самой верхней ее части до самой нижней.

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

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

База данных Рекламного агентства