Я должен признать, что мой интерес в этих темах не
просто
академический. Быть вовлеченным в мой справедливый
ресурс отказов-
включая некоторые захватывающие - я намеревался
обнаруживать то, что было
порождение лучших усилий превращаться в худшие
результаты. То, что я нашел, было
тот недостаток в четкой методологии, разработчики
испытывали недостаток в дороге
карта, чтобы гарантировать, что они могли добраться
спереди, опрометчивые дни a
новый проект к успешному концу. Та нехватка руководства,
я нашел,
предназначенный, что часто проект мог быть обречен перед
первой линией
из кода был написан.
Работы очень хорошо для многих разработчиков я работаю
с. Однако, я
не рекламируйте это как единственное или окончательная
методология. Есть
много доступных методологий. То, какой является лучшим,
- то, что тот это
Вы будете использовать - чья философия выравнивает к
вашему собственному.
методология, требовавшаяся шифровальщиком, работающим
полностью один может быть очень
отличный от того, который вовлекает группу
разработчиков-
особенно, если некоторые из тех разработчиков -
отдаленные рабочие.
Наблюдать количество риторики, посвященной утверждению
по
"правильная" платформа или язык или IDE или компилятор,
Вы могли бы думать
то, что технические вызовы разработки программного
обеспечения - реальное
причина нашей 70%-ой нормы отказа. Это нечетно, потому
что программное обеспечение
проекты почти никогда не терпят неудачу по техническим
причинам.
Получение к Первопричине Отказа
Рассмотрите меньше-успешный проект, в который Вы были
вовлечены.
Сделал это, сталкиваются с неприятностью, потому что
программисты не могли обработать
суровость рекурсии или матричной математики или
многомерный
массивы? Нет?
Чтобы узнавать, почему проекты терпят неудачу, мы должны
только спросить наших клиентов.
Они с удовольствием скажут нам: "Вы не даете нам, что мы
хотим!" Против
такой обвинительный акт, параметры по компиляторам и
архитектуре
и несоответствующий и глупый.
Второй раз, когда мы вовлекаем клиентов, - в конце
проекта,
когда мы проходим приемное испытание. Теперь, мы
получаем реального клиента
обратная связь, но теперь, очень поздно: время и деньги
для
проект весь израсходован.
Инструменты для Сбора Требований
Много проблемы может быть положено в ногах
язык мы используем. Мы говорим о "требованиях,
собирающих" как будто
"требования" были рассеяны о, ждущий нас, чтобы выбрать
их и бросают их в корзину. Говорит это клиенты
может только сказать нам, что они хотят, когда они видят
это! И с этим
реализация, становится ясно, что наша работа как
разработчики к
дайте клиентам кое-что, чтобы видеть, так, чтобы они
могли сказать нам что они
хотите - не в законнических документах спецификации, а в
простом,
простой язык.
Мы используем два первичных инструмента для этого.
предлагают разработчикам a
путь быстро сталкивать активизирующийся щелчком скелет.
Есть нет
графические символы и никакая попытка сделать
функциональное приложение.
Вместо этого каждая страница, которую клиент будет в
конечном счете видеть, представлена
простой страницей, которая говорит (1) что обязанности
страница является и (2), что другие страницы связаны с
этим.
Опытные образцы следуют за. Каждая страница опытного
образца имеет маленькое
переплетенная система передачи сообщений, которая
автоматически прикреплена к HTML
страницы. Эта система позволяет разработчикам и клиентам
общаться
друг с другом. Результаты этого взаимодействия сохранены
в a
центральный архив. Прототип продолжается до обоих
разработчиков
и клиент удовлетворен, что опытный образец размышляет
точно какой
законченное приложение будет похожо. Только тогда -
опытный образец
"замороженный" и кодирование может начаться. Таким
образом, мы можем узнать какой
клиент хочет прежде, чем мы пишем код.