Лекция 11. Case-технологии и их использование Тем Case-технологии и их использование - страница №1/1

Лекция 11.CASE-технологии и их использование

Тема1. CASE-технологии и их использование

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

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

Базой CASE-развития стали методологии "классического" системного анализа. Для программного обеспечения (ПО) основным является понятие жизненного цикла (ЖЦ), как правило, разбиваемого на этапы: анализ требований, проектирование, кодирование, тестирование и отладка, эксплуатация и сопровождение.

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

Таким образом, в этом случае наиболее важными этапами ЖЦ являются первые два этапа: анализ и проектирование.

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

Остановимся кратко на особенностях Анализа и Проектирования.

Анализ требований является первым этапом ЖЦ программного продукта. Этот этап должен решить ключевые для проекта вопросы -


  • Каковы требования, предъявляемые к системе?

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

Проектирование отвечает на вопрос "Как система будет удовлетворять предъявленным к ней требованиям?".

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

Бурным развитием CASE системы обязаны тому, что изначально они ориентированны на применение именно в начале жизненного цикла.

В своем развитии CASE средства прошли два основных этапа.

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

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

При использовании CASE систем изменяется распределение трудозатрат по фазам ЖЦ (ниже приведена таблица сравнения трудозатрат)

Таблица 1.



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

Тенденции развития современных информационных технологий

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

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

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

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

  • необходимость интеграции существующих и вновь разрабатываемых приложений;

  • функционирование в неоднородной среде на нескольких аппаратных платформах;

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

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

В 70-х и 80-х годах при разработке ИС достаточно широко применялась структурная методология, предоставляющая в распоряжение разработчиков строгие формализованные методы описания ИС и принимаемых технических решений. Она основана на наглядной графической технике: для описания различного рода моделей ИС используются схемы и диаграммы. Наглядность и строгость средств структурного анализа позволяла разработчикам и будущим пользователям системы с самого начала неформально участвовать в ее создании, обсуждать и закреплять понимание основных технических решений. Однако, широкое применение этой методологии и следование ее рекомендациям при разработке конкретных ИС встречалось достаточно редко, поскольку при неавтоматизированной (ручной) разработке это практически невозможно. Действительно, вручную очень трудно разработать и графически представить строгие формальные спецификации системы, проверить их на полноту и непротиворечивость, и тем более изменить. Если все же удается создать строгую систему проектных документов, то ее переработка при появлении серьезных изменений практически неосуществима.

Ручная разработка обычно порождала следующие проблемы:


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

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

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

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

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

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


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

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

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

CASE-средства. Общая характеристика и классификация

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  • средства реинжиниринга.

Общая характеристика и классификация. Характеристика CASE - средств

Все современные 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)).

Технология внедрения CASE-средств

Приведенная в данном разделе технология базируется в основном на стандартах IEEE (IEEE - Institute of Electrical and Electronics Engineers - Институт инженеров по электротехнике и электронике). Термин "внедрение" используется в широком смысле и включает все действия от оценки первоначальных потребностей до полномасштабного использования CASE-средств в различных подразделениях организации-пользователя. Процесс внедрения CASE-средств состоит из следующих этапов :
Анализ возможностей организации
Первым действием данного этапа является анализ возможностей организации в отношении ее технологической базы, персонала и используемого ПО. Такой анализ может быть формальным или неформальным.

Формальные подходы определяются моделью оценки зрелости технологических процессов организации CMM (Capability Maturity Model), разработанной SEI (Software Engineering Institute), а также стандартами ISO 9001: 1994, ISO 9003-3: 1991 и ISO 9004-2:1991. В центре внимания этих подходов находится анализ различных аспектов происходящих в организации процессов.

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

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

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

Общие вопросы


  • используемая модель ЖЦ (каскадная или спиральная);

  • используемые методы (структурные, объектно-ориентированные). Степень адаптации метода к потребностям организации; квалификация сотрудников;

  • наличие документированных стандартов (формальных или неформальных) по анализу требований, спецификациям и проектированию, кодированию и тестированию;

  • количественные метрики, используемые в процессе разработки ПО, их использование;

  • виды документации, выпускаемой в процессе ЖЦ ПО;

  • наличие группы поддержки средств проектирования.
Проекты, ведущиеся в организации

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

  • среднее количество специалистов, участвующих в проектах различных категорий (небольших, средних и крупных);

  • средний размер проектов различных категорий в терминах кодовых метрик (например, в строках исходных кодов), способ измерения.
Технологическая база

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


  • доступные вычислительные ресурсы, платформа разработки;

  • уровень доступности ресурсов, узкие места, среднее время ожидания ресурсов;

  • ПО, используемое в организации, и его характер (готовые программные продукты, собственные разработки);

  • степень интеграции используемых программных продуктов, механизмы интеграции (существующие и планируемые);

  • тип и уровень сетевых возможностей, доступных группе разработчиков;

  • используемые языки программирования;

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

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


  • реакция сотрудников организации (как отдельных людей, так и коллективов) на внедрение новой технологии. Наличие опыта успешных или безуспешных внедрений;

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

  • наличие стремления "снизу" к совершенствованию средств и технологии;

  • объем обучения, необходимого для ориентации пользователей в новой технологии;

  • стабильность и уровень текучести кадров.
Готовность

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


  • поддержка проекта со стороны высшего руководства;

  • готовность организации к долгосрочному финансированию проекта;

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

  • готовность персонала к существенному изменению технологии своей работы;

  • степень понимания персоналом масштаба изменений;

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

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

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

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

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


  • Vantage Team Builder (Westmount I-CASE);

  • Designer/2000;

  • Silverrun;

  • ERwin+BPwin;

  • S-Designor;

  • CASE.Аналитик.
. Кроме того, на рынке постоянно появляются как новые системы (например, CASE /4/0, PRO-IV, System Architect, Visible Analyst Workbench, EasyCASE), так и новые версии и модификации перечисленных систем.
Оценка эффекта
Согласно обзору передовых технологий (Survey of Advanced Technology), составленному фирмой Systems Development Inc. в 1996 г. по результатам анкетирования более 1000 американских фирм, CASE-технология в настоящее время попала в разряд наиболее стабильных информационных технологий (ее использовала половина всех опрошенных пользователей более чем в трети своих проектов, из них 85% завершились успешно). Однако, несмотря на все потенциальные возможности CASE-средств, существует множество примеров их неудачного внедрения, в результате которых CASE-средства становятся "полочным" ПО (shelfware). В связи с этим необходимо отметить следующее:

  • CASE-средства не обязательно дают немедленный эффект; он может быть получен только спустя какое-то время;

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

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

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

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

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

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

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

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

  • Технология. Понимание ограниченности существующих возможностей и способность принять новую технологию;

  • Культура. Готовность к внедрению новых процессов и взаимоотношений между разработчиками и пользователями;

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

Оценка СASE-средств

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

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

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

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

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

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

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

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


  • высокий уровень технологической поддержки процессов разработки и сопровождения ПО;

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

  • приемлемый уровень отдачи от инвестиций в CASE-средства.

Контрольная

Информатика, кибернетика и программирование

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

CASE - технологии

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

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

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

ассемблеры, дампы памяти, анализаторы;

компиляторы, интерпретаторы, трассировщики;

символические отладчики, пакеты программ;

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

CASE -средства анализа требований, проектирования спецификаций и структуры, редактирования интерфейсов(1-ая генерация CASE -1;

CASE -средства генерации исходных текстов и реализации интегрированного окружения поддержки полного ЖЦ разработки ПО (2-ая генерация CASE - II ).

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

CASE обладают следующими основными достоинствами:

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

При использовании CASE -технологий изменяются фазы жизненного цикла ПП как показано ниже:

При традиционной технологии: При CASE -технологии:

Анализ Прототипирование

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

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

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

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

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

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

Технология

Этапы разработки

Анализ

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

Кодирование

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

традиционная

CASE -1

CASE -11

В следующей таблице сравниваются цели и содержание этапов при традиционной разработке и с применением CASE -средств.

№ п/п

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

CASE -технология

Основные усилия - на

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

Основные усилия - на анализ

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

‘Бумажные’ спецификации

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

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

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

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

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

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

документации

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

Автоматический

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

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

Сопровождение специфи-

каций проектирования

Модель ЖЦ ПО определяет порядок выполнения этапов, а также критерии перехода от этапа к этапу.

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

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

Специалистами отмечаются следующие преимущества спиральной модели:

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

ориентация на развитие и модификацию ПО в процессе проектирования;

анализ риска и издержек в процессе проектирования.

Чем же принципиально CASE -технология отличается от традиционной?

Для ответа на этот вопрос несколько отвлечемся и вспомним, что нас интересует прежде всего, если мы встречаем предмет, который раньше никогда не видели? Смею утверждать, что это будут вопросы ‘Что оно делает?’ и ‘ Из чего оно состоит?’. Ответы на эти вопросы представляют собой функциональный и структурный аспект описания объекта. Исторически так сложилось, что при проектировании новых объектов структурный аспект отражается в виде схем (принципиальные электрические схемы, механические схемы, комбинированные схемы и т.п.). Так вот CASE -технологии иначе еще называют структурным системным анализом, что отражает тот факт, что и функционирование объекта (в рассматриваемом случае разрабатываемого ПО) отражается в различных схемах, таблицах, диаграммах, матрицах, картах и т.п. Можно смело утверждать, что девизом разработчиков CASE -технологий является фраза ‘одна картинка стоит тысячи слов’.

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

Большинство CASE -технологий основано на парадигме методология/метод/нотация/ средство. Понятия методологии и метода мы с Вами уже давали.

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

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

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

DFD (Data Flow Diagrams ) - диаграммы потоков данных, совместно со словарями данных и спецификациями процессов или миниспецификациями;

ERD (Entity-Relationship Diagrams) - диаграммы ‘ сущность - связь ’;

STD (State Transition Diagrams ) - диаграммы переходов состояний.

Современные структурные методологии анализа и проектирования классифицируются по следующим признакам:

по отношению к школам - Software Engineering (SE) и Information Engineering (IE);

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

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

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

Информационные системы

Системы реального времени

Управляются данными

Управляются событиями

Сложные структуры данных

Простые структуры данных

Большой объем

Входных данных

Малое количество

Входных данных

Интенсивный ввод-вывод

Интенсивные вычисления

Машинная независимость

Машинная зависимость

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

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

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

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

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

Анализ и проектирование . Средства данной группы применяют для создания спецификаций системы и ее проектирования, они поддерживают методологии SE и IE :

  • CASE - аналитик (Эйтекс);
  • POSE (Computer Systems Advisers);
  • Design/IDEF (Meta Software);
  • BPWin (Logic Works);
  • SELECT (Select Software Tools);
  • CASE/4/0 (micro TOOl GmbH)

и ряд других средств.

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

  • ERWin (Logic Works);
  • S-Designor (SPD);
  • Designtr/2000 (Oracle);
  • Sillverrun (Computer Systems Advisers)/

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

  • COBOL 2/Workbench (Mikro Focus);
  • DECASE (DEC);
  • NETRON/CAP (Netron);
  • APS (Sage Softwfre).

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

Сопровождение и реинжениринг . Сюда относят документаторы, анализаторы программ, средства реструктурирования:

  • Adpac CASE Tools (Adpac);
  • Scan/COBOL и SuperStructure (Computer Data Systems):
  • Inshtctor/Recoder (language Tecnologe).

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


А также другие работы, которые могут Вас заинтересовать

54957. Гуситское движение в Чехии 62.5 KB
Вооруженная борьба гуситов. Крестовые походы против гуситов. Вооружение и способы борьбы гуситов. Вооруженная борьба гуситов.
54958. Причины и социально-экономические последствия инфляции. Антиинфляционная политика государства 18.02 KB
Как свидетельствует опыт, остановить инфляцию с помощью одних организационных мер весьма трудно, если не сказать невозможно. Для этого необходима структурная реформа, направленная на преодоление возникших в экономике диспропорций.
54959. Пусть всегда будет солнце 62.5 KB
Вид урока Комбинированный Тип урока Комплексный урок Государственный социальный заказ Во исполнение Закона Российской Федерации Об образовании; Закона О развитии образования в городе Москве; Конвенции о правах ребенка;...
54960. ВЫРЕЗАНИЕ ИЗ БУМАГИ 69 KB
Цели: Обучающая: Способствовать формированию представления о таком виде декоративно прикладного искусства как вырезание из бумаги. Слайды 18 Сейчас вы можете назвать мне тему нашего урока ответы детей Правильно вырезание из бумаги слайд 9 Но давайте нашему уроку придумаем красивое название...
54961. Материки и океаны 65.5 KB
План урока Этапы урока Задачи этапов Деятельность учителя Деятельность учащихся Методы и приемы Формы работы Средства обучения Самоопределение в деятельности Настрой учащихся на работу активизация познавательных мотивов учащихся создание психологического комфорта в классе...
54962. 41.5 KB
Прыжки и их разновидности: на двух ногах на правой ноге на левой ноге 1мин 5 мин 3мин 2мин Обратить внимание на внешний вид занимающихся Плечи чуть наклонены вперед Темп движения быстрый руки согнуты ноги не соединять Руки на поясе...
54963. Национальный и религиозный состав населения России 60.1 KB
Цели: познакомить обучающихся с особенностями национального и религиозного состава населения России. Задачи: образовательные: изучить особенности национального и религиозного состава населения страны языковые семьи и группы; познакомить с национальным составом населения Республики Коми; развивающие: продолжить работу над развитием умения анализировать статистический материал работать с дополнительными источниками; воспитательные: воспитывать гражданственность...
54964. Разработки уроков по информатике 2.39 MB
Планконспект урока Презентация к уроку Дополнительный материал 2 2 Информация Теория Практика Понятие информации свойства информации единицы измерения объема информации. Планконспект урока Презентация к уроку Дополнительный материал 3 3 Кодирование информации в компьютере Теория Практика Кодирование и декодирование. Планконспект урока Презентация к уроку Дополнительный материал 4 4 Информационная деятельность человека Теория Практика Сбор обработка передача хранение поиск и защита информации. Планконспект урока Презентация к уроку...
54965. Алфавит 64.5 KB
Буквы значки как бойцы на парад в строгом порядке построены в ряд. Подумайте почему мы прописали именно эти две буквы Первая и последняя буквы алфавита С новой строки пишем соединения букв ал лф фа ав ви ит. С новой строки с маленькой буквы пишем слово алфавит. Беседа Алфавит или азбука это все буквы расположенные в определенном строгом порядке.

МИНИСТЕРСТВО КУЛЬТУРЫ РОССИЙСКОЙ ФЕДЕРАЦИИ

ТАМБОВСКИЙ ФИЛИАЛ

федерального государственного образовательного учреждения

высшего профессионального образования

«Московский государственный университет культуры и искусств»

Кафедра прикладной информатики

Алексей Сергеевич Боярский

CASE-технологии

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

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

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

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

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

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

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

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

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

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

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

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

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

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

· CASE-средства не обязательно дают немедленный эффект; он может быть получен только спустя какое-то время;

· реальные затраты на внедрение 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)).

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

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

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

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

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

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

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

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

· Технология. Понимание ограниченности существующих возможностей и способность принять новую технологию;

· Культура. Готовность к внедрению новых процессов и взаимоотношений между разработчиками и пользователями;

· Управление. Четкое руководство и организованность по отношению к наиболее важным этапам и процессам внедрения.

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

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

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

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

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

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

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

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

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

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

· высокий уровень технологической поддержки процессов разработки и сопровождения ПО;

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

· приемлемый уровень отдачи от инвестиций в CASE-средства.

· определение потребностей в CASE-средствах;

· оценка и выбор CASE-средств;

· выполнение пилотного проекта;

· практическое внедрение CASE-средств.

Определение потребностей в CASE-средствах можно проиллюстрировать следующей диаграммой (рис. 1).

Рисунок 1 – Схема определения потребностей в CASE-средствах

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

Процесс оценки и выбора CASE-средств можно рассмотреть в виде модели. Этот процесс может преследовать несколько целей и включать:

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

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

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

Ниже приведена диаграмма, описывающая наиболее общую ситуацию оценки и выбора, а также показывает зависимость между ними (рис. 2).

Рисунок 2 – Схема оценки и выбора CASE-средств

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

1. подтвердить достоверность результатов оценки и выбора;

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

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

4. приобрести собственный опыт использования CASE-средства.

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

Рисунок 3 – Схема реализации пилотного проекта

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

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

План перехода должен включать следующее:

· Информацию относительно целей, критериев оценки, графика и возможных рисков, связанных с реализацией плана.

· Информацию относительно приобретения, установки и настройки CASE-средств.

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

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

· Определение стандартных процедур использования средств.

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

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

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

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

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

· использованное время;

· время, выделенное персонально для конкретных специалистов;

· размер, сложность и качество ПО;

· удобство сопровождения.

Еще до начала внедрения CASE-средств метрическая оценка должна начинаться с реальной оценки текущего состояния среды и поддерживать процедуры постоянного накопления данных.

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

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

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

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

1. Вендров А.М. Один из подходов к выбору средств проектирования баз данных и приложений. - "СУБД", 2006, № 3.

2. Зиндер Е.З. Бизнес-реинжиниринг и технологии системного проектирования. Учебное пособие. - М., Центр Информационных Технологий, 2007.

3. Калянов Г.Н. CASE. Структурный системный анализ (автоматизация и применение). - М., "Лори", 2004.

4. Марка Д.А., МакГоуэн К. Методология структурного анализа и проектирования. М., "МетаТехнология", 2003.

5. Создание информационной системы предприятия. "Computer Direct", 2007, № 2.

6. Горин С.В., Тандоев А.Ю. Применение CASE-средства для информационного моделирования в системах обработки данных. – СПб, 2005, № 3.

7. Горин С.В., Тандоев А.Ю. CASE-средства для разработки структуры базы данных. - СПб, 2006, № 1.

Аббревиатура CASE расшифровывается как Computer Aided Software Engineering.

Case-studiеs - учебные конкретные ситуации специально разрабатываемые на основе фактического материала с целью последующего разбора на учебных занятиях. В ходе разбора ситуаций обучающиеся учатся действовать в «команде», проводить анализ и принимать управленческие решения. Название произошло от латинского термина «казус» -- запутанный или необычный случай. Главная особенность метода -- изучение студентами прецедентов, т.е. имевшихся в прошлом ситуаций из деловой практики.

Существуют различные обозначения этой технологии. В зарубежных публикациях можно встретить названия: метод изучения ситуации, метод деловых историй и, наконец, просто метод кейсов. В российских изданиях чаще всего говорится о методе анализа конкретных ситуаций (АКС), деловых ситуаций, кейс-методе, ситуационных задачах, а в 2001 году американские исследователи Эткинсона Дж., Уилсона Й. в своей книге: «Стратегический маркетинг. Ситуации. Примеры» ввели впервые понятие - «ситуационные задачи».

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

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

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

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

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

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

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

Признаки метода case-study:

  • 1. Наличие модели социально-экономической системы, состояние которой рассматривается в некоторый дискретный момент времени.
  • 2. Коллективная выработка решений.
  • 3. Многоальтернативность решений; принципиальное отсутствие единственного решения.
  • 4. Единая цель при выработке решений.
  • 5. Наличие системы группового оценивания деятельности.
  • 6. Наличие управляемого эмоционального напряжения обучаемых.

Технологические особенности метода case-study

  • 1. Метод представляет собой специфическую разновидность исследовательской аналитической технологии, т.е. включает в себя операции исследовательского процесса, аналитические процедуры.
  • 2. Метод case-study выступает как технология коллективного обучения, важнейшими составляющими которой выступают работа в группе (или подгруппах) и взаимный обмен информацией.
  • 3. Метод case-study в обучении можно рассматривать как синергетическую технологию, суть которой заключается в подготовке процедур погружения группы в ситуацию, формировании эффектов умножения знания, инсайтного озарения, обмена открытиями и т.п.
  • 4. Метод case-study интегрирует в себе технологии развивающего обучения, включая процедуры индивидуального, группового и коллективного развития, формирования многообразных личностных качеств обучаемых.
  • 5. Метод case-study выступает как специфическая разновидность проектной технологии. В обычной обучающей проектной технологии идет процесс разрешения имеющейся проблемы посредством совместной деятельности студентов, тогда как в методе case-study идет формирование проблемы и путей ее решения на основании кейса, который выступает одновременно в виде технического задания и источника информации для осознания вариантов эффективных действий.
  • 6. Метод case-study концентрирует в себе значительные достижения технологии «создания успеха». В нем предусматривается деятельность по активизации студентов, стимулирование их успеха, подчеркивание достижений обучаемых. Именно достижение успеха выступает одной из главных движущих сил метода, формирования устойчивой позитивной мотивации, наращивание познавательной активности.

Основная функция метода case-study - учить студентов решать сложные неструктурированные проблемы, которые не возможно решить аналитическим способом. Кейс активизирует студентов, развивает аналитические и коммуникативные способности, оставляя обучаемых один на один с реальными ситуациями.

Использование метода case-study имеет явные преимущества перед простым изложением материала, широко используемым в традиционной педагогике высшей школы России. Однако не стоит полагать, что кейсы могут заменить лекции. По мнению преподавателя Американского института бизнеса и экономики (AIBEc) в Москве Питера Эксмана нельзя тратить все свое время только на разбор конкретных примеров, потому что это формирует стереотипный, предвзятый подход к решению сходных проблем, и студент будет не в состоянии подняться на более высокий уровень обобщения. Кейсы показывают, как на практике применяются экономические теории; ценность таких упражнений, если они не имеют теоретической «начинки», невелика3.

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

Метод case-study относят к одному из «продвинутых» активных методов обучения. К преимуществам метода case-study можно отнести:

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

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

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

Место метода case-study в российской системе высшего профессионального образования далеко не однозначно. Можно сформулировать стратегические принципы развития метода case-study и внедрения его в образовательные программы:

  • 1. Метод case-study необходимо как можно быстрее внедрить в программы подготовки специалистов по современным рыночным специальностям, в которых доминирует ситуационное знание и ситуационная деятельность, таким как менеджмент, экономика, социология, маркетинг и т.п.
  • 2. Активизировать использование метода case-study в системе дополнительного профессионального образования, особенно при реализации программ профессиональной переподготовки.
  • 3. Метод case-study необходимо использовать в органическом единстве с другими методами обучения, в том числе традиционными, закладывающими у студентов обязательное нормативное знание. Ситуационное обучение учит поиску и использованию знания в условиях динамичной ситуации, развивая гибкость, диалектичность мышления; чрезмерное увлечение ситуационным анализом может привести к тому, что будущий специалист окажется без необходимого «нормативного скелета», все его знания будет сводиться к знанию множества ситуаций без определенного методологического принципа или системы.
  • 4. Применение метода case-study должно быть методически обосновано и обеспечено. Это необходимо как на уровне организации учебного процесса по образовательной программе в целом, так и на уровне планирования его отдельным преподавателем. Необходима экспертная оценка специальностей, учебных дисциплин и их разделов, где применение метода case-study дает гораздо больший эффект, чем традиционные технологии обучения. Эти вопросы должны быть предметом обсуждения на методическом совете и являться целью повышения квалификации преподавателей.

Типы и жанры кейсов, способы их представления

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

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

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

  • - обучающие анализу и оценке;
  • - обучающие решению проблем и принятию решений;
  • - иллюстрирующие проблему, решение или концепцию в целом.

Заслуживает внимания классификация кейсов, приведенная Н. Федяниным и В. Давиденко, хорошо знакомыми с зарубежным опытом использования метода case-study:

  • - структурированный (highly structured) “кейс”, в котором дается минимальное количество дополнительной информации; при работе с ним студент должен применить определенную модель или формулу; у задач этого типа существует оптимальное решение;
  • - “маленькие наброски” (short vignetts), содержащие, как правило, от одной до десяти страниц текста и одну-две страницы приложений; они знакомят только с ключевыми понятиями и при их разборе студент должен опираться еще и на собственные знания;
  • - большие неструктурированные “кейсы” (long unstructured cases) объемом до 50 страниц - самый сложный из всех видов учебных заданий такого рода; информация в них дается очень подробная, в том числе и совершенно ненужная; самые необходимые для разбора сведения, наоборот, могут отсутствовать; студент должен распознать такие «подвохи» и справиться с ними;
  • - первооткрывательские “кейсы” (ground breaking cases), при разборе которых от студентов требуется не только применить уже усвоенные теоретические знания и практические навыки, но и предложить нечто новое, при этом студенты и преподаватели выступают в роли исследователей.

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

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

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

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

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

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

В зависимости от того, кто выступает субъектом кейса, их можно условно разделить на:

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

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

Бывают кейсы с приложениями и без приложений; кейсы с приложениями обычно предполагают формирование навыков расчетов и анализа статистической информации.

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

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

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

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

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

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

САSE-ToolKits и CASE-WorkBenches . Хороших русских эквивалентов этим терминам нет. Однако первые часто называют «инструментальными сундучками» (пакетами разработчика, технологическими пакетами), а вторые - «станками для производства программ» (технологическими линиями).

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

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

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

Таким образом, CASE-WorkBench является естественным «замыканием» технологии разработки, реализации и сопровождения программного обеспечения.

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

Рис. 14. Функциональные возможности типовой системы поддержки CASE-технологии

Как следует из рис. 14, в CASE-среде должны поддерживаться все основные этапы разработки и сопровождения процессов создания программных систем. Однако уровень такой поддержки существенно различен. Так, например, если говорить об этапах анализа и проектирования, большинство инструментальных пакетов поддерживает экранные и отчетные формы, создание прототипов, обнаружение ошибок. Значительная часть этих средств предназначена для ПЭВМ. Многие поддерживают такие широко используемые методологии, как структурный анализ DeMarco или Gane/Sarson, структурное проектирование Yourdan/Jackson и некоторые другие. Существуют специализированные пакеты разработчиков для создания информационных систем, например AnaTool (Advanced Logical Software) для Macintosh; CA-Universe/Prototype (Computer Associates International) для ПЭВМ. Имеются CASE-среды и для поддержки разработки систем реального времени.

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

В процессе создания проекта выделяют следующие этапы:

Формирование требований, разработка и выбор варианта концепции системы;

Разработка и утверждение технического задания на систему;

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

Рабочее проектирование, предполагающее разработку и отладку программы; описание структуры базы данных; создание документации на поставку и установку технических средств;

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

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

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

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

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

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

Описание информационных потоков в учреждении во многих CASE-системах производится с помощью ER-модели (Entiti-Relationship - модель «сущность - связь»). Порядок построения такой модели и используемые при этом абстракции определяются CASE-методом, без освоения которого CASE-технология не может быть применена в полном объеме. Учитывая дороговизну CASE-систем, российские специалисты, усвоив CASE-метод, создают свои инструментальные средства для описания ER-моделей и баз данных.

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

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

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

Основные достоинства CASE-технологии:

Повышение производительности труда программистов на несколько порядков,

Возможность формализовать документирование и администрирование проектов,

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

Ускорение обучения персонала и использование программного обеспечения в полном объеме,

Постоянное обновление и модернизация пользовательских программ.

Наиболее известной в России в настоящее время является CASE-система Oracle, позволяющая создавать приложения на базе одноименной СУБД. В ее основе лежит CASE-метод проектирования сети «сверху вниз» - от наиболее общих решений к частным. Этапы в Oracle выглядят следующим образом :

Выработка стратегии;

Анализ объекта;

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

Реализация;

Внедрение;

Эксплуатация.

ER-модель строится на этапе анализа объекта, а СУБД -на этапе проектирования.

CASE-система Oracle состоит из инструментальных средств CASE*Dictionary (для графического представления модулей предметной области); CASE*Generator (для автоматического генерирования программных модулей).

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

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