Jump to content

Компьютерная разработка программного обеспечения

Пример CASE-инструмента

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

История [ править ]

Проект «Система проектирования и оптимизации информационных систем» (ISDOS), стартовавший в 1968 году в Мичиганском университете , вызвал большой интерес ко всей концепции использования компьютерных систем для помощи аналитикам в очень сложном процессе анализа требований и разработки систем. Несколько статей Дэниела Тейхроу вдохновили целое поколение энтузиастов потенциалом разработки автоматизированных систем. Его инструмент «Язык постановки задач» / «Анализатор постановки задачи» (PSL/PSA) был инструментом CASE, хотя и появился раньше этого термина. [3]

Другой важный поток возник как логическое расширение словаря данных базы данных . Расширив диапазон хранимых метаданных , атрибуты приложения можно хранить в словаре и использовать во время выполнения. Этот «активный словарь» стал предшественником более современных инженерных возможностей, основанных на моделях . Однако активный словарь не обеспечивал графического представления каких-либо метаданных. Именно объединение концепции словаря, содержащего метаданные аналитиков, полученного в результате использования интегрированного набора методов, с графическим представлением таких данных привело к появлению более ранних версий CASE. [4]

Следующим участником рынка стал Excelerator из компании Index Technology в Кембридже, штат Массачусетс. В то время как DesignAid работал на сетевых микрокомпьютерах Convergent Technologies, а затем и Burroughs Ngen, Index запустил Excelerator на платформе IBM PC/AT . Хотя на момент запуска и в течение нескольких лет платформа IBM не поддерживала сеть или централизованную базу данных, как это делали машины Convergent Technologies или Burroughs, привлекательность IBM была велика, и Excelerator приобрел известность. По пятам за Excelerator последовала масса предложений от таких компаний, как Knowledgeware (Джеймс Мартин, Фрэн Таркентон и Дон Аддингтон), CA Gen от Texas Instrument и набор инструментов FOUNDATION от Andersen Consulting (DESIGN/1, INSTALL/1, FCP). [5]

Инструменты CASE достигли своего пика в начале 1990-х годов. [6] По данным журнала PC Magazine за январь 1990 года, более 100 компаний предлагали около 200 различных инструментов CASE. [5] В то время IBM предложила AD/Cycle, который представлял собой альянс поставщиков программного обеспечения, основанный на репозитории программного обеспечения IBM , использующем IBM DB2 в мэйнфреймах и OS/2 :

Инструменты разработки приложений могут быть получены из нескольких источников: от IBM, от поставщиков и от самих клиентов. IBM установила отношения с Bachman Information Systems, Index Technology Corporation и Knowledgeware, в рамках которых избранные продукты этих поставщиков будут продаваться через дополнительную маркетинговую программу IBM, чтобы предоставлять предложения, которые помогут достичь полного охвата жизненного цикла . [7]

С упадком мэйнфреймов инструменты AD/Cycle и Big CASE прекратили свое существование, открыв рынок для основных сегодняшних инструментов CASE. Многие лидеры рынка CASE начала 1990-х годов в конечном итоге были куплены Computer Associates , включая IEW, IEF, ADW, Cayenne и Learmont & Burchett Management Systems (LBMS). Другой тенденцией, которая привела к развитию CASE-инструментов, стал рост объектно-ориентированных методов и инструментов. Большинство поставщиков различных инструментов добавили некоторую поддержку объектно-ориентированных методов и инструментов. Кроме того, появились новые продукты, разработанные снизу вверх для поддержки объектно-ориентированного подхода. Андерсен разработал свой проект Eagle как альтернативу Foundation. Каждый из нескольких лидеров объектно-ориентированной разработки разработал свою собственную методологию и набор инструментов CASE: Джейкобсон, Рамбо, Буч и т. д. В конечном итоге эти разнообразные наборы инструментов и методы были объединены с помощью стандартов, возглавляемых Object Management Group (OMG). OMG Единый язык моделирования (UML) в настоящее время широко принят в качестве отраслевого стандарта объектно-ориентированного моделирования. [ нужна ссылка ]

Программное обеспечение CASE [ править ]

Инструменты [ править ]

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

  1. Бизнес-моделирование и аналитическое моделирование: инструменты графического моделирования. Например, моделирование E/R, моделирование объектов и т. д.
  2. Разработка: Этапы проектирования и строительства жизненного цикла. Отладочные среды. Например, ИИСЕ ЛКО .
  3. Верификация и валидация : анализ кода и спецификаций на предмет корректности , производительности и т. д.
  4. Управление конфигурацией: контроль возврата и извлечения объектов и файлов репозитория. Например, SCCS , IISE.
  5. Метрики и измерения: анализируйте код на предмет сложности, модульности (например, отсутствие «переходов»), производительности и т. д.
  6. Управление проектами: Управление планами проектов, назначением задач, планированием.

Другой распространенный способ отличить инструменты CASE — это различие между Upper CASE и Lower CASE. Инструменты Upper CASE поддерживают моделирование бизнеса и анализа. Они поддерживают традиционные языки диаграмм, такие как диаграммы ER , диаграммы потоков данных , структурные диаграммы , деревья решений , таблицы решений и т. д. Инструменты нижнего регистра поддерживают такие действия по разработке, как физическое проектирование, отладка, построение, тестирование, интеграция компонентов, обслуживание и реверс. инженерия. Все остальные действия охватывают весь жизненный цикл и в равной степени применимы как к верхнему, так и к нижнему регистру. [8]

Верстаки [ править ]

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

  • Однородный и последовательный интерфейс (интеграция презентаций)
  • Бесшовная интеграция инструментов и цепочек инструментов (интеграция управления и данных)

Примером рабочей среды является среда программирования Microsoft Visual Basic . Он включает в себя несколько инструментов разработки: конструктор графического пользовательского интерфейса, интеллектуальный редактор кода, отладчик и т. д. Большинство коммерческих продуктов CASE, как правило, представляют собой такие рабочие среды, которые легко интегрируют два или более инструментов. Верстаки также можно классифицировать так же, как и инструменты; как сосредоточение внимания на анализе, разработке, проверке и т. д., а также на прописных и строчных буквах или таких процессах, как управление конфигурацией, которые охватывают полный жизненный цикл.

Окружающая среда [ править ]

Среда — это набор CASE-инструментов или рабочих мест, которые пытаются поддерживать полный процесс разработки программного обеспечения. Это контрастирует с инструментами, которые сосредоточены на одной конкретной задаче или определенной части жизненного цикла. Среды CASE классифицируются Fuggetta следующим образом: [9]

  1. Наборы инструментов: Слабо связанные наборы инструментов. Обычно они основаны на инструментах операционной системы, таких как Unix Programmer's Workbench или набор VMS VAX. Обычно они выполняют интеграцию через конвейер или какой-либо другой базовый механизм для обмена данными и передачи управления. Сила простой интеграции также является одним из недостатков. Простая передача параметров с помощью таких технологий, как сценарии оболочки, не может обеспечить такую ​​сложную интеграцию, которую может обеспечить общая база данных репозитория.
  2. Четвертое поколение: эти среды также известны как 4GL, что означает языковые среды четвертого поколения, поскольку ранние среды были разработаны на основе определенных языков, таких как Visual Basic. Это были первые среды, обеспечивающие глубокую интеграцию нескольких инструментов. Обычно эти среды были ориентированы на конкретные типы приложений. Например, приложения, управляемые пользовательским интерфейсом, которые выполняли стандартные атомарные транзакции с реляционной базой данных. Примерами являются Informix 4GL и Focus.
  3. Языко-ориентированный: среды, основанные на одном часто объектно-ориентированном языке, например среда символики Lisp Genera или VisualWorks Smalltalk от Parcplace. В этих средах все ресурсы операционной системы были объектами объектно-ориентированного языка. Это предоставляет мощные возможности отладки и графические возможности, но разрабатываемый код в основном ограничен конкретным языком. По этой причине эти среды в основном были нишей внутри CASE. Их использовали в основном для прототипирования и научно-исследовательских проектов. Общей основной идеей для этих сред был пользовательский интерфейс модель-представление-контроллер , который позволял поддерживать соответствие нескольких презентаций одного и того же дизайна базовой модели. Архитектура MVC была принята другими типами сред CASE, а также многими приложениями, созданными с их помощью.
  4. Интеграция. Эти среды являются примером того, о чем большинство ИТ-специалистов обычно думают в первую очередь, когда думают о CASE. Такие среды, как AD/Cycle от IBM, FOUNDATION от Andersen Consulting, система ICL CADES и DEC Cohesion. Эти среды пытаются охватить полный жизненный цикл от анализа до обслуживания и предоставляют интегрированный репозиторий базы данных для хранения всех артефактов процесса разработки программного обеспечения. Интегрированный репозиторий программного обеспечения был определяющей особенностью инструментов такого типа. Они предоставили множество различных моделей дизайна, а также поддержку кода на гетерогенных языках. Одной из основных целей этих типов сред было «туда-обратное проектирование»: возможность вносить изменения на уровне проекта и автоматически отражать их в коде, и наоборот. Эти среды также обычно ассоциировались с определенной методологией разработки программного обеспечения. Например, пакет FOUNDATION CASE от Andersen был тесно связан с методологией Andersen Method/1.
  5. Ориентированность на процессы: это наиболее амбициозный тип интеграции. Эти среды пытаются не просто формально определить объекты анализа и проектирования процесса разработки программного обеспечения, но и сам процесс, а также использовать этот формальный процесс для контроля и управления проектами программного обеспечения. Примерами являются East, Enterprise II, Process Wise, Process Weaver и Arcadia. Эти среды по определению были привязаны к некоторой методологии, поскольку сам программный процесс является частью среды и может контролировать многие аспекты вызова инструментов.

На практике различие между рабочими местами и средами было гибким. Например, Visual Basic был средой программирования, но многие также считали его средой 4GL. Особенностями, которые отличали рабочие места от сред, были глубокая интеграция через общий репозиторий или общий язык, а также определенная методология (интегрированные и процессно-ориентированные среды) или специфика предметной области (4GL). [9]

риска CASE Основные факторы

Некоторые из наиболее значимых факторов риска для организаций, внедряющих технологию CASE, включают:

  • Неадекватная стандартизация: организациям обычно приходится адаптировать и внедрять методологии и инструменты в соответствии со своими конкретными требованиями. Это может потребовать значительных усилий по интеграции как расходящихся технологий, так и расходящихся методов. Например, до принятия стандарта UML соглашения о диаграммах и методы проектирования объектно-ориентированных моделей сильно различались среди последователей Якобсена, Буха и Рамбо.
  • Нереалистичные ожидания. Сторонники технологии CASE, особенно поставщики, продающие дорогие наборы инструментов, часто раздувают надежды, что новый подход станет панацеей, решающей все проблемы. На самом деле ни одна такая технология не может этого сделать, и если организации подходят к CASE с нереалистичными ожиданиями, они неизбежно будут разочарованы.
  • Недостаточное обучение. Как и любая новая технология, CASE требует времени, чтобы обучить людей тому, как использовать инструменты и освоиться с ними. CASE-проекты могут потерпеть неудачу, если специалистам-практикам не будет предоставлено достаточно времени для обучения или если первый проект с использованием новой технологии сам по себе является критически важным и сопряжен с риском.
  • Недостаточный контроль процесса: CASE предоставляет значительные новые возможности для инновационного использования новых типов инструментов. Без надлежащего руководства процессом и контроля эти новые возможности могут также вызвать новые серьезные проблемы. [10]

См. также [ править ]

Ссылки [ править ]

  1. ^ Кун, DL (1989). «Выбор и эффективное использование инструмента компьютерной разработки программного обеспечения». Ежегодный компьютерный симпозиум Westinghouse; 6–7 ноября 1989 г.; Питтсбург, Пенсильвания (США); Проект МО.
  2. ^ П. Лукопулос и В. Каракостас (1995). Системные требования Инженерное программное обеспечение, которое будет работать эффективно.
  3. ^ Тейхроу, Дэниел; Херши, Эрнест Аллен (1976). «PSL/PSA — автоматизированный метод структурированной документации и анализа систем обработки информации» . Труды ICSE '76 Материалы 2-й Международной конференции по программной инженерии . Издательство Компьютерного общества IEEE.
  4. ^ Коронель, Карлос; Моррис, Стивен (4 февраля 2014 г.). Системы баз данных: проектирование, внедрение и управление . Cengage Обучение. стр. 695–700. ISBN  978-1285196145 . Проверено 25 ноября 2014 г.
  5. ^ Jump up to: Перейти обратно: а б Inc, Зифф Дэвис (30 января 1990 г.). ПК Маг . Зифф Дэвис, Инк. {{cite book}}: |last= имеет общее имя ( справка )
  6. ^ Юрдон, Эд (23 июля 2001 г.). «Могут ли проекты XP расти?» . Компьютерный мир . Проверено 25 ноября 2014 г.
  7. ^ «Стратегия и архитектура AD/Cycle», IBM Systems Journal, Том 29, № 2, 1990; п. 172.
  8. ^ Программная инженерия: инструменты, принципы и методы, Сангита Сабхарвал, Umesh Publications
  9. ^ Jump up to: Перейти обратно: а б Альфонсо Фуггетта (декабрь 1993 г.). «Классификация CASE-технологий» . Компьютер . 26 (12): 25–38. дои : 10.1109/2.247645 . S2CID   954775 . Проверено 14 марта 2009 г.
  10. ^ Компьютерная разработка программного обеспечения. Архивировано 20 января 2012 г. в Wayback Machine . В: Справочник по ИТ-экзаменам FFIEC, информационная база . Проверено 3 марта 2012 г.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 4a03c3eb2c95c395e2bd5095d812edbf__1713788760
URL1:https://arc.ask3.ru/arc/aa/4a/bf/4a03c3eb2c95c395e2bd5095d812edbf.html
Заголовок, (Title) документа по адресу, URL1:
Computer-aided software engineering - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)