Raytheon – Google Earth Roy Daniels, Marc Maciel, Rifina Pierre Department of Computer Science and Engineering University of South Florida Tampa, FL 33620 roydaniels@gmail.com, maciel@cse.usf.edu, rpierre@mail.usf.edu 1 of 19 Raytheon_Design_Review.ppt Design for Senior Project December 05, 2007 Acknowledgments Raytheon 2 of 19 Raytheon_Design_Review.ppt Preston McGowan Design for Senior Project December 05, 2007 Agenda • Background • Problem • Requirements • Demo • Design / Specification • Analysis • Questions 3 of 19 Raytheon_Design_Review.ppt Design for Senior Project December 05, 2007 Background • Google Earth (GE) is a world map program. • GE uses Keyhole Markup Language (KML) to allows for tagging Sites Of Interests. • GE utilizes KMLs to display satellite imagery from NASA. • GE maintains a community Web Server. • Raytheon has their own Web Server with imagery. Background • Google Earth (GE) is a world map program. • GE uses Keyhole Markup Language (KML) to allows for tagging Sites Of Interests. • GE utilizes KMLs to display satellite imagery from NASA. • GE maintains a community Web Server. • Raytheon has their own Web Server with imagery. Background (continued) • Remote client must have: Access to the internet Google Earth (GE) installed Web browser that meets the requirements of GE GoogleEarthAirlines plugin installed The Situation Raytheon would like to share imagery of sites of interests from a private web server through Google Earth. 7 of 19 Raytheon_Design_Review.ppt Design for Senior Project December 05, 2007 Requirements The basic requirements are: 1. Setup and access a web server with a database 1.1 Allow users to log into using a remote PC 1.2 PC must contains an installed working copy of Google Earth 2. The web server includes user authentication 2.1 A method of checking the user's login name and password 2.2 Allowing new users to create a new account. 3. Database data structure includes: 3.1 User’s full name 3.2 Username, and MD5 encrypted password 3.3 Email address 3.4 Per user Sites of Interests (SOI) list with public and private flags 8 of 19 Raytheon_Design_Review.ppt Design for Senior Project December 05, 2007 Requirements (continued) The Second Phase requirements are: 4. After successful login, display Google Earth (GE), pass control GE 5. Design a secondary database for structure of KML’s 5.1 Use Google Earth’s data structure for KML’s 6. Link the two data structures. 6.1 Link must by User’s profile. 6.2 Only link KMLs that belong to the login user. 6.3 Link global KMLs 7. If Sites Of Interest (SOI) exist, load into Google Earth 8. Add the ability to add, update, delete, and save SOI 9. Allow for the ability to share Public or Private KMLs 9 of 16 Raytheon_Design_Review.ppt Design for Senior Project December 05, 2007 Demo 10 of 19 Raytheon_Design_Review.ppt Design for Senior Project December 05, 2007 Design / Specification • Front-end design – Simple welcome screen – Allows user to login or register – Validates on invalid input 11 of 19 Raytheon_Design_Review.ppt Design for Senior Project December 05, 2007 Design / Specification • Front-end design (continued) – Registered user’s screen – Loads Google Earth ActiveX plugin – Provides easy access to options • • • • Get the Google Earth Airlines plugin Edit/Add/Delete sites of interests (SOI’s) Modify profile View/Edit/Delete all users (administrators only) • Logout – User interface will be driven by Web 2.0 technologies 12 of 19 Raytheon_Design_Review.ppt Design for Senior Project December 05, 2007 Design / Specification • Sample layout of registered user’s home screen 13 of 19 Raytheon_Design_Review.ppt Design for Senior Project December 05, 2007 Design / Specification • The Back-end design 1. Linux web server 2. CakePHP Framework-specific tables • Authentication • User Base access control 3. mySQL database USER table profile • • • • 15 of 19 Raytheon_Design_Review.ppt Username MD5 encrypted password First and last name Email address Design for Senior Project December 05, 2007 Design / Specification • The Back-end design 4. Google Earth Airlines open source plug-in 5. KMLs’ table holds KML data structure • KML name • Longitude • Latitude • Altitude • Description • Logic public/private 6. CakePHP Framework-specific tables • Authentication 7. User Base access control 8. Add, update, delete, and save 9. KML table holds user’s KML information • Sharing information (public/private data) 16 of 19 Raytheon_Design_Review.ppt Design for Senior Project December 05, 2007 Analysis • Comparison of solutions – Google Earth Enterprise edition from Google, Inc. • Shows Google Earth KML files in browser • Uses the Google Maps API and interface • Does not utilize full power of Google Earth • Cost a lot of money! – Our solution is unique • Utilizes the power of Google Earth • Based on free and open-source code and frameworks – GoogleAirlines Plugin – CakePHP framework – mySQL database – Web 2.0 (AJAX) • Able to customize solution for future needs easily 17 of 19 Raytheon_Design_Review.ppt Design for Senior Project December 05, 2007 Questions? 18 of 19 Raytheon_Design_Review.ppt Design for Senior Project December 05, 2007 Thank you, We appreciate your feedback! 19 of 19 Raytheon_Design_Review.ppt Design for Senior Project December 05, 2007