The EMS Directory Project - Software Engineering @ RIT

Download Report

Transcript The EMS Directory Project - Software Engineering @ RIT

The EMS Directory
Project
Team PinchHitters
Mark Blakley
Stephen Hutsal
Heath McLean
Justin Ricci
Agenda








Sponsor
Background and Vision
Old Risks and New Risks
Process
EMS Directory Phases
Architecture and Database Schema
Metrics
Demo
Sponsor
Society for Total Emergency Programs
(STEP) Council
 Dr. David Kluge, MD

 Former
President of STEP
 Current Editor of the EMS Directory

Rick Voight, RIT graduate has been
providing business and marketing input
Project Background



EMS Directory: “reference document for EMS
providers and related organizations”
Created in 1993
Four sections
 Ambulance,
Fire, Police, Hospitals, Nursing Homes
 Physicians Telephone and Admitting Hospitals
 Resources
 Protocols

STEP’s annual publication appears to be the
only comprehensive EMS directory in the US
Vision
Write software that automates the
creation of STEP’s annual EMS
Directory
 Get Regional EMS Councils to create
directory for their region
 Expand the EMS Online Directory to
become State and then National

Old Risks


Dr. Kluge is not familiar with software
engineering
Continuation of last year’s project
 Quickly
learn about project and assess current
software
New Risks

Live site for entire Spring quarter
 Create testing database
 Check for connected users
before updating and
rebuilding code on server
 Make sure didn’t check in file containing testing
database SQL address
 Troubleshoot users’ problems

Software Maintenance
 No
one to maintain software after we leave
 Society of Software Engineers
Launch – Process

Iterative Approach


Series of milestones that continually add more
functionality
For each Iteration

Requirements -> Design -> Code -> Test
Milestones - Spring
ID
Name
2
Duration
Start
Create PDF from database
Finish
1/17/05
4/30/05
2.1
InDesign Template Iteration 1
8 days
3/20/05
3/28/05
2.2
InDesign Template Iteration 2
14 days
3/29/05
4/11/05
2.3
Finish InDesign Templates
14 days
4/12/05
4/25/05
2.4
Create Database Dumper
98 days
1/17/05
4/25/05
2.5
Test PDF Creation
6 days
4/25/05
4/30/05
3/7/05
4/25/05
3
Continue work on new web pages
3.1
Web pages for updating
22 days
3/7/05
3/28/05
3.2
Web pages for adding physicians
22 days
3/7/05
3/28/05
3.3
Web pages for searching
36 days
3/7/05
4/11/05
3.4
Web pages for editor functions.
50 days
3/7/05
4/25/05
3.5
Test New Web pages
5 days
4/26/05
4/30/05
14 days
5/1/05
5/13/05
4
End To End Testing
EMS Directory Phases

Information Gathering & Storage
 Enter
directory information
 Allow organizations to update their information
 Store the directory in a database

Document Generation
 Create
a document template
 Generate CSV for template

Information Searching and Editor Functions
Status
Database/Stored Procedure Refactor
Complete
 Web Service Implementation Complete
 Web Application Implementation Complete
 InDesign / PDF file can be generated for
region

Architecture
User
EMS Directory Web Site
ASPX Pages
C# Code
Behind
EMS Web Service
MS SQL Server
Stored Procedures/
Views
Database Schema
Metrics

Metrics
 Slippage
Chart
 # of test cases per requirement
 Pie chart of defects by type
Metrics Continued
Slippage Chart
30
Days
25
20
15
10
5
0
-5
-10
1.1 1.2 1.3 1.4 2.1 2.2 2.3 2.4 2.5 3.1 3.2 3.3 3.4 3.5
-15
Milestones
Metrics Continued

Beginning of Spring realized that Spring
milestones were too vague
 Made
more, smaller milestones so we could track
progress

Reasons for slippage
 Dynamic
SQL generating more difficult than
anticipated for searching
 Lack of organization information and expertise for
printing aspect
Metrics Continued

Test cases per requirement
 Hazmat:
4 / 37 = 0.11
 Initial Rewrites: 36 / 28 = 1.29
 2nd Rewrite: 55 / 33 = 1.67

Hasn’t changed
Metrics Continued



35 total bugs
74% Medium or
Lower
Many Low Severity
bugs were fixed and
not recorded
Bugs by Severity
MediumHigh, 8, 23%
High, 1, 3%
Low, 13,
37%
Medium, 5,
14%
Medium-Low,
8, 23%
Assessment

Has Worked:
 Division
of the architecture to separate team
members
 Communication: Teleconferences & Email
 Separate Testing Database

Hasn’t Worked:
 Working
directly on the server for ASP & C#
 Printing took excessive amount of time

Better suited for someone with that expertise (printing major)
Demo
Questions?