Jump to content

Этика программирования

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

Американский ученый Норберт Винер , профессор математики и инженерии Массачусетского технологического института , был первым, кто заложил основу для нового типа Этика в середине 1940-х годов. Он заметил, что инновации и достижения науки и техники , а также быстро развивающаяся компьютерная индустрия привели к появлению такого типа Этики, который он назвал «кибернетикой» (от греческого слова, обозначающего пилота корабля). Растущее использование компьютеров и других технологий поднимает новые этические проблемы, которые необходимо тщательно проанализировать с использованием новых этических принципов.

Винер написал три книги, которые заложили основу для нового раздела этики после окончания Второй мировой войны. Это были книги «Кибернетика» (1948 г.), «Использование человеческих существ человеком» (1950 г.) и «Бог и Голем, Инк.» (1963 г.). Несмотря на то, что он никогда не видел себя создателем новой области этики, Винер привел подробные примеры, на которых можно было бы выявить некоторые этические и социальные проблемы и последствия, возникшие в результате использования компьютеров . Однако другие ученые не восприняли его идеи всерьез, поскольку считали его эксцентричным ученым, фантазировавшим об этике (Байнум). [1]

В 1976 году Уолтер Манер предложил новый термин, касающийся этики, названный «компьютерная этика», основанный на идеях и принципах Норберта Винера . Манер считал необходимым создать область этики для компьютерной индустрии, как это было в тот момент в медицинской и деловой отраслях. Манер также определил эту область как область, которая «исследует этические проблемы, усугубленные, трансформированные или созданные компьютерными технологиями» (Байнум), [1] и он даже разработал курс компьютерной этики, который можно было бы преподавать студентам университетов.

В начале 1990-х годов Дональд Готтербарн утверждал, что компьютерную этику следует рассматривать как профессиональную этику, которая может привести к разработке и продвижению стандартов передовой практики и кодексов поведения для специалистов по информатике (Байнум). [1] Он работал с несколькими защитниками профессиональной этики над написанием этических руководств по созданию этических кодексов. Он участвовал в разработке Кодекса этики и профессионального поведения, принятого Ассоциацией вычислительной техники (ACM) в 1992 году, и Кодекса этики и профессиональной практики разработки программного обеспечения, принятого Институтом инженеров по электротехнике и электронике (IEEE) и АКМ тоже. Эти кодексы также включают принципы этики программирования.

Этические рекомендации по программированию

[ редактировать ]

Ассоциация вычислительной техники (ACM) — крупнейшее в мире образовательное и научное компьютерное общество. У него есть собственный Кодекс этики и еще один набор этических принципов, которые также были одобрены IEEE в качестве стандарта преподавания и практики разработки программного обеспечения . Этими кодексами являются Кодекс этики и Профессиональное поведение и Кодекс этики и профессиональной практики разработки программного обеспечения соответственно, а также некоторые из их руководящих принципов представлены ниже:

Из Кодекса этики и профессионального поведения (ACM): [2]

  • Вносить вклад в благосостояние общества и людей. Программистам следует работать над разработкой компьютерных систем, которые смогут уменьшить негативные последствия для общества, такие как угрозы безопасности и здоровью, и которые могут облегчить повседневную деятельность и работу. Это «обязательство развиваться в соответствии с высокими стандартами» (Сэвидж). [3]
  • Избегайте причинения вреда другим. Компьютерные системы оказывают косвенное влияние на третьих лиц. Они могут привести к потере информации и ресурсов, что может нанести серьезный вред пользователям, общественности или работодателям. Поэтому разработчики программного обеспечения должны свести к минимуму риск причинения вреда другим людям из-за ошибок в кодировании или проблем безопасности, следуя стандартам проектирования и тестирования систем (Кодекс этики и профессионального поведения). [2]
  • Будьте честными и заслуживающими доверия. Этот принцип побуждает программистов быть честными и осознавать свои ограничения в знаниях и образовании при написании компьютерных систем. Кроме того, если программист узнает, что с компьютерной системой что-то не так, он должен немедленно сообщить об этом, чтобы избежать нежелательных последствий.
  • Отдайте должное интеллектуальной собственности. Каждый разработчик программного обеспечения обязан никогда не использовать и не присваивать авторство чужой работе, даже если она не защищена законом об авторском праве, патентом и т. д. Они должны признавать и полностью отдавать должное работам других людей, а также использовать свои собственные. идеи по разработке программного обеспечения.
  • Уважайте частную жизнь других. Компьютерные системы неправильно используются некоторыми людьми для нарушения конфиденциальности других. Разработчики программного обеспечения должны писать программы, которые могут защитить личную информацию пользователей и предотвратить несанкционированный доступ к ней других нежелательных людей (Кодекс этики и профессионального поведения).
  • Соблюдайте конфиденциальность. Если этого не требует закон или какие-либо другие этические нормы, программист должен хранить в секрете любую дополнительную информацию, связанную с его работодателем, которая возникает в результате работы в проекте.

Из Кодекса этики и профессиональной практики разработки программного обеспечения [4] (IEEE, ACM):

  • Одобряйте программное обеспечение только в том случае, если у них есть обоснованное убеждение, что оно безопасно и соответствует спецификациям. Программисты не могут предполагать, что система готова к использованию только потому, что она выполняет необходимые задачи. Они должны убедиться, что эти системы также безопасны и соответствуют всем спецификациям, требуемым пользователем. Если программы небезопасны, пользователи не защищены от хакеров, которые могут украсть важную информацию или деньги. необходимо провести несколько тестов, чтобы обеспечить безопасность системы . Поэтому перед утверждением системы
  • Принимать полную ответственность за свою работу. Если в программе есть ошибки, разработчик программного обеспечения должен взять на себя полную ответственность за свою работу и работать над ее пересмотром, исправлением, модификацией и тестированием .
  • Не использовать сознательно программное обеспечение, полученное или сохраненное незаконно или неэтично. Если одна компьютерная система будет использоваться в качестве основы для создания другой, то разрешение на это должен спросить программист. Этот принцип запрещает использование любого другого программного обеспечения для любых целей, если способ его получения неясен или заведомо незаконен или неэтичен.
  • Выявлять, определять и решать этические, экономические, культурные, юридические и экологические проблемы, связанные с рабочими проектами. Если программист замечает и определяет, что работа над проектом приведет к каким-либо проблемам, то программист должен сообщить об этом своему работодателю, прежде чем продолжить.
  • Убедитесь, что спецификации программного обеспечения, над которым они работают, удовлетворяют требованиям пользователей и имеют соответствующие разрешения. Разработчики программного обеспечения должны прийти к своим работодателям и попросить соответствующее одобрение создаваемой ими системы, прежде чем продолжить работу над следующей частью. Если он не соответствует требованиям, то следует внести изменения в исходный код системы.
  • Обеспечить адекватное тестирование, отладку и проверку программного обеспечения. Программистам следует проводить соответствующие тесты для частей программного обеспечения, с которыми они работают, а также проверять наличие ошибок и дыр в безопасности системы, чтобы убедиться, что программы хорошо реализованы.
  • Не принимайте участие в мошеннических финансовых действиях, таких как взяточничество, двойное выставление счетов или другие неправомерные финансовые действия. Программистов разоблачают как участников незаконной деятельности с целью получения денег. Они участвуют в них из-за угроз, экономических проблем или просто потому, что хотят получить легкие деньги, воспользовавшись своими знаниями о том, как работают компьютерные системы. Данная директива запрещает участие программистов в подобных противоправных действиях.
  • Улучшите их способность создавать безопасное, надежное и полезное качественное программное обеспечение. Поскольку технологии развиваются быстрее с каждым годом, как и виртуальная преступность, потребность в хорошо структурированных и продуманных программах возрастает. Компьютерные системы стареют и ограничиваются новыми и новыми устройствами. Программистам следует «расширять свои знания о разработках в области анализа, спецификации, проектирования , разработки, обслуживания и тестирования программного обеспечения и сопутствующих документов» (Кодекс этики и профессиональной практики разработки программного обеспечения). [4] для создания лучших программ.

Роль университета

[ редактировать ]

Университет Огайо также обучает своих специалистов по компьютерным наукам в области этики программирования. Они ожидают, что каждый студент поймет и будет следовать принципам и обязанностям ACM. [5]

[ редактировать ]

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

См. также

[ редактировать ]
  1. ^ Перейти обратно: а б с Байнум, Террел (26 октября 2015 г.) [14 августа 2001 г.]. «Компьютерная и информационная этика» . В Эдварде Н. Залте (ред.). Стэнфордская энциклопедия философии (выпуск весны 2011 г.) . Проверено 21 июня 2021 г.
  2. ^ Перейти обратно: а б Рабочая группа по Кодексу ACM 2018. «Кодекс этики и профессионального поведения ACM» . Ассоциация вычислительной техники . Проверено 28 сентября 2013 г. {{cite web}}: CS1 maint: числовые имена: список авторов ( ссылка )
  3. ^ Перейти обратно: а б Сэвидж, Брэндон (12 августа 2009 г.). «Этика для программистов?» . BrandonSavage.net . Проверено 29 сентября 2013 г.
  4. ^ Перейти обратно: а б Дональд Готтербарн , Кейт Миллер и Саймон Роджерсон (28 сентября 2013 г.). «Кодекс этики и профессиональной практики программной инженерии» . Ассоциация вычислительной техники , IEEE . дои : 10.1145/265684.265699 . S2CID   9789551 . {{cite journal}}: Для цитирования журнала требуется |journal= ( помощь ) CS1 maint: несколько имен: список авторов ( ссылка )
  5. ^ «Мир программирования» . Университет Огайо . 08.05.2021.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: b1ee06290ddf62b75c1d21524e079c3a__1711002180
URL1:https://arc.ask3.ru/arc/aa/b1/3a/b1ee06290ddf62b75c1d21524e079c3a.html
Заголовок, (Title) документа по адресу, URL1:
Programming ethics - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)