Re: Multiple specification of constraints

From: Jerome H. Gitomer <jgitomer_at_erols.com>
Date: Sun, 29 Feb 2004 18:24:13 -0500
Message-ID: <40427498$0$3093$61fed72c_at_news.rcn.com>


Dawn M. Wolthuis wrote:

        {SNIP}
>
> If I'm writing Java swing code, for example, or pick your favorite
> environment, and I need to display a set of mutually exclusive options (such
> as true/false) or a short or long list from which the user selects one or
> more options, or a calendar from which to select a date, ... then the data
> constraints (such as the type of element, a range or set of valid values,
> max or min length, etc) need to be available for my java-written GUI (or C,
> or C++ or VB or ...).

[Quoted] Why? If the data you are working with has already been validated and satisfies the constraints you should not have to revalidate it. Practical experience has shown that the best place for the constraints is in the database where they will appear once and only once.

[Quoted]   However, now they are buried in the dbms so
> developers tend to write them again at the front-end of the process,
> duplicating both specs and logic for applying such specs in a different
> language. Bad plan, methinks.

No, bad systems design and/or lousy management. If every programmer writes their own version of the constraints in every program incompatibilities and strange bugs can be guaranteed.

[Quoted] An example from my own experience (my only excuse is that application was written BC -- Before Codd) I was managing a project operating on US Dept of Labor data collected in face to face interviews. There were 8 report programs in the application. Seven of them has consistent values for the number of male and female interviewees, the 8th had different values.

It only took 80 some progammer hours to isolate the problem. In seven of the progams the number of males were counted and the difference between the population and the number of males was assumed to be female. In the 8th progam the number of females was counted and the difference between the population and the number of females was assumed to be male. An examination of the data collection forms revealed that the interviewers had not specified the sex of the interviewee in some cases, hence the discrepancies.
>

        {SNIP}
>
>
> Today if you have a constraint with multiple specifications and you want to
> change it, you must find all places it needs to change (GUI, database, data
> extraction tools, reporting tools?) and then find enough developers to cover
[Quoted] > all required skills and only then can it be changed.

And that is the reason why your constraints should be part of the database and not appear elsewhere in your system.

> What is the opposite of "agile"?
>
> --dawn
>
>
Received on Mon Mar 01 2004 - 00:24:13 CET

Original text of this message