1 / 48

SunGuide SM Software Development Project Software Design Review May 12, 2004

SunGuide SM Software Development Project Software Design Review May 12, 2004. Agenda. High-Level Design Concepts Dellenback / Heller Subsystems XML based ICDs Core Processes: Dellenback Status Logger Executive Handler Notify Manager GUI Strain Generic Subsystem Moczygemba

erna
Download Presentation

SunGuide SM Software Development Project Software Design Review May 12, 2004

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SunGuideSM Software Development ProjectSoftware Design ReviewMay 12, 2004

  2. Agenda • High-Level Design Concepts Dellenback / Heller • Subsystems • XML based ICDs • Core Processes: Dellenback • Status Logger • Executive Handler • Notify Manager • GUI Strain • Generic Subsystem Moczygemba • Data Bus Moczygemba • DMS Randolph • CCTV Randolph • TSS Randolph • Incident Management Dellenback • Overall SDD Discussion Dellenback Software Design Review

  3. High-Level Design Concepts Software Design Review

  4. Subsystem Concept Robust Extensible Flexible Scalable Configurable Proven Software Design Review

  5. XML ICD Concept • Goals: • Provide real time status • Distribute commands • List of ICDs: • CCTV Driver • CCTV Client • CCTV Switch Driver • TSS Driver • TSS Client • DMS Client • HAR Client • IM Client • Data Bus Client • Data Bus Provider Template Software Design Review

  6. Software Scalability • Highly scalable / extensible, many configurations possible • RTMC (Regional Transportation Management Center): • Multiple server based • “Owns” equipment • Many users • STMC (Satellite/Secondary) Transportation Management Center): • Local servers to host equipment • Utilize “Data Bus” of an associated RTMC • User interface hosted in the RTMC • VTMC (Virtual Transportation Management Centers): • No code locally installed • Utilize browser interface • PTMC (Portable Transportation Management Centers): • Laptop based • Database limiting factor • Network connections required (to access devices) Software Design Review

  7. Core Processes Software Design Review

  8. Status Logger and Executive Handler Implementation Software Design Review

  9. Status Logger:High Level Design Concept Software Design Review

  10. Status Logger:Detailed Design Information • Centralized message logging • TCP/IP socket based • User-defined content in optional message fields • Three primary components • Status Logger Server • Windows Service • Multi-client • Several log file archiving options • Control Panel applet configurable • Status Log Viewer • Supports remote log file access • Comprehensive message filtering • Efficient log file refreshing • Client Access Library • Supports .NET, Win32/MFC, and Java clients • Registry-based or client-supplied connect info Software Design Review

  11. Executive Handler:High Level Design Concept Software Design Review

  12. Executive Handler:Detailed Design Information • Supports application control from central location • Supports control of distributed applications • By server • By sub-system • Supports update of client application logging level • Four primary components • Executive Handler Server • Windows Service • Supports multiple controlled processes • Supports connections from multiple EH Viewers • Supports error notification via Notify Manager • Executive Handler Editor • Supports Services and Applications • Supports parameter and sub-system definition • Executive Handler Viewer • Supports connections to multiple EH Servers • View process status by host or by sub-system • Control processes by groups or individually • Client Access Library • Supports .NET and Win32/MFC clients • Supports asynchronous notifications Software Design Review

  13. Notify Process:High Level Design Concept Software Design Review

  14. Notify Process:Detailed Design Information • Supports SMTP-based notifications from central location • TCP/IP socket based • XML message based • Supports severity-based recipient lookup from SunGuide database • Two primary components • Notify Manager Server • Windows Service • Multi-client • Executive Handler compatible • Configurable SMTP host • Client Access Library • Supports .NET clients • Registry-based or client-supplied connect info Software Design Review

  15. Generic Subsystem Software Design Review

  16. Generic Subsystem:High Level Design Concept Software Design Review

  17. Generic Subsystem:Detailed Design Information • Main Process – Core controller of the system – Extended and customized by each subsystem • Database –Single access point to SunGuide database – Customized code for each provider • XML Interface –Asynchronous XML over TCP/IP sockets – Listeners manage client and driver connections – XML forwarded to the appropriate handlers • Authenticate Handler • Default Handler • Properties Handler • Subsystem-specific Handlers XML Interface Data Flow Software Design Review

  18. Generic Subsystem:Detailed Design Information - continued If the request is something that needs to be sent to the driver, a request will be returned. Otherwise, the handler performs whatever data actions should occur (add to database and current system data) and returns a response. When a response is sent to the handler, the handler performs any data actions that need to occur (add to database and current system data) and forwards the response on for the client. Software Design Review

  19. Generic Subsystem:Detailed Design Information - continued • Status Logger –Single access point to SunGuide StatusLogger – Configurable logging levels • Service and Heartbeat –Generic framework supports services – A built-in Executive Handler client heartbeats to the Executive Handler – Configurable logging via the Executive Handler is supported within this framework • User Permissions – System issues a security token for each authenticated user – User subscriptions are tracked – Security controller supports permission checking • Config File –XML file stores port and server settings – System supports configurable XML handlers Software Design Review

  20. Data Bus Software Design Review

  21. Data Bus:High Level Design Concept Software Design Review

  22. Data Bus:High Level Design Concept - continued • Common access point to provider subsystems – fewer socket connections – location transparency – increases flexibility of the deployed system – reduces network traffic for status distribution Software Design Review

  23. Data Bus:Detailed Design Information • Inherits and extends generic subsystem functionality • The Data Bus Main Process initializes main components: – Command Distributor – Status Collector – Status Distributor – Data Bus XML Interface • Provider Template ICD standardizes the system’s provider interface to ensure schema compatibility – Allows Data Bus to easily expand to support new provider subsystems • Configuration file used to determine providers, their subscriptions, and their status updates Software Design Review

  24. Data Bus:Detailed Design Information - continued Command and Control Software Design Review

  25. Data Bus:Detailed Design Information - continued • Status Collector – Data snapshot stored for each new resource type – Providers push status updates to the Data Bus – Status trees are modified as appropriate Software Design Review

  26. Data Bus:Detailed Design Information - continued • Status Distributor – Clients can retrieve data types from the system – Status may be requested on demand – Updates are sent to subscribed clients Software Design Review

  27. GUI Software Design Review

  28. GUI / MAP:High Level Design Concept Software Design Review

  29. GUI / Map:Detailed Design Information • Browser based operator interface • Rationale • Workstation configuration management • Potential of remote use • Uses open standards • Key technologies • PHP (PHP Hypertext Preprocessor) • SVG (Scalable Vector Graphics) • JavaScript (also known as: ECMAScript - European Computer Manufactures Association Script) Software Design Review

  30. GUI / Map:Detailed Design Information - continued • Browser to server communication • Browser environment • HTTP • Synchronous client request • SunGuide environment • XML over TCP/IP • Asynchronous, bidirectional messaging • Data sources • Typically static data (geography, roadways) • Built from shapefiles • Typically dynamic data (equipment, events) Software Design Review

  31. GUI / Map:Detailed Design Information - continued • Dynamic updates • Icons placed by latitude and longitude • Updates regularly retrieved from system • Equipment status indications • Color or shape change of icons • Detailed information in dialogs • User interaction • Validity checking performed in GUI • Commands sent to system immediately • Some commands, like CCTV control, may be buffered to avoid overloading network • System messages placed in message window Software Design Review

  32. DMS Software Design Review

  33. DMS:High Level Design Concept Software Design Review

  34. DMS:Detailed Design Information • Existing system • Minor modifications needed • Generic subsystem design based on DMS • Drivers • Existing driver framework • New commands added • Mark IV • NTCIP Florida MIB Software Design Review

  35. CCTV Software Design Review

  36. CCTV:High Level Design Concept Software Design Review

  37. CCTV:Detailed Design Information • Inherits Generic Subsystem functionality • Handlers for configuration • Locks • Equipment group • Video tours • Handlers forwarding to camera driver • Camera configuration • Camera control • Handlers forwarding to switch driver • Monitor configuration • Switch configuration • Camera connection Software Design Review

  38. CCTV:Detailed Design Information - continued • Camera locks • Expire after a configurable time period • Can be overridden with permission • Equipment may be dynamically added • Active video tours resume on system restart • Camera presets • Locations are saved in camera • Descriptions of the preset stored in database • Blackout mode—cannot connect input/output • Restricted monitor • Blacked out camera Software Design Review

  39. TSS Software Design Review

  40. TSS:High Level Design Concept Software Design Review

  41. TSS:Detailed Design Information • Inherits Generic Subsystem functionality • Handlers for configuration • Detector mapping • Handlers forwarding to driver • Detector configuration • Detector status changes (Active/Out of Service) • Handlers receiving data from driver • Detector updates Software Design Review

  42. TSS:Detailed Design Information - continued • Detector mapping • Contains links/lanes • Maps links/lanes to highways • Equipment may be dynamically added • Detector updates • Converter to link/lane updates • Compared to alarm threshold • Thresholds set for time frames • Smoothing algorithm (rolling average) • Triggers alarms if less than threshold Software Design Review

  43. Incident Management Software Design Review

  44. Incident Management :High Level Design Concept Both a Client and Provider Software Design Review

  45. Incident Management:Detailed Design Information • Design based on Maryland’s Chart system • Communications Infrastructure – Manages client connections over TCP/IP – Abstracts communication with the client via XML – Supports compression and XML validation • XML Handlers: – Configuration handler • Processes event changes • User can specify radius to search for devices – Route handler • Determines alternate routes for an incident – Incident Management handler • Manages a database of incident data • Pulls data from other SunGuide providers • Supports the creation of events • Client can activate/deactivate response plans • Handles planned roadwork and weather events – Plan handler • Manages pre-defined response plans Software Design Review

  46. Overall SDD Discussion Software Design Review

  47. Software Design Document:Appropriate Format and Content? • Impressions: • Level of Detail • Usefulness • Traceability • Updates to occur: • As subsystems are added • End of release • Hardcopies: hard to produce due to HTML technology • Any FDOT requests? Software Design Review

  48. Questions? Software Design Review

More Related