Структура средств коллективного проектирования и решаемые ими задачи
Тема 14 Технология групповой разработки АИС.
Создание крупных информационных систем требует согласованной работы целой группы программистов. Несколько лет назад проблемы организации взаимодействия отдельных разработчиков при создании крупных проектов были актуальны в основном для крупных фирм-производителей программного обеспечения. Однако с появлением и развитием систем быстрой разработки приложений (RAD, Rapid Application Development) ситуация изменилась. Внедрение средств RAD позволяет повысить производительность труда как отдельных программистов, так и рабочих групп. Благодаря этому полный цикл разработки крупных проектов может выполняться существенно меньшими коллективами. Таким образом, проблемы обеспечения согласованной работы отдельных программистов, выполняющих разработку крупного проекта, стали актуальны и для небольших рабочих групп. Этот факт нашел свое отражение на рынке программного обеспечения. Наличие в системе быстрой разработки приложений эффективных средств, обеспечивающих поддержку коллективной разработки, становится одним из факторов, повышающих конкурентоспособность данного программного продукта.
Рассмотрим спектр задач, решаемых системами обеспечения коллективной разработки приложений. Основной из них является обеспечение управляемости и контролируемости процессов разработки и сопровождения приложения. Для этого необходимо обеспечить выполнение как минимум двух функций:
Q регистрации всех изменений, вносимых в проект; Q централизованного хранения файлов проекта.
Под проектом мы будем понимать множество файлов с исходными текстами программ, а также файлов ресурсов и всех прочих файлов (исполняемые файлы, биб лиотеки DLL, ActiveX, объектные модули), необходимых для выполнения компиляции и запуска приложения.
Обе указанные выше функции реализуются с помощью так называемых систем контроля версиями проектов (PVCS, Project Version Control Systems). Системой контроля версий проектов называется комплекс программного обеспечения, назначением которого является централизованное хранение и обработка всех или большей части объектов (файлов), из которых состоит проект. Для решения задач управления разработкой проекта применяются методы и средства, обеспечивающие: Q идентификацию состояния как отдельных компонентов, так и проекта в целом; О контроль за вносимыми в компоненты и структуру проекта изменениями; Q координированное управление всеми составляющими проекта.