**Hotspots**: Admin Pages | Turn-in Site |

**Current Links**: **Cases** ** Final Project Summer 2007**

## Jiuguang's Extra Credit

**Mathematics Genealogy Project**

In the field of mathematics, the knowledge of each mathematician can often be tracked and traced from advisors to students, showing its flow and growth over the years. Some historians, however, argue that the mathematical genealogy is not part of the history of mathematics. Based on your previous experience with data structures or databases, chose one to use in the design of a program which compiles a list of all mathematicians and their relations to each other, thus proving the flow of knowledge over the generations.

**Digital Circuits**

In real life, digital circuits are not drawn by software such as LogicWorks – they are synthesized using a Hardware Description Language called VHDL (VHSIC Hardware Description Language), an IEEE-standard hardware description language originally developed by the US Department of Defense as a common means of documenting electronic systems. You have written a PC Interpreter for CS2110 in Assembly – now, learn some basic VHDL commands, and write a program which can be used to interpret it. For reference, consult the ECE 2031 Lab Manual:

http://diglab.ece.gatech.edu/

**UML Tool**

In CS2335, you have been exposed to the Unified Modeling Language (UML), which can be used in deriving a good object-oriented design for software. The past CS2340 students have also wrote a CRC Cards program, which allows the generation of codes from the CRC Cards. Now, design a program which allows the drag-n-drop design of UML Class Diagrams, and based on the diagram, generate the basic Class information (function declarations, variables, etc).

### Link to this Page