Услуги Сертификаты Новости Статьи База знаний Алгоритмы Портфолио Скачать Ссылки Поиск
Услуги arrow Статьи arrow Ошибки проектирования или впустую потраченное время
Ошибки проектирования или впустую потраченное время Версия для печати Отправить на e-mail
03.06.2009

К ошибкам первого этапа можно отнести:

1.     Неверное понимание первоначальной задачи, стоящей перед командой разработчиков, либо неясное её видение заказчиком, либо обе причины.

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

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

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

5.     Техническое задание помогает четче понять, что хочет заказчик. Очень редко заказчик внятно излагает свои пожелания и ожидания от будущего проекта.

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

7.     Чем больше тестов вы пишете, проверяющих ваш код, тем лучше. Со временем, через год работы, например, очень трудно вспомнить, что делает каждая конкретная строка вашего (даже!) кода, я не говорю уже о коде, который написан тем сотрудником, который уже несколько месяцев как уволился. А тесты помогут понять, как работает код, и даже то, как он ДОЛЖЕН работать.

8.     Одна из проблем - это временный код. Это впустую потраченное время. Код-заплатка - это часть вашей жизни, которую вы можете списать, как бесполезную. Поэтому, прежде, чем написать код, подумайте, не придется ли вам его потом переделать. Чем опасны такие "переделки" - тем, что из-за них дата окончания работы над проектом медленно, но верно начинает стремиться в бесконечность. И однажды, вы поймете, что реализовать проект никогда не удастся. И он будет записан на ваш счет как очередной незавершенный проект.

9.     Никогда не беритесь за работу над большим проектом в одиночку. Это вредно по нескольким причинам: вы его никогда не напишете, так как у вас просто может не хватить терпения и сил; вы можете просто не смочь продумать все детали проекта; время работы над проектом может превысить все мыслимые сроки и проект закроют как нерентабельный; у вас может наступить такой момент, когда вы возненавидите проект и, в итоге, уволитесь с этой работы только чтобы сбежать куда подальше. И еще момент: делить ответственность за неудачу в команде проще, чем быть виноватым в одиночку. Увы, это жестокая правда.

10.   Неверная внутренняя модель - тоже немаловажное понятие при проектировании будущей системы. Подумайте прежде чем реализовывать проект по предложенному техническому заданию и услышав все пожелания вашего менеджера проекта и вашего руководителя, как вы будете писать то, что вам поручили сделать. Чтобы не переделывать код даже дважды, лучше сначала потратьте время на то, чтобы понять как сделать код оптимально. Я понимаю, что вероятность того, что можно найти САМЫЙ оптимальный алгоритм стремится к нулю, но попытаться стоит. Стоит вашего времени, нервов и здоровья.

Удачи вам и хороших, красивых и "правильных" проектов!

Последнее обновление ( 27.01.2012 )
 
< Пред.   След. >