Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
В разработке программного обеспечения, рецензирование - это тип рецензирования программного обеспечения, в котором рабочий продукт (документ, код или другое) рассматривается коллегами автора, чтобы оценить техническое содержание и качество рабочего продукта.
In software development, peer review is a type of software review in which a work product (document, code, or other) is examined by author's colleagues, in order to evaluate the work product's technical content and quality.
Цель
Цель экспертного обзора - обеспечить "дисциплинированную инженерную практику для обнаружения и исправления дефектов в программных артефактах и предотвращения их утечки в полевые операции" в соответствии с моделью зрелости способности. При выполнении в рамках каждой деятельности процесса разработки программного обеспечения, экспертные обзоры выявляют проблемы, которые могут быть исправлены на ранних этапах жизненного цикла. То есть, экспертный обзор, который выявляет проблему требований во время деятельности по анализу требований, дешевле и легче исправить, чем во время архитектуры программного обеспечения или тестирования программного обеспечения. Национальный эксперимент по качеству программного обеспечения, оценивающий эффективность рецензирования, обнаруживает "благоприятную отдачу от инвестиций в проверку программного обеспечения; экономия превышает затраты в 4 к 1". Другими словами, в среднем в четыре раза дороже выявлять и исправлять проблему с программным обеспечением позже.
The purpose of a peer review is to provide "a disciplined engineering practice for detecting and correcting defects in software artifacts, and preventing their leakage into field operations" according to the Capability Maturity Model. When performed as part of each Software development process activity, peer reviews identify problems that can be fixed early in the lifecycle. That is to say, a peer review that identifies a requirements problem during the Requirements analysis activity is cheaper and easier to fix than during the Software architecture or Software testing activities. The National Software Quality Experiment, evaluating the effectiveness of peer reviews, finds, "a favorable return on investment for software inspections; savings exceeds costs by 4 to 1". To state it another way, it is four times more costly, on average, to identify and fix a software problem later.
Отличие от других видов обзора программного обеспечения
Взаимооценки отличаются от оценок руководства, которые проводятся представителями руководства, а не коллегами, и для целей управления и контроля, а не для технической оценки. Они также отличаются от аудитов программного обеспечения, которые проводятся персоналом, не связанным с проектом, для оценки соответствия спецификациям, стандартам, договорным соглашениям или другим критериям.
Peer reviews are distinct from management reviews, which are conducted by management representatives rather than by colleagues, and for management and control purposes rather than for technical evaluation. They are also distinct from software audit reviews, which are conducted by personnel external to the project, to evaluate compliance with specifications, standards, contractual agreements, or other criteria.
Процессы рассмотрения
Процессы рецензирования существуют в рамках спектра формальностей, с относительно неструктурированными действиями, такими как "проверка друзей" на одном конце спектра, и более неформальными подходами, такими как прохождение, технические рецензии и проверки программного обеспечения, на другом. IEEE определяет формальные структуры, роли и процессы для каждой из последних трех. Представители руководства обычно не участвуют в проведении экспертной оценки, за исключением случаев, когда они участвуют в ней из-за специфических технических знаний или когда рассматриваемый продукт работы является документом на уровне руководства. Это особенно верно для руководителей других участников обзора. Процессы формального экспертного обзора, такие как проверка программного обеспечения, определяют конкретные роли для каждого участника, количественно определяют этапы с критериями входа/выхода, фиксируют показатели программного обеспечения в процессе экспертного обзора.
Peer review processes exist across a spectrum of formality, with relatively unstructured activities such as "buddy checking" towards one end of the spectrum, and more Informal approaches such as walkthroughs, technical peer reviews, and software inspections, at the other. The IEEE defines formal structures, roles, and processes for each of the last three. Management representatives are typically not involved in the conduct of a peer review except when included because of specific technical expertise or when the work product under review is a management level document. This is especially true of line managers of other participants in the review. Processes for formal peer reviews, such as software inspections, define specific roles for each participant, quantify stages with entry/exit criteria, capture software metrics on the peer review process.
Отзывы о "открытом исходе"
В сообществе свободных / открытых исходных текстов, что-то вроде рецензирования произошло в области проектирования и оценки компьютерного программного обеспечения. В этом контексте обоснование рецензирования имеет свой эквивалент в законе Линуса, часто формулируемом так: "При наличии достаточного количества глазных яблок все ошибки являются мелкими", что означает: "Если есть достаточно рецензентов, все проблемы легко решаются". Эрик С. Реймонд написал впечатляющее о рецензировании в разработке программного обеспечения.
In the free / open source community, something like peer review has taken place in the engineering and evaluation of computer software. In this context, the rationale for peer review has its equivalent in Linus's law, often phrased: "Given enough eyeballs, all bugs are shallow", meaning "If there are enough reviewers, all problems are easy to solve." Eric S. Raymond has written influentially about peer review in software development.