Метрики программного обеспечения: определение и применение
Software metric
Метрики ПО: стандарты измерения качества, производительности и сложности программного обеспечения. Объективные данные для планирования и оптимизации разработки.
Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Введение
Мера степени, в которой программное обеспечение обладает определенным свойством.
Measure of the degree to which software possesses some property
В разработке и инженерии программного обеспечения, программная метрика – это стандарт измерения степени, в которой программная система или процесс обладает определенным свойством. Даже если метрика не является самим измерением (метрики – это функции, а измерения – это числовые значения, полученные в результате применения метрик), эти два термина часто используются как синонимы. Поскольку количественные измерения необходимы во всех науках, специалисты и теоретики в области компьютерных наук постоянно стремятся привнести аналогичные подходы в разработку программного обеспечения. Цель состоит в получении объективных, воспроизводимых и количественно определяемых измерений, которые могут иметь множество ценных применений в планировании сроков и бюджета, оценке стоимости, обеспечении качества, тестировании, отладке программного обеспечения, оптимизации производительности и оптимальном распределении задач между сотрудниками.
In software engineering and development, a software metric is a standard of measure of a degree to which a software system or process possesses some property. Even if a metric is not a measurement (metrics are functions, while measurements are the numbers obtained by the application of metrics), often the two terms are used as synonyms. Since quantitative measurements are essential in all sciences, there is a continuous effort by computer science practitioners and theoreticians to bring similar approaches to software development. The goal is obtaining objective, reproducible and quantifiable measurements, which may have numerous valuable applications in schedule and budget planning, cost estimation, quality assurance, testing, software debugging, software performance optimization, and optimal personnel task assignments.
Принятие и общественное мнение
Некоторые специалисты в области разработки программного обеспечения указывают на то, что слишком упрощенные измерения могут принести больше вреда, чем пользы. Другие отмечают, что метрики стали неотъемлемой частью процесса разработки программного обеспечения. Влияние измерений на психологию программистов вызывает опасения относительно негативного воздействия на производительность из-за стресса, тревоги, связанной с результатами, и попыток манипулировать метриками. В то же время, другие считают, что это положительно влияет на самооценку разработчиков и помогает избежать их недооценки. Некоторые утверждают, что определения многих методологий измерений неточны, и, как следствие, часто непонятно, каким образом инструменты для их расчета приходят к конкретному результату. Другие же полагают, что неидеальная количественная оценка лучше, чем её отсутствие («Нельзя управлять тем, что нельзя измерить»). Существуют данные, подтверждающие широкое использование программных метрик государственными учреждениями, вооруженными силами США, NASA, ИТ-консультантами, академическими институтами, а также коммерческим и академическим программным обеспечением для оценки объемов разработки.
Some software development practitioners point out that simplistic measurements can cause more harm than good. Others have noted that metrics have become an integral part of the software development process. Impact of measurement on programmer psychology have raised concerns for harmful effects to performance due to stress, performance anxiety, and attempts to cheat the metrics, while others find it to have positive impact on developers value towards their own work, and prevent them being undervalued. Some argue that the definition of many measurement methodologies are imprecise, and consequently it is often unclear how tools for computing them arrive at a particular result, while others argue that imperfect quantification is better than none (“You can’t control what you can't measure.”). Evidence shows that software metrics are being widely used by government agencies, the US military, NASA, IT consultants, academic institutions, and commercial and academic development estimation software.