Re: [HACKERS] Case tool

From: "Ross J(dot) Reedstrom" <reedstrm(at)wallace(dot)ece(dot)rice(dot)edu>
To: pgsql-interfaces(at)hub(dot)org
Cc: Kaare Rasmussen <kar(at)webline(dot)dk>
Subject: Re: [HACKERS] Case tool
Date: 1999-06-17 16:14:55
Views: Raw Message | Whole Thread | Download mbox
Lists: pgsql-hackerspgsql-interfaces

On Thu, Jun 17, 1999 at 09:29:07AM +0200, Kaare Rasmussen wrote:
> Someone posted this link to a Case tool:
> Unfortunately it's in Russian, which I know nothing about, and it
> doesn't seem to have been worked upon since 1997.
> I don't know the strength of this tool, as I can't understand the
> description, but can this be the best OSS-contender with no work being
> done for two years?

I've spent time looking for such tools in the Free Software community
on and off over the last couple of years. I agree that there's a gap in
what's available.

Sometimes, I think the problem is that, although there's a number of
academic projects working on the general problem of graph layout, they all
seem to want to commercialize their code, rather than contribute it to
the community. A consequence, I think, of how expensive good commercial
CASE tools are: makes it easier to imagine turning your pet project into
some money, I suppose.

Perhaps a deeper reason seems to be the suspicion among hacker types that
CASE isn't all it's cracked up to be. Heck, there's no OSS graphical
IDE for software development, but that hasn't stopped the development
of some pretty large projects (the Linux kernel and PostgreSQL as two
examples.) A public CVS repository, text editor of your choice, and
command line compilation tools (e.g. gcc driven by make) seem to be all
the developers need to get the work done. CASE diagraming tools seem to
be more critical for generating pretty pictures for management. That's
been true for me, so I added simple schema diagramming to the pgaccess
tool. This allows me to document the relationships in an existing DB,
rather than the other way around. (Hmm, that reminds me, did I send that
last version off to Constantin? I better check) I will admit that the
diagramming has also eased collaborating with co-developers at remote
sites. So, I see it as filling part of the documentation problem, rather
than the design problem.

Now, it seems that your experience has been that DB CASE is critical for
large DB projects. Perhaps these types of projects scale differently the
code development projects I mentioned above. If so, the free software
community hasn't had the chance to fill that niche yet: heck, it's only
been the last 12 to 18 months that PostgreSQL has matured enough in the
eyes of many to tackle really big DB implementations.

I haven't had the opportunity to use commercial CASE tools (or commercial
DB,s for that matter!) What benefits do you see in using them? It seems
you're incredulous that anyone could maintain a DB with more than 60
tables without them. Why? It seems to me that maintainability of any
complex system comes from a well factored underlying design, rather
than from complex maintenance tools. I'd really like to hear your take
on this, but I'm pretty sure the HACKERS mailing list is the wrong one
for this discussion. Ah, I think the INTERFACES list looks about right.
(I've posted there, and CCed you on this mail, since I'm not sure your
subscribed there)

Ross J. Reedstrom, Ph.D., <reedstrm(at)rice(dot)edu>
NSBRI Research Scientist/Programmer
Computer and Information Technology Institute
Rice University, 6100 S. Main St., Houston, TX 77005

In response to

  • Case tool at 1999-06-17 07:29:07 from Kaare Rasmussen


Browse pgsql-hackers by date

  From Date Subject
Next Message Zeugswetter Andreas IZ5 1999-06-17 16:16:26 Re: [HACKERS] Savepoints... (row overhead)
Previous Message Oleg Bartunov 1999-06-17 16:12:12 SOLVED: Re: [HACKERS] mirroring problem (

Browse pgsql-interfaces by date

  From Date Subject
Next Message Oleg Bartunov 1999-06-17 16:37:10 Re: [INTERFACES] Re: [HACKERS] Case tool
Previous Message Thomas Lockhart 1999-06-17 13:57:10 Re: [INTERFACES] psql command access through libpq/libpq++