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

Автор работы: Пользователь скрыл имя, 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 Проблемы преподавания структурного и объектно-ориентированного программирования
Заключение
Глоссарий
Список использованных источников
Литература

Прикрепленные файлы: 1 файл

Жанбекова.doc

— 571.00 Кб (Скачать документ)

Repository Administrator - средства управления репозиторием (создание и удаление приложений, управление доступом к данным со стороны различных пользователей, экспорт и импорт данных);

Repository Object Navigator - средство доступа  к репозиторию, обеспечивающее многооконный объектно-ориентированный интерфейс доступа ко всем элементам репозитория;

Process Modeler - средство анализа и  моделирования бизнес-процессов;

Systems Modeler - набор средств построения  функциональных и информационных  моделей проектируемой системы, включающий средства для построения диаграмм "сущность-связь" (Entity-Relationship Diagrammer), диаграмм функциональных иерархий (Function Hierarchy Diagrammer), диаграмм потоков данных (Data Flow Diagrammer) и средство анализа и модификации связей объектов репозитория различных типов (Matrix Diagrammer);

Systems Designer - набор средств проектирования  программного обеспечения, включающий  средство построения структуры  реляционной базы данных (Data Diagrammer), а также средства построения  диаграмм, отображающих взаимодействие с данными, иерархию, структуру и логику приложений, реализуемую хранимыми процедурами на языке PL/SQL (Module Data Diagrammer, Module Structure Diagrammer и Module Logic Navigator);

Server Generator - генератор описаний объектов  БД Oracle (таблиц, индексов, ключей, последовательностей и т.д.);

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

Repository Reports - генератор стандартных  отчетов, интегрированный с Oracle Reports.

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

 

1.5 Технология Borland

Компания Borland (www.borland.com) в результате развития собственных разработок и приобретения целого ряда компаний представила интегрированный комплекс инструментальных средств, реализующих управление полным жизненным циклом приложений (Application Life Cycle Management, ALM). В соответствии с технологией Borland процесс создания программного обеспечения включает в себя пять основных этапов:

определение требований;

анализ и проектирование;

разработка;

тестирование и профилирование;

развертывание.

Выполнение всех этапов координируется процессом управления конфигурацией и изменениями.

Определение требований реализуется с помощью системы управления требованиями CaliberRM, которая стала частью семейства продуктов Borland в результате покупки компании Starbase. CaliberRM сохраняет требования в базе данных, документы с их описанием создаются с помощью встроенного механизма генерации документов MS Word на базе заданных шаблонов. Система обеспечивает экспорт данных в таблицы MS Access и импорт из MS Word. CaliberRM поддерживает различные методы визуализации зависимостей между требованиями, с помощью которых пользователь может ограничить область анализа, необходимого в случае изменения того или иного требования. Имеется модуль, который использует данные требования для оценки трудозатрат, рисков и расходов, связанных с реализацией требований.

Средство анализа и проектирования Together ControlCenter [8] разработано компанией TogetherSoft. В основе его применения лежит один из вариантов подхода «Быстрой разработки программного обеспечения» под названием Feature Driven Development (FDD) [18].

Together ControlCenter - интегрированная среда  проектирования и разработки, поддерживающая  визуальное моделирование на UML с  последующим написанием приложений для платформ J2EE (Java) и .Net (С#, C++ и Visual Basic). Кроме базовой версии, имеется уменьшенный вариант системы для индивидуальных разработчиков и небольших групп (Together Solo), а также редакции для платформы IBM WebSphere и среды разработки Jbuilder.

В системе реализована технология LiveSource, которая обеспечивает синхронизацию между проектом приложения и изменениями - при внесении изменений в исходные тексты меняется модель программы, а при изменении модели надлежащим образом изменяется текст на языке программирования. Это исключает необходимость вручную модифицировать модель или переписывать код. Контроль версий осуществляется благодаря функциональной интеграции Together и системы StarTeam. Поддерживается также интеграция с системой управления конфигурацией Rational ClearCase.

Инструментальные средства тестирования появились в составе комплекса Borland в результате покупки компании Optimizeit. К ним относятся Optimizeit Suite 5, Optimizeit Profiler for .NET и Optimizeit ServerTrace. Первые две системы позволяют выявить потенциальные проблемы использования аппаратных ресурсов - памяти и процессорных мощностей на платформах J2EE и .Net соответственно. Интеграция Optimizeit Suite 5 в среду разработки Jbuilder, а Optimizeit Profiler - в C#Builder и Visual Basic .Net позволяет проводить контрольные испытания приложений по мере разработки и ликвидировать узкие места производительности. Система Optimizeit ServerTrace предназначена для управления производительностью серверных J2EE-приложений с точки зрения достижения заданного уровня обслуживания и сбора контрольных данных по виртуальным Java-машинам.

Сущность концепции ALM сосредоточена в системе управления конфигурацией и изменениями: именно она объединяет основные фазы жизненного цикла программного обеспечения. Такой системой является StarTeam, разработанная компанией Starbase. Она выполняет функции контроля версий, управления изменениями, отслеживания дефектов, управления требованиями (в интеграции с CaliberRM), управления потоком задач и управления проектом.

StarTeam совместима с интерфейсом Microsoft Source Code Control и интегрируется  с любой системой разработки, которая поддерживает этот API. Кроме  того, в системе реализованы средства  интеграции со средствами разработки  и моделирования Together, JBuilder, Delphi, C++Builder и C#Builder.

В технологии Borland выделяется три уровня интеграции. Функциональная (touch-point) интеграция позволяет обратиться из одной системы к функциям другой, выбрав соответствующий пункт меню. Например, интерфейс управления изменениями StarTeam непосредственно отображается в системах Together, C#Builder и Visual Studio .Net. Такая интеграция дает возможность разделять информацию между системами, но не обеспечивает единого рабочего пространства, вынуждает пользователя переключать окна и приводит к дублированию процессов управления структурой проекта. Встроенная (embedded)интеграция обеспечивает работу с одной системой непосредственно в среде другой. Например, не выходя из среды разработки Jbuilder, можно просматривать графики производительности, которые создает система Optimizeit. Самый высокий уровень интеграции -синергетический (synergistic), позволяющий сочетать функции двух различных продуктов незаметно для разработчиков. Для большинства продуктов Borland и других поставщиков синергетическая интеграция пока остается делом будущего, однако ее принципы уже начинают реализовываться.

 

 

 

 

2 Методические основы технологий создания программного обеспечения

2.1 Визуальное моделирование

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

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

Визуальное моделирование возникло как синтез визуализации других направлений.

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

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

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

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

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

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

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

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

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

сложности проектируемой системы;

необходимой полноты ее описания;

знаний и навыков участников проекта;

времени, отведенного на проектирование.

Визуальное моделирование (visual modeling) является методом, применяемым в разработке программного обеспечения, который:

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

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

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

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

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

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

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

Универсальные инструменты являются коробочными и многофункциональными пакетами, предназначенными для анализа и проектирования программного обеспечения, то есть без какой-либо специализированной ориентации. Как правило, сегодня такие пакеты строятся на базе языка UML и называются CASE-пакетами. Самыми известными CASE-пакетами являются IBM Rational Rose, Borland Together, Telelogic Tau, Microsoft Visio/UML Add-on. Эти средства поддерживают различные виды диаграмм, удобную среду их разработки с такими функциями, как печать и копирование диаграмм, различные способы редактирования графических символов, средства просмотра и поиска в визуальной модели, различные режимы отображения диаграмм и многое другое. Они также обеспечивают генерацию программного кода в разные целевые платформы программирования, версионный контроль визуальных моделей, часто являются кросс-платформенными (например, работают под управлением операционных систем Windows и Linux), обеспечивают интеграционные «мосты» с другими средствами разработки программного обеспечения, например, со средствами управления требованиями. Как правило, все современные CASE-пакеты имеют открытые программные интерфейсы и позволяют расширять свою базовую функциональность.

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