stringtranslate.com

Уинстон В. Ройс

Из выступления Ройса 10 августа 1990 г.

Уинстон Уокер Ройс (15 августа 1929 — 7 июня 1995) — американский учёный-компьютерщик , директор Центра программных технологий Lockheed в Остине, штат Техас . Он был пионером в области разработки программного обеспечения , [1] известен своей статьей 1970 года, из которой ошибочно была взята модель «Водопад» для разработки программного обеспечения [2] . [3]

биография

Родившийся в 1929 году Ройс поступил в Калифорнийский технологический институт , где получил степень бакалавра физики , степень магистра авиационной техники и в 1959 году докторскую степень в области авиационной техники под руководством Джулиана Дэвида Коула [4] с диссертацией «Транзвуковое течение над неподъёмной поверхностью». , стройное тело революции .

Ройс начал свою карьеру в качестве доцента Калифорнийского технологического института. В 1961 году он начал свою карьеру в качестве менеджера проектов в аэрокосмическом подразделении TRW . Его первый проект касался разработки системы планирования полета и выбора орбиты космического корабля . В последующие годы он участвовал в исследованиях и разработке нескольких крупных и сложных программных систем и начал разрабатывать новые методологии улучшения управления программными проектами. [5] В 1970 году он опубликовал свою влиятельную статью « Управление разработкой больших программных систем », в которой представил несколько моделей управления проектами , включая то, что мы теперь знаем как каскадную , итеративную и гибкую . [3] В 1985 году он получил премию AIAA Information Systems Award. [6] В 1980-е годы он был директором Центра технологий программного обеспечения Lockheed в Остине, штат Техас. Он вышел на пенсию в 1994 году и умер в следующем году в своем доме в Клифтоне, штат Вирджиния . [7]

Его старший сын — Уокер Ройс, главный экономист по программному обеспечению подразделения IBM Rational, автор книги «Управление программными проектами, унифицированная структура» и основной вклад в философию управления, присущую IBM Rational Unified Process . [8]

Работа

Управление разработкой крупных программных систем

Модель «Водопад» для разработки программного обеспечения ошибочно приписывают Ройсу. Барри Бём писал в 1987 году:

Статья Ройса 1970 года обычно считается статьей, которая определила поэтапную «водопадную» модель процесса разработки программного обеспечения. Но удивительно видеть, что более ранние статьи Бенингтона и Хозьера имели хорошее приближение к водопадной модели, а также то, что статья Ройса уже включает прототипирование в качестве важного шага, совместимого с водопадной моделью. [9]

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

Модель Ройса фигурка 1
Модель Ройса фигурка 4

Ройс начал свою статью 1970 года «Управление разработкой больших программных систем» с заявления о происхождении своих идей:

Я собираюсь описать свои личные взгляды на управление крупными разработками программного обеспечения. В течение последних девяти лет у меня были различные задания, в основном связанные с разработкой пакетов программного обеспечения для планирования полетов космических кораблей, управления ими и послеполетного анализа. Выполняя эти задания, я добился разной степени успеха в отношении достижения рабочего состояния, своевременности и затрат. Мой опыт предвзято повлиял на меня, и я собираюсь рассказать о некоторых из этих предубеждений в этой презентации. [3]

Ройс определил, что разработку компьютерных программ независимо от их размера и сложности можно разделить на два этапа: анализ и кодирование . Для небольших проектов по разработке программного обеспечения этих двух шагов было достаточно, но не для разработки более крупных программных систем. Это требует множества дополнительных шагов вперед и назад, что придает разработке итеративный характер. [3]

Чтобы представить себе это итеративное развитие, Ройс предложил ряд подходов, хотя он никогда не использовал термин « водопад» [10] и не пропагандировал его как эффективную методологию . [11] Самое раннее использование термина «водопад», возможно, было в статье Белла и Тайера, опубликованной в 1976 году. [12]

Ройс изобразил модель водопада, состоящую из следующих семи шагов: [3]

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

Фаза тестирования, которая происходит в конце цикла разработки, является первым событием, для которого время, хранение, передача ввода/вывода и т. д. воспринимаются отдельно от анализируемых. Эти явления не поддаются точному анализу. Например, они не являются решениями стандартных дифференциальных уравнений в частных производных математической физики. Однако если эти явления не удовлетворяют различным внешним ограничениям, то неизбежно требуется серьезная перестройка. Простое восьмеричное исправление или повторение какого-либо изолированного кода не решит подобных проблем. Требуемые изменения в проекте, вероятно, будут настолько разрушительными, что будут нарушены требования к программному обеспечению, на которых основан проект и которые обеспечивают обоснование всего... [3]

По словам Ройса, в модели процесса «итерации проектирования никогда не ограничиваются последовательным шагом», и для этой модели без итераций «рискованно и влечет за собой неудачу». [3] В качестве альтернативы Ройс предложил более постепенное развитие, при котором каждый следующий шаг связан с предыдущим шагом. «Классическая» водопадная модель представлена ​​на рисунке 2. Модели постепенно совершенствуются вплоть до рисунка 10. Ройс говорит о модели на рисунке 4:

Я считаю, что иллюстрированный подход фундаментально верен. [3]

Разработка систем программного обеспечения

В начале 1980-х годов Уинстон Ройс ввел термин «инженерия программных систем» (SwSE) на одном из семинаров курса «Управление приобретением программного обеспечения» в Колледже управления оборонными системами в Форт-Бельвуаре, штат Вирджиния [13] .

По словам Ричарда Х. Тайера, почетного профессора разработки программного обеспечения Калифорнийского государственного университета в Сакраменто, разработка систем программного обеспечения связана с «применением принципов системной инженерии специально для разработки больших и сложных программных систем, которые представляют собой мощный инструмент для управления процессами и продуктами. " [13] Инженеры программных систем могут взять на себя ответственность за «общее техническое управление системой и проверку конечных системных продуктов». [13]

Архитектура программного обеспечения

В статье 1991 года «Архитектура программного обеспечения: интеграция процессов и технологий» Ройс и Ройс описывают связь между архитектурой и процессом разработки программного обеспечения. [14] По данным Филиппа Крухтена и др. (2006) эта статья была первой, «которая позиционировала архитектуру программного обеспечения — как в названии, так и в перспективе — между технологией и процессом». [15]

Смотрите также

Публикации

Ройс опубликовал несколько книг и статей. [16] Книги

Статьи, подборка:

Рекомендации

  1. ^ Доктор Уинстон В. Ройс (1929–1995) на сайте www.informatik.uni-bremen.de. Проверено 27 октября 2008 г.
  2. ^ [1] Дядя Боб Мартин упоминает о рекламе водопада в 49:41 этого выступления. Проверено 23 февраля 2020 г.
  3. ^ abcdefgh Уинстон В. Ройс (1970). «Управление разработкой больших программных систем» в: Технические документы Western Electronic Show and Convention (WesCon), 25–28 августа 1970 г., Лос-Анджелес, США.
  4. ^ Кристин Андерсон, Мерлин Дорфман (1991) Разработка программного обеспечения для аэрокосмической отрасли: сборник концепций
  5. ^ Эллис Горовиц (1975) Практические стратегии разработки больших программных систем . п. xii
  6. ^ «Дом: Американский институт аэронавтики и астронавтики». www.aiaa.org . Архивировано из оригинала 28 апреля 2015 года.
  7. ^ Алан М. Дэвис, «Отслеживание: пренебрежение простой необходимостью», в: IEEE Software , vol. 12, нет. 5, стр. 6–7, сентябрь 1995 г.
  8. ^ Познакомьтесь с нашими лидерами мысли в IBM Rational. Проверено 27 октября 2008 г.
  9. ^ Барри В. Бём (1987). «Управление программными процессами: уроки, извлеченные из истории» в ICSE '87, материалы 9-й международной конференции по программной инженерии, стр. 296-298.
  10. ^ Wasserfallmodell: Entstehungskontext, Маркус Рерих, Institut für Gestaltungs- und Wirkungsforschung, TU-Wien. Доступ онлайн 28 ноября 2007 г.
  11. ^ Уинстон В. Ройс на сайте Interaction-design.org. Проверено 27 октября 2008 г.
  12. ^ Белл, Томас Э. и Т.А. Тайер. Требования к программному обеспечению: действительно ли они являются проблемой? Материалы 2-й международной конференции по программной инженерии. Издательство IEEE Computer Society, 1976.
  13. ^ abc Ричард Холл Тайер (2002). «Разработка программных систем: Учебное пособие». В: Компьютер , апрель 2002 г.
  14. ^ WE Royce и W. Royce, «Архитектура программного обеспечения: интеграция процессов и технологий», TRW Quest, vol. 14, нет. 1, 1991, стр. 2–15.
  15. ^ Филипп Крухтен , Хенк Оббинк и Джудит Стаффорд (2006). «Прошлое, настоящее и будущее архитектуры программного обеспечения». Программное обеспечение IEEE, том 23 (2). п. 23
  16. ^ Ройс Уинстон и WW Ройс Список публикаций с библиографического сервера DBLP.