Process Standards
You have two friends. Sonya
is extremely well organized, she keeps lists of things to do, she always knows
where to find a tool or who has a particular book, and everything is done
before it is needed. Dorrie, on the other hand, is a mess. She can never find
her algebra book, her desk has so many piles of papers you cannot see the top,
and she seems to deal with everything as a crisis because she tends to ignore
things until the last minute. Who would you choose to organize and run a major
social function, a new product launch, or a multiple-author paper? Most people
would pick Sonya, concluding that her organization skills are crucial. There is
no guarantee that Sonya would do a better job than Dorrie, but you might assume
the chances are better with Sonya.
We know that software
development is difficult in part because it has inherently human aspects that
are very difficult to judge in advance. Still, we may conclude that software
built in an orderly manner has a better chance of being good or secure.
The Software Engineering
Institute developed the Capability Maturity Model (CMM) to assess
organizations, not products (see [HUM88] and [PAU93]).
The International Standards Organization (ISO) developed process standard ISO
9001 [ISO94] , which is somewhat similar
to the CMM (see [PAU95] ). Finally the
U.S. National Security Agency (NSA) developed the System Security Engineering
CMM (SSE CMM, see [NSA95a]). All of
these are process models, in that they examine how an organization does
something, not what it does. Thus, they judge consistency, and many people
extend consistency to quality. For views on that subject, see Bollinger and
McGowan [BOL91] and Curtis [CUR87]. El Emam [ELE95]
has also looked at the reliability of measuring a process.
Now go back to the original
descriptions of Sonya and Dorrie. Who would make the better developer? That
question is tricky because many of us have friends like Dorrie who are fabulous
programmers, but we may also know great programmers who resemble Sonya. And
some successful teams have both. Order, structure, and consistency may lead to
good software projects, but it is not sure to be the only way to go.
Related Topics
Privacy Policy, Terms and Conditions, DMCA Policy and Compliant
Copyright © 2018-2023 BrainKart.com; All Rights Reserved. Developed by Therithal info, Chennai.