Ada, Model Railroading, and Software Engineering Education - PowerPoint PPT Presentation

1 / 20
About This Presentation
Title:

Ada, Model Railroading, and Software Engineering Education

Description:

Ada, Model Railroading, and Software Engineering Education. John W. McCormick ... Ada, Model Railroading, and Software Engineering Education. 18. Where do we go ... – PowerPoint PPT presentation

Number of Views:41
Avg rating:3.0/5.0
Slides: 21
Provided by: johnm298
Learn more at: http://www.sigada.org
Category:

less

Transcript and Presenter's Notes

Title: Ada, Model Railroading, and Software Engineering Education


1
Ada, Model Railroading, and Software Engineering
Education
  • John W. McCormick
  • University of Northern Iowa

2
Computer Controlled Systems Study Option
  • For students interested in the specification,
    design, and implementation of real-time embedded
    software.
  • Core courses from the ACM curriculum.
  • Additional courses in
  • Continuous mathematics
  • Physics
  • Electronics

3
CSC 416Real-Time Systems
  • A capstone course.
  • To perform well students must integrate knowledge
    from
  • Computer Science
  • Physics / Electronics
  • English
  • Mathematics

4
CSC 416Real-Time Systems
  • Students are exposed to fundamental scientific
    issues in real-time computing and practical
    skills of software development.
  • Goal is to train software engineers capable of
    working as part of a development team.
  • Many topics covered at a survey level.

5
The Laboratory
A major problem with teaching real-time embedded
software engineering is finding suitable
equipment for assignments and projects.
6
The Laboratory
  • Simulators
  • Do not provide many of the frustrating problems
    associated with actual physical systems
  • Lack of experience with real systems is one
    reason cited by those who would exclude computer
    science graduates from development teams.

7
The Laboratory
  • The problem now becomes finding a physical system
    for students to control
  • In 1984 I began using a large model railroad in
    my course.
  • Why a model railroad?
  • Lets look at some pictures!

8
Projects in C
9
Projects in Ada
10
Why does Ada succeed where C fails?
  • Modeling of scalar quantities
  • Strong typing
  • Range checking
  • Enumeration types
  • Parameter modes
  • Named parameter association

11
Why does Ada succeed where C fails?
  • Arrays whose indices do not begin at zero
  • Representation clauses for modeling device
    registers
  • Record types
  • Enumeration types

12
Why does Ada succeed where C fails?
  • High level of abstraction for tasking.
  • Ada students use rendezvous
  • C students used semaphores
  • Exception handling
  • Encapsulation
  • Package specifications and bodies
  • Compilation model
  • Obsolete units are detected!
  • No make files!

13
Laboratory Assignments
  • Code for learning Ada features
  • Basic language features
  • Packages
  • Tasking
  • Generics
  • Exceptions

14
LaboratoryAssignments
  • Code for the course project
  • Polling and interrupt based device drivers
  • Implementation of whistle class
  • Implementation of turnout class
  • Electro-mechanical devices which sometimes fail
    to move correctly
  • Code must detect and attempt to correct the
    problem
  • Code derived from a state machine model

15
Project Specification Design Deliverables
  • System concept document
  • Detailed user manual
  • Rumbaugh OMT documents
  • Object model diagrams
  • Dynamic model diagrams
  • Functional model diagrams
  • Data dictionary
  • Package specifications
  • Package test plans

16
Minimum Project Requirements
  • Multiple trains
  • At least one train controlled by a human engineer
  • No collisions
  • Detect and recover from hardware failures
  • Turnouts
  • Sensors
  • Lost cars
  • Devious professors

17
Popular Project Themes
  • Races
  • Train wars
  • Scheduling (usually combined with project in the
    AI class)

18
Where do we gofrom here?
19
  • Over 50 Schools have inquired about duplicating
    the laboratory
  • Only about 3 schools have actually built a model
    railroad
  • Commercial interface boards too expensive
  • Too much time or expertise required to build
    electronics in house
  • My Solution
  • Design and manufacture inexpensive plug-n-play
    model railroad interfaces

20
Corporate Sponsors
Write a Comment
User Comments (0)
About PowerShow.com