e911 provisioning system

20
http://www.se.rit.edu/ ~royalflush E911 Provisioning System Software Engineering Senior Project

Upload: theodore-estes

Post on 31-Dec-2015

33 views

Category:

Documents


0 download

DESCRIPTION

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. - PowerPoint PPT Presentation

TRANSCRIPT

http://www.se.rit.edu/~royalflush

E911 Provisioning System

Software Engineering

Senior Project

http://www.se.rit.edu/~royalflush

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

http://www.se.rit.edu/~royalflush

Agenda

• E911• Problem Domain• Motivation• Goals• E911 Provisioning System• Technologies• Process• Risks• Results• Lessons Learned• Demo• Future Work

http://www.se.rit.edu/~royalflush

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

http://www.se.rit.edu/~royalflush

E911 System

http://www.se.rit.edu/~royalflush

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

http://www.se.rit.edu/~royalflush

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)

http://www.se.rit.edu/~royalflush

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

http://www.se.rit.edu/~royalflush

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

http://www.se.rit.edu/~royalflush

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.

http://www.se.rit.edu/~royalflush

E911 Provisioning System

http://www.se.rit.edu/~royalflush

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

http://www.se.rit.edu/~royalflush

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

http://www.se.rit.edu/~royalflush

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

http://www.se.rit.edu/~royalflush

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

http://www.se.rit.edu/~royalflush

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

http://www.se.rit.edu/~royalflush

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

http://www.se.rit.edu/~royalflush

Demo

http://www.se.rit.edu/~royalflush

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

http://www.se.rit.edu/~royalflush

Questions