Введение
Разработка Internet Speed - это метод разработки Agile Software Development, использующий комбинированную спиральную модель/модель водопада с ежедневными сборками, направленными на разработку продукта с высокой скоростью. Он был разработан в конце девяностых, потому что разработка программного обеспечения быстро менялась. Компании испытывали проблемы с поставкой продуктов с правильными требованиями в течение запланированного времени для проекта и, как таковые, переходили к более гибким методам разработки программного обеспечения. Более подробную информацию о том, как был разработан метод скорости интернета, можно увидеть на эволюционной карте в статье Абрахамсона.
Основные идеи развития скорости Интернета
Часто одна из самых больших проблем в разработке программного обеспечения заключается в том, что требования быстро меняются, и метод разработки скорости интернета был создан для адаптации к этой ситуации. Идея состоит в том, чтобы объединить два основных стандарта в моделях разработки программного обеспечения, а именно спиральную модель и модель водопада в новую модель и основать новый метод разработки программного обеспечения на этой новой модели. Основным недостатком модели водопада было то, что она была очень жесткой и не очень гибкой, когда дело доходит до изменений требований, в то время как недостатком спиральной модели было то, что она была не очень структурирована. Идея, лежащая в основе разработки скорости интернета, заключается в том, что сочетание этих моделей приведет к методу, который не имеет этих недостатков и является лучшим методом для использования в ситуациях, когда требования могут быстро меняться, но проект должен выполняться структурированным образом.
Цель метода
Цель метода разработки скорости интернета - позволить разработчикам программного обеспечения выполнять проект структурированным образом, но при этом быть в состоянии адаптироваться к потребностям клиента. Он направлен на предоставление программного продукта в короткие сроки посредством интенсивной разработки. Метод обеспечивает возможность создания полностью реализованной системы, а также способов определения прогресса в проекте с помощью этапов. Одна из основных версий этого метода создана Microsoft и называется Microsoft Solutions Framework.
Концепции, лежащие в основе метода разработки скорости Интернета
Первая концепция, которая очень важна для развития скорости интернета, - это создание видения и сферы (управление проектами). Это означает, что в начале проекта создается глобальное определение системы, которое объясняет, что система стремится быть, и что входит в сферу применения, а что нет. Это один из основных шагов, поскольку он дает разработчикам некоторые руководящие принципы того, какая система будет, не замораживая никаких требований. Область применения может быть задокументирована в заявлении о видении. Еще одна очень важная концепция в рамках этого метода - управление объемом. Сфера применения должна управляться на протяжении всего проекта, чтобы предотвратить увеличение объема применения, что приводит к задержкам. Область применения будет определена на ранней стадии, а изменения в области применения (например, добавление дополнительных функций, которые изначально рассматривались за пределами области применения проекта) будут оценены и либо приняты, либо отклонены. В области применения могут быть внесены изменения, но на это всегда будут влиять торговые сделки между особенностями, ресурсами и временем. Метод разработки скорости интернета сильно отличается от традиционных методов и поэтому использует принципы гибкого метода. Он фокусируется на адаптации к требованиям и как таковой основан на основных принципах разработки гибкого программного обеспечения. Разработка скорости Интернета также фокусируется на использовании одной архитектуры фиксированной структуры, из которой построен продукт, и в значительной степени полагается на инструменты для увеличения скорости разработки. Еще одна основная концепция развития скорости интернета заключается в том, что она также фокусируется на использовании небольших команд. Идея заключается в том, что все проекты можно разделить на более мелкие мероприятия, которые часто могут выполняться параллельно. Меньшие команды могут чаще сосредоточиться на своей задаче, и легче определить подотчетность и отслеживать прогресс в рамках проекта. Последней концепцией, обсуждаемой в этой статье, является концепция параллельного развития. Эта концепция в основном означает, что вся разработка программного обеспечения выполняется параллельно как можно чаще. Это позволит очень быстро развиваться и позволит небольшим командам сосредоточиться на собственной функции, насколько это возможно, что имеет хороший результат в отношении качества. Однако, чтобы обеспечить совместную работу небольших команд в создании окончательной системы, необходимо часто синхронизировать их разработку. Это можно сделать с помощью ежедневных сборки, что означает, что все разработчики проверяют свой код в конце дня, после чего создается сборка, которая затем может быть оценена и протестирована для мониторинга прогресса. После того, как функция завершена в сборке, ее нужно протестировать и усовершенствовать, что иногда называется процессом синхронизации и стабилизации. Разработанные функции синхронизируются с сборкой и тестируются. После этих тестов любые ошибки будут исправлены, и функция может быть улучшена, чтобы работать лучше (что является частью стабилизации). Разработка скорости Интернета основана на гибких принципах и, как таковая, имеет много сходств с экстремальным программированием, рациональным унифицированным процессом, DSDM и разработкой, основанной на функциях. Развитие скорости интернета отличается от этих методов тем, что оно также включает в себя более обширное планирование управления рисками и имеет качество как очень важную цель проекта. Фаза разработки скорости Интернета также показывает некоторые сходства с моделью разработки программного обеспечения с открытым исходным кодом, поскольку многие разработчики по всему миру могут быть частью процесса разработки из-за связи через Интернет и использования репозиториев для хранения кода и документации.
Инструменты для использования с Internet-Speed Development
Инструменты для рисования (например: Microsoft Visio, Rational Rose, Dia) Для создания диаграмм. Текстовые процессоры (например, Microsoft Word, OpenOffice. Для создания текстовых документов, таких как заявление о видении или документ об охвате. Электронные таблицы (например, Microsoft Excel, OpenOffice. Для составления списков приоритетных рисков и расчета затрат. Инструменты проекта (например: Microsoft Project, OpenProj, Gnome Planner, Calligra Plan) Для планирования проектной деятельности. Инструменты управления базами данных и базами данных (например: MS SQL Server, MySQL, Oracle, PostgreSQL) Для создания баз знаний. Автоматизированные инструменты тестирования (примеры: тестовые скрипты) Для выполнения тестов после каждой ежедневной сборки.