Разработка программного обеспечения "Трудоустройство"

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

Рубрика Программирование, компьютеры и кибернетика
Вид контрольная работа
Язык русский
Дата добавления 11.03.2013
Размер файла 2,5 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

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

по дисциплине

Технология разработки программного обеспечения

на тему:

Разработка программного обеспечения “Трудоустройство”

Выполнил: Мусабаев Эмиль

1. Цель разработки ПО

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

2. Стадия формирования требований к ПО

2.1 Функциональные требования

программный обеспечение архитектура

Описание предметной области

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

Функции по регистрации поступивших заявок от работодателей и безработных, по подбору персонала и вакансий возложены на сотрудников «Отдела по подбору персонала». Анализ и прогнозирование выполняют сотрудники «Аналитического отдела».

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

Анализ и прогнозирование производится по следующим статистическим данным:

1. данные об обратившихся безработных, с указанием специальностей для подбора работы;

2. данные об обратившихся работодателях, с указанием вакансий для подбора персонала;

3. зарегистрированные трудовые отношения между работодателем и безработным.

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

1. регистрация заявок безработных;

2. регистрация заявок работодателей;

3. подбор персонала по заданным критериям;

4. подбор работы для безработных по заданным критериям;

5. анализ текущего состояния рынка труда;

6. краткосрочный прогноз состояния рынка труда, на основе выполненного анализа.

2.2 Выполнение структурного анализа деятельности (модель AS - IS)

В целях реорганизации какого-либо процесса сначала строится функциональная модель существующей организации работы - «AS-IS» (как есть). На основе модели «AS-IS» достигается консенсус между различными единицами бизнеса по тому, «кто что сделал», и что каждая единица бизнеса добавляет в процесс. Модель «AS-IS» позволяет выяснить «что мы делаем сегодня» перед тем, как перепрыгнуть на то, «что мы будем делать завтра». Анализ функциональной модели позволяет понять, где находятся наиболее слабые места, в чем будут состоять преимущества новых бизнес-процессов, и насколько глубоким изменениям подвергнется существующая структура организации бизнеса. Детализация бизнес-процессов позволяет выявить недостатки организации даже там, где функциональность на первый взгляд кажется очевидной. Признаком неэффективной деятельности могут быть бесполезные, неуправляемые и дублирующиеся работы, неэффективный документооборот (нужный документ не оказывается в нужном месте в нужное время), отсутствие обратных связей по управлению (на проведение работы не оказывает влияние ее результат) и входу (объекты или информация используются нерационально) и т.д. Найденные в модели «AS-IS» недостатки можно исправить при создании модели «TO-BE» (как будет) - модели новой организации бизнес-процессов. Модель «TO-BE» нужна для анализа альтернативных/лучших путей выполнения работы и документирования того, как компания будет делать бизнес в будущем. Как правило, строятся несколько моделей «TO-BE», из которых по какому-либо критерию выбирается наилучшая.

Построение начальной контекстной диаграммы DFD или IDF0, полной контекстной диаграммы DFD или IDF0 с детализацией, выполненной в BPWIN

Инструментальное средство моделирования BPwin отражает функциональные особенности рассматриваемой предметной области. BPwin позволяет рассматривать проектирование ПО с точки зрения структурного подхода. Данное средство имеет интуитивно-понятный графический интерфейс, который быстро и легко осваивается, что позволяет сосредоточиться на анализе самой предметной области, не отвлекаясь на изучение инструментальных средств. BPwin поддерживает синтаксис IDEF0, IDEF3 и DFD. Среда BPwin позволяет строить схемы процессов, на которых отображены исходные данные, результаты операций, ресурсы, механизмы и управляющие воздействия, необходимые для их выполнения. На схемах наглядно показываются связи между отдельными операциями. Причем BPwin отслеживает и не допускает появление некорректных связей, гарантируя тем самым непротиворечивость отношений между объектами при моделировании. Имеется возможность интеграции и связи со средством проектирования баз данных Erwin. Модели, построенные в среде BPwin, могут быть использованы для проведения показов и презентаций.

Общий состав функциональной модели, построенной в среде BPwin:

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

2) Взаимодействие работы с внешним миром и между собой описывается в виде стрелок (Arrow). Стрелки служат для обозначения некоторого носителя или воздействия, которое обеспечивает перенос данных или объекта от одной деятельности к другой. Существует несколько видов стрелок:

· Вход (input) - материал или информация, который используется или преобразуется работой.

· Управление (control) - правила, стратегии, процедуры или стандарты, которыми руководствуется работа.

· Выход (output) - материал или информация, которая производится работой.

· Механизм (mechanism) - ресурсы, которые выполняют работу (персонал, автоматическая система и т.д.).

Рассмотрим поэтапно моделирование электронного телефонного справочника.

Диаграммы IDEF0
Метод IDEF0 (Icam DEFinition) применяют на ранних стадиях выполнения проекта при исследовании прикладной области, когда требуется выявить и понять сущность функционирования данной области. Затем, на основе моделей IDEF0, развивается дальнейшее моделирование системы методами IDEF3, DFD и др.
IDEF0 - моделирование всегда начинается с представления системы как единого целого - одного функционального блока с интерфейсными дугами, простирающимися за пределы рассматриваемой области. Такая диаграмма с одним функциональным блоком называется контекстной диаграммой.
На рисунке 1 изображен основной бизнес-процесс рассматриваемой системы.
Рис. 1. Контекстная диаграмма «Трудоустройство»
Данная диаграмма описывает главный процесс по трудоустройству. На диаграмме видно кто является участниками системы, на основе каких документов проводятся работы, входные и выходные данные.
Для дальнейшего понимания предметной области проведем декомпозицию главного процесса (рис. 2).
Рис. 2. Декомпозиция основного процесса «Трудоустройство»
Рис. 3. Декомпозиция процесса «Поиск вариантов кандидатур»
Рис. 4. Декомпозиция процесса «Анализ и прогнозирование состояния рынка труда»
Диаграмма DFD
Диаграммы потоков данных (Data Flow Diagrams - DFD) моделируют систему как набор процессов (действий), соединенных друг с другом посредством передачи потоков данных. Диаграммы потоков данных содержат:
- хранилища данных - объекты, собирающие и хранящие информацию;
- внешние сущности - объекты, моделирующие взаимодействие с теми частями системы (или другими системами), которые выходят за границы моделирования.
В отличие от стрелок в IDEF0, которые иллюстрируют отношения, стрелки в DFD показывают, как объекты (включая и данные) реально перемещаются от одного действия к другому. Это представление потока обеспечивает отражение в DFD-моделях таких физических характеристик системы, как движение объектов (потоки данных), хранение объектов (хранилища данных), источники и потребители объектов (внешние сущности).
Модели DFD можно использовать как дополнение к моделям IDEF0 для более наглядного отображения текущих операций обработки информации, документооборота в системах.
На рис. 5 приведена DFD-модель нашей системы.
Рис. 5. DFD-диаграмма «Трудоустройство»
На данной диаграмме показаны внешние сущности, потоки данных и сам процесс трудоустройства. Внешней сущностью являются работодатель и безработный.
Рис. 6 - декомпозиция основного процесса трудоустройства

Построение концептуальной модели данных, используемых в организации в виде ERD (диаграмма «сущность-связь»)

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

Наиболее распространенным средством моделирования данных является диаграмма «сущность - связь» (Entity Relationship Diagram - ERD). Базовыми понятиями ERD являются:

· Сущность (Entity) - реальный или воображаемый объект, имеющий существенное значение для рассматриваемой предметной области. Каждая сущность должна обладать следующими свойствами:

- уникальное имя (идентификатор);

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

· Связь (Relationship) - ассоциация между сущностями, при которой каждый экземпляр одной сущности ассоциирован с произвольным, в том числе нулевым, количеством экземпляров второй сущности.

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

С точки зрения физической модели данных (БД) сущности соответствует таблица, экземпляру сущности - строка в таблице, атрибуту - колонка (поле) таблицы.

ERwin имеет 2 уровня представления данных:

· Логический уровень - это абстрактный взгляд на данные, то есть, как данные выглядят в реальном мире. Логический уровень никак не связан с конкретной реализацией СУБД.

· Физический уровень зависит от конкретной СУБД. Одной и той же логической модели могут соответствовать несколько физических моделей.

На рис.7 представлена логическая модель базы данных для телефонного справочника.

Рис.7. Логическая модель «Трудоустройство» (ERD-диаграмма)

2.3 Нефункциональные требования

Требуемые ресурсы

Данное ПО не предъявляет особых требований к ресурсам:

· операционная система семейства Windows (не ниже Windows 98);

· свободный объем на диске около 100 МБ.

3. Стадия проектирования

3.1 Построение архитектуры системы

Рассмотрим архитектуру системы с точки зрения объектно-ориентированного подхода.

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

В настоящее время для объектно-ориентированного моделирования проблемной области широко используется язык моделирования UML (Unified Modeling Language).

Система объектно-ориентированных моделей в соответствии с нотациями UML включает в себя следующие диаграммы:

1. диаграммы вариантов использования (Use Case Diagrams) - для моделирования бизнес - процессов организации (требований к системе);

2. диаграммы классов (Class Diagram)- для моделирования статической структуры классов системы и связи между ними;

3. диаграммы поведения:

3.1. диаграммы состояний (Statechart Diagrams) - для моделирования поведения объектов системы при переходе из одного состояния в другое;

3.2. диаграммы деятельности (Activity Diagrams) - для моделирования поведения системы в рамках различных вариантов использования (отображают потоки работ во взаимосвязанных прецедентах использования);

3.3. диаграммы взаимодействия (Interaction Diagrams) - для моделирования процесса обмена сообщениями между объектами. Существуют два вида диаграмм взаимодействия:

3.3.1. диаграммы последовательности (Sequence Diagrams) -последовательность сообщений;

3.3.2. кооперативные диаграммы (Collaboration Diagrams) - пространственное расположение объектов, чтобы показать их статическое взаимодействие;

4. диаграммы реализации (Implementation Diagrams):

4.1. диаграммы компонентов (Component Diagrams) - для моделирования иерархии компонентов (подсистем) системы (отображаются физические модули программного кода);

4.2. диаграммы размещения или развертывания (Deployment Diagrams) - для моделирования физической архитектуры системы (отображает распределение объектов по узлам вычислительной сети).

Диаграмма вариантов использования (UML Use Case)

На рис.8 показана диаграмма вариантов использования (Use Case).

На данной диаграмме показаны следующие варианты использований:

- Регистрация заявок;

- Подбор подходящего варианта;

- Предложение вариантов кандидатур;

- Регистрация трудовых соглашений;

- Анализ и прогнозирование безработицы.

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

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

Границы системы обозначаются с помощью простого прямоугольника.

Рис.8. Диаграмма вариантов использования (Use Case).

Диаграмма классов (UML Static Structure)

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

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

· концептуальный аспект - диаграммы классов отображают понятия изучаемой предметной области (моделируемой организации). Концептуальную модель можно рассматривать как не зависимую от средств реализации (языка программирования);

· аспект спецификации - модель спускается на уровень ПО, но рассматриваются только интерфейсы, а не программная реализация классов (под интерфейсом здесь понимается набор операций класса, видимых извне);

· аспект реализации - модель действительно определяет реализацию классов ПО. Этот аспект наиболее важен для программистов.

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

Рис.9. Диаграмма классов (Static Structure).

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

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

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

· + обозначает атрибут с областью видимости типа общедоступный (public). Атрибут с этой областью видимости доступен или виден из любого другого класса пакета, в котором определена диаграмма.

· # обозначает атрибут с областью видимости типа защищенный (protected). Атрибут с этой областью видимости недоступен или невиден для всех классов, за исключением подклассов данного класса.

· - обозначает атрибут с областью видимости типа закрытый (private). Атрибут с этой областью видимости недоступен или невиден для всех классов без исключения.

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

Диаграмма взаимодействия (UML Sequence)

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

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

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

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

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

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

Диаграмма взаимодействия показана на рис.10. Здесь:

- объект Сотрудник отдела по подбору персонала является экземпляром актера Сотрудник отдела по подбору персонала диаграммы Use Case;

- объект Системы по трудоустройству является экземпляром класса Работодатель или Безработный (в зависимости от критерия поиска) диаграммы Static Structure.

Рис.10. Диаграмма взаимодействия (Sequence).

Диаграмма деятельности (UML Activity)

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

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

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

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

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

Если из состояния действий выходит единственный переход, то он может быть никак не помечен. Если же таких переходов несколько, то сработать может только один из них. Именно в этом случае для каждого из таких переходов должно быть записано сторожевое условие в прямых скобках. При этом для всех выходящих из некоторого состояния переходов должно выполняться требование истинности только одного из них. Подобный случай встречается тогда, когда последовательно выполняемая деятельность должна разделиться на альтернативные ветви в зависимости от значения некоторого промежуточного результата. Такая ситуация получила название ветвления, а для ее обозначения применяется специальный символ - ромб. Диаграмма деятельности показана на рис.11. На данной диаграмме описывается порядок деятельности при подборе персонала или вакансии.

Рис.11. Диаграмма деятельности (Activity).

На рис.12 описывается порядок деятельности при анализе и прогнозированиии.

Рис.12. Диаграмма деятельности (Activity).

Заключение

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

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

Основываясь на полученных данных, мы провели структурный анализ деятельности. Структурный анализ осуществлялся с помощью двух инструментальных средств: BPwin и ERwin. Были построены и декомпозированы диаграммы IDEF0 (BPwin) для моделирования бизнес-процессов системы и диаграммы DFD (BPwin) для определения потоков передачи данных между процессами.

Затем была построена модель данных в виде диаграммы «сущность-связь» или ERD (ERwin). Данная диаграмма подготовила логическую модель данных для ее дальнейшей физической реализации.

Мы построили архитектуру ПО, исходя из объектно-ориентированной модели проектирования ПО. Мы осуществляли проектирование с помощью UML. В ходе проектирования были построены следующие UML диаграммы: Диаграмма вариантов использования (Use Case), Диаграмма классов (Static Structure), Диаграмма взаимодействия (Sequence), Диаграмма деятельности (Activity).

Размещено на Allbest.ru

...

Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.