Because a government sponsored Advanced Traffic Controller API does not work under Linux, ATI had to develop our own interface to a NEMA TS2 cabinet.
Optimal System Architecture
These were our D.O.T. contract requirements. They are kept under configuration control and are stored in MySQL using the Open Source Requirement Management Tool (OSRMT). Each requirement contains the page source in the proposal. Unfortunately, OSRMT is having problems producing reports from MySQL so this is just a screen capture. A bug has been submitted.
Ada95 Quality and Style Guide: Ada95 Coding Standard
Guidelines for Professional
Programmers, October 1995
ATC API Standard, Version 2.06b Interface with the Linux based ATC operating system and device drivers
C++ Coding Standards by Herb C++ Coding Standard
Sutter and Andrei Alexandrescu
Google's C++ Coding Standard. Sutter and ALexandrescu was not FREELY available online.
NTCIP Communication standards and protocols for message passing
UML 2.0 Design Specification
This is a list of Open Source Development Tools we used to develop SCOPE.
Operating System
ATI originally used Fedora 14 (Red Hat free) as the development operating environment . The GNOME desktop environment was used with KDE libraries installed to allow us to run both GNOME and KDE graphical applications. Some of our developers used Ubuntu. I'm currently using MINT. It doesn't matter what Linux version you use.
Configuration Management
During Phase I, we used a graphical interface tool called Cerversia. This sits ontop of CVS (Concurrent Versioning System) and runs under the KDE enviornment. After some consideration and research, we decided ATI would use tkCVS as the graphical interface to CVS during formal development. We've now switched to git.
Requirements Capture
We installed a tool called Open Source Requirements Management Tool (OSRMT) on our main workstation. We are using it to capture system, software, and contract requirements. It uses MySQL as a database to manage requirements.
UML Modeling and Design
A tough choice. During proof-of-concept development we used a tool called Umbrello because it was the only open source tool we found that ran on Linux and generated Ada95 and C++ source code from the object models. There were a lot of issues with it. For prototype development stuck with Umbrello after evaluating OpenAmeos and BoUML.
Implementation and Testing
Coding was written using gcc (GNAT for Ada95, g++ for C++, gdb for debugging). GPS and other open source tools were used for software metric analysis. We built many cross compilers for different hardware implementations.
Issue Tracking
This file was used to track issues in SCOPE. It was in OpenOffice Calc Format.
ISSUES ARE NOW BEING TRACKED ON SOURCEFORGE. PLEASE GO TO PROBLEM REPORTS TO SUBMIT A NEW TICKET OR SEE OUTSTANDING ISSUES.
Interface Design Document
SCOPE's Interfaces. Here's a link to the IDD
Presentations
An overview on ATI's SCOPE work up until March 2011 can be found here.
Real Time Signal Transition Software for The Advanced Traffic Controller is a PowerPoint presentation written by Dr. Justin Key. He presented this at the 18th Annual World ITS Congress in Orlando, Florida.
SOURCE CODE
SCOPE has been tested several ways. It has been unit tested and integration tested using a Linux based PC platform. It has been tested on a PEEK ATC 1000 using an ATSI NEMA-TS2 virtual interface. It has been tested on a prototype ATI controller using an Intelligent Transportation System (ITS) cabinet. It has been tested on a Raspberry PI. Get the source code here and contact us if you have questions. We're updating the repository to git.
DOT Documents
SCOPE was funded by the U.S. Department of Transportation. Three comprehensive reports were produced. There are here:
Initial Concept Report (Phase I)
Prototype Report (Phase II)
NTCIP Report (Phase IIB)
How to start a free site - Check this