|
|
Переход от каскадной разработки к итеративной
|
|
Страница 1 из 3 Модель совершенной методологии итеративной разработки во многом радикально отличается от совершенной модели каскадной разработки. Но на практике ни одна группа разработчиков не применяет эти подходы строго в соответствии с их моделями. В этой статье объясняется, почему группам может потребоваться плавный переход от каскадного к итеративному подходу; также указаны некоторые полезные шаги в этом направлении. Объясняются основные преимущества итераций и их реализация в RUP.
Из журнала Rational Edge: Модель совершенной методологии итеративной разработки во многом радикально отличается от совершенной модели каскадной разработки. Но на практике ни одна группа разработчиков не применяет эти подходы строго в соответствии с их моделями. В этой статье объясняется, почему группам может потребоваться плавный переход от каскадного к итеративному подходу; также указаны некоторые полезные шаги в этом направлении. Большинство групп разработчиков используют в своих проектах каскадный (waterfall – водопад, каскад) процесс. В чистом виде каскадный подход означат выполнение ряда фаз в строго определенном порядке: анализ требований, проектирование, выполнение/интеграция, тестирование. Тестирование откладывается до конца проекта, когда проблемы накапливаются настолько, что на их решение требуется много сил и времени; эти проблемы могут сорвать сроки выполнения проекта и надолго оставить ключевых членов группы без работы. На практике многие группы применяют модифицированный каскадный подход, разбивая проект на несколько частей, которые называются фазами или стадиями. Это помогает упростить интеграцию, позволяет раньше начать тестирование, раньше понять состояние проекта. При таком подходе код программ разбивается на разумные части, минимизируется код интеграции в виде необходимых для тестирования заглушек и драйверов. Кроме того, такой подход позволяет предварительно опробовать наиболее рискованные и трудные области, и на основе отзывов пользователей (обратнойтребований. И хотя модифицированный каскадный подход не исключает обратной связи, он также не поощряет ее. И наконец, желание минимизировать риск плохо сочетается с проектом, выполняемым по каскадной методологии. В данной статье рассматриваются преимущества итеративного подхода к процессу разработки программного обеспечения над традиционным каскадным подходом. связи) изменять план проекта. Однако это не укладывается в рамки каскадного процесса в том смысле, что многие группы разработчиков могут принять изменение плана проекта после стадии 1 за крушение их первоначального проекта или неправильную постановку
|
|
-
Разработка и тестирование,
Team Build в Team Foundation Server (TFS)
В данной статье речь идет об использовании Team Build для автоматизации процесса сборки. Здесь рассматривается ряд общих проблем, связанных со сборкой, и сравниваются различные подходы к сборкам, от плановой ежедневной сборки до сборки в результате непрерывной интеграции....
-
Разработка и тестирование,
Управление зависимостями системы контроля версий в Visual Studio Team System
В данной статье рассматривается, как следует обрабатывать зависимости внутри и между решениями Visual Studio. Единый подход к управлению зависимостями в среде коллективной разработки необходим для обеспечения стабильности процесса сборки и сокращения текущих затрат на обслуживание системы контроля версий. Зависимости – это другие проекты, внешние сборки, Веб-сервисы и базы данных. Зависимости неизбежно меняются во времени и, в результате, оказывают влияние на процесс и порядок сборки прило...
-
Разработка и тестирование,
Выбор стратегии ветвления и слияния в Team Foundation Server (TFS)
Данная статья описывает стратегии ветвления и слияния для ряда типовых сценариев. Обычно ветви используются для поддержания версий, готовых к выпуску, или параллельной разработки. Во многих простых сценариях в ветвлении нет необходимости, достаточно применять простой подход использования меток для маркировки сборок. Например, с помощью меток можно в любой момент времени восстановить сборку на любом этапе или выявить, какие версии исходного файла использовались для создания конкретной сборки. Рас...
-
Разработка и тестирование,
Использование пользовательских расширений для рабочих элементов TFS
Стандартный набор элементов пользовательского интерфейса и его возможности не всегда удовлетворяют взыскательных пользователей любой системы. И MS Visual Studio Team Foundation Server (TFS), в этом смысле, не является исключением. Однако в TFS предусмотрена возможность создания пользовательских элементов для расширения стандартных свойств рабочих элементов системы. Использование технологий .NET позволяет просто создавать пользовательские расшире...
-
Разработка и тестирование,
Сравнение RUP и других методологий разработки ПО
Как сравнивать две методологии? Казалось бы, очень простой вопрос. По работам и задачам, на которые разбивается разработка ПО. По стадиям разработки, в которые эти работы группируются, и по тому, что входит в каждую стадию. По разрабатываемым документам и моделям. ...
-
Разработка и тестирование,
Средства функционального моделирования: CA ERwin Process Modeler, Design/IDEF, ARIS, ORACLE Designer
Как корректно выбрать и без неоправданных рисков приобрести средства функционального моделирования систем: CA ERwin Process Modeler, Design/IDEF, ARIS, ORACLE Designer....
-
Разработка и тестирование,
CA ERwin Process Modeler: функциональное моделирование
Грамотное и эффективное функциональное моделирование может быть осуществлено только при соблюдении основополагающих положений, отражающих принципы построения окружающей нас материально - информационной среды....
-
Разработка и тестирование,
Отладка при помощи средств визуализации отладчика (Debugger Visualizers) Visual Studio 2005
При отладке проекта в Visual Studio .NET 2002/2003, вы можете увидеть значение текущих переменных путем ввода переменной в окно Watch, либо путем наведения мыши на переменную в окне с кодом. Хотя данный подход прекрасно работал с переменными простого типа либо с обычными значениями, данный пользовательский интерфейс был не настолько идеален для более сложных типов и длинных значений. К примеру, если бы вы работали над приложением, которое управляло бы содержимым XML-файла, то вы наверняка захоте...
|
|
|