FSU Seal - 1851

CIS 5930 Section 51
Hierarchical State Machines and Reactive Systems Programming
Spring Semester 2004

CLASS SCHEDULE: This class meets weekly on Wednesday evenings for the Spring 2004 semester:
5:00pm -- 7:30pm, Jan 7 - Apr 28, excluding Mar 10 (Spring Break) in TEC 0129 (Panama City Campus).


Dr. Chris Lacher
Office:112 Faculty Annex B / Panama City Campus
Office Phone (during office hours):850-522-5502 or 850-644-2090 ext 251
Mobile Phone/Voice Mail (24/7):850-510-5575
Email: lacher@cs.fsu.edu
Weekly Schedule Effective Jan 5 - Apr 30, 2004 (excluding Mar 7 - 12)

COURSE RATIONALE: Hierarchical state machines (finite state machines with a behavioral inheritance hierarchy) provide a theoretically sound methodology for modelling event-driven/reactive systems. Quantum programming provides a framework for lightweight implemention of these HSM models using statecharts in C/C++. The results are sufficiently reliable and lightweight to be suitable for embedded and real-time systems.

COURSE OBJECTIVES: Upon successful completion of the course the student should have:

COURSE RESOURCES (subject to expansion and/or revision):


Topic    Reference
1. IntroductionCh 1 of [Sam]
2. Patterns[G4] - all references to "state"
3. FSM, Statecharts, ModelsCh 2 of [Sam]
4. UML StatechartsCh 6 and pp 438-448 of [UML]
5. State Machine ImplementationsCh 3 of [Sam]
6. Behavioral InheritanceCh 4 of [Sam]
7. State PatternsCh 5 of [Sam]
8. State Model InheritanceCh 6 of [Sam]
9. Introduction to Quantam FrameworkCh 7 of [Sam]
10.Design of Quantum FrameworkCh 8 of [Sam]
11.Implementation of Quantum FrameworkCh 9 of [Sam]
12.Building and Application using the Quantum FrameworkCh 10 of [Sam]
Note: Topics 1-8 are required coverage. Topics 9-12 are optional, to be covered as time permits.

COURSE GRADING: Grades will be assigned based on the following:

Course grade components are detailed in Table 1. The assignment of letter grades is given in Table 2.

    Table 1: Course Points
    Item Points
    Assignments    500
    Final Exam    500
      Table 2: Letter Grades
      Points Grade
      925 - 1000 A
      900 - 924 A-
      875 - 899 B+
      825 - 874 B
      800 - 824 B-
      775 - 799 C+
      725 - 774 C
      700 - 724 C-
      675 - 699 D+
      625 - 674 D
      600 - 624 D-
      0 - 599 F

EXAM SCHEDULE: There will be two assessments (midterm and final) covering course content. These will be held during regularly scheduled class times. The final exam will be on April 28, 2004.


Attendance Policy:

The university requires attendance in all classes.

Exam Makeup Policy:

An exam missed without an acceptable excuse will be recorded as a grade of zero (0). The following are the only acceptable excuses:

All excuses must be submitted in writing, must be signed by the excusing authority, and must include complete contact information for the authority, including telephone numbers and address.

Missed exams with acceptable excuse will be made up or assigned the average grade of all other exams, at the option of the course instructor.

Missed, and acceptably excused, final exams will result in the course grade of 'I' and must be made up in the first two weeks of the following semester.

Grade of 'I' Policy:

The grade of 'I' will be assigned only under the following exceptional circumstances:


All students are expected to uphold the Academic Honor Code published in The Florida State University Bulletin and the Student Handbook. The Academic Honor System of The Florida State University is based on the premise that each student has the responsibility (1) to uphold the highest standards of academic integrity in the student's own work, (2) to refuse to tolerate violations of academic integrity in the university community, and (3) to foster a high sense of integrity and social responsibility on the part of the university community.

web site for a complete explanation of the Academic Honor Code.

In particular, note that students may not give or receive help of any kind on programming projects. This means, among other things, that students are not permitted to read each others code (on paper OR on screen) or discuss design or implementation of programming projects with anyone other than the instructional personnel. Violations of this policy will result in the grade of zero for all parties involved.


Students with disabilities needing academic accommodation should: (1) register with and provide documentation to the Student Disability Resource Center; (2) bring a letter to the instructor indicating the need for accommodation and what type. This should be done during the first week of class.

For more information about services available to FSU students with disabilities, contact the

Student Disability Resource Center
Dean of Students Department
08 Kellum Hall
Florida State University
Tallahassee, FL 32306-4400
(850) 644-9566 (voice)
(850) 644-8504 (TDD)

(This syllabus and other class materials are available in alternative format upon request.)


This syllabus is a guide for the course and is subject to change with advanced notice. Such notice will be in the form of an announcement to the course web site on My FSU.