Люди как нелинейные и наиболее важные компоненты в создании программного обеспечения - [3]
Таблица 1. Проекты и методологии, которые я изучал. Информацию в таблице, разумеется, приходится давать в сокращенном виде. Здесь я указываю год, рабочее название проектов и краткое замечание о каждом из них. Некоторые из проектов описаны в другой литературе. Ссылки на источники указаны в квадратных скобках. 1980 . "CT5". Успешно завершен. 26 человек, 3 года (на год позже, чем нужно), имел для компании решающее значение. Изучен в процессе стажировки, четко определенный макропроцесс, микропроцесс отсутствует.
1986 . Проекты "Cleanroom" [Mi]. Успешно завершены. Федеральный сектор IBM, большие команды разработчиков. Неоднократный успех при использовании тяжеловесной методологии, требующей большой дисциплины. 1986 . Проекты "Sherr" [Br] Успешно завершены. Процесс можно описать следующим образом: "сделай так, что все заработало, но не работай сверхурочно". Основной упор на нестандартные креативные решения, процесс не определен. 1980 . "Broooklyn Union Gas" [Co98]. Успешно завершен. Новая ОО технология, 150 человек, проект для решения критически важных задач. 1992 . "Tracy" [Co98]. Провал. Небольшая команда разработчиков слепо следовала методологии, согласно которой нужно было "моделировать мир, а потом превратить модель в программный код". Был доступ только к случайным пользователям и необученному персоналу. 1992 . "BlackKnight". Успешно завершен. Небольшая команда разработчиков, успешно сочетающая использование пояснительных заметок и активное общение 1992 . "Manfred" [Co98]. Провал. Небольшая команда разработчиков, хромает дисциплина, облегченная методология. "Это мы разработаем потом", провал работы из-за постоянного создания прототипа. 1992 . "CSPITF". Успешно завершен. Небольшая команда разработчиков тщательно контролировала итерации. Облегченный процесс, все сидят рядом. Успешная совместная работа руководителя технического процесса и руководителя проекта. Технический руководитель остался, чтобы реструктурировать внутреннюю структуру кода для следующей команды. 1992 . "OTI" [Co98]. Успешно завершен. Маленькие команды разработчиков. "Дайте хорошему работнику хороший инструмент и оставьте его в покое". Неоднократный успех при работе с облегченной методологией, ориентированной на человека. 1993 . "Reginald" [Co98]. Провал. Команда из двух разработчиков выросла до трех команд в двух разных графствах. Одна из этих команд слепо следовала тяжеловесной методологии с обилием документации, и так и не написала ни строчки кода до закрытия проекта. 1993 . "Ingrid" [Co98]. Успешно завершен. 26 человек, 2 года. Инкрементный макро процесс, микро процесс отсутствует. Первый инкремент потерпел неудачу. Заменили всех программистов, с течением времени выработали облегченную методологию, с упором на коммуникации. 1993 . "Synon in NZ". Успешно завершен. Руководитель проекта утверждал, что успех был обеспечен тем, что "четыре человека работали в одной комнате и использовали быстрый итеративный инструментарий", и что это не подходит таким проектам, где разработчики не могут свободно общаться между собой. 1994 . "Udall" [Co98]. Успешно завершен. Поначалу работала большая команда разработчиков, и потерпела неудачу. Успех обусловлен тем, что "начали с нуля и сделали из плохой большой команды маленькую, но хорошую". 1995 . "Winifred" [Co98]. Успешно завершен. 45 человек, 20 месяцев. Успех обеспечили "инкрементность разработки, хорошо поставленная коммуникация и несколько очень хороших работников". Использовался макро процесс, микро процесс отсутствовал. Успешное применение средней по весу методологии, ориентированной на коммуникацию. 1996 . "Reel". Провал. 150 человек, которым было велено обновлять всю документацию при каждом изменении в проекте. Проект закрыт. Один из участников разработки подвел итог: "Сколько не старайся, плохая методика все равно даст плохой результат". 1997 . "Caliper". Провал. 90 человек, проект имел для компании решающее значение. Прошло уже шесть лет, но даже первая основная версия проекта до сих пор не сдана. Слишком смелые ожидания, новые технологии, отсутствие инкрементной разработки, на всех позициях персонал, не обладающий адекватными рабочими навыками. 1997 . "NorgesBank". Опрошено шесть команд разработчиков. Все повторяют приблизительно одно и то же: "Успех обеспечен хорошей коммуникацией, как в самой команде разработчиков, так и между разработчиками и пользователями". 1998 . "C3" [C3]. Успешно завершен. После первого провала 26 человек решили заменить восьмью. Extreme Programming [EP]. Успешное применение в небольшой команде методологии, требующей высокой дисциплинированности от сотрудников. Основной упор - коммуникация. 1998 . "NB Banking". Успешно завершен. Проект, изначально рассчитанный на трех человек и два месяца работы, неожиданно вырос до 10 человек, которые проработали 14 месяцев. Связь при помощи видео. Не понравилась. Макро процесс, микро процесс отсутствовал. Успеха удалось достичь при помощи "инкрементных разработок, правильно подобранных людей и хорошей коммуникации". 1998 . "M.A.D". [Ch]. Успешно завершен. Небольшая команда разработчиков занималась изучением окружения конечных пользователей и использовала прототипы. Удачное использование методологии, основывающейся на создании прототипов и коммуникации. 1998 . "Insman". Успешно завершен. В команде шесть человек, использовалась методология "Crystal(Clear)" [Co00]. Успеха удалось достичь благодаря особому упору на "тесном общении, моральном духе команды, итерациях длиной в три месяца и обучении разработчиков". 1999 . "Cinch". Продолжается в настоящее время. 40 человек работают вместе, однако при этом еще требуются формальные сдачи работ. Все осознают цену написания документации, однако пока не могут перейти на более индивидуальный подход (непонятно почему - из-за личных качеств, по привычке или же в этом виновата культура?). 1999 . "Hill AFB TSP1" [Web]. Успешно завершен. Семь человек, CMM 5-го уровня, используется PSP/TSP. Небольшая команда успешно использовала ориентированную на процесс методологию, в которой требовалось соблюдение строгой дисциплины.
Как только мы пытаемся разобраться, "из чего же состоит методология", сразу становится понятно, что методологий должно быть много. При этом для каждого конкретного проекта "оптимальной" будет одна какая-то методология. Более того, все люди обладают разными склонностями, которые обусловлены их жизненным опытом, страхами и принципами. При выборе методологии особое внимание нужно уделять трем основным факторам: размеру команды разработчиков, критичности проекта для компании и его приоритетности. Помимо этого, на результат будут оказывать влияние как культурные ценности команды, так и индивидуальные характеристики ее членов.
Парное, или совместное, программирование является процессом создания программного обеспечения двумя программистами, работающими бок о бок за одним компьютером. С помощью опросов и специальных экспериментов авторы этой статьи исследовали положительные и отрицательные стороны такого стиля работы. Они обнаружили, что при парном программировании время разработки увеличивается на 15%, но при этом улучшается дизайн системы, уменьшается количество дефектов, снижается риск, связанный с занятостью в проекте определенных сотрудников, растет технический уровень команды, улучшается взаимодействие и коммуникация, а кроме того, сам процесс работы в целом доставляет гораздо больше удовольствия.
Это проверенное временем пособие по тайм-менеджменту поможет вам оптимизировать свой рабочий день, повысить продуктивность и справиться со всеми делами в срок. В книге вы найдете 14 самых распространенных ловушек времени и полезные советы и инструменты для их устранения.На русском языке публикуется впервые.
Эта книга – одно из самых читаемых изданий по управлению производством в Японии. В основу книги легли учебные материалы, подготовленные специалистами Toyota к семинарам по производственной системе Toyota, которые проходили в середине 1970-х годов. С тех пор прошло немало времени, но книга, неоднократно переиздававшаяся, в том числе и на английском языке, до сих пор служит кратким руководством по снижению затрат на производстве во всем мире. Системы «канбан» и «точно вовремя» – два метода управления производством и запасами, используемые в рамках производственной системы Toyota, – помогают найти лучшие способы повышения производительности процесса и качества продукции.
Кто из нас не знает, что такое LEGO? Но мало кому известно, какие изменения им пришлось пережить, чтобы достичь статуса самой популярной в мире компании по производству игрушек. Окунитесь в самое сердце LEGO, узнайте о причинах, приведших к кризису, и стратегиях, выведших ее на вершину.
Пособие представляет собой собрание образцов писем на английском языке, затрагивающих самые разнообразные стороны повседневной жизни. Это дружеские и деловые письма, письма — приглашения в гости и письма-благодарности, письма-извинения и письма-просьбы. Книга знакомит с этикетом написания письма на английском языке, некоторыми правилами английской пунктуации и орфографии, а также содержит справочные материалы различного рода, необходимые при написании писем. Пособие рассчитано на широкий круг лиц, владеющих английским языком в той или иной степени и стремящихся поддерживать письменные контакты с представителями англоязычных стран. (Книга полностью на русском языке, все образцы писем на двух языках.)
Эта книга — о влиянии информационных технологий на социальную эволюцию. В ней показано, как современные компьютеры и Интернет делают возможным переход к новой общественной формации, в основе которой будут лежать взаимная прозрачность, репутация и децентрализованные методы принятия решений. В книге рассмотрены проблемы, вызванные искажениями и ограничениями распространения информации в современном мире. Предложены способы решения этих проблем с помощью распределённых компьютерных систем. Приведены примеры того, как развитие технологий уменьшает асимметричность информации и влияет на общественные институты, экономику и культуру.
Со времени окончания холодной войны в мире произошли серьезные изменения. Количество вооруженных конфликтов уменьшилось, сократилось число боевых потерь, случаев проявления геноцида. Многие из этих изменений можно объяснить массовой политической активностью, инициируемой ООН и направленной на прекращение войн и мирное урегулирование проблем.Созданный специально для презентации подробной информации в небольшом формате, мини-атлас «Обеспечение безопасности человека» представляет собой краткое введение в самые актуальные вопросы безопасности.