Общее описание методологии разработки проекта (v. 0) - umotnas.ru o_O
Главная
Поиск по ключевым словам:
страница 1
Похожие работы
Название работы Кол-во страниц Размер
Гибкие процессы разработки по. Переменные проекта: стоимость, качество... 1 200.26kb.
Студент фит нгу группа 5304 Версия 0 1 83.47kb.
Методические рекомендации «Памятка для тех, кто пишет проекты» 1 137.92kb.
Проектная документация Rational Unified Process 1 50.61kb.
Обзор методологии scrum 1 87.81kb.
Учебного проекта, раскрывающее его 1 49.75kb.
П. Е. Управление персоналом: Конспект лекций. М.: Миит, 2012. 4 1593.41kb.
Стр. 2 Общее описание 1 Обзор функций 3 548.82kb.
Описание проекта «Школа консультирования и тренинга» Ведущие идеи... 1 198.48kb.
О принятии решения о подго товке проекта планировки и проекта межевания... 1 23.05kb.
Измерения, выполняемые в процессе разработки пп, помогают лучше оценить... 1 200.87kb.
Решение следующей задачи т in f = 4 х 1 3 х 1 51.99kb.
Викторина для любознательных: «Занимательная биология» 1 9.92kb.

Общее описание методологии разработки проекта (v. 0) - страница №1/1


Общее описание методологии разработки проекта (v. 1.0)

В качестве методологии разработки была разработана модель, основанная на спиральной, состоящая из 5 фаз:

  1. Планирование

  2. Составление требований

  3. Проектирование

  4. Реализация

  5. Тестирование

Конец


Тестирование

Планирование

Проектирование



4



3



2





1



Составление требований





Реализация
0





диаграмма 1. «Жизненный цикл проекта»

Основа методологии



1. Роли и участники проекта

В данной методологии 5 ролей:



  • Менеджер

  • Архитектор

  • Документатор

  • Программист

  • Тестировщик

1.1 Менеджер

На эту должность назначается 1 человек, отвечающий за разработку проекта. Менеджер взаимодействует напрямую с клиентом-заказчиком проекта, занимается частичным планированием и проектированием проекта/отдельных его частей, распределяет задание внутри команды и мотивирует её, а так же следит за ходом и качеством выполнения командой тех или иных заданий. Менеджер - это единая точка принятия окончательных решений для команды в проекте, именно поэтому это всегда один человек, а не группа или комитет.



1.2 Архитектор

На эту должность назначаются не более 3х человек, которые отвечают за проектирование и планирование задач, детализацию их описания и оптимизирование межфазного взаимодействия. Архитектор это то самое связующее звено между остальными участниками проекта, которое осуществляет их грамотное взаимодействие друг с другом. Архитектору необходимо быть в курсе проблем, возникающих в ходе работы той или иной фазы проекта, влияющих на работу других фаз и составлять алгоритмы их решения для следующих итераций этой же фазы (К примеру, архитектору необходимо разработать единый формат данных для хранения информации в базе данных, что бы этими данными могли пользоваться и программисты, и тестировщики с одинаковой эффективностью. Или, на основе данных одного из программистов, написать требования для создания более приемлемой, по каким-либо критериям, спецификации к очередной задаче для следующей итерации документирования).



1.3 Документатор

На эту должность назначаются от 2х до 4х человек, на которых лежит ответственность за составление лексически, синтаксически и семантически грамотных документов и инструкций. Документатор имея необходимые ему данные составляет полные инструкции для дальнейшего применения, эксплуатирования, проектирования, планирования, тестирования другими участниками команды и не только, в целях максимальной оптимизации всего процесса и минимизирования затрат различных ресурсов.



1.4 Программист

На эту должность назначаются от 2х до 5ти человек, чьей задачей является программная реализация поставленных задач. Программист это «сердце» всего проекта, являясь важнейшим звеном команды, он реализует, полученные в спецификации задачи, в действующий и работоспособный программный компонент. От него зависит качество полученного на выходе продукта, который является главной целью всего проекта.



1.5 Тестировщик

На эту должность назначаются от 1 до 3х человек, от которых зависит работоспособность программы в критических(и не только) ситуациях. Тестировщик обнаруживает ошибки в алгоритмах работы каких-либо компонентов, спецификациях, а так же в программном коде, путём создания тестовых ситуаций или глубокого анализа и создаёт отчёт по результатам тестов, для возможности дальнейшего исправления ошибок.

Команда(участники) в данном проекте является кроссфункциональной. Это означает что одному человеку может соответствовать 2 роли (но не более), что позволяет ей более гибко реагировать на любые возможные задачи.

Для облегчения коммуникации команда должна устраивать периодические собрания для обсуждения деталей проекта и текущих задач, а так же использовать различные коммуникационные средства связи с целью оперативного решения возникших вопросов и обсуждения(чего-либо).

Разработка проекта поделена на итерационные циклы.

2. Начальный этап

Нулевой этап представляет собой каркас всего проекта и его основу.



3. Ход выполнения работ

Сами итерации разделены на 2 типа, различающихся по объёмам и содержаниям работ:



Глобальные

Локальные

Каждый последующий Глобальный этап это «наращивание» результатов предыдущего, путём дополнения или изменения.

Глобальные итерации включают в себя локальные, но не заменяют их. Таким образом, каждая глобальные этапы состоят из 5 локальных. Нумерация локальных этапов идёт, соответственно, с префиксом номера глобального, по порядку (1.1, 1.2, … 1.5, где 1.1 – первая локальная итерация проекта, являющаяся началом его планирования)

По окончанию каждой из итераций ожидаются результаты выполненной работы.

Локальные этапы представляют собой выполнение конкретных подзадач (этап 2.3 – это вторая итерация проектирования). В то время как Глобальные - выполнение какой либо проектной задачи в целом.

Основная причина разбиения проекта на задачи и этапы это его декомпозиция для упрощения работы. Впоследствии, каждому этапу присваиваются определённые сроки выполнения работ, полученных путём анализа количества и качества этих самых работ, необходимых для них ресурсов, количества участников данной итерации, уровень их подготовленности, внешние факторы.

В связи с невозможностью точного анализа всех факторов(внешние факторы), сроки выполнения работ могут быть нарушены, и одна фаза может заканчиваться параллельно с началом работы следующей (параллелизм процесса работы, см. Диаграмму, итерации 1.1-1.5), или начаться чуть ранее запланированных сроков.

4. Завершение проекта

Окончание разработки проекта так же присутствует (На данном этапе это 4 итерация). Но в связи гибкости данной методологии, возможна корректировка точного номера итерации завершения разработки, в процессе работы, путём ещё больше декомпозиции оставшейся части проекта, а так же смещения или объединения каких либо этапов (Спираль принимает форму «воронки»).



5. Этапы разработки

5.1 Планирование программного проекта

На этом этапе определяются основные задачи, которые должны быть решены в рамках разработки текущей стадии проекта, производится оценка необходимого функционала, оценка финансовых, временных, человеческих, технических и других ресурсов, необходимых для осуществления разработки. Так же определятся, какие будут использованы методы разработки и тестирования. Могут быть построены временные графики, составлен бюджет, план работ и прочие документы.



5.2 Составление требований

На этом этапе происходит сбор, анализ и формализация требований к разрабатываемой задаче. Этап служит для выработки максимального взаимопонимания между разработчиками проекта. Обсуждаются форма предоставления информации, необходимый функционал, проблемы и ограничения, которые могут возникнуть при разработке. Составленные требования могут быть протестированы.



5.3 Проектирование программного продукта

На этом этапе происходит разработка и детализация модели разрабатываемой стадии проекта. На основании построенной модели определяется структура и архитектура ПО, организация и взаимодействие модулей и интерфейсов, структура базы данных и т.д...



5.4 Разработка программного обеспечения

На этом этапе происходит преобразования результатов проектирования системы в программный код на используемом языке программирования в соответствии с используемыми стандартами кодирования. На этом же этапе программисты предоставляют информацию тестировщикам для разработки комплекса тестов, разрабатывают техническую документацию и необходимые требования для дальнейшей модернизации этой части проекта (если это необходимо).



5.5 Тестирование программного обеспечения

Этап, не имеющий четко определенного начала. Может начаться еще на этапе составления требований. Чем раньше начнется тестирование тем выше вероятность, что программное обеспечение будет в точности соответствовать требованиям, раньше будут выявлены критические ошибки проектирования и разработки и тем дешевле (в плане различных ресурсозатрат) обойдется их исправление. Тестирование может проводиться в ручном или автоматическом режиме. По результатам тестов составляется отчет.