Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


CASE-ТЕХНОЛОГИЯ проектирования.



 

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

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

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

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

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

 

Если участники проекта пытались прибегнуть к ручной разработке, то перед ними возникали следующие проблемы:

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

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

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

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

 

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

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

Обеспечить поддержку наиболее трудоемких этапов разработки программного обеспечения – этапов анализа и проектирования – позволяет использование CASE (Computer-Aided Software/System Engineering) средств. В последнее время эту аббревиатуру стали расшифровывать как “компьютерная поддержка проектирования систем”.

 

Термин CASE используется в настоящее время в весьма широком смысле.

Первоначальное значение термина CASE, ограниченное вопросами автоматизации разработки только лишь программного обеспечения (ПО), в настоящее

время приобрело новый смысл, охватывающий процесс разработки сложных информационных систем (ИС) в целом.

CASE -технологии являются естественным продолжением эволюции всей отрасли разработки ПО. Появлению CASE -технологии и CASE -средств предшествовали исследования в области методологии программирования

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

В настоящее время CASE - наукоемкое направление, повлекшее за собой образование мощной CASE - индустрии, объединившей сотни фирм и компаний различной ориентации:

- компании-разработчики средств анализа и проектирования программного обеспечения с широкой сетью дистрибьюторских и дилерских фирм;

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

- обучающие фирмы;

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

- фирмы, специализирующиеся на выпуске справочной и рекламной литературы по CASE.

 

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

Практически не один серьезный проект не осуществляется без использования СASE-средств, а общее число распространенных приложений превышает 500 наименований. Объем рынка CASE -средств составляет более 10 миллиардов долларов в год.

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

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

CASE позволяет не только создавать более совершенные разработки, но и упорядочить са процесс их создания.

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

Однако по мере приобретения пользователями практических навыков и повышения общей культуры проектирования эффективность применения этих средств резко возрастает.

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

 

Поколения CASE-средств:

1 поколение:

Назначение - анализ требований, проектирование спецификаций и структурирование, адресовано системным аналитикам и проектировщикам

Разработанные средства - для поддержки графических моделей, проектирования спецификаций, редактирования словарей данных

Цели - концентрация внимания на начальных этапах проекта

 

2 поколение:

Назначение - для обеспечения полного жизненного цикла разработки приложения.

Разработанные средства- средства поддержки автоматической кодогенерации, разнообразные функции для представления требований к системе и спецификаций проектирования в графическом виде, понятном для всех участников проекта.

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

 

Из существующих двух поколения CASE -средств первое предназначено для анализа требований, проектирования спецификаций и структурирования, адресовано системным аналитикам и проектировщикам.

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

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

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

CASE -технологии успешно применяются для построения практически всех типов проектов.

Рассмотрим более подробно основные этапы формализации процесса проектирования сложных проектов с использованием CASE -технологии.

 

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

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

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

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

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

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

 

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

- мощные графические средства для описания и документирования ИС, обеспечивающие удобный интерфейс с разработчиком и развивающие его творческие возможности;

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

- использование специальным образом организованного хранилища проектных метаданных (репозитория).

 

Интегрированное CASE -средство (или комплекс средств, поддерживающих полный ЖЦ ПО) содержит следующие компоненты:

 

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

- графические средства анализа и проектирования, обеспечивающие создание и редактирование иерархически связанных диаграмм (DFD, ERD и др.), образующих модели ИС;

- средства разработки приложений, включая языки 4GL и генераторы кодов;

- средства конфигурационного управления;

- средства документирования;

- средства тестирования;

- средства управления проектом;

 

Все современные CASE -средства могут быть классифицированы в основном по типам и категориям.

Классификация по типам отражает функциональную ориентацию CASE -средств на те или иные процессы ЖЦ.

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

 

Помимо этого, CASE -средства можно классифицировать по следующим признакам:

- применяемым методологиям и моделям систем и БД;

- степени интегрированности с СУБД;

- доступным платформам.

 

Классификация по типам в основном совпадает с компонентным составом CASE -средств и включает следующие основные типы:

- средства анализа (Upper CASE ), предназначенные для построения и анализа моделей предметной области (Design/IDEF (Meta Software), BPwin (Logic Works));

- средства анализа и проектирования (Middle CASE ), поддерживающие наиболее распространенные методологии проектирования и использующиеся для создания проектных спецификаций (Vantage Team Builder (Cayenne), Designer/2000 (ORACLE), Silverrun (CSA), PRO-IV (McDonnell Douglas), CASE. Аналитик (МакроПроджект)). Выходом таких средств являются спецификации компонентов и интерфейсов системы, архитектуры системы, алгоритмов и структур данных;

- средства проектирования баз данных, обеспечивающие моделирование данных и генерацию схем баз данных (как правило, на языке SQL) для наиболее распространенных СУБД. К ним относятся ERwin (Logic Works), S-Designor (SDP) и DataBase Designer (ORACLE). Средства проектирования баз данных имеются также в составе CASE -средств Vantage Team Builder, Designer/2000, Silverrun и PRO-IV;

 

- средства разработки приложений. К ним относятся средства 4GL (Uniface (Compuware), JAM (JYACC), PowerBuilder (Sybase), Developer/2000 (ORACLE), New Era (Informix), SQL Windows (Gupta), Delphi (Borland) и др.) и генераторы кодов, входящие в состав Vantage Team Builder, PRO-IV и частично - в Silverrun;

- Средства реинжиниринга, обеспечивающие анализ программных кодов и схем баз данных и формирование на их основе различных моделей и проектных спецификаций. Средства анализа схем БД и формирования ERD входят в состав Vantage Team Builder, PRO-IV, Silverrun, Designer/2000, ERwin и S-Designor. В области анализа программных кодов наибольшее распространение получают объектно-ориентированные CASE -средства, обеспечивающие реинжиниринг программ на языке С++ (Rational Rose (Rational Software), Object Team (Cayenne)).

 

Вспомогательные типы включают:

- средства планирования и управления проектом (SE Companion, Microsoft Project и др.);

- средства конфигурационного управления (PVCS (Intersolv));

- средства тестирования (Quality Works (Segue Software));

- средства документирования (SoDA (Rational Software)).

 

2.1.1. Анализ требований

 

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

 

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

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

- описание выполняемых системой функций;

- ограничения в процессе разработки, имеющиеся ресурсы.

 

На этапе анализа определяются:

- архитектура системы, ее функции, внешние условия;

- интерфейсы и распределение функций между человеком и системой;

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

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

 

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

- оценка нескольких CASE -средств и выбор одного или более из них;

- оценка одного или более CASE -средств и сохранение результатов для последующего использования;

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

 

 

 

Рис. 6. Информация для процесса оценки и выбора CASE-средств

 

Как видно из рисунка, входной информацией для процесса оценки является:

- определение пользовательских потребностей;

- цели и ограничения проекта;

- данные о доступных CASE -средствах;

- список критериев, используемых в процессе оценки.

 

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

Конкретный вариант реализации процесса (оценка и выбор, оценка для будущего выбора или выбор, основанный на предыдущих оценках) определяется перечисленными выше целями.

 

Элементы процесса включают:

- цели, предположения и ограничения, которые могут уточняться в ходе процесса;

- потребности пользователей, отражающие количественные и качественные требования пользователей к CASE -средствам;

- критерии, определяющие набор параметров, в соответствии с которыми -- -производится оценка и принятие решения о выборе;

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

- рекомендуемое решение (обычно либо решение о выборе, либо дальнейшая оценка).

 

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

Пользователь должен определить конкретный порядок действий и принятия решений с любыми необходимыми итерациями.

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

 

Определение списка критериев основано на пользовательских требованиях и включает:

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

- определение дополнительных критериев;

- определение области использования каждого критерия (оценка, выбор или оба процесса);

- определение одной или более метрик для каждого критерия оценки;

- назначение веса каждому критерию при выборе.

 

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

Можно выделить следующие основные принципы создания ИС на основе CASE – технологий:

1. принцип всесторонней компьютерной поддержки проектирования.

2. принцип модельного подхода. CASE – система может поддерживать методологию функционально –ориентированного или объектно-ориентированного подхода

3. принцип иерархического представления модели предметной области. Данный принцип выражается в возможности последовательной детализации (декомпозиции) описания системы в соответствии с нисходящим подходом проектирования.

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

5. принцип декомпозиции процесса ПИС с применением CASE –технологий на стадии и этапы. Отвечает на вопрос о степени удовлетворяемости системы предъявленным к ней требованиям. Основной задачей этого этапа является исследование структуры системы и логической взаимосвязи ее составляющих. Здесь не рассматриваются вопросы конкретной реализации и используемые платформы.

 

Проектирование можно разделить на два основных этапа:

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

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

 

Трудности реализации проекта системы:

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

- Отсутствие достаточных знаний у заказчика о проблеме обработки данных или знаний для решения вопроса о реализуемости отдельных составляющих системы.

- Недостаточность знаний системного аналитика о закономерностях предметной области реализуемого приложения.

- Спецификация системы из-за объема и новизны технических терминов часто непонятна заказчику.

- Информационная недостаточность спецификаций для проектировщиков и программистов при ее понятости заказчиком.

 

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

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

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

 

Базовые принципы методологии структурного анализа:

1 принцип: - “разделяй и властвуй”- для решения трудных проблем путем разбиения их на множество мелких и независимых частей-задач;

2 принцип - “иерархического упорядочения”- дополняет первый и декларирует, что устройство этих частей также существенно для понимания.

 

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

 

Средства проектирования и структурного анализа объединяются в три группы:

1 группа- функции, которые система должна выполнять;

2 группа -отношения между данными;

3 группа -аспекты реального времени, т.е. время поведения системы.

 

Среди многообразия средств проектирования и структурного анализа наиболее часто применяются:

- DFD (data flow diagrams) – диаграммы потоков данных совместно со словарями данных и спецификациями процессов;

- ERD (entity-relationship diagrams) диаграммы “сущность-связь”;

- STD (state transition diagrams) диаграммы переходов состояний.

 

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

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

Диаграмма STD содержит средства описывающие и раскрывающие поведения системы в реальном времени.

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

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

На основе репозитория осуществляется интеграция CASE -средств и разделение системной информации между участниками проекта.

Возможности репозитория обеспечивают несколько уровней интеграции:

 

- общий пользовательский интерфейс по всем средствам;

- передачу данных между средствами;

- интеграцию этапов разработки через единую систему “представителей фаз; ”

- передачу данных и средств между различными платформами.

 

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

Сопровождение системы в CASE обеспечивается средствами сопровождения проекта, а не его программного обеспечения.


Поделиться:



Популярное:

Последнее изменение этой страницы: 2017-03-08; Просмотров: 2194; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.104 с.)
Главная | Случайная страница | Обратная связь