Инструментальные средства автоматизации процессов проектирования и разработки программного обеспечения
Реферат, 19 Марта 2012, автор: пользователь скрыл имя
Описание работы
Широкое использование вычислительной техники в различных сферах деятельности человека привело к потребности создания соответствующего программного обеспечения. Однако трудоемкость и наукоемкость разработки программ настолько огромны, что ведутся работы по созданию новых технологий автоматизации проектирования программных средств. Это направление получило название CASE-технология (Computer – Aided Software Engineering, т.е. разработка программного обеспечения с помощью компьютера).
Содержание
ВВЕДНИЕ 3
Определений целей, функций, входов и выходов системы 6
Сущность структурного анализа и проектирования 9
Структура CASE-средств 15
Результаты использования CASE-средств 18
Критерии оценки и выбора CASE-средств 22
Переход к практическому использованию CASE-средств 24
ЗАКЛЮЧЕНИЕ 27
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 28
Работа содержит 1 файл
Реферат.docx
— 157.04 Кб (Скачать)Схематично применение структурного подхода изображено на рис.2
Вначале разрабатывается функциональная модель, с помощью которой определяются, анализируются и фиксируются требования к составу и структуре функций системы, т. е. определяется, для каких целей разрабатывается система, какие функции она будет выполнять. На этой же модели указываются исходная информация, промежуточные и итоговые результаты работы системы. На основе информационных потоков определяется состав и структура необходимых данных, хранимых в системе (строится информационная модель). Далее, с учетом разработанных моделей, создаются процедуры реализации функции, т. е. алгоритмы обработки данных и поведения элементов системы. На заключительной стадии устанавливается распределение функций по подсистемам (компонентам), необходимое техническое обеспечение и строится модель их распределения по узлам системы.
Показанная на рис.2 схема не означает, что построение моделей должно строго соответствовать указанному порядку – одна за другой. Как правило, разработка каждой последующей модели начинается еще до полного завершения разработки предыдущей, а иногда – параллельно.
На стадии проектирования модели расширяются, уточняются и дополняются диаграммами, отражающими технологию использования системы, ее архитектуру, экранные формы и т. п.
Рисунок 2. Схема применения структурного подхода
Традиционно выделяют шесть периодов, качественно отличающихся применяемой техникой и методами разработки программного обеспечения, которые характеризуются использованием в качестве инструментальных средств:
- ассемблеров, дампов памяти, анализаторов;
- компиляторов, интерпретаторов, трассировщиков;
- символьных отладчиков, пакетов программ;
- систем анализа и управления исходными текстами;
- CASE-средств анализа требований, проектирования спецификаций и структуры, редактирования интерфейсов (первая генерация CASE-I);
- CASE-средств генерации исходных текстов и реализации интегрированного окружения поддержки полного жизненного цикла разработки программного обеспечения (вторая генерация CASE-II).
CASE-I является
первой технологией,
CASE-II отличается
значительно более развитыми
возможностями, улучшенными
Таким образом, CASE-средства являются результатом естественного эволюционного развития отрасли инструментальных (или технологических) средств.
CASE-технологии начали развиваться с целью преодоления ограничений методологии структурного программирования. Эта методология, несмотря на формализацию в составлении программ, характеризуется все же сложностью понимания, большой трудоемкостью и стоимостью использования, трудностью внесения изменений в проектные спецификации. Однако заложенные в ней принципы позволили развивать эту методологию и повысить ее эффективность за счет автоматизации наиболее рутинных этапов (табл. 2.).
Таблица 2. Сравнение традиционной разработки программного обеспечения и разработки с использованием CASE-технологий
№ п/п |
Традиционная разработка |
CASE - технология |
1 |
Основные усилия - нак одирование и тестирование |
Основные усилия - на анализ и проектирование |
2 |
"Бумажные" спецификации |
Быстрое интерактивное протопирование |
3 |
Ручное кодирование |
Автоматическая кодогенерация |
4 |
Ручное документирование |
Автоматическая генерация |
5 |
Тестирвание кодов |
Автоматический контроль проекта |
6 |
Сопровождение кодов |
Сопровождение спецификаций проектирования |
CASE-технология
базируется на методологии
Важнейшими (базовыми) принципами являются деление (декомпозиция) и последующее иерархическое упорядочение. Они дополняются следующими принципами:
- принцип абстрагирования от несущественных деталей (с их «упрятыванием») с контролем на присутствие лишних элементов;
- принцип формализации;
- принцип концептуальной общности (структурный анализ – структурное программирование – структурное тестирование).
- принцип непротиворечивости – обоснование и согласованность элементов.
- принцип логической и физической независимости данных.
- принцип непосредственного доступа (без программирования) конечного пользователя.
CASE-технологии
предлагают новый, основанный
на автоматизации подход к
концепции жизненного цикла
Рисунок 3. Модель жизненного цикла программного обеспечения и соответствующая ей CASE-модель
Структура CASE-средств
Обычно к CASE-средствам
относят любое программное
- мощные графические средства для описания и документирования информационной системы, обеспечивающие удобный интерфейс с разработчиком и развивающие его творческие возможности;
- интеграция отдельных компонент CASE-средств, обеспечивающая управляемость процессом разработки информационной системы;
- использование специальным образом организованного хранилища проектных метаданных (репозитория).
В связи с
наличием двух подходов к проектированию
программного обеспечения существуют
CASE-технологии ориентированные на структурный
подход, объектно-ориентированный
- возможностью сборки программной системы из готовых компонентов, которые можно использовать повторно;
- возможностью накопления проектных решений в виде библиотек классов на основе механизмов наследования;
- простотой внесения изменений в проекты за счет инкапсуляции данных в объектах;
- быстрой адаптацией приложений к изменяющимся условиям за счет использования свойств наследования и полиморфизма;
- возможностью организации параллельной работы аналитиков, проектировщиков и программистов.
Объектно-ориентированное CASE-средство в идеале должно содержать четыре основных блока: анализ, проектирование, разработка и инфраструктура.
Основные требования к блоку анализа:
- возможность выбора выводимой на экран информации из всей совокупности данных, описывающих модели;
- согласованность диаграмм при хранении их в репозитарии;
- внесение комментариев в диаграммы и соответствующую документацию для фиксации проектных решений;
- возможность динамического моделирования в терминах событий;
Основные требования к блоку проектирования:
- поддержка всего процесса проектирования приложения;
- возможность работы с библиотеками, средствами поиска и выбора;
- возможность разработки пользовательского интерфейса;
- поддержка стандартов OLE, ActiveX и доступ к библиотекам HTML или Java;
- поддержка разработки распределенных или двух- и трехзвенных клиентсерверных систем (работа с CORBA, DCOM, Internet).
Основные требования к блоку реализации:
- генерация кода полностью из диаграмм;
- возможность доработки приложений в клиент-серверных CASEсредствах типа Power Builder;
- реинжиниринг кодов и внесение соответствующих изменений в модель
- системы;
- наличие средств контроля, которые позволяют выявлять несоответствие между диаграммами и генерируемыми кодами и обнаруживать ошибки как на стадии проектирования, так и на стадии реализации.
Основные требования к блоку инфраструктуры:
- наличие репозитория на основе базы данных, отвечающего за генерацию кода, реинжиниринг, отображение кода на диаграммах, а также обеспечивающего соответствие между моделями и программными кодами;
- обеспечение командной работы (многопользовательской работы и управление версиями) и реинжиниринга.
В составе интегрированного CASE-средства (или комплекса средств, поддерживающих полный жизненный цикл программного обеспечения) содержатся следующие компоненты:
- репозиторий, являющийся основой CASE-средства. Он должен обеспечивать хранение версий проекта и его отдельных компонентов, синхронизацию поступления информации от различных разработчиков при групповой разработке, контроль метаданных на полноту и непротиворечивость;
- графические средства анализа и проектирования, обеспечивающие создание и редактирование иерархически связанных диаграмм (DFD, ERD и др.), образующих модели информационной системы;
- средства разработки приложений, включая языки 4GL и генераторы кодов;
- средства конфигурационного управления;
- средства документирования;
- средства тестирования;
- средства управления проектом;
- средства реинжиниринга.
Результаты использования CASE-средств
Ввиду разнообразной
природы CASE-средств было бы ошибочно
делать какие-либо утверждения относительно
реального удовлетворения тех или
иных ожиданий от их внедрения. Можно
перечислить следующие факторы,
усложняющие определение
- широкое разнообразие качества и возможностей CASE-средств;
- относительно небольшое время использования CASE-средств в различных организациях и недостаток опыта их применения;
- широкое разнообразие в практике внедрения различных организаций;
- отсутствие детальных метрик и данных для уже выполненных и текущих проектов;
- широкий диапазон предметных областей проектов;
- различная степень интеграции CASE-средств в различных проектах.
К достоинствам CASE-технологий можно отнести:
- единый графический язык;
- единую базу данных проекта;
- интеграцию средств;
- поддержку коллективной разработки и управления проектом;
- макетирование;
- генерацию документации;
- верификацию проекта;
- автоматическую генерацию объектного кода;
- сопровождение и реинжиниринг.