Рассмотрим несколько подробнее функции CaliberRM, поскольку этот инструмент может быть полезен не только в разработке программных продуктов, но также и в любой другой отрасли.
Система состоит из двух компонент - клиентской и серверной части. Прежде чем начать работу, в вашей сети необходимо установить, как минимум, один сервер, доступный всем заинтересованным сторонам,- хотя он и использует в своей работе SQL-сервер, но для пользователей методом доступа является специальный метод CORBA IIOP для доступа к объектной базе данных. Сервер Caliber является сервером CORBA, а в качестве реализации CORBA в него встроен Borland VisiBroker. Настройки параметров сервера Caliber производятся через Control Panel.
Прежде чем клиенты смогут подключаться к серверу, администратор должен создать проект. В обязанности администратора входит также и создание служебных и мета данных: новых типов требований, новых типов документов, пользователей и их групп. Кроме того, с административной консоли можно наблюдать за текущей активностью системы.
Записи пользователей содержат информацию о пользователе, которая впоследствии может быть использована системой: например, адрес электронной почты - для автоматических рассылок и нотификаций по событиям, связанным с тем или иным проектом. Для более эффективного управления пользователи подключаются к группам.
Главной сущностью CaliberRM является проект. С ним связано текстовое описание, список групп, имеющих доступ к проекту, глоссарии и сроки завершения. Важной частью являются связи проекта с другими инструментами, такими как Borland Together, Test Director, SELECT, SCM или Caliber RBT. Быстрый переход между данными в различных системах, отслеживание связей и их автоматическая синхронизация (traceability), является ключевым качеством CaliberRM, существенно влияющим на качество получаемых результатов и общую производительность.
В процессе работы с клиентской частью вы с самого начала создания проекта можете загрузить в него папки для программных, аппаратных и бизнес-требований. Впрочем, ничто не мешает сделать это и позже - гибкость системы поразительна. Вы можете в любой момент создавать классы и подклассы, новые типы требований. При этом вы очень прецизионно настраиваете права доступа к новым классам требований: кто, как и когда будет выполнять с ними те или иные действия, такие как добавление, просмотр и удаление требований в категории. Новый класс может быть доступен как одному, так и сразу нескольким проектам.
Теперь - собственно о требованиях. С требованием связан ряд атрибутов, в частности имя, приоритет, статус. Каждому требованию сопоставлен список ответственных за реализацию данного требования. С требованием связан также список документов - это могут быть спецификации стандартов, рабочие документы типа заметок или докладов и, в конце концов, части программного продукта, такие как файлы исходного текста или файлы графического и мультимедийного контента. Очередная закладка посвящена связям с внешними документами: это трассы к другим точкам в графе требований и внешним данным. Если вы пользуетесь персональным организатором, то такой тип ассоциаций "к чему угодно" вам знаком.
Очень важным - при правильном использовании - является пункт Дискуссия. Это то место, куда все заинтересованные пользователи пишут свои posts, то есть замечания и соображения. Сообщения поступают в общую очередь, и желающие могут обсудить отдельные сообщения, подобно тому, как это происходит в группах новостей.
Для каждого из требований ведется история изменений, реализованная очень изящно: при каждом сохранении элемента требования порождается новая версия, снабженная комментарием и пометками о том, кто и когда внес изменение. На любом этапе вы можете "откатиться" и восстановить в памяти все стадии эволюции отдельного требования или всего проекта.
В результате, используя CaliberRM, вы попадаете в среду, которая управляет вашим "социально значимым поведением" как члена команды. Если до этого в вашей команде и практиковались неформализованные формулировки и нечетко выраженные "пожелания" в процессе работы, то, используя CaliberRM, вы поневоле будете подведены к необходимости четкой формулировки мыслей, а также к ясному пониманию своих обязанностей и автоматической документации всего процесса производства. Результат - повышенная ответственность в рамках компетенции каждого "субъекта разработки", причем не только подчиненных, но также и менеджеров, аналитиков и руководителей.
Другие продукты Borland для групповой разработки
CaliberRM является только первым (хронологически) инструментом для групповой разработки, соответствующий термину "Define" (то есть нацеленный на обнаружение и корректную всестороннюю обработку требований - вне зависимости от того, поступают ли они из внешних источников, таких как отраслевые стандарты, в результате внутреннего тестирования или же, как результат Запросов на Изменения от конечных пользователей системы). Но это только один компонент полного цикла разработки.
Прочие четыре стадии - Design, Develop, Test и Deploy - также нашли свое отражение в продуктах Borland, явно поставившей себе цель снабжать разработчиков полным набором инструментов для всего производственного цикла.
В частности, Borland Together является новейшим инструментом объектного моделирования и проектирования, включающим средства автоматической генерации документации, анализа кода на основе аудита и метрик и интегрированный с новейшими средствами разработки, в частности JBuilder и Delphi 8. Основное преимущество - в использовании дополнительного "среза", дополнительного взгляда на ваш код. Если раньше мы могли синхронно работать с визуальным и текстовым представлением разрабатываемого модуля, то теперь можно параллельно работать также с UML-моделью. При этом, как обычно, осуществляется двусторонняя синхронизация - любые изменения в схеме, тексте или через редактор свойств немедленно получают отражение в других представлениях. Togather предоставляет развитые средства применения шаблонов проектирования (patterns) - благодаря им, вы можете начать работу сразу после установки программы.
Первым интегрированным продуктом, получившим такую функциональность, стал новый резлиз Borland Enterprise Studio for Java. Доступны также версии Together Control Centre для "встраивания" в продукты разработки Borland, и, кроме того, существует версия для синхронизации в Microsoft Visual Studio NET и в оболочки разработки от IBM: Eclipse, Web Sphere и SAP NetWeaver.
Другой продукт, StarTeam, предназначается для автоматизации слежения за версиями, автоматизацией сборки и всем тем, что включает в себя понятие SCCM, то есть Software Configuration and Change Management,- подобно тому как это делают системы вроде Ant и CVS, но только с несколькими важными дополнениями к обычному контролю версий. Настройка "прохождения" (workflow configuration), транзакций и правил позволяет настроить систему под нужды конкретных команд. Специальные средства следят за исправлением ошибок (bugfix tracking) и за построением стабильных релизов. Этот инструмент особо незаменим при взаимодействии разработчиков в основной группе с удаленными разработчиками. Все взаимодействия с StarTeam также интегрированы с другими средствами в единой согласованной среде. Следует отметить, что технология StarTeam не зависит от платформы и в равной степени поддерживает клиентов для Windows, UNIX и MacOS, а также межплатформенные на Java и с веб-интерфейсом. Серверы работают на Windows и Solaris. Кроме того, и у StarTeam, и у Caliber есть SDK, а Together располагает развитым Open Tools API.
Естественно, у Borland ярко представлены собственно средства разработки и "доставки" приложений пользователям (Software Development & Deploy) - но это уже более традиционная сфера, и я надеюсь, что вы достаточно знакомы с такого рода инструментами.
Где искать новые возможности?
Естественно, вы всегда можете приобрести и установить отдельные версии описанных продуктов, но, возможно, вас особенно заинтересует приобретение заранее интегрированной среды, включающей все нужные компоненты сразу. В этом случае вы будете застрахованы от проблем совместимости, поскольку такая среда уже прошла тестирование на совместимость.
Хотя это и не официальная версия самой "Борланд", но, тем не менее, существует негласная система приоритетов одних продуктов над другими. Более приоритетные в первую очередь получают новые возможности, в них реализуются наиболее передовые алгоритмы построения ПО. Естественно, приоритеты диктуются рынком, его потребностями, а не волей аналитиков. На сегодня можно наблюдать следующую градацию: JBuilder, Delphi 8, CBuilder, параллельные продукты для.NET (C++BuilderX, JBuilderX, C#Builder и Delphi 8 for.NET.), продукты для Eclipse (набирают силу), продукты для других компиляторов ANSI C. Это никак не дискредитирует решения, стоящие в конце списка, вместе с тем позволяя ответить на вопрос: "где я могу увидеть самые новые технологии в действии?". Ответ однозначен: в новых версиях Java Studio или, чуть погодя,- в следующих версиях Delphi.
Совершенно новые расширяемые и настраиваемые продукты Turbo Delphi, Turbo Delphi for .NET, Turbo C++ и Turbo C# содержат более 200 встроенных компонентов, которые можно добавить или удалить одним движением мыши. Они имеют все необходимое для того, чтобы пользователи могли сразу же приступить к разработке, а также включают в себя расширяемую среду для создания собственных компонентов и использования компонентов и надстроек IDE других поставщиков. Продукты серии Turbo, предназначенные для разработчиков-любителей, студентов и новичков в программировании, сочетают мощь и эффективность с возможностями создания приложений для настольных систем и Интернета на платформах .NET и Win 32. Предоставляя на выбор несколько языков и платформ, они позволяют программистам найти наиболее удобную для них среду разработки.
Turbo™ Delphi®
1. Быстрая разработка приложений с высокопроизводительным графическим пользовательским интерфейсом (GUI) Turbo™ Delphi® for Win32® — это единственное средство быстрой разработки приложений, предназначенное для платформы Windows®. С его помощью можно создавать высокопроизводительные приложения для самой популярной платформы в мире, используя быстрое компилирование и высокоэффективную интегрированную среду разработки (IDE), и не прибегая к runtime-модулям для созданных приложений. Turbo Delphi для Win32 позволит создавать приложения в самой надежной, функциональной и управляемой среде быстрой разработки приложений.