Автор работы: Пользователь скрыл имя, 10 Октября 2014 в 07:00, дипломная работа
Цель исследования состоит в изучении взаимосвязи структурного и объектно-ориентированного подходов к проектированию программного обеспечения распределенных информационных систем.
Для достижения цели определены следующие задачи исследования:
1. Проведение анализа научно-технической литературы в аспекте структуры и содержания курсов, ориентированных на изучение объектно-ориентированного и структурного программирования.
2. Изучение теоретических основ структурного и объектно-ориентированного подходов, технологии создания программного обеспечения.
Введение
1 Технологии создания программного обеспечения
1.1 Технология структурного программирования
1.2 Технология объектно-ориентированного программирования
1.3 Технология Rational Unified Process (IBM Rational Software)
1.4 Технология Oracle
1.5 Технология Borland
2 Методические основы технологий создания программного обеспечения
2.1 Визуальное моделирование
2.2 Методы структурного анализа и проектирования программного обеспечения
2.3 Методы объектно-ориентированного анализа и проектирования программного обеспечения
2.4 Методы моделирования бизнес-процессов и спецификации требований
2.5 Методы анализа и проектирования программного обеспечения
3 Структурное и объектно-ориентированное программирование в проектировании программного обеспечения распределенных информационных систем
3.1 Проектирование программного обеспечения распределенных информационных систем
3.2 Структурный подход к проектированию информационных систем
3.3 Проектирование информационных систем на основе объектно-ориентированного подхода
3.4 Сопоставление и взаимосвязь структурного и объектно-ориентированного подходов
3.5 Проблемы преподавания структурного и объектно-ориентированного программирования
Заключение
Глоссарий
Список использованных источников
Литература
Под видом деятельности конкретного исполнителя понимается единица выполняемой им работы. Вид деятельности (activity) соответствует понятию технологической операции. Он имеет четко определенную цель, обычно выражаемую в терминах получения или модификации некоторых рабочих продуктов (artifacts), таких, как модель, элемент модели, документ, исходный код или план. Каждый вид деятельности связан с конкретной ролью. Продолжительность вида деятельности составляет от нескольких часов до нескольких дней, он обычно выполняется одним исполнителем и порождает только один или весьма небольшое количество рабочих продуктов. Любой вид деятельности должен являться элементом процесса планирования. Примерами видов деятельности могут быть планирование итерации, определение вариантов использования и действующих лиц, выполнение теста на производительность. Каждый вид деятельности сопровождается набором руководств (guidelines), представляющих собой методики выполнения технологических операций.
Дисциплина (discipline) соответствует понятию технологического процесса и представляет собой последовательность действий, приводящую к получению значимого результата.
В рамках RUP определены следующие основные дисциплины:
построение бизнес-моделей;
определение требований;
анализ и проектирование;
реализация;
тестирование;
oразвертывание;
и вспомогательные:
управление конфигурацией и изменениями;
управление проектом;
создание инфраструктуры.
RUP как продукт входит в состав комплекса Rational Suite, причем каждая из перечисленных выше дисциплин поддерживается определенным инструментальным средством комплекса.
Адаптация RUP к потребностям конкретной организации или проекта обеспечивается с помощью Rational Process Workbench (RPW) - специального набора инструментов и шаблонов для настройки и публикации Web-сайтов на основе RUP. RPW поддерживает три основные функции моделирования технологических процессов:
определение процесса;
описание процесса;
представление процесса.
Библиотека элементов процесса содержит текстовую информацию о каждом элементе в модели процесса, все текстовые страницы RUP, а RPW - необходимые шаблоны для создания новых страниц описания. RPW генерирует описание процессов, включающее текст и графику, в виде Web-сайта, соединяя модели процессов и библиотеку описаний в единое целое.
Одно из основных инструментальных средств комплекса Rational Rose [9] представляет собой семейство объектно-ориентированных CASE-средств и предназначено для автоматизации процессов анализа и проектирования ПО, а также для генерации кодов на различных языках и выпуска проектной документации. Rational Rose реализует процесс объектно-ориентированного анализа и проектирования программного обеспечения, описанный в RUP. В основе работы Rational Rose лежит построение диаграмм и спецификаций UML, определяющих архитектуру системы, ее статические и динамические аспекты. В составе Rational Rose можно выделить шесть основных структурных компонентов: репозиторий, графический интерфейс пользователя, средства просмотра проекта (браузер), средства контроля проекта, средства сбора статистики и генератор документов. К ним добавляются генераторы кодов для каждого поддерживаемого языка, состав которых меняется от версии к версии.
Репозиторий представляет собой базу данных проекта. Браузер обеспечивает «навигацию» по проекту, в том числе перемещение по иерархиям классов и подсистем, переключение от одного вида диаграмм к другому и т. д. Средства контроля и сбора статистики дают возможность находить и устранять ошибки по мере развития проекта, а не после завершения его описания. Генератор отчетов формирует тексты выходных документов на основе содержащейся в репозитории информации.
Средства автоматической генерации кода, используя информацию, содержащуюся в диаграммах классов и компонентов, формируют файлы описаний классов. Создаваемый таким образом скелет программы может быть уточнен путем прямого программирования на соответствующем языке (основные языки, поддерживаемые Rational Rose - С++ и Java).
В результате разработки проекта с помощью Rational Rose формируются следующие документы:
диаграммы UML, в совокупности представляющие собой модель разрабатываемой программной системы;
спецификации классов, объектов, атрибутов и операций;
заготовки текстов программ.
Тексты программ являются заготовками для последующей работы программистов. Состав информации, включаемой в программные файлы, определяется либо по умолчанию, либо по усмотрению пользователя. В дальнейшем эти исходные тексты развиваются программистами в полноценные программы.
1.4 Технология Oracle
Методическую основу технологических средств программного обеспечения корпорации Oracle (www.oracle.com) составляет метод Oracle (Oracle Method) - комплекс методов, охватывающий большинство процессов жизненного цикла программного обеспечения. В состав комплекса входят:
CDM (Custom Development Method) - разработка прикладного программного обеспечения;
PJM (Project Management Method) - управление проектом;
AIM (Application Implementation Method) - внедрение прикладного программного обеспечения;
BPR (Business Process Reengineering) - реинжиниринг бизнес-процессов;
OCM (Organizational Change Management) - управление изменениями, и др.
Метод CDM оформлен в виде консалтингового продукта CDM Advantage - библиотеки стандартов и руководств (включающего также PJM). Он представляет собой развитие достаточно давно созданного Oracle CASE-Method, известного по использованию CASE-средств фирмы Oracle и книгам Р. Баркера. CDM является методическим руководством по разработке прикладного программного обеспечения с использованием инструментального комплекса Oracle Developer Suite, а сам процесс проектирования и разработки тесно связан с Oracle Designer и Oracle Forms.
В соответствии с CDM жизненный цикл программного обеспечения формируется из определенных этапов (фаз) проекта и процессов, каждый из которых выполняется в течение нескольких этапов (Приложение Б):
стратегия (определение требований);
анализ (формулирование детальных требований к системе);
проектирование (преобразование требований в детальные спецификации системы);
реализация (написание и тестирование приложений);
внедрение (установка новой прикладной системы, подготовка к началу эксплуатации);
эксплуатация.
На этапе стратегии определяются цели создания системы, приоритеты и ограничения, разрабатывается системная архитектура и составляется план разработки. На этапе анализа строятся модель информационных потребностей (диаграмма «сущность-связь»), диаграмма функциональной иерархии (на основе функциональной декомпозиции системы), матрица перекрестных ссылок и диаграмма потоков данных.
На этапе проектирования разрабатывается подробная архитектура системы, проектируются схема реляционной БД и программные модули, устанавливаются перекрестные ссылки между компонентами системы для анализа их взаимного влияния и контроля за изменениями.
На этапе реализации создается БД, строятся прикладные системы, производится их тестирование, проверка качества и соответствия требованиям пользователей. Создается системная документация, материалы для обучения и руководства пользователей.
На этапах внедрения и эксплуатации анализируются производительность и целостность системы, выполняется поддержка и, при необходимости, модификация системы.
Процессы CDM выполняют следующие действия:
определение бизнес-требований, или постановка задачи (Business Requirements Definition);
исследование существующих систем (Existing Systems Examination). Выполнение этого процесса должно обеспечить понимание состояния существующего технического и программного обеспечения для планирования необходимых изменений;
определение технической архитектуры (Technical Architecture);
проектирование и реализация базы данных (Database Design and Build). Процесс предусматривает проектирование и реализацию реляционной базы данных, включая создание индексов и других объектов БД;
проектирование и реализация модулей (Module Design and Build). Этот процесс является основным в проекте. Он включает непосредственное проектирование приложения и создание кода прикладной программы;
конвертирование данных (Data Conversion). Цель этого процесса - преобразовывать, перенести и проверить согласованность и непротиворечивость данных, оставшихся в наследство от "старой" системы и необходимых для работы в новой системе;
документирование (Documentation);
тестирование (Testing);
обучение (Training);
внедрение, или переход к новой системе (Transition). Этот процесс включает решение задач установки, ввода новой системы в эксплуатацию, прекращения эксплуатации старых систем;
поддержка и сопровождение (Post-System Support).
Процессы состоят из последовательностей взаимосвязанных задач.
CDM предоставляет возможность
При определении подхода к разработке оценивается масштаб, степень сложности и критичность будущей системы. При этом учитываются стабильность требований, сложность и количество бизнес-правил, количество автоматически выполняемых функций, разнообразие и количество пользователей, степень взаимодействия с другими системами, критичность приложения для основного бизнес-процесса компании и целый ряд других.
В соответствии с этими факторами в CDM выделяются два основных подхода к разработке:
Классический подход (Classic). Этапы данного подхода представлены. (Приложение Б) Классический подход применяется для наиболее сложных и масштабных проектов, он предусматривает последовательный и детерминированный порядок выполнения задач. Для таких проектов характерно большое количество реализуемых бизнес-правил, распределенная архитектура, критичность приложения. Применение классического подхода также рекомендуется при нехватке опыта у разработчиков, неподготовленности пользователей, нечетко определенной задаче. Продолжительность таких проектов от 8 до 36 месяцев.
Подход быстрой разработки (Fast Track). Данный подход, в отличие от каскадного классического, является итерационным и основан на методе DSDM (Dynamic Systems Development Method). В этом подходе четыре этапа - стратегия, моделирование требований, проектирование и генерация системы и внедрение в эксплуатацию. Подход используется для реализации небольших и средних проектов с несложной архитектурой системы, гибкими сроками и четкой постановкой задач. Продолжительность проекта от 4 до 16 месяцев.
PJM - это определенная дисциплина ведения проекта, позволяющая гарантировать, что цели проекта, четко определенные в его начале, остаются в центре внимания на протяжении всего проекта. В основе PJM лежит метод, ориентированный на выполнение самостоятельных процессов (под процессом понимается набор связанных задач, выполнением которых достигается определенная цель проекта). Так же, как и CDM, метод руководства проектом представляется в виде четко определенной операционной схемы, в которой выделяются процессы, этапы, задачи, результаты решения задач и зависимости между задачами:
Управление проектом и предоставление отчетности (Control and Reporting). Этот процесс содержит задачи, в результате решения которых определяются границы проекта и подход к разработке, происходит управление изменениями и контролируется возможный риск;
Управление работой (Work Management). Процесс содержит задачи, помогающие контролировать работы, выполняемые в проекте;
Управление ресурсами (Resource Management). Здесь решаются задачи, связанные с обеспечением каждого этапа исполнителями;
Управление качеством (Quality Management). Процесс управления качеством гарантирует, что проект отвечает требованиям пользователя в течение всего процесса разработки;
Управление конфигурацией (Configuration Management).
Цикл решения задач PJM состоит из отдельных этапов. Количество этапов зависит от выбранного подхода к разработке. Задачи PJM распределяются внутри каждого процесса по трем группам - задачи планирования, управления и завершения, и по уровням - отнести задачу на уровень проекта или на уровень отдельного этапа.
По аналогии с CDM, в PJM предусмотрено широкое использование шаблонов разрабатываемых документов.
Комплекс Oracle Developer Suite содержит набор интегрированных средств разработки для быстрого создания приложений. Он включает средства моделирования, программирования на Java, разработки компонентов, бизнес-анализа и составления отчетов. Все эти средства используют общие ресурсы, что позволяет совместно работать над одним проектом группе разработчиков. Oracle Developer Suite интегрирован с Oracle Database и Oracle Application Server, образуя единую платформу для создания и установки приложений.
В Oracle Developer Suite встроена поддержка языка UML для разработки приложений на основе моделей. Модели хранятся в общем репозитории Oracle, который предназначен для поддержки больших коллективов разработчиков.
CASE-средство Oracle Designer является интегрированным средством, обеспечивающим в совокупности со средствами разработки приложений поддержку жизненного цикла программного обеспечения.
Oracle Designer представляет собой семейство методов и поддерживающих их программных продуктов. Базовый метод Oracle Designer (CDM) - структурный метод проектирования систем, охватывающий полностью все стадии жизненного цикла программного обеспечения. Версия Oracle Designer для объектно-реляционной СУБД Oracle содержит также расширение в виде средств объектного моделирования, базирующихся на стандарте UML.
Oracle Designer обеспечивает графический
интерфейс при разработке