Учебники

Главная страница


Банковское дело
Государственное управление
Культурология
Журналистика
Международная экономика
Менеджмент
Туризм
Философия
История экономики
Этика и эстетика


5.5. Средства разработки сегодня

  Ниже мы кратко перечислим основные категории средств, которые применяются сегодня различными участниками проектов, связанных с разработкой приложений.
  Средства управления требованиями
  Управление требованиями - одна из самых важных составных частей процесса разработки. От полноты и точности формулировки требований заказчика проекта во многом зависит объем работы, которую придется переделывать.
  Как правило, требования формулируются просто в виде текстового документа (например, технического задания), однако, сегодня все большее распространение получают средства управления требованиями, позволяющие в течение проекта отслеживать состояние работы над требованием, связать требование с реализующими его модулями и с тестами, проверяющими, удовлетворяет ли продукт данному требованию.
  Из наиболее часто применяющихся в мире средств управления требованиями следует отметить Rational Requisite Pro (IBM, www.ibm.com), Borland CaliberRM (Borland, www.borland.com) и Telelogic DOORS (Telelogic, www.telelogic.com). Эти продукты обладают теми или иными средствами интеграции с другими инструментами поддержки жизненного цикла приложений и позволяют генерировать различные документы, содержащие требования к продукту (например, техническое задание или его аналоги). Отметим, что указанные категории инструментов применяются, как правило, в компаниях- разработчиках или в отделах разработки, хотя иногда заказчикам предоставляется упрощенный интерфейс для доступа к хранилищу требований (например, с помощью Web-интерфейса).
  Средства моделирования бизнес-процессов, приложений и данных
  Моделирование и проектирование данных также является достаточно важной частью создания готового продукта и применяется во многих компаниях. Инструменты для поддержки этого этапа жизненного цикла приложений можно условно разделить на средства моделирования бизнес-процессов, средства проектирования данных и средства объектно-ориентированного моделирования, при этом многие компании производят инструменты указанных категорий, интегрирующиеся между собой, либо реализуют функциональность нескольких разнотипных средств моделирования в одном продукте. В последнее время подобные инструменты позволяют на основании модели сгенерировать код (серверный или клиентский) или схему базы данных и обладают средствами синхронизации модели с кодом или со структурой базы данных.
  К наиболее известным средствам моделирования и проектирования относятся:
  • AIIFusion Modelling Suite (Computer Associates, www.cai.com), состоящий из нескольких различных инструментов моделирования;
  • Oracle Designer, представляющий собой комплексный инструмент, осуществляющий все перечисленные виды моделирования;
  • Sybase PowerDesigner, представляющий собой инструмент, в состав которого входят средства создания моделей и объектно-ориентированного моделирования;
  • System Architect (Popkm Software), позволяющий осуществлять проектирование данных и структурное моделирование, а также генерировать код клиентских приложений для ряда средств разработки;
  • Visio (Microsoft, www.microsoft.com), представляющий собой универсальное средство моделирования данных и приложений (ориентированное главным образом на СУБД и средства разработки производства самой Microsoft);
  • Rational Rose и Rational XDE Professional (IBM) - популярные средства объектно-ориентированного UML-моделирования приложений, обладающие средствами интеграции как с другими инструментами самой IBM, так и со средствами разработки некоторых других производителей.
  • Together (Borland) - средство UML-моделирования, обладающее на данный момент наиболее совершенными средствами интеграции с различными средствами разработки как компании Borland, так и других производителей (в частности, Microsoft) Перечисленные инструменты обычно применяются в компаниях-разработчиках или в отделах разработки и изредка - специалистами по сопровождению продуктов. Заказчики и конечные пользователи, за редким исключением, обычно не имеют дела с указанной категорией продуктов.
  Отметим, что основная тенденция развития средств моделирования в настоящее время - это появление средств, осуществляющих их интеграцию между собой и с инструментами поддержки других этапов жизненного цикла приложений.
  Средства разработки приложений
  Средства разработки приложений подразделяются на средства создания Java/J2ЕЕ-приложений, средства создания Windows-приложений, средства создания .NET-приложений, инструменты создания приложений для операционных систем, применяющихся в мобильных устройствах, а также на средства создания приложений для различных версий UNIX/Linux и других платформ.
  Из компаний, лидирующих на рынке средств разработки Java-приложений, следует отметить Borland, IBM, Oracle, а к наиболее популярным средствам создания приложений для платформ Windows и Microsoft .NET можно отнести Visual Studio .NET и Borland Delphi. Существует также немало инструментов, относящихся к категории Open Source, в частности, предназначенных для расширяемой среды Eclipse, которая в настоящее время активно поддерживается корпорацией IBM.
  В последнее время производители средств разработки особое внимание уделяют инструментам повышения производительности труда разработчиков, поддержки коллективной работы, повторному использованию моделей и кода, а также средствам интеграции с инструментами поддержки других этапов жизненного цикла приложений. Данная категория инструментов применяется в компаниях-разработчиках или в отделах разработки, изредка используется специалистами по сопровождению программного обеспечения. За редким исключением, она не применяется ни заказчиками, ни конечными пользователями.
  Средства тестирования и оптимизации приложений
  На этапе тестирования проверяется, удовлетворяет ли приложение сформулированным к нему требованиям, и в продукт вносятся изменения, устраняющие выявленные при тестировании недостатки.
  Из наиболее популярных средств тестирования и оптимизации в первую очередь следует отметить набор средств тестирования компании IBM/Rational, инструмент Borland Optimized Profiler, интегрирующийся в различные среды разработки, средства тестирования компаний Compuware (www.compuware. com) и Mercury (www mercury com).
  Характерной особенностью современных средств тестирования является возможность интеграции их со средствами разработки приложений, средствами управления требованиями и иногда - со средствами управления изменениями, а также появление интегрированных сред управления процессом тестирования. Указанная категория инструментов применяется в компаниях-разработчиках или в отделах разработки, а также в обслуживающих их специализированных тестовых лабораториях.
  Средства управления коллективной работой и контроля версий
  Средства управления коллективной работой применяются на различных этапах создания приложений и подразделяются на средства управления задачами и проектами, средства контроля версий кода, моделей и документов, средства конфигурационного управления.
  Из средств контроля версий наиболее популярными считаются Merant PVCS Version Manager и Microsoft Visual SourceSafe, а из средств управления проектами в первую очередь следует отметить семейство продуктов Microsoft Project. Из средств конфигурационного управления прежде всего нужно назвать Borland StarTeam, a также ряд инструментов компании IBM.
  Современные средства управления коллективной работой характеризуются, как правило, наличием централизованного репозитария, хранящего составные части проекта, и средств интеграции с другими инструментами управления жизненным циклом приложений. Применяются они чаще всего в компаниях - разработчиках или в отделах разработки, но нередко к таким инструментам обращаются и заказчики, и специалисты по сопровождению ПО.
  О новых стратегиях и идеях
  Стратегии компаний, лидирующих на рынке средств управления жизненным циклом приложений, таких как Borland, IBM, Microsoft, сейчас во многом сходны. Основная цель стратегий этих компаний - повышение количества успешных проектов, процент которых, по данным многих аналитических компаний, до неприличия низок (статистические данные, цитируемые представителями этих компаний, свидетельствуют о том, что 70 % проектов выходит за рамки времени, 66 % проектов недостаточно успешны, а 30 % проектов прекращаются в процессе выполнения)
  Названия стратегий лидеров данного сегмента рынка могут быть разными - Software Delivery Optimization, Software Factory, On Demand Business, однако, лежащие в их основе идеи более или менее сходны. Эти идеи (и вытекающие из них задачи) включают преодоление барьеров не только между исполнителями проекта, но и между исполнителями и заказчиками, разработчиками и специалистами по эксплуатации и сопровождению продуктов, создателями продукта и конечными пользователями, подтверждая тем самым уже свершившийся для многих проектов факт вовлечения в процесс разработки не только исполнителей, но и заказчиков, и конечных пользователей, и ИТ-специалистов, отвечающих за эксплуатацию созданного ПО.
  Еще одна идея всех подобных стратегий заключается в том, что процесс создания программного обеспечения следует рассматривать как бизнес-процесс и, как и любой другой бизнес-процесс, оптимизировать его соответствующим образом, так же, как оптимизированы процессы управления производством.
  В последние пять лет довольно много внимания уделяется не просто быстрой разработке качественного ПО, но и более глобальному управлению этим процессом. Например, именно сейчас руководителям компаний-разработчиков и отделов разработки ПО приходится принимать решения о прекращении работы над неуспешным проектом, управлять портфелем проектов, распределять ресурсы между проектами, решать связанные с этим финансовые и кадровые проблемы. Поэтому серьезное внимание уделяется методологиям управления портфелями проектов и принципам принятия решений об их приоритетности.
  Современный рынок инструментов создания приложений не ограничивается собственно средствами разработки - во многих случаях они играют в процессе разработки далеко не самую главную роль. Кроме того, важной характеристикой современного рынка средств управления жизненным циклом приложений является интеграция этих инструментов между собой и появление наборов средств, исчерпывающих все или почти все задачи, связанные с реализацией проектов по разработке приложений.
  В ближайшее время следует ожидать появления нового поколения инструментов, ориентированных, во-первых, на вовлечение в процесс разработки заказчиков, специалистов по сопровождению ПО и конечных пользователей, а во- вторых, на повышение эффективности планирования и управления группами и отделами разработки в условиях выполнения многих проектов. В дальнейшем же будут созданы средства управления процессом разработки ПО, сходные со средствами управления другими производственными процессами.

 
© www.textb.net