FoCS and Object-Oriented Software Engineering
 Robert Lechner , Prof. Emeritus/Adjunct
Computer Science Department
University of Massachusetts - Lowell

Welcome to my FoCS, OOAD and Software Engineering Web Page, with  links to syllabi, resources and project team legacies.

RJLRef: www.cs.uml.edu/~lechner (Last update: 22 January 2009)


09s304=91.304 Foundations of Computer Science, Spring 2009

Interactive Block Diagram Editor bde2java2 Demo

Links to prior Courses:

08f304=91.304 Foundations of Computer Science, Fall 2008

08f522=91.522 OOAD with MDD, Fall 2008  [Cancelled]
          Course prerequisites and Software Engineering context

          06f522=91.522 OOAD: Object-Oriented Analysis and Design

          05f523=91.523 SE I:      Object-Oriented Software Engineering

          06s524 91.524 SE II:      Object-Oriented Frameworks

          OOAD/SWEng courses 91.522/91.523/91.524

          Comp IV/DB I courses 91.309/91.204

91.204/309 Syllabi

01s309 Database I (Spring 2001)(Syllabus)  

01s204 Computing IV (Object-Oriented Compiler Construction) (Spring 2001)

02k204 Computing IV (Object-Oriented Compiler Construction) (Fall 2000)


Resource Links to OOAD and SWEngineering Resources (page #2)

Project Links to OOAD and SWEngineering team projects (page #3)



Index of 01f522/02s522 slide presentations (Spring 2002 semester):

·       Interactive Block Diagram Editor bde2java2 Demo

·       BDE (Block Diagram Editor) User Guide (.gif version, Rev. 2k0504)

·       BDE (Block Diagram Editor) User Guide" (Office2k/ppt version Rev. 2k0606)

·       Object-Relational Databases - COOL/GEN approach (PowerPoint Slides)

·       Refactoring with GhostVariables 2k0206 (PowerPoint Slides)

·       Coherent Models for OOA, OOPSLA '91 (95f523)

The BDE User Guide 2000 is the BDE User Guide which describes how to use both bde and bde2java. It contains an option to download the PowerPoint source file bdeUG.ppt.

The bdeJava User Guide discusses differences of the 97s523 Java version of BDE from BDE for unix/X11/Motif.


Index of 99f522 slide presentations (Fall 1999 semester):

·       99/9/27: Finite State Models for a Pascal Comment recognizer.

·       Microwave Oven Controller Project Design Rationale and Schedule

[NOTE: If you have [a viewer for] MS PowerPoint V4.0 or later, download the .ppt (v4) file to view it. This is much faster than browsing the slide show via a 56KB modem.]


Index of 97f522 slide presentations (Fall 1997 semester):

EER (Extended Entity-Relation) Data Models Tutorial (ppt) 970910

EER (Extended Entity-Relation) Data Models Tutorial (htm) 970910

COOL-FAQs (Intro to Collaborative Object-Oriented Laboratory) 970923


Links to object-oriented legacy software projects: (These links were moved below the following hyperlinks which are relevant to OOAD - RJL 031016 )


Index of GEN tool documentation

(under construction - RJL 2kf):

COOL-GEN/chgenv11r2UserManual.doc: (Latest compete and self-contained User Manual (in $CASE/gen/ver_11, featuring genlog from the genmerge project.

COOL-GEN/chgenv12r1.doc: Extending genv11 to Log and Replay BDE


Final Report2 on 02f522 conversion of chgen to gencpp:

$PH/COOL-GEN/gencpp/gencppFReport2_mo_rl.htm  (For Figures, see .doc version )
(A summary of gencpp is under 'Notes on object-oriented legacy software projects' below).

Alternate MSWord .doc version of gencpp report.  

Hints on bulding and running gencpp (ntansala)

Index of GEN tool documentation:

pGen93s523: Encapsulation of field access in chgenv7 code library.

(For relevance to genv11, see MSWOrd version with footnotes and properly indented source code fragments in $CASE/93s523/pGen93s523Finalv2.doc)

Data Modeling Support to C Programmers

(A LaTex/PostScript paper on the philosophy behind the GEN part of our COOL framework.)


Index of 99f204 slide presentations:

·       Nested FSMachines to separate Pascal code from and skip comments 990926

·       Recursion and Iteration in Syntax Diagrams (six slides) 991014

·       Eleven Finite State Models 99f523