Вопрос 8. Инструментарий технологии разработки программного обеспечения. CASE-технология создания программного обеспечения.


Добавил:DMT
Дата создания:30 декабря 2007, 18:51
Дата обновления:8 января 2008, 19:24
Просмотров:13973 последний позавчера, 20:03
Комментариев: 0

Вопрос 8. Инструментарий технологии разработки программного обеспечения. CASE-технология создания программного обеспечения.

Процесс разработки ПО может быть традиционным ( неавтоматизированным, ручным ) и автоматизированным.

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

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

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

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

2) Средства CASE-технологии , автоматизирующие весь технологический процесс анализа, проектирования, разработки и сопровождения сложных программных систем, главным образом ИС. CASE - Computer Aided Software / System Engineering - разработка ПО с помощью компьютера, автоматизированная разработка ПО. Это направление сформировалось в конце 80-х гг.

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

Существует ряд признаков и свойств, наличие которых позволяет классифицировать некоторый продукт как CASE-средство. Одним из ключевых признаков является поддержка методологий структурного либо объектно-ориентированного анализа и проектирования. Примерами средств поддержки CASE-технологий являются программные продукты BPwin , ER win , OOwin .

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

CASE-технология создания ПО . CASE-технология представляет собой совокупность методов разработки ПО и набор инструментальных средств , позво­ляющих в наглядной форме моделировать предметную область, ана­лизировать эту модель на всех стадиях разработки и сопровождения ПО и разрабатывать приложения в соответствии с информацион­ными потребностями пользователей. CASE-технология позволяет не только создавать "правильные" продукты, но и обеспечить "правильный" процесс их создания. При использовании CASE-технологий изменяются все этапы ЖЦ ПО , при этом наибольшие изменения касаются этапов анализа и проектирования, происходит перераспределение затрат на создание ПО (рис).

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

Другой класс CASE-технологий поддерживает только разработку программ, включая: автоматическую генерацию кодов программ на основании их спецификаций (выполня­ет­ся двумя способами - создание каркаса программ и создание полного продукта. Каркас служит для последующего ручного варианта редактирования исходных текстов, обеспечивая возможность вмешательства программиста; полный продукт не редактируется вручную); проверку корректности описания моделей; документирование программ согласно принятым стандартам и актуальному состоянию проекта; тестирование и отладку программ .

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

Основная цель CASE-технологий - отделить проектирование ПО от его кодирования и последующих этапов разработки ПО . Большинство CASE-технологий использует метод "прототипов" для быстрого создания программ на ранних этапах разработки. Основное достоинство CASE-технологии - поддержка коллективной работы над проектом за счет возможности работы в локальной сети разработчиков, экспор­та/импорта любых фрагментов проекта, организационного управления проектом. CASE-технологии успешно применяются для построения практически всех типов систем ПО, однако, устойчивое положение они занимают в следующих областях: обеспечение разработки делового и коммерческого ПО . В этой прикладной области CASE-технологии применяются не только для разработки ПО, но и для создания моделей систем, помогающих коммерческим структурам решать задачи стратегического планирования, управления финансами, определения политики фирм, обучения персонала и др. Это направление получило свое собственное название - бизнес-анализ; разработка системного и управляющего ПО . Активное применение CASE-технологий связано с большой сложностью данной проблематики и со стремлением повысить эффективность работ.

up