- •I. Специальная часть работы Введение
- •1. Исследование предметной области моделирования процессов.
- •2. Постановка задачи
- •3. Описание архитектуры системы StarUml
- •3.2 Архитектура платформы
- •4. Исследование технологий моделирования процессов и бизнес моделирования.
- •5. Обоснование выбора субд.
- •5.1 Современные субд.
- •5.2 Выбор субд.
- •6. Обоснование выбора языка программирования JavaScript.
- •6.1 Языки программирования.
- •6.2 Выбор языка программирования.
- •II. Конструкторско-технологическая часть работы. Обоснование выбора объектно-ориентированного подхода для реализации модуля.
- •III. Решение задач на эвм
- •1.Разработка алгоритма решения задачи в системе StarUml.
- •2.Кодирование с использованием среды разработки Net Beans и языка программирования JavaScript.
- •1.1 Общая структура аддина.
- •1.2 Структура файла описания модуля.
- •3.Отладка программы.
- •IV. Экономическая часть. Резюме.
- •1. Описание функций автоматизированной системы.
- •2. Возможный рынок сбыта автоматизированной системы.
- •3. Сведения о предприятии разработчике автоматизированной системы
- •Состав группы разработчиков
- •4. Календарный план-график работы над программой Календарный план работ
- •5. Жизненный цикл программы
- •6. Оценка конкурентоспособности продукта (сравнение разработанной системы с другими аналогичными продуктами).
- •7. Калькуляция
- •8. Оценка экономической эффективности применения программы
- •9. Расчет цены программы
- •Заключение
- •III. Охрана труда.
- •1. Охрана труда на рабочем месте программиста.
- •1.1 Описание рабочего места программиста
- •1.2 Освещенность рабочего места
- •1.3 Параметры микроклимата на рабочем месте.
- •1.4 Нормирование шума.
- •1.5 Вентиляция
2. Постановка задачи
Исходя из потребностей пользователей системы StarUML, сформулирована задача для дипломной работы.
Создать программный модуль для системы StarUML с целью расширения функциональных возможностей исходной программы. Задача модуля – генерация SQL кода на основе данных UML диаграмм. Для выполнения поставлено задачи будет использован расширяемый язык разметки XML и объектно-ориентированный скриптовый язык программирования JavaScript.
3. Описание архитектуры системы StarUml
3.1 StarUML
StarUML - программная платформа моделирования, которая поддерживает UML. Она основана на версии UML 1.4 и поддерживает нотацию UML версии 2.0 и одиннадцать различных типов диаграмм. Она активно поддерживает подход MDA (Архитектура Управляемая Моделью) и концепцию профилей UML. StarUML превосходен в отношении настройки окружения пользователя и имеет высокую степень расширяемости в том, что касается его функциональных возможностей.
StarUML обладает превосходной расширяемостью и гибкостью. Он поддерживает использование аддинов, позволяющих расширять его функциональные возможности. При их разработке предоставляется доступ ко всем функциям модели/метамодели и другому инструментарию через COM, включая расширение меню и набора опций конфигурации. Также, пользователи могут создавать свои собственные подходы и фреймворки, соответствующие специальным методологиям. StarUML может также быть интегрирован с любыми внешними инструментальными средствами.
3.2 Архитектура платформы
StarUML - расширяемая платформа моделирования программного обеспечения; она не только предоставляет готовые функции, но позволяет добавлять новые. Диаграмма, представленная ниже, иллюстрирует архитектуру StarUML. Светлым фоном показана собственно платформа, а тёмным - элементы расширения. Элементы расширения могут быть разработаны пользователем или третьими лицами, а затем интегрированы в платформу. (Рис. 4)
Рис.4 Архитектура платформы.
Подход: Подход определяет структуру проекта и основные параметры организации диаграмм.
Профиль UML и Расширение нотации: Профиль UML обеспечивает расширение набора спецификаций модели программного обеспечения через механизм расширения UML.
Модельный фреймворк: Фреймворк делает часть модели программного обеспечения многократно используемой и позволяет применять её при разработке других моделей программного обеспечения.
COM-объект расширения: COM-аддин позволяет добавлять новые функциональные возможности к StarUML.
Расширение меню: Меню приложения StarUML (главное меню и всплывающие меню) можно расширять.
Расширение опций: опции настройки StarUML могут добавляться пользователем.
Обработка событий: Различные события, возникающие в StarUML, могут быть перехвачены и обработаны.
Внешнее API: внешнее API StarUML позволяет получать извне доступ к различным функциональным возможностям и информации программы.
4. Исследование технологий моделирования процессов и бизнес моделирования.
В настоящее время в компаниях практически повсеместно внедряется моделирование структуры и бизнес-процессов, бизнес-инжиниринг, реинжинеринг бизнес-процессов. Растет интерес и к общей концепции бизнес - моделирования. Бизнес - моделирование представляет собой разработку модели деятельности организации с целью решения определенных задач. Одной из основных целей бизнес - моделирования является решение задач анализа и совершенствования организации деятельности. Например во многих странах мира до сих пор несколько человек выполняют какую – либо работу, в других же странах с этой работой справляется один человек. Это связано с более грамотной моделью распределения ресурсов. Данная ситуация, в числе прочего, в существенной мере определяется и низким уровнем применяемых производственных, и управленческих технологий, включая низкий уровень организации труда.
Основные бизнес-модели организации деятельности.
Для проведения анализа и совершенствования деятельности компании необходимо построить и начинать использовать ее бизнес-модель. Так, например, модель организационно-функциональной структуры, состоящая в свою очередь из модели организационной структуры, функциональной модели и модели распределения ответственности, позволяет провести анализ достаточности и необходимости функций, структурных звеньев, анализ распределения ответственности, выявить дублирование функций. Организационно-функциональная модель показывает деятельность компании с достаточно точно. Так например, она не показывает взаимосвязи между функциями выполняемыми в компании, а также материальные и информационные потоки. Если возникает необходимость провести более глубокий анализ деятельности организации, то целесообразно описать модель бизнес-процессов, которая является своего рода расширением организационно-функциональной модели (Рис.2).
Рис.2 Модель бизнес-процесса как расширение организационно-функциональной модели.
На Рис.3 изображен пример модели бизнес-процесса верхнего уровня, выполненной в стандарте SADT/IDEF0.
Рис.3 Пример модели бизнес-процесса.
Данная модель бизнес-процесса, в отличие от организационно-функциональной модели, показывает взаимосвязи между функциями, последовательность их выполнения, а также материальные и информационные потоки, имеющие место при функционировании организации, что в свою очередь делает возможным проведение более глубокого анализа и позволяет выявить узкие и неоптимальные участки бизнес-процесса.
Помимо организационно-функциональной и бизнес - процессной модели при моделировании бизнеса применяют и другие модели:
Модели стратегического анализа
Модели стратегии
Модели финансовой структуры
Бюджетные модели
Информационные модели
Понимается, что модели являются взаимосвязанными, и изменения производимые в одной из них порождают соответствующие изменения в остальных. В принципе моделирование бизнеса можно начинать с разработки любой из перечисленных бизнес-моделей, однако их анализ и проектирование производится в определенной последовательности (Рис.4).
Рис4.
Порядок анализа и проектирования моделей
Всё это делается для того, чтобы избежать дублирования, которое приводит к тому, что некоторые виды работ приходится фактически выполнять по 2 раза. Например одно из назначений разработанной системы – устранение дублирования трудовой деятельности при создании базы данных описанной на языке моделирования UML по данным ER – диаграмм. В большинстве предприятий малого бизнеса существует проблема нехватки квалифицированных кадров, т.к. бюджет таких компаний резко ограничен из-за небольшого спроса на их продукцию и необходимостью возвращать кредиты. В следствие этого довольно часто возникают ситуации, когда один и тот же сотрудник обязан выполнять не только свои прямые обязанности, но и дополнительную работу. Возьмём опять же пример созданной мной системы: допустим существует компания, которая занимается разработкой базы данных для мелких предприятий. У этой компании есть менеджер, бухгалтер, директор, и несколько рядовых сотрудников. Обычно труд разделяется между ними схожим образом: бухгалтер выполняет свои прямые обязанности, менеджер занимается поиском и общением с клиентами, плюс обязанности секретаря. Один из рядовых сотрудников выполняет заказ некой фирмы и моделирует на UML будущую базу данных, разработкой которой должен заниматься второй сотрудник. В результате получается, что одна и та же работа выполняется два раза: первый раз при моделировании базы данных, второй раз при её создании, т.к. создание БД – реализация описанной ранее модели. Используя же StarUML с разработанным мной модулем генерации SQL кода на основе ER – диаграмм, первый сотрудник мог бы нажатием на один пункт меню сгенерировать готовую базу данных, тем самым экономя время и некоторое количество человеко – часов, которые бы затратил второй сотрудник на создание базы данных.
