Что опасно доверять программисту?

В выше- компьютерный долго невозможно представить себе ни большое предприятие, ни малый офис, где обходятся бес вычислительной техники. И везде нужны программисты. Не везде, правда, находят имущество на их содержание, Но востребованность квалифицированного инженера, кто с компьютером на «ты», ощущается повсеместно…В выше- компьютерный долго невозможно представить себе ни большое предприятие, ни малый офис, где обходятся бес вычислительной техники. И везде нужны программисты. Не везде, правда, находят имущество на их содержание, Но востребованность квалифицированного инженера, кто с компьютером на «ты», ощущается повсеместно.
Под словом «программист» я подразумеваю не только человека, создающего программы, а более поместительный диапазон: системные работы, администрирование сетей и баз данных, помощь работоспособности рабочих мест и да далее. Это не очень соответствует понятию «программист», Но совершенно отражает современные представления о нем. Возьмем их зa основу.
Итак, программисты – это гаранты отлаженной работы целых заводов, икона Интернета! да что же им мочь доверить? согласен и вероятно ли это? Возьмем пример.
– Валерочка! Быстренько откорректируй программу, чтоб при анализе очередного работника проверялась дата поступления. опосля обеда нужен результат.
– Антон Павлович, только завтра к концу смены.
– Брось все! Занимайся только датами! Завтра к обеду крайний срок!
– Понял…
Валерочка успел сегодня, что привело власть в восторг. Но Кагда программу запустили, при сканировании каждого из пяти тысяч муж на экране высвечивались две даты и требовалось нажатие клавиши «ввод» для продолжения. Антон Павлович схватился зa голову. А Валерочка, воспользовавшись быстрой победой, взял на крышка дня отгул. Программа работала правильно, Но отладочная знак сводила на «нет» все удобство. Быстрее было проверить результаты вручную. старшой дал намек восстановить предыдущую версию программы. Но ни одна душа не знал, где ее искать. На железе Валеры их было несколько. Системщик Сережа предложил идею воспользоваться позавчерашней копией, Но не был уверен, что Валера зa чета дня не успел внести изменения. Он неутомимо усовершенствовал свое детище.
Вот я и навесил на уши читателю пару килограмм лапши. Почему лапши? Ситуация, надобно сказать, недопустимая. По многим причинам. Разложим их по полочкам.
1. Отладочная качество – это нагайка программистов. Он не щадит никого, даже асов, скорее, преимущественно асов. Оставить ее в программе – легко. суть – основная вопрос выполнена, новые команды программы проверены и протестированы, причем с поддержкой этой самой отладочной печати, а убрать ее просто забыли.
2. главнокомандующий не обязан был предвкушать на удача впопыхах. следствие нуждаться совершенно проверить и лучше предоставить это исполнять пользователю. много не помешает вмещать комплекс контрольных примеров, которые стоит просмотреть опосля каждого изменения.
3. Программисту невозможно трогать программы предварительно отгулом, отпуском либо командировкой.
4. Последнее и самое основное. Программисту разительно опасный пользоваться доступ к сданным в эксплуатацию разработкам. Их лучше курировать другому специалисту, не причастному к программированию.
А автора да и тянет улучшить те либо некоторый режимы либо тайный исправить собственную оплошность. Даже последнее может поставить под тумак целое предприятие, Кагда программист, исправляя одно, случайно зацепит другое. И это не халатность. Это сродный процесс работы. Ошибок при создании и изменении программ делается довольно много. Но опытным специалистом они несказанно бегло исправляются опять в ходе отладки, и на «люди» выходит разительно малая пакет их: или же требующая чрезвычайно сложного контроля, или же просто незамеченная за ее легкости, типа отладочной печати.
Я внес описанную ситуацию в порядок недопустимых. К сожалению, они имеют место, и В любое время случаются как невозможно некстати. верховный заключение – следующий: невозможно дозволять программиста до эксплуатации собственных разработок, добро бы авторы к этому страшно рвутся. Я – не исключение. Помню, как я менял работающие варианты программ, несмотря на официальную политику начальника. Доступ? А который его проконтролирует?
Еще одну дума хочу высказать. кроме контрольных примеров, желание пользоваться работника для прогонки всевозможных тестов. Ему обязательно нужно разбираться в сути предмета и очень свободно точно знать программирование.
Рассмотрим пример.
В связи с увольнением сотрудника мне было поручено сопутствовать его тему – намерение зарплаты. Программа была написана давно, Но не передавалась расчетчикам. через силу сложная технология. Доработка из в возраст в год откладывалась и в конце концов потеряла актуальность. На подходе была новая система управления предприятием, в которой зарплата да присутствовала. Я тратил полдня (чаще полночи) на запуск и воздаяние модулей, созданных кроме на старой технике. начало было интересно. Я ухватил естество и зa четыре месяца не сделал ни одной ошибки. В голове созрел порядок совершенствования отдельных кусков для ускорения работы. Но реализовать его я не успел, благодаря текучке. Это оказалось положительным моментом. То, что я задумал, облегчило бы работу чисто внешне. А на глубинном уровне могли накопиться погрешности. линия команд обращался сам к ядру старых систем, а новые их интерпретировали не так.
На пятый луна я почувствовал себя настолько уверенно, что расслабился. бессознательно запуская программы, я думал о новшествах. В результате одна небольшая действие была опущена, и пятьдесят индивид неправильно рассчитались. К счастью, пятьдесят – не да много, и мы быстро выкрутились, написав дополнительную ветку. Зарплату институт получил вовремя. какой нравоучение я хочу исполнять Программисту, преимущественно продвинутому, опасный ауторизировать операторскую работу. около него психология мышления решительно другая. Решить сложную проблему, спастись от аварии – покамест мозги заняты, все соглашаться нормально, и даже с блеском. Но скучное действие серийных заданий – не для него. тогда нуждаться методичное следование технологии, не больше.
Еще одна ситуация. Программист сдает работу. Все проверил на отладочной базе данных и подключился к реальной. Программа работает. старейшина доволен, пользователи не звонят. упражнение движется. Программисту выдают следующее задание. Необходимое время на проработку, консультации с заказчиками, все ясно! дозволено начинать. С утра с телефоном начальника происходит вещь непонятное. Звонят со всех отделов и жалуются, что программа сошла с ума, выдает набитый абсурд. властитель собирает срочное совещание. На нем выясняется, что программист забыл отключиться от реальной базы данных и производил отладку неуклонно на ней. Естественно, некоторый причина были запорчены.
Вывод: мочь программисту заключать непринужденный доступ к эксплуатируемой информации! Ведь да свободно перепутать базу реальную и отладочную. Для сотворения программы это несущественно. Программисту все равно, на чем получить результат. по-этому успокаиваться он может не сразу. Я не мало раз ловил себя на аналогичном. Но, к счастью, катастрофы не было. Я прежде замечал несоответствия.
Так что и работающие программы и данные, к которым они обращаются, должны присутствовать зa семью паролями от лихого сносный не боящегося программиста. А доработкам обязательно нужно выдержать инкубационный период. Во время него выходит на сцену знаток по тестированию. В конечном итоге новую версию принимает проблемный администратор. Он отвечает зa сохранность сданных модулей и пресекает все попытки кого-либо несанкционированно их изменить.
Интересно, потреблять ли хотя где-то такая «идеальная» система работы? Боюсь, что чаще программист, правитель и тестировщик объединяются в одном лице. а разъединить это физиономия николи не поздно.
Есть такое выражение: «Не икона горшки обжигают». если программисты – и вкушать боги, то их профессия разработать технологию обжига, а обжечь могут и другие.