Письмо Первое: «Планеты рождаются из хаоса»

Доброе утро, Виталий!

Мы получили твоё письмо, в котором сказано, что тебе нужна помощь в организации разработки ПО.

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

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

Дело не ждет и сроки наверняка поджимают, поэтому приступлю к делу:

Разработка ПО процесс достаточно не простой или даже правильнее будет не алгоритмизированный. Так как ПО – это продукт чистого интеллектуального труда, то и процессы в нем происходящие сравни загадочности возникновения мысли. (а ученые до сих пор не разгадали где она рождается).

Начнем с простого и понятного:

Фазы разработки

Дабы глаза не разбегались очертим весь процесс следующей схемой:

 

Начало

Выполнение

Завершение

-

Сопровождение – Управление изменениями

 

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

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

1)      Возникновение идеи

2)      Описание идеи

3)      Рассмотрение альтернативных вариантов решения задачи

4)      Заключения договора

5)      Написание ТЗ

6)      Сбор подробных требований

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

8)      Составление плана разработки

9)      Коррекция ТЗ

10)   Детальное проектирование

11)   Подбор команды разработки

12)   Кодирование

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

14)    Отладка

15)   Прототипирование

16)   Испытания

17)   Испытания с аппаратурой (в т.ч. на серверах, ПК и т.д.)

18)   Документирование

19)   Архивирование проекта

20)   Сопровождение

21)   Управление изменениями

Примечание:

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

Глаза разбегаются

Да, действительно глаза разбегаются от такого количества работ, но не будем себя обманывать – эти работы мы действительно выполняем выделяя или не выделяя на них отдельное время. И чем лучше мы их поймем и поймем их взаимосвязи, тем проще нам будет обходить подводные камни.

Добавим, что с точки зрения модели жизненного цикла разработка может быть организована в виде каскадной (водопадной), V-образной, спиральной и экстремальной (XP) моделей, а также модели смешанного типа. Не будем сейчас вдаваться в подробности – всему своё время.

Итак, более подробно по этапам:

Чтобы было легче все этапы мы опишем в единой структуре:

1)      Какова цель работ данного этапа?

2)      Какие результаты должны быть достигнуты?

3)      Какие работы предстоит выполнить? В какой последовательности. Входные данные

4)      Какие правила следует соблюдать, чего стоит опасаться и какие трудности стоит преодолеть при выполнении каждой работы?

5)      Какие техники, приемы, методологии и ПО существуют для выполнения работ? Когда и какие из них стоит применять? Чем руководствоваться при их выборе?

6)      Какие роли потребуются для выполнения работ? И какими компетенциями должны обладать участники работ для выполнения обязательств роли?

7)      Какую литературу мы бы посоветовали людям, выполняющим эти работы?

Продолжение следует….

© Forum-CreateSW

Сделать бесплатный сайт с uCoz