Люди как нелинейные и наиболее важные компоненты в создании программного обеспечения :: Коуберн Алистэр
Страница: 2 из 15 | |||
| ||||||||||||||
| ||||||||||||||
КАТЕГОРИИ КНИГПОСЛЕДНИЕ ОТЗЫВЫ О КНИГАХМихаил (19.04.2017 - 06:11:11) Антихрист666 (18.04.2017 - 21:05:58) Ладно, теперь поспешили вы... (18.04.2017 - 20:50:34) Роман (18.04.2017 - 18:12:26) АНДРЕЙ (18.04.2017 - 16:42:55) СЛУЧАЙНОЕ ПРОИЗВЕДЕНИЕУважаемые господа! Недавно открылся сайт www.yuri-kuzovkov.ru, на котором содержатся тексты и иллюстрации к моим книгам: «Глобализация и спираль истории», «Мировая история коррупции», «История коррупции в России». Предлагаю разместить тексты этих книг в Вашей интернет-библиотеке. Вы можете скачать интернет-версии всех трех книг с сайта www.yuri-kuzovkov.... >> 16.08.10 - 10:00 Хотите чтобы ваше произведение или ваш любимый стишок появились здесь? добавьте его! |
Поделись ссылкой Люди как нелинейные и наиболее важные компоненты в создании программного обеспечения :: Коуберн Алистэр
Меня же интересует то, как групповые и индивидуальные особенности человека влияют на проектирование способов разработки ПО (иными словами, на методологии), в применении к различным группам, работающим над разными видами задач.
Мои идеи весьма сходны с теми, которые излагал Вайнберг в главе "Teaming" ("Работа в команде") своей книги "The Psychology of Computer Programming" ("Психология программирования"). Особенно все то, что касается противопоставления двух стилей руководства - управления задачами (task management) и управления поддержкой (maintenance management). Это весьма близко к тому, что пытаюсь получить я - некие характеристики и рекомендации, которые из них следуют. Вайнберг основывается на тех проектах, которые он исследовал в 60-е годы. Однако его выводы остаются справедливыми и полезными и сейчас, 30 лет спустя, что еще раз подтверждает стабильность и важность человеческого фактора в разработке ПО. Мне кажется, уже наступило время тщательно изучить подобные факторы, и начать относиться к следующим из них рекомендациям как к основам разработки ПО, а не открывать их для себя каждые 30 лет. В этой статье я расскажу о той работе, которую проделал, чтобы понять, что именно люди являются главным залогом успеха проекта. В настоящее время для прогнозирования я использую именно человеческий фактор. Я пишу эту статью от первого лица, потому что формальный, академический стиль не очень подходит для описания поисков чего-то совершенно очевидного и при этом не совсем понятного. Лучше всего подать это в виде рассказа от первого лица. Путь ошибок трудных Году эдак в 1987, когда я занимался формальной разработкой программного обеспечения, существовало следующее убеждение: "В разработке ПО проблема заключается в том, что при постановке задачи и проектировании допускается слишком много неточностей. Все будет хорошо , если мы сможем заставить людей работать с математическим формализмом". Однако, поработав немного в этом направлении, я обнаружил, что перед нами стоят: Проблема 1. Людям, занятым в проекте, совершенно неинтересно изучать нашу систему. Проблема 2. Они вполне могут обойтись и без методологов, и при этом успешно создавать программное обеспечение. Я ушел от формальных разработок, в то время как мои коллеги выдвинули новую идею: "Вся проблема - в обучении. Все будет хорошо , если мы дадим разработчикам необходимые математические знания гораздо раньше, еще в средней школе". Однако мое знание людей подсказывало, что такое желание неосуществимо. Не то, чтобы я ставил под сомнения очевидные преимущества формальной разработки ПО, просто я сомневался в нашей способности убедить 10 миллионов человек заняться математикой. Правильно было бы поставить вопрос следующим образом: "При каких обстоятельствах и для чего нужно включать в проект специалиста по формальной разработке?" Я перешел к разработке инструментальных средств, и стал работать настолько этноцентрично, насколько это было возможно. При этом я наблюдал за теми, кто проектировал коммуникационные протоколы и обсуждал с ними, какие проблемы возникают у них во время работы. И мои коллеги, и я пришли к единому выводу: "Вся проблема состоит в том, что люди до сих пор предпочитают рисовать на доске. Все будет хорошо , если мы предоставим в их распоряжение специальный программный инструмент, с помощью которого они смогут рисовать непосредственно в компьютере и видеть, как будут реализовываться их проекты на ранней стадии работы". Мы потратили несколько лет, чтобы разработать специальный генератор, трансформирующий диаграммы последовательности и взаимодействия в архитектуру программного продукта и систему правил [Ci]. Многие компании работали (и работают) над сходными задачами, например, выполняемыми конечными автоматами Хэрела (Harel's executable finite state machines) [Ha]. Итак, проработав над этим проектом несколько лет, мы сделали прототип, и решили показать его группе наших потенциальных пользователей. |
ИНТЕРЕСНОЕ О ЛИТЕРАТУРЕ
ТОП 20 КНИГ
ТОП 20 АВТОРОВ
| ||||||||||||
|