OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Четверг, 28 Март, 2024 14:09

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
СообщениеДобавлено: Понедельник, 12 Март, 2012 11:11 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
http://blog.infogens.com/2010/05/blog-post.html

Авторы известны книгами по Delphi; являются опытными промышленными программистами, разработчиками крупной САПР СБИС - и одновременно преподавателями БГУИР.

Цитата:
Д.А. Сурков, К.А. Сурков, Ю.М. Четырько.
Школа программирования вместо службы персонала
21 мая 2010 года
Данная статья представляет собой текстовый вариант выступления на Международном Форуме по инженерии программного обеспечения SEF-2010, прошедшем в Минске 19-20 мая 2010 года. Доклад готовился коллективом из 3-х единомышленников, поэтому в ходе выступления звучит местоимение "мы".
...
Содержание нашего доклада будет следующим: сначала мы поговорим о том, сколько программистов требуется нашим ИТ-компаниям, и какие программисты им нужны; потом мы рассмотрим, как ИТ-компании осуществляют поиск программистов, и с какими проблемами они при этом сталкиваются; затем мы покажем проверенную на практике альтернативу, раскроем понятие "школы программирования" и сформулируем задачу для наших ИТ-компаний на долгосрочную перспективу.
...
Сколько нам нужно программистов?
...
Радикально увеличить количество выпускаемых из вузов программистов мы не можем в силу объективных причин. ...Как ни крути, количественно мы не можем конкурировать на рынке ИТ с Индией и Китаем.
Решение кадровой проблемы наших ИТ-компаний и обеспечение им конкурентоспособности на мировом рынке мы видим не за счет количества, а за счет качества - путем подготовки самых лучших, высококвалифицированных, программистов. И это наш ответ на вопрос -

Какие нам нужны программисты?
Именно высококвалифицированные программисты!
...
Высококвалифицированные программисты обладают намного более высокой производительностью труда, чем программисты низкой и средней квалификации. Порой она отличается в разы, иногда на порядок. ... Высококвалифицированные программисты создают на порядок более качественные программы, обеспечивая компаниям существенную экономию средств на этапе сопровождения программ. ... Высококвалифицированные программисты являются центрами, вокруг которых создаются коллективы, способные реализовывать проекты. Это бесценное качество, без которого невозможно создать программную систему.
Итак, нам нужны именно высококвалифицированные программисты. Именно они, за счет своих уникальных качеств, способны решать задачи, стоящие перед ИТ-компаниями. Однако мы должны отдавать себе отчет в том, что высококвалифицированные программисты всегда малочисленны (как и высококлассные специалисты других профессий). Из 15-летнего опыта преподавания базовых специальных дисциплин на кафедре ПОИТ в БГУИР мы знаем, что на потоке из 150 человек лишь приблизительно 5 человек потенциально способны стать системными архитекторами и генеральными конструкторами, вокруг которых можно строить коллективы и точки роста. Именно за эти "крупицы золота" и ведут охоту службы персонала ИТ-компаний. Посмотрим, как осуществляется поиск программистов и что он дает.

Поиск программистов
...
Отчаявшись найти программистов в нужном количестве и нужной специализации, ИТ-компании занялись созданием курсов программирования, на которых изучаются новые технологии. ... На курсы ходят в основном студенты, поэтому у компаний появляется хорошая возможность перехватить их, пока они еще не устроились в другие компании. Однако и здесь есть вопрос: ходят ли на такие курсы лучшие из лучших?
...
И наконец, еще один способ поиска программистов - олимпиады по программированию. Крупные ИТ-компании организуют или спонсируют олимпиады по программированию с предложениями о трудоустройстве для победителей. Олимпиады - очень хороший способ выявить интересующихся, увлеченных молодых людей, влюбленных в программирование. Однако успехи на олимпиадах свидетельствуют об умении мыслить нестандартно и быстро, но не могут быть критерием отбора лучших программистов. Связано это с особенностями олимпиадных задач. Они имеют слабое отношение к реальным проектам. Программы, создаваемые на олимпиадах, нигде и никогда не используются. Жизненный цикл олимпиадных задач состоит из нескольких часов и не включает развертывание, сопровождение, выпуск новой версии и другие важные этапы. Качество исходного кода программ не имеет значения на олимпиаде, а жесткие временные рамки не позволяют программисту уделить внимание терминологии, архитектуре, расширяемости и другим аспектам. Решение олимпиадных задач не формирует важнейший инженерный навык решения "нерешаемых" задач за счет изменений в их постановке.
Мы рассмотрели известные нам способы поиска программистов. Их эффективность невысока. Чтобы получить значительно лучший результат, необходимо изменить подход к решению кадровой задачи. ИТ-компаниям следует проводить подготовку и отбор программистов в учебных заведениях.

Вместо поиска программистов - подготовка и отбор в учебных заведениях
Подготовка и отбор программистов в учебных заведениях - самая верная стратегия для решения кадрового вопроса, расчитанная на долгосрочную перспективу. Она требует от ИТ-компаний некоторых инвестиций, но очень хорошо окупается. ИТ-компаниям выгодно делегировать своих сотрудников для проведения занятий со студентами. ... Что за это получает ИТ-компания? Доступ к "месторождению" программистов. Наше "месторождение" называется кафедра Программного обеспечения информационных технологий Белорусского государственного университета информатики и радиоэлектроники. Разрабатываем его уже более 15-ти лет. Собираем "крупицы золота" и приносим в те компании, в которых работаем сами. Чем больше преподаем, тем больше убеждаемся в том, что подготовка и отбор программистов должны осуществляться с самого раннего возраста, как подготовка чемпионов в спорте. Они должны быть возведены в систему и со временем превратиться в отечественную школу программирования.

Школа программирования

Создание школы программирования следует начинать в вузе. Главное внимание следует уделять преподаванию базовых специальных дисциплин. Это те дисциплины, которые составляют суть специальности, фундамент, на котором строятся знания специалиста. Не следует увлекаться созданием отдельных курсов по различным новым технологиям, появляющимся сейчас в большом количестве. На сегодняшний день время жизни новой технологии приближается к времени обновления рабочей программы в вузе. Поэтому вместо создания в большом количестве новых дисциплин следует чаще обновлять рабочие программы и темы лаборато-практических занятий, чтобы адаптировать существующие дисциплины к новым технологиям. Новые же дисциплины должны соответствовать новым аспектам программирования. Например, недавно появился такой аспект, как информационная безопасность, и сейчас ему в вузе соответствует отдельная дисциплиплина.

Чтобы завоевать доверие студентов и заставить их поверить в свои силы, преподавателю необходимо быть "играющим тренером", практиковаться, работая над реальными масштабными коммерческими проектами. Для этого необходимо создать условия, при которых преподаватели будут работать по совместительству на предприятиях, а сотрудники предприятий будут работать по совместительству в вузах.
...
Как мы выявляем лучших студентов? Оцениваем на протяжении нескольких лет обучения. Мы заметили, что лидеры в программировании среди студентов меняются со временем. Некоторые студенты приходят на первый курс с большим багажом знаний, другие студенты, особенно из глубинки, значительно им проигрывают. Но эта ситуация меняется на старших курсах. В лидеры выбиваются целеустремленные и трудолюбивые. В нашей очень динамичной специальности абсолютные объемы знаний ничего не значат, поскольку каждые пять лет полностью меняются технологии программирования. Нет смысла брать человека на работу сегодня на основании всего лишь его текущих знаний и навыков, если завтра он не сможет быстро освоить новые технологии. Поэтому при отборе студентов мы оцениваем их не по текущему уровню знаний и навыков, а по скорости профессионального роста. Мы называем такой подход "оценкой по первой производной".

Следует пойти дальше - начинать обучение программированию в школе одновременно с математикой. Вы спросите - зачем обычному человеку программирование? Мы убеждены, что программирование это такая же базовая дисциплина, как математика. Причем, программирование проще математики, поскольку в программировании все имеет физическую интерпретацию или аналогию.
...
Программирование в школе должно быть выделено из информатики в отдельный предмет, как алгебра и геометрия выделены из математики. Кроме того, необходимо внести корректировки в учебные задачи. Мы обнаружили, что школьников учат программированию на примере решения математических задач: вычисления корней квадратных уравнений, поиска наибольших общих делителей, наименьших общих кратных и т.п. Однако те, кто добиваются успехов в математике, не всегда преуспевают в программировании, и наоборот (вы обнаружите намек на это даже в притче Эдгара Дейкстры о железнодорожных вагонах и туалетах). Нужно учить школьников обрабатывать текст, управлять объектами на экране, ведь именно этим занимается компьютер большую часть времени.
...
Для массового обучения программированию было бы полезно организовать хорошую еженедельную телевизионную передачу.
...
Следует активно популяризировать программирования среди детей, молодежи и взрослых, чтобы снять в обществе психологический барьер перед кажущейся сложностью программирования.

Программирование - вторая грамотность

Школа программирования составит основу конкурентного преимущества белорусской отрасли ИТ на мировом рынке. Чтобы создать школу программирования, нам следует поставить амбициозную задачу обеспечения стопроцентной программистской грамотности населения Республики Беларусь в ближайшие 10-15 лет, и сделать это частью национальной идеи.

Програмистскую грамотность нельзя сводить к компьютерной грамотности. Компьютерная грамотность стимулирует потребление зарубежных программных продуктов. Программистская грамотность стимулирует производство собственных программных продуктов.

При стопроцентной программистской грамотности инновации не заставят себя ждать, причем в самых разных отраслях: от медицины и электроники до машиностроения, нефтепереработки и сельского хозяйства.

Впервые вопрос о том, что программирование является второй грамотностью, поставил академик Андрей Петрович Ершов в 1981 году на проходившей в Швейцарии 3-й всемирной конференции по применению ЭВМ в обучении. Его идея опередила время на 30 лет - лишь сейчас созрели условия для воплощения ее в жизнь. Мы верим, что, обладая всего лишь 10-миллионным населением, Республика Беларусь способна завоевать мировой рынок ИТ не числом, а умением.

С чего начать?

Как и в любом деле, нужно с чего-то начать. Мы видим следующие конкретные шаги:

- Создать инструментальные средства для обучения основам программирования и предоставить их в свободный доступ через интернет.

- Создать учебник по основам программирования для средних школ и предоставить его в свободный доступ через интернет.

- Создать цикл телепередач "Азбука программирования". Он должен быть построен таким образом, чтобы любой человек со средним образованием смог понять суть программирования и был способен обсуждать программы с профессиональными программистами.

- Задействовать налоговый инструмент для привлечения людей и ИТ-компаний к преподаванию программирования. Этот шаг необходим для того, чтобы ИТ-компаниям было выгодно привлекать в свои коллективы профессиональных преподавателей, и чтобы профессиональным программистам, работающим в ИТ-компаниях, было выгодно преподавать в учебных заведениях.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 12 Март, 2012 12:02 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2935
Откуда: г. Ярославль
Белорусы молодцы. Глядя на успех белорусской разработки "World Of Tanks", я верю, что у них всё получится!


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 12 Март, 2012 12:20 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Кто-нибудь толкните им, что ли, сигнал про наших участников из Витебска и Гомеля?
Или участникам из Витебска-Гомеля?

Никогда не знаешь, где стрельнет.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 12 Март, 2012 17:46 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3261
Откуда: Астрахань
Ничего про них не знал, но вот это порадовало:
Цитата:
- Создать инструментальные средства для обучения основам программирования и предоставить их в свободный доступ через интернет.

Народ понимает, что нет инструмента.
А мы уже реализовали всю процедурную часть. И пишем модульность.
Начинаем тотальное тестирование посредством написания кучи модулей по нашим лабам для С++... :)
В сентябре - это уже практически факт - поставим вместо кумира... :)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Среда, 14 Март, 2012 19:50 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 2046
Д.А. Сурков, К.А. Сурков, Ю.М. Четырько в http://blog.infogens.com/2010/05/blog-post.html писал(а):
...
Подготовка и отбор программистов в учебных заведениях - самая верная стратегия для решения кадрового вопроса, расчитанная на долгосрочную перспективу. Она требует от ИТ-компаний некоторых инвестиций, но очень хорошо окупается. ИТ-компаниям выгодно делегировать своих сотрудников для проведения занятий со студентами. ... Что за это получает ИТ-компания? Доступ к "месторождению" программистов. Наше "месторождение" называется кафедра Программного обеспечения информационных технологий Белорусского государственного университета информатики и радиоэлектроники. Разрабатываем его уже более 15-ти лет. Собираем "крупицы золота" и приносим в те компании, в которых работаем сами. Чем больше преподаем, тем больше убеждаемся в том, что подготовка и отбор программистов должны осуществляться с самого раннего возраста, как подготовка чемпионов в спорте. Они должны быть возведены в систему и со временем превратиться в отечественную школу программирования.
Вот именно... :)

Д.А. Сурков, К.А. Сурков, Ю.М. Четырько в http://blog.infogens.com/2010/05/blog-post.html писал(а):
...Школа программирования
...
Поэтому вместо создания в большом количестве новых дисциплин следует чаще обновлять рабочие программы и темы лаборато-практических занятий, чтобы адаптировать существующие дисциплины к новым технологиям. Новые же дисциплины должны соответствовать новым аспектам программирования. Например, недавно появился такой аспект, как информационная безопасность, и сейчас ему в вузе соответствует отдельная дисциплиплина.
...
В нашей очень динамичной специальности абсолютные объемы знаний ничего не значат, поскольку каждые пять лет полностью меняются технологии программирования. Нет смысла брать человека на работу сегодня на основании всего лишь его текущих знаний и навыков, если завтра он не сможет быстро освоить новые технологии. Поэтому при отборе студентов мы оцениваем их не по текущему уровню знаний и навыков, а по скорости профессионального роста. Мы называем такой подход "оценкой по первой производной"[/b].

Следует пойти дальше - начинать обучение программированию в школе одновременно с математикой. Вы спросите - зачем обычному человеку программирование? Мы убеждены, что программирование это такая же базовая дисциплина, как математика. Причем, программирование проще математики, поскольку в программировании все имеет физическую интерпретацию или аналогию.
...
Нужно учить школьников обрабатывать текст, управлять объектами на экране, ведь именно этим занимается компьютер большую часть времени.
...
Важные идеи. А школьников нужно учить постепенно и управлять объектами в жизни. Чтобы среди них вырастали способные справляться с такими проблемами...

Д.А. Сурков, К.А. Сурков, Ю.М. Четырько в http://blog.infogens.com/2010/05/blog-post.html писал(а):
...
Для массового обучения программированию было бы полезно организовать хорошую еженедельную телевизионную передачу.
...
Следует активно популяризировать программирования среди детей, молодежи и взрослых, чтобы снять в обществе психологический барьер перед кажущейся сложностью программирования.
...
- Создать учебник по основам программирования для средних школ и предоставить его в свободный доступ через интернет.

- Создать цикл телепередач "Азбука программирования". Он должен быть построен таким образом, чтобы любой человек со средним образованием смог понять суть программирования и был способен обсуждать программы с профессиональными программистами.
...
Именно такое предложение недавно озвучил редактору "Полиглота" на её странице в посте от 25-02-2012 14:26 (Фёдор Васильевич с некоторого времени в курсе :))... Кто близок к Шуховской башне (прежде всего в интерфейсном смысле :wink:) - м.б. действительно содействовать идее цикла? По опыту ХШП, Байтика, м.б. Орловского ФСПО и других?

В некотором смысле такие лекции будут видеокомпонентом того самого пособия. Насчёт "способности обсуждать" - важно. Но тут "предметник" д.б. оснащён языково. Не в последнюю очередь - "когнитивной письменностью" для языков спецификации задач/программ хотя бы...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 04 Июнь, 2012 12:06 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 2046
Вот такая статья, возможно, известная (курсив мой; спасибо за [url=http://devlab.netne.net/wiki/doku.php/devel/start#методика_разработки_по]ссылку[/url] Роману М.):
Charles Fishman в http://kholeg.wordpress.com/2006/11/20/ писал(а):
...
"Это подобно дошумерской цивилизации," – говорит Брэд Кокс, который написал ПО для компьютера Стива Джобса NeXT и профессор университета имени Джорджа Меэйсона. "Тот способ, которым мы создаем ПО – это эра охотников и собирателей".

Джон Мансон, программист и профессор информатики университета Айдахо еще более категоричен. "Пещерное искусство" – он говорит. "Это примитив. Считается, что мы обучаем компьютер науке. Но здесь нет науки вообще."

Программное обеспечение может быть двигателем для постиндустриального мира, но его создание остается доиндустриальным ремеслом. Согласно исследования SEI, около 70% программистских организаций застряли на первых двух уровнях по шкале SEI: хаос и нечто лучшее, чем хаос. Ситуация настолько тяжелая, что некоторые пионеры программирования ушли из компаний, подобных Микрософт, чтобы преподавать искусство создания ПО.
...
Но это не относится к бортовой группе шаттла. Их рабочие места – это кабинеты, населенные конторскими служащими. Наиболее впечатляет то, насколько заурядно они выглядят. Если не считать небольших памятных вещей с шаттлов, вы можете подумать, что оказались в офисе любой небольшой фирмы или правительственного учреждения. У каждого есть свой небольшой офис, в которых есть доска, персональный компьютер, немногочисленные личные вещи. Люди на работе носят сдержанно элегантные вещи, аккуратные, но не бросающиеся в глаза и, естественно, чистые.

Они работают с 8 до 5 – работа допоздна случается, но это, скорее, исключение. Программисты работают напряженно, но сдержано. Многие из них отдали годы работе либо в IBM (куда входила группа шаттла до 1994 года), либо непосредственно в разработке программного обеспечения для шаттлов. Они взрослые люди, у них есть супруги, дети и личная жизнь помимо их поразительных программ.
...
Другой момент – это порядок, детали и методические повторения. Данное совещание, классическое мероприятие в НАСА – это репетиция практически идентичного совещания, которое произойдет через несколько недель. Оно состоит из прогона невероятных объемов данных и изображений – графы, которые описывают прогресс и состояние программного обеспечения по каждой строке. За исключением Келлеровских лирических отступлений, тон, в целом, деловой, почти формальный, изображения – диаграммы мелькают настолько быстро, насколько они могут восприниматься, смесь из аббревиатур, диаграмм и графиков.

То, что происходит здесь – это основная работа, которая определяет движитель группы к совершенству – движитель, который особенно нетерпим к единоличным решениям. В бортовой группе шаттла нет суперзвезд. Основной подход к разработке ПО умышленно разработан таким образом, чтобы не зависеть от конкретного человека.

Точно также культура не терпит творчества, индивидуальной показухи и признаков классической индустрии ПО. "Люди спрашивают, разве такой процесс не душит творчество? Вы должны делать все в точности так, как говорит руководство, и у вас есть некто, кто заглядывает вам через плечо" – говорит Келлер. "Ответом будет – да, этот процесс действительно душит творчество".

И вот именно в этом все дело – вы не можете позволить людям быть свободными художниками при написании кода, который управляет космическим кораблем вместе с людьми, чьи жизни зависят от этого. Попробуйте-ка исправить такой код, когда он уже на орбите. "Хьюстон, у нас проблемы" – это скорее подходит для хорошего фильма; это недопустимо при написании ПО. "Люди должны направлять свое творчество в изменение самого процесса", – говорит Келлер – "а не в изменение программного обеспечения".
...
Процесс может быть сведен к четырем предложениям:

1. Продукт хорош настолько, насколько хорош план для него.

В бортовой группе шаттла, около трети процесса по написанию ПО происходит до того, как кто-либо напишет хоть одну строку кода. НАСА и группа из Локхид Мартин достигают соглашения в самых подробных описаниях, касательно всего, что новый код должен будет делать – и затем они фиксируют достигнутые договоренности на бумаге с такой скрупулезностью и точностью, которую обычно можно наблюдать при ксерокопировании. Ничто в спецификациях не может быть изменено без согласия и полного понимания с обеих сторон.
...
"Наши требования – это практически псевдокод", говорит Уильям Претт, который руководит этим проектом в НАСА. "Они говорят – вы должны делать именно это, именно таким образом, в данных условиях и при данных обстоятельствах".
...
2. Лучшая работа в команде – это здоровая конкуренция.

В группе разработчиков ПО для шаттла существуют подгруппы и субкультуры. Но то, что в других организациях может быть собственной офисной политикой, здесь является критической частью всего процесса.

Центральная группа разделяется на две ключевые команды: разработчики – люди, которые сидят и пишут код, и проверяющие – люди, которые пытаются найти дефекты в коде. Обе команды отчитываются разным начальникам и имеют прямо противоположные задачи. Группа разработки обязана выпустить абсолютно безошибочный код, настолько безупречный, чтобы тестеры не нашли дефектов вовсе. Группа тестирования обязана истязать этот код при помощи сценариев полета и симуляций, чтобы обнаружить как можно больше дефектов.
...
В результате такой дружеской конкуренции группа шаттла сейчас обнаруживает 85% ошибок до начала формального тестирования, и 99.9% до того, как программа отправляется в НАСА.
...
3. База данных – это фундамент программного обеспечения.

Есть программное обеспечение. Но кроме этого, существуют еще базы данных, две громадных базы данных, энциклопедичных по полноте хранимой информации.

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

Другая база данных – это база данных ошибок, является своего рода памятником тому пути, которым прошла бортовая группа шаттла в своей работе. Здесь содержатся все ошибки, которые были когда-либо допущены при написании или при работе с ПО, на протяжении почти 20 лет. Для каждой ошибки в базе данных хранятся записи о том, когда эта ошибка была обнаружена; какой набор команд привел к ней; кто обнаружил ошибку; на какой стадии ошибка была обнаружена – при тестировании, при тренировке или в полете. Здесь отслеживается как ошибка проявилась в программе; как ошибке удалось просочиться сквозь фильтры на каждой стадии поиска ошибок – почему она не была обнаружена при проектировании? при ревизиях кода? при тестировании? В конечном итоге база данных содержит информацию о том, как ошибка была исправлена и не могли ли подобные ошибки просочиться сквозь эти дыры.
Группа собрала настолько большой объем данных о том, как она работает, что были написаны программы, которые моделируют процесс написания кода. Подобно тому как компьютер моделирует предсказания погоды, модели кодирования предсказывают сколько ошибок следует ожидать при написании каждой новой версии программы. И если разработчики или тестеры находят слишком мало ошибок, то все исследуют процесс до тех пор пока реальность и предсказания не совпадут.

"Мы никогда не пускаем ничего на самотек", – говорит Претти Торнтон, старший менеджер. – "Мы делаем прямо противоположное: мы допускаем, чтобы все нас беспокоило."

4. Мало исправить ошибку – в первую очередь, необходимо исправить все, что позволило этой ошибке случиться.

Процесс является настолько всеобъемлющим, что он оказывается в ответе за каждую ошибку – если есть дефект в программе, значит что-то не в порядке с процессом написания кода, что-то что должно быть исправлено. Любая ошибка, не обнаруженная на стадии планирования, проникла, по крайней мере, сквозь несколько проверок. Почему так случилось? Что-то не в порядке с ревизиями кода? Или в контрольный список следует добавить новый пункт?

Важно заметить, что группа избегает обвинять людей в ошибках. Все обвинения берет на себя процесс – и именно процесс подвергается анализу, чтобы определить как и почему произошла ошибка. В то же время, ответственность является принципом команды: ни один человек не отвечает единолично за написание или ревизию кода. "Вас не будут наказывать за то, что вы допускаете ошибки", – говорит Маджори Сейтер, старший сотрудник технического персонала. "Если я делаю ошибку, а другие проверяют мою работу, значит я не одинок. Меня не будут обвинять в этом."
...
Процесс работает таким образом, что он обнаруживает ошибки не только в ПО. Он обнаруживает ошибки в самом себе.
...
В то время когда остальной мир еще осваивает основы, бортовая группа шаттла постепенно продвигается к совершенному программному обеспечению. Естественно, у них есть масса преимуществ перед остальным миром разработки программного обеспечения. Они разрабатывают всего лишь один продукт: одну программу, которая управляет одним космическим кораблем. Они знают свою программу досконально на протяжении всего времени работы над ней. У группы только один заказчик, причем, весьма разумный. К тому же, деньги здесь не являются ограничивающим фактором: бюджет группы размером в 35 миллионов долларов является незначительным кусочком НАСА’вского пирога, но в пересчете на количество строк кода это делает группу одной из наиболее дорогостоящих организаций по разработке ПО в США.

И еще такой момент: этот процесс настолько исключительный, стремление к совершенству настолько выражено, что это показывает что же необходимо для достижения неизменно высоких результатов. Наиболее важные вещи, которые делает группа шаттла, такие как: тщательное планирование будущего ПО заранее, написание кода только после того, когда завершен процесс проектирования, никаких изменений без изменения соответствующих спецификаций, хранение полной и аккуратной истории кода – не являются дорогостоящими. Это даже не относится исключительно к космической науке. Это стандартные приемы практически в любой инженерной отрасли, за исключением, создания программного обеспечения.
...
Наверное, можно считать основой при подготовке программистов. Сам процесс сформировался в определённых условиях - и в то же время кажется верным замечание, что основные принципы м.б. перенесены и в другие.

В этой связи актуально замечание минских товарищей, что нужно учить в школе и программированию. А также - что нужна учебная телепрограмма...


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB