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 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: 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" > 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 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: 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" > 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 > >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" > > > 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. > > >