
Air Traffic Control
Safety In the Air.
Lockheed Martin/NATS CTC, Whiteley, Hampshire, UK May – July 2015
One of four in Simulation team enhancing the VB.NET/MS SQL Server/.NET framework ACE Data Designer; a tool converting 5 formats of UK flight data one format for ACE Simulator scenario testing. Refactored the VB.NET import code to adopt the MVC design pattern and fixed various defects.
​
National Air Traffic Services, Hurn, Bournemouth, UK April 2008 – March 2009
One of two enhancing the Multi-Sector Planning (MSP) and iFACTS (Interim Future Area Control Tools Support) simulator HMI. MSP is built upon the iFACTS simulator (which mirrors the live operational system) and adds conflict detection, trajectory prediction and flight path monitoring and improves flight capactity management for ATCOs by permitting multiple tactical workstations to be managed from a single planner workstation. Waterfall development process to software standard SW01.
Development: Much of the existing codebase made strong reuse of design patterns. Design patterns. Designed and developed in C++/STL, Motif/TeleUSE on Solaris/Sun Studio with additions to IDL interfaces to Gateway, Workstation Manager, Coordination and other components. Tasks included replacing Roguewave Tools.h++ code with STL and adding features: Logging, Sector Skipping, Blocking Strip Editor, Editable Reminders and resolving conformance issues with the operational system.
Testing: System tested across multiple Sun Solaris workstations networked lab environment.
​
National Air Traffic Services, West Drayton, Middlesex, UK November 2004 – December 2005
Part of a team that delivered safety-critical application, infrastructure and test software for the NATS Code Callsign Database System Replacement which provides storage of flight codes paired to flight plan data and pressure data for interrogation by various systems at ATCCs and Airports. RAD/RUP development process.
Development: Worked as part of team to deliver client and server-side software design, implementation and test of a safety critical distributed two-tier real-time main-standby data distribution application. UML use-case, state charts, class and sequence diagrams and requirements capture supported by Rational Rose/XDE, Requisite Pro, ClearQuest and ClearCase. Traceability matrices were produced to conform to DO-178 standard. Developed parts of the C++ Trolltech Qt 4 Linux based GUIs and LynxOS RTOS based server components associated with TCP/IP and serial communications. This used the Visual C++ 7.1 XDE (UML code generation) plugins and LynxOS X-compiler for Visual Studio.
Development: Developed with one other a UML/VC++/C++ based multi-threaded Platform Isolation Layer library to support the application development on both Linux and LynxOS from within Visual Studio. Developed the multi-threaded serial and client-side TCP/IP services for terminal server and alarm box hardware.
Testing/Development: Developed automated, batch driven test X-platform software in C++ to mimick the external serial devices. Rational Robot/Rational Test Manager executed this and captured results returned in real-time. Developed a Python based parser for post-processing the logs data to provide man-readable results in MS Excel format. Developed in VC++/C++ a non-distributed prototype of the main application communications manager component to prove the serial line test software and system throughput. Wrote Cantata++ and CppUnit unit tests for the part of the library and checked library exception specifications using QA C++.