From lechner@cs.uml.edu  Sun Nov 13 20:24:21 2005
Received: from saturn.cs.uml.edu (saturn.cs.uml.edu [129.63.8.2]) by earth.cs.uml.edu (8.11.6/8.11.6) with ESMTP id jAE1OAY21333; Sun, 13 Nov 2005 20:24:10 -0500
Received: from saturn.cs.uml.edu (localhost [127.0.0.1]) by saturn.cs.uml.edu (8.12.9/8.12.9) with ESMTP id jAE1OAXi026525; Sun, 13 Nov 2005 20:24:10 -0500 (EST)
Received: (from lechner@localhost) by saturn.cs.uml.edu (8.12.9/8.12.9/Submit) id jAE1O9TZ027336; Sun, 13 Nov 2005 20:24:09 -0500 (EST)
From: Bob Lechner <lechner@cs.uml.edu>
Message-Id: <200511140124.jAE1O9TZ027336@saturn.cs.uml.edu>
Subject:  DS, FS? No NOT in 94sbde_schema.sch (no need: is_key = 0/non-key)
To: jingyoko@hotmail.com (jingyoko@hotmail.com Tan)
Date: Sun, 13 Nov 2005 20:24:09 -0500 (EST)
Cc: ralmonte@cs.uml.edu (Almonte), mandava_s@yahoo.com, smandava@cs.uml.edu, jtan@cs.uml.edu, jingyoko@hotmail.com, uguntu@cs.uml.edu (Guntu), kpatel1@cs.uml.edu (Patel), lechner@cs.uml.edu (Bob Lechner)
In-Reply-To: <BAY108-F1663FA4000857981C0C4DAD75B0@phx.gbl> from "jingyoko@hotmail.com Tan" at Nov 13, 2005 02:13:32 PM
X-Mailer: ELM [version 2.5 PL2]
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Length: 1373
Lines: 37
X-Status: 
X-Keywords:                 
X-UID: 477
X-Evolution: 0000026e-0000
Status: RO

> From jingyoko@hotmail.com  Sun Nov 13 09:14:05 2005
> From: "jingyoko@hotmail.com Tan" <jingyoko@hotmail.com>
> To: lechner@cs.uml.edu
> Subject: RE: bde make ran OK on saturn in $RBGB/pr_util_nolog/ ( bug changes to be
>  tested)
> Hello Professor,
> 
> One quick question, do we have Function Specification (FS) and/or Design 
> Specification (DS) for BDE ?
> 
> Thanks,
> Jing
> 
--------------------------
A good question, Jing (there is hope for you yet:-)
It shows you are really getting the flavor of schema declarations.
DSid, FSid are pseudo-fkeys  or TBD-fkeys in HG or HN
because they are NOT declared as fkeys in 94sbde_schema.sch: 
(is_key = 0 = non-key).  So they are loaded as char[9] 
e.g. "FS000001" null-terminated string values 

They are ignored by the code,
until such time as we do add a FS-row to hold .dat file 
name version date-stamps author properties, or Design Spec
file [hyper-]links.

Don't worry about XXid's with is_key = 0; 
some are place-holders; some are obsolete. 
They don't hurt as long until code uses them- 
then their data type matters a lot to the referencing code,
and the code from chgen.


Future plans: HG.FSid is important to identify file container,,
HN.FSid may become DSid; HG.DSid may go away.  HG may have a new fkey 
SVid (SchemaVersion), if it varies between diagrams (HG_dependent)a
otherwise FS will .have SVid. 

From lechner@cs.uml.edu  Thu Nov 17 13:29:19 2005
Received: from saturn.cs.uml.edu (cs.uml.edu [129.63.8.2]) by earth.cs.uml.edu (8.11.6/8.11.6) with ESMTP id jAHIT6Y02673; Thu, 17 Nov 2005 13:29:06 -0500
Received: from saturn.cs.uml.edu (localhost [127.0.0.1]) by saturn.cs.uml.edu (8.12.9/8.12.9) with ESMTP id jAHIT6Xi214829; Thu, 17 Nov 2005 13:29:06 -0500 (EST)
Received: (from lechner@localhost) by saturn.cs.uml.edu (8.12.9/8.12.9/Submit) id jAHIT6R9217519; Thu, 17 Nov 2005 13:29:06 -0500 (EST)
From: Bob Lechner <lechner@cs.uml.edu>
Message-Id: <200511171829.jAHIT6R9217519@saturn.cs.uml.edu>
Subject: Re: DS, FS? No NOT in 94sbde_schema.sch (ah - I see)
To: jingyoko@hotmail.com (jingyoko@hotmail.com Tan)
Date: Thu, 17 Nov 2005 13:29:06 -0500 (EST)
Cc: ralmonte@cs.uml.edu (Almonte), mandava_s@yahoo.com, smandava@cs.uml.edu, jtan@cs.uml.edu, jingyoko@hotmail.com, uguntu@cs.uml.edu (Guntu), kpatel1@cs.uml.edu (Patel), lechner@cs.uml.edu (Bob Lechner), sfrye@cs.uml.edu (Scot Frye)
In-Reply-To: <BAY108-F3630791BC89EA1B6ABB7D8D75F0@phx.gbl> from "jingyoko@hotmail.com Tan" at Nov 17, 2005 05:01:34 PM
X-Mailer: ELM [version 2.5 PL2]
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Length: 4579
Lines: 109
X-Status: 
X-Keywords:                 
X-UID: 488
X-Evolution: 00000284-0000
Status: RO

Thank you for the clarification, Jing.
By sheer coincidence, you used terms that are or were in 
bde's schema.sch HG and HN tables. Sorry I misinterpreted them.


The (TBD) DSid fkey in a HG or HN node refers  to design docs 
for the APPLICATION that is modeled by the bde data and state 
diagrams from which code is generated or interpreted.
The leaf nodes would be source code functions for which
DSid should relate implementation to requirements (design contracts). 
Ideally, the version history of models and code, together 
with sequence diagrams (derived from logs of test behavior) 
should provide a maintainance guide, which you and I 
both wish BDE had. 

The X11 interface is the oldest part of bde, after pr_util 
from chgen.  It may have been self-documenting at one time,
when students learned X11 with Xt- and Xm-based graphics.
I CAN refer you to reports for early bde projects,
all of which are in $CASE/year/course/project.
At that time structured methods were not applied 
to GUI programming and GUI design was in its infancy.
Test suites were prohibitiveily costly for an event-based 
GUI (hence our focus on STD-level log and replay).

Other attempted implementations of bde grew independently 
precisely because bde had no architectural design documentation 
to imitate or evolve from, apart from the code itself.
What documentation exists for bde is scattered and obsolete.
Design recoveay is hard, now that X11 specialiazation is
practically a lost art. [Lesson learned: never finish a project
without documenting its architecture and test suite.. 

There were past attempts to document bde's call tree and 
variable references. (See the idraw subdirectory in 
bde's repositlory). These focused on reverse engineering 
from bde/src/#ops.cc code into state models, and
documented canvas editing methods rather than GUI layout. 
Reverse engineering tools (e.g. cflow on unix) 
only existed for C but not for C++ or GUIs,
and state models were unknown to such tools. 

R Lechner

> From jingyoko@hotmail.com  Thu Nov 17 12:01:46 2005
> From: "jingyoko@hotmail.com Tan" <jingyoko@hotmail.com>
> To: lechner@cs.uml.edu
> Subject: RE: DS, FS? No NOT in 94sbde_schema.sch (no need: is_key = 0/non-key)
> Hello Professor,
> 
> Thank you for your praise, but I think my question was not clear. Actually, 
> my question was asked for  a documentation written by a designer who was 
> before starting writing code, NOT schema declarations. The reason I asked is 
> that I want to understand how and why the BDE came from and its structure.
> 
> But, any way, I guess we may not have it/them.
> 
> Thanks,
> Jing
> 
> >From: Bob Lechner <lechner@cs.uml.edu>
> >To: jingyoko@hotmail.com (jingyoko@hotmail.com Tan)
> >CC: ralmonte@cs.uml.edu (Almonte), mandava_s@yahoo.com, 
> >smandava@cs.uml.edu,       jtan@cs.uml.edu, jingyoko@hotmail.com, 
> >uguntu@cs.uml.edu (Guntu),       kpatel1@cs.uml.edu (Patel), 
> >lechner@cs.uml.edu (Bob Lechner)
> >Subject: DS, FS? No NOT in 94sbde_schema.sch (no need: is_key = 0/non-key)
> >Date: Sun, 13 Nov 2005 20:24:09 -0500 (EST)
> >
> > > From jingyoko@hotmail.com  Sun Nov 13 09:14:05 2005
> > > From: "jingyoko@hotmail.com Tan" <jingyoko@hotmail.com>
> > > To: lechner@cs.uml.edu
> > > Subject: RE: bde make ran OK on saturn in $RBGB/pr_util_nolog/ ( bug 
> >changes to be
> > >  tested)
> > > Hello Professor,
> > >
> > > One quick question, do we have Function Specification (FS) and/or Design
> > > Specification (DS) for BDE ?
> > >
> > > Thanks,
> > > Jing
> > >
> >--------------------------
> >A good question, Jing (there is hope for you yet:-)
> >It shows you are really getting the flavor of schema declarations.
> >DSid, FSid are pseudo-fkeys  or TBD-fkeys in HG or HN
> >because they are NOT declared as fkeys in 94sbde_schema.sch:
> >(is_key = 0 = non-key).  So they are loaded as char[9]
> >e.g. "FS000001" null-terminated string values
> >
> >They are ignored by the code,
> >until such time as we do add a FS-row to hold .dat file
> >name version date-stamps author properties, or Design Spec
> >file [hyper-]links.
> >
> >Don't worry about XXid's with is_key = 0;
> >some are place-holders; some are obsolete.
> >They don't hurt as long until code uses them-
> >then their data type matters a lot to the referencing code,
> >and the code from chgen.
> >
> >
> >Future plans: HG.FSid is important to identify file container,,
> >HN.FSid may become DSid; HG.DSid may go away.  HG may have a new fkey
> >SVid (SchemaVersion), if it varies between diagrams (HG_dependent)a
> >otherwise FS will .have SVid.
> >
> 


