Временные рамки проекта агрессивны или консервативны?
Опытные руководители решают проблемы агрессивных сроков путем ведения переговоров и снижения частоты выходных результатов. Итеративный подход поможет достичь этого путем предоставления возможности разработки частичной функциональности на раннем этапе. Это создаст впечатление того, что проект будет выполнен, несмотря на агрессивные сроки, также известные как "быстрые шаги". В то время как временные рамки всего проекта не были сокращены, существует возможность того, что вы удовлетворите заинтересованные стороны, предложив необходимые ключевые функции. Если ваш проект не слишком зависит от сроков, и пользователи смогут подождать до выпуска полноценной системы, то каскадная модель будет лучшим подходом в данной ситуации.
Каков размер проекта?
Большие проекты зачастую требуют большое количество рабочих групп для работы над четко определёнными комплектующими. Масштаб выходных результатов пропорционален размеру команды проекта, выполняющей данную работу. Поэтому большим командам назначается больший набор комплектующих, которые должны быть четко определены. В таком случае длинные итерации или каскадная модель будут более пригодны.
Где расположены команды проекта?
Если у вас есть несколько команд в проекте, и они расположены в различных местах, то координация их работы должна быть более детальной и строгой. Задачи должны быть четко определены для того, чтобы избежать непонимания и излишней работы. В таких случаях каскадная модель будет наиболее благоприятной, поскольку она предполагает контрольные точки и предоставление четких результатов в конце этапов. Применение спиральной методологии в случае с таким разбросом команд предполагает возможность появления новых препятствий. Поскольку гибкая разработка лучше всего применима в случаях с тесными контактами и открытой культурой, исполнители, работающие удаленно, испытают больше трудностей, чем те, которые используют подход, основанный на планировании.
Какие ресурсы являются критическими?
Некоторые проекты требуют включения уникального, высококвалифицированного ресурса либо интеграции специализированного оборудования. В таких случаях данные ресурсы не всегда сразу же доступны и требуют составления плана, а команда проекта должна обеспечить то, что ресурс будет полностью использован согласно предусмотренному графику. Более того, должны быть выполнены тесты по всем возможным сценариям, пока ресурс доступен. В противном случае требование повторного использования ресурса может повлечь задержки проекта. В таких случаях водопадная модель будет наилучшим выбором, поскольку каждая контрольная точка должна быть выполнена до перехода от одного этапа к другому, и вы будете уверены в том, что критический ресурс будет правильно использован.
CASE - средства
CASE (Computer- Aided (помощник) Software/System Engineering) – программные средства, обеспечивающих техническую целостность на всех этапах построения системы или на этапах анализа и проектирования, как наиболее трудоемких.
Современные CASE-средства охватывают обширную область поддержки многочисленных технологий проектирования ИС: от простых средств анализа и документирования до полномасштабных средств автоматизации, покрывающих весь жизненный цикл ПО.
Наиболее трудоемкими этапами разработки ИС являются этапы анализа и проектирования, в процессе которых CASE-средства обеспечивают качество принимаемых технических решений и подготовку проектной документации. При этом большую роль играют методы визуального представления информации. Это предполагает
· построение структурных или иных диаграмм в реальном масштабе времени,
· использование многообразной цветовой палитры,
· сквозную проверку синтаксических правил.
Графические средства моделирования предметной области позволяют разработчикам в наглядном виде изучать существующую ИС, перестраивать ее в соответствии с поставленными целями и имеющимися ограничениями.
В разряд CASE-средств попадают как относительно дешевые системы для персональных компьютеров с весьма ограниченными возможностями, так и дорогостоящие системы для неоднородных вычислительных платформ и операционных сред. Так, современный рынок программных средств насчитывает около 300 различных CASE-средств, наиболее мощные из которых так или иначе используются практически всеми ведущими западными фирмами.
Обычно к CASE-средствам относят любое программное средство, автоматизирующее ту или иную совокупность процессов жизненного цикла ПО и обладающее следующими основными характерными особенностями:
· мощные графические средства для описания и документирования ИС, обеспечивающие удобный интерфейс с разработчиком и развивающие его творческие возможности;
· интеграция отдельных компонент CASE-средств, обеспечивающая управляемость процессом разработки ИС;
· использование специальным образом организованного хранилища проектных метаданных (репозитория).
Интегрированное CASE-средство (или комплекс средств, поддерживающих полный ЖЦ ПО) содержит следующие компоненты;
· репозиторий, являющийся основой CASE-средства. Он должен обеспечивать хранение версий проекта и его отдельных компонентов, синхронизацию поступления информации от различных разработчиков при групповой разработке, контроль метаданных на полноту и непротиворечивость;
· графические средства анализа и проектирования, обеспечивающие создание и редактирование иерархически связанных диаграмм (DFD, ERD и др.), образующих модели ИС;
· средства разработки приложений, включая языки программирования 4GL(Informix 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-средства, обеспечивающие реинжиниринг программ на языке С++ (IBMl Rational Rose, Object Team (Cayenne)).
Вспомогательные типы включают:
· средства планирования и управления проектом (SE Companion, Microsoft Project и др.);
· средства конфигурационного управления (PVCS (Intersolv));
· средства тестирования (Quality Works (Segue Software));
· средства документирования (SoDA (IBMl Rational Rose,)).
На сегодняшний день Российский рынок программного обеспечения располагает следующими наиболее развитыми CASE-средствами:
· Vantage Team Builder (Westmount I-CASE);
· Designer/2000;
· Silverrun;
· ERwin+BPwin;
· S-Designor;
· CASE.Аналитик.