Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции / Лекция 9_case_last.doc
Скачиваний:
37
Добавлен:
11.06.2015
Размер:
645.12 Кб
Скачать

188

IX. Использование case – технологий для проектирования бд

Обоснование необходимости использования Case средств

Состав, структура и функциональные особенности Case средств

Классификация Case средств

Обзор современных средств

Анализ систем

Методика проектирования БД с помощью Case

Создание диаграмм прецедентов

1. Обоснование необходимости использования Case-средств

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

  • неадекватная спецификация требований;

  • неспособность обнаруживать ошибки в проектных решениях;

  • низкое качество документации, снижающее эксплуатационные качества системы;

  • затяжной цикл и неудовлетворительные результаты тестирования системы.

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

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

CASE (Computer Aided Software Engineering) - технология представляет собой методологию проектирования ИС, а также набор инструментальных средств, позволяющих в наглядной форме моделировать предметную область, анализировать эту модель на всех этапах разработки и сопровождения ИС и разрабатывать приложения в соответствии с информационными потребностями пользователей.

CASE-средства представляют собой программные средства, поддерживающие процессы создания и/или сопровождения ИС, такие как: анализ и формулировка требований, проектирование баз данных и приложений, генерация кода, тестирование, обеспечение качества, управление конфигурацией и проектом. То есть использование case-технологий охватывает весь процесс разработки ИС в целом [1].

Case-технологии предлагают новый, основанный на автоматизации подход к концепции жизненного цикла БД. При использовании case изменяются все фазы жизненного цикла, при этом наибольшие изменения касаются фаз анализа и проектирования. На рис.1 приводится простейшая модель цикла создания БД (рис.1а) и соответствующая case-модель (рис.1б), в которой фаза прототипирования заменяет традиционную фазу системного анализа. Необходимо отметить, что наиболее автоматизируемыми фазами являются фазы контроля проекта и кодогенерации (хотя все остальные фазы также поддерживаются case-средствами). В табл.1 дана оценка трудозатрат по фазам жизненного цикла при различных способах разработки БД, а в табл.2 – преимущества традиционной разработки и с помощью case-средств.

Анализ

Прототипирование

Проектирование

Проектирование спецификаций

Кодирование

Контроль проекта

Тестирование

Кодогенерация

Сопровождение

Системное тестирование

Сопровождение

а) б)

Рисунок 1 - Модели жизненного цикла создания БД

а) без использования б) с использованием CASE

Таблица 1 - Оценка трудозатрат при различных способах разработки БД

Способ разработки

Анализ

Проектирование

Кодирование

Тестирование

Традиционная разработка

20%

15%

20%

45%

Использование case-технологий

40%

40%

5%

15%

Таблица 2 - Преимущества традиционной разработки и с помощью case-средств

Традиционная разработка

Разработка с помощью case

Основные усилия на кодирование и тестирование

Основные усилия на анализ и проектирование

“Бумажные” спецификации

Быстрое итеративное прототипирование

Ручное кодирование

Автоматическая кодогенерация

Ручное документирование

Автоматическая генерация документации

Тестирование кодов

Автоматический контроль проекта

Сопровождение кодов

Сопровождение спецификаций проектирования

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

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

При проектировании БД на основе case технологии используется спиральный цикл создания системы, рис.2. При неполном завершении работ на каждом этапе разработки переходим на следующий этап, не дожидаясь полного завершения работы на текущем этапе. При итеративном способе разработки недостающую работу выполняем на следующей итерации. Главная же задача ставится так - как можно быстрее показать пользователям системы работоспособный продукт, тем самым активизируя процесс уточнения и дополнения требований. Основная проблема спирального цикла - определение момента перехода на следующий этап. Для ее решения необходимо ввести временные ограничения на каждый из этапов жизненного цикла [4].

Рисунок 2 - Спиральная модель жизненного цикла ИС [2]

Можно перечислить следующие факторы, усложняющие определение возможного эффекта от использования case-средств:

  • широкое разнообразие качества и возможностей case-средств;

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

  • широкое разнообразие в практике внедрения различных организаций;

  • отсутствие детальных метрик и данных для уже выполненных и текущих проектов;

  • широкий диапазон предметных областей проектов;

  • различная степень интеграции case-средств в различных проектах.

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

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

  • отсутствие полного соответствия между теми процессами и методами, которые поддерживаются case-средствами, и теми, которые используются в данной организации, может привести к дополнительным трудностям;

  • case-средства зачастую трудно использовать в комплексе с другими подобными средствами. это объясняется как различными парадигмами, поддерживаемыми различными средствами, так и проблемами передачи данных и управления в этих средствах;

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

  • негативное отношение персонала к внедрению case-технологии может быть главной причиной провала проекта.

Соседние файлы в папке Лекции