在编程中使用的进程越多,代码就会变得越糟糕
I have noticed something in my 8 or so years of programming, and it seems ridiculous. It's that the only way to get quality is to employ quality developers, and remove as much process and formality from them as you can. Unit testing, coding standards, code/peer reviews, etc only reduce quality, not increase it. It sounds crazy, because the opposite should be true (more unit testing should lead to better code, great coding standards should lead to more readable code, code reviews should improve the quality of code) but it's not.
我认为这可以归结为我们称之为“软件工程”的事实,而实际上它是设计而不是工程。
以下数字可以证实这一说法:
From the Editor
IEEE Software, November/December 2001
Quantifying Soft Factors
by Steve McConnell
...
Limited Importance of Process Maturity
...
In comparing medium-size projects
(100,000 lines of code), the one with
the worst process will require 1.43
times as much effort as the one with
the best process, all other things
being equal. In other words, the
maximum influence of process maturity
on a project’s productivity is 1.43. ...
... What Clark doesn’t emphasize is that
for a program of 100,000 lines of
code, several human-oriented factors
influence productivity more than
process does. ...
... The seniority-oriented factors alone
(AEXP, LTEX, PEXP) exert an influence
of 3.02. The seven
personnel-oriented factors
collectively (ACAP, AEXP, LTEX,
PCAP, PCON, PEXP, and SITE §) exert a
staggering influence range of 25.8!
This simple fact accounts for much of
the reason that non-process-oriented
organizations such as Microsoft,
Amazon.com, and other entrepreneurial
powerhouses can experience
industry-leading productivity while
seemingly shortchanging process. ...
The Bottom Line
... It turns out that trading process
sophistication for staff continuity,
business domain experience, private
offices, and other human-oriented
factors is a sound economic tradeoff.
Of course, the best organizations
achieve high motivation and process
sophistication at the same time, and
that is the key challenge for any
leading software organization.
请阅读文章,了解这些首字母缩写词的解释。