UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS...
Transcript of UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS...
![Page 1: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/1.jpg)
UTM TCL2 Software Design
Daniel Mulfinger
https://ntrs.nasa.gov/search.jsp?R=20190025161 2020-07-15T06:44:19+00:00Z
![Page 2: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/2.jpg)
What is the UTM Software?
– Research Prototype Software– Implements the UTM Concept of Operations– Web Application– Two pieces
• UTM Core• Set of Services
– ~25K lines of code– Agile-based with 4-week sprints
![Page 3: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/3.jpg)
Design Principles
• Research prototype, but built with long-term view
• Use state-of-the art software design conventions
• Test-driven design (TDD)
![Page 4: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/4.jpg)
Technologies Used• Java • Spring Framework• Apache ActiveMQ• Apache Tomcat • STOMP• PostgreSQL + PostGIS• JTS Topology Suite• REST (Representational State Transfer)• Jenkins• Atlassian• SonarQube
![Page 5: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/5.jpg)
Postgres/PostGIS
Spatial Database
ActiveMQMessaging
HandlersAPI Controller
Service Layer
Data Access Layer
Proposal
Conformance
System Health Agents
System Health Portal
REST/HTTP
Websocket/STOMP
Firewall
UTM Web Application
System Health Portal
System Health PortalExternalServices
InternalServices
Operator
Public
Manager
Readied State
Dynamic Constraint
![Page 6: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/6.jpg)
User Roles• Operator
– UAS operator– Submits/flies operations
• Manager– Sees complete picture– Can add manager constraints or override existing constraints– Can submit/close operations – Send messages to clients
• Public– Limited access
![Page 7: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/7.jpg)
NASA Front-End Implementations
• Mission Planner compatible Python Client
• UTM Manager IOS App
• UTM Web Viewer
![Page 8: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/8.jpg)
Software Demo
• Walk through screen shots• (UTM Python Client w/iPad App)
![Page 9: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/9.jpg)
![Page 10: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/10.jpg)
![Page 11: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/11.jpg)
![Page 12: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/12.jpg)
![Page 13: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/13.jpg)
![Page 14: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/14.jpg)
![Page 15: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/15.jpg)
![Page 16: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/16.jpg)
![Page 17: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/17.jpg)
![Page 18: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/18.jpg)
![Page 19: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/19.jpg)
![Page 20: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/20.jpg)
![Page 21: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/21.jpg)
Software Releases
• Products available via Software Usage Agreement for partners with Space Act Agreement or other qualifying contract:– UTM Server (virtual machine, no source code)– Python Reference Client (includes source code)– UTM Manager Display (IOS App, no source code)
• Dates:TCL 1 – Dec 2015TCL 2 – Dec 2016 (anticipated)
![Page 22: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/22.jpg)
Write your own client?
• Submit an RFI response or sign Space Act Agreement
• Request TCL2 Client ICD and credentials• Create client• Test according to UTM Client Test Plan
document
![Page 23: UTM TCL2 Software Design - NASA• Apache ActiveMQ • Apache Tomcat ... • PostgreSQL + PostGIS • JTS Topology Suite • REST (Representational State Transfer) • Jenkins •](https://reader034.fdocuments.in/reader034/viewer/2022052612/5f103ffa7e708231d4482e0d/html5/thumbnails/23.jpg)
API Documentation
Client Interface Control Document
Online documentation – Swagger compatible