From: ccc31807 on
On Apr 4, 5:07 pm, Charlton Wilbur <cwil...(a)chromatico.net> wrote:
> Yes, and when a professional software engineer is handed unclear,
> ambiguous, or absent requirements, it is one of his responsibilities to
> see that they are clarified, disambiguated, or written at all.
>
> That is the point that you do not seem to wish to understand.

It's not that I don't wish to understand the point. In some cases, the
end user doesn't know the requirements until he has a handle on the
data. An end user that doesn't understand the problem can't specify
clear and precise requirements.

In order to follow your advice to clarify, disambiguate, or reduce to
writing the requirements, it's sometimes necessary to write code that
does something. We don't always have the luxury of having a complete
and precise specification before writing the first line of code. This
is one of the challenges that the spiral development cycle was
designed for.

CC.
From: Charlton Wilbur on
>>>>> "R" == Ruud <rvtol+usenet(a)xs4all.nl> writes:

R> Do they really still exist, these environments where they write
R> up specifications and sign them off and such? What a waste!

R> Go and work in a communicative environment, where the "business"
R> and the "developers" continuously share and improve the business
R> knowledge, and help each other to get results, with noticeable
R> improvements every day.

....and what you're doing is just writing the specifications iteratively
and interactively. If you don't know what your goals are, you have no
idea if you're making any progress towards them.

Charlton


--
Charlton Wilbur
cwilbur(a)chromatico.net
From: ccc31807 on
On Apr 6, 5:03 pm, Charlton Wilbur <cwil...(a)chromatico.net> wrote:
> ...and what you're doing is just writing the specifications iteratively
> and interactively.  

What's wrong with that? Seems to be that the basis of 'requirements
engineering' is that requirements are developed in an empirical,
deductive manner, rather than a top down all-or-nothing manner.

> If you don't know what your goals are, you have no
> idea if you're making any progress towards them.

This is a truism, and like all other truisms has limited application.
The 'goal' might be to grow the business, but the devil is in the
details. I did a project recently analyzing call center data,
developing scripts showing when, where, and why the users called. Some
areas had a lot more calls than others, and I recall a heated
discussion as to whether it was because these units were doing a
better job than the others, or a worse job than the others.

The 'goal' was to service the users. Does a high call volume mean that
you are doing a better job? or a worse job? Do you want to increase
the help calls, which might indicate that people were using the
product? Or do you want to decrease the help calls, which might
indicate that people were actually using the product rather than
having problems with it?

CC.
From: Charlton Wilbur on
>>>>> "cc" == ccc31807 <cartercc(a)gmail.com> writes:

>> If you don't know what your goals are, you have no idea if you're
>> making any progress towards them.

cc> This is a truism, and like all other truisms has limited
cc> application. The 'goal' might be to grow the business, but the
cc> devil is in the details.

"Make the business grow" is a strategic goal. Someone who knows the
business needs to derive some tactical goals from that -- things that,
if the workers should accomplish them, should result in the business
growing. But "make the business grow" is a completely useless goal to
give to a programmer.

More to the point, you cannot invalidate the usefulness of goals in
software development by pointing out the difficulty of working towards a
vague strategic goal. Yes, that's a goal. No, it's not a useful goal
for a programmer to work towards without an intermediate goal.

Time and time again you're given a vague specification or no
specification at all, you dive in headfirst, it turns out to be not what
the person actually wanted, you take all the blame, and then you vent
here. You are contributing to and enhancing the problem that you're
complaining about, and you're too stubborn or stupid to see it. You are
building the hell you're in, and when other people point out that you
are doing so, you come up with a paragraph of quasi-management speak to
justify why you should keep on building your own hell.

If you want help, you've come to the right place. If you want to vent
about how miserable your life is and how nobody understands you,
livejournal is that way.

Charlton





--
Charlton Wilbur
cwilbur(a)chromatico.net
From: ccc31807 on
On Apr 7, 8:33 am, Charlton Wilbur <cwil...(a)chromatico.net> wrote:
> If you want help, you've come to the right place.  If you want to vent
> about how miserable your life is and how nobody understands you,
> livejournal is that way.

I think you might have misinterpreted the thrust of the conversation.
My intention was to provoke a discussion about the process of
developing applications, which in mu case means little scripts that
import data and export information.

I don't want or need 'help' in dealing with my personal employment
situation. I don't want or need to 'vent' in the sense garnering
sympathy. I certainly don't want to give the impression that my life
is miserable, because it's not.

These kinds of discussions have value (IMO) because they allow us to
share experiences and ideas, which help in the day to day practice of
our profession. My clients aren't stupid, ignorant fools who exist
merely to make my life hell, but smart, knowledgeable professionals
who want to grow the enterprise. It's my job to help them by giving
them the information they need.

The fact that they might lack the skills to do this, and the
vocabulary to talk about the process, just makes the job more
challenging, and my own role more important.

CC.

>
> Charlton
>
> --
> Charlton Wilbur
> cwil...(a)chromatico.net

First  |  Prev  |  Next  |  Last
Pages: 1 2 3 4 5 6 7 8 9
Prev: perl.libwww?
Next: How to convert "=?ISO-8895-1?Q?..." stuff?