200 likes | 327 Views
This project presentation showcases the E911 Provisioning System, developed by a senior software engineering team led by Kevin Francis and corporate sponsor Jon Templin from PAETEC Communications. The new system resolves challenges associated with the outdated 911 infrastructure by utilizing modern technologies to enhance maintainability and user experience. Key topics include motivation for the redesign, the process of development, risk management, and results achieved. The project emphasizes the critical need for accurate emergency data handling to prevent potential risks to public safety.
E N D
E911 Provisioning System Software Engineering Senior Project
Introductions Software Engineering Team: Kevin Francis • Derrick Hudson • Mike O’Connor Jason Plaisted • Jessica St Croix Corporate Sponsor: Jon Templin, PAETEC Communications Faculty Advisor: Professor Judy Englert
Agenda • E911 • Problem Domain • Motivation • Goals • E911 Provisioning System • Technologies • Process • Risks • Results • Lessons Learned • Demo • Future Work
E911 Background • Enhanced 911 upgraded original 911 system in early 1970s • Automatically retrieves caller information (Name, Telephone #, Address) • Routes call to proper dispatcher based on location • Requires constant updating of database
Issues Addressed by E911 • Your mailing address does not always match the actual location of your business or residence • A location may reside in a combination of different fire, police, and emergency districts • Inaccurate information can waste time or have catastrophic consequences
Problem Domain • PAETEC is required to provide & maintain E911 data for all their customers • Internal E911 Provisioning System enables employees to add/edit customers, addresses, and telephone numbers • Program runs each night to gather changes and send them to Incumbent Local Exchange Carriers (ILECs)
Motivation • Existing system is inefficient and cumbersome to users • Parts of system do not logically model real world • Software difficult to maintain due to discontinued third party tool • Current employees have expertise in newer languages
Goals • Rewrite E911 Provisioning software using up-to-date technologies • Improve maintainability of software • Increase usability of the user interface • Fix data model problems stemming from initial design
E911 Provisioning System • PAETEC employees maintain customer E911 information through user interface • Information stored in local database • Data extraction program creates individual record files from local database in each ILEC’s required format.
Technologies • Resin Enterprise Application Server • Currently used by PAETEC • Java 2 Enterprise Edition Specification • Enterprise Java Beans • Improves scalability and maintainability • Java Server Pages • Replaces obsolete Oracle Web Design • Oracle Relational Database Management System (RDBMS) • Currently used by PAETEC
Process • Incorporate software development process with project management techniques • Assign roles to team members • Document requirements, architecture, design, and testing phases • Plan Tasks • Use MS Project and Excel • Track time invested per task • Project progress based on current work rate
Risks • Correct operation is critical - malfunction could indirectly lead to injury or loss of life • Able to directly compare output to old system • Development team unfamiliar with Resin application server • Delays impacted schedule • Team lacked expertise with Oracle • Sought help from PAETEC database administrator • 20 Week time constraint • Uneven distribution of workload late in project
Results • Statistics • 139 Requirements • 7934 lines of code • 146 Test cases, 18 initial failures (12%) • 0 Known remaining bugs • ~800 Hours of work during second quarter • New E911 Provisioning system is fully functional • Goals of project have been met
Lessons Learned • Separate development and test teams would have been more efficient • Gain required expertise with tools at beginning of project • Support from experienced Oracle DBA was invaluable • Better enforce separation of responsibilities between roles
Lessons Learned (cont.) • Distribute more work towards beginning of project • Project tracking provided some warning signs of potentially falling behind schedule • Parallel work allowed functionality of system to quickly come together
Future Work • PAETEC will take over control of the project • They will perform independent testing in production environment • Will review product and make any additions and/or changes • Roll product out for use within company