logo       

Re: Testing: theory and practice: msg#00184

org.user-groups.dotnet.padnug

Subject: Re: Testing: theory and practice


Thanks for all the comments, both from Xpdx and Padnug. The 'environment
variable X' example is just one I chose because it is so simple. This one
example could be solved technically. I could talk to all the sysadmins who run
the servers and make sure the environment variable was set on all of them, and
write my program so that it exits if the variable is not set to either Y or Z.
But this is just one example. If I took that approach to every issue, the
project would be late, and I would not get any kudos for it. One respondent
said XP depends on communication, but I work in a corporation. One more point
- the way I am writing the program IS 'the simplest thing that could possibly
work', and it WILL pass all the tests. I could make waves, and insist on the
tests being harder, but we now live in a 'shoot the messenger' culture, and
CYA is the first rule of survival. The whole point of this rant is - I've read
the software process books from Brooks to Beck, but I find the real world of
corporate software is far from their ideas. If you talk about software
engineering, you get blank stares. Maybe I just need to learn how to market
software process as a product to high-up IT managers. Then I'll be rich.

>>>> I wonder whether anyone has any comments on my experience. Once again, I
find myself in a large corporation, trying to reconcile what Kent Beck says
with what actually happens. Here is a small example of how far from the world
of extreme programming is the world I work in. I am extending an existing
program. I have a choice. I can either write the program correctly, such that
if environment variable X is set to Y, it does tne new thing, if it is set to
Z, it does the old thing, and if it is unset or is set to neither Y nor Z, it
exits with an error message. Or I can do the wrong thing: I can write it so
that, if X is set to Y, it does the new thing, or if X is unset or set to
anything other than Y, it does the old thing. I know that no-one reads the
spec., and that this new environment variable, X, will not be set on the
servers I do not have access to. If I do the right thing, the new program will
not work on these servers. However, on the servers I have control over, I will
set X to Y, and the new program will do the new thing. On all the other
servers, the new program will do the old thing. The tests will work, and
everyone will be happy.


=====
www.softwareprocess.biz

__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com





<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise