Project Handoff Document

redlemonbalmMobile - Wireless

Dec 10, 2013 (3 years and 11 months ago)

69 views

Project Handoff Document

Emergency Services Directory

Team Rain Delay

Kevin Tarchenski

Mark Gehan

TJ Wasik

Orlando Medina

STEP Council of the Genesee Region

Dr. David Kluge, Dr. Chloe Alexson

Project Overview

Thank you for purchasing your

new Senior P
ro
ject
™! Please use this document as a
guide on
your

magical
journey to graduation (and self
-
discovery). We hope it will be
beneficia
l to your understanding of the Emergency Services Directory and its sponsors
.
This document is intended to be purely suggestiv
e in nature, but we do have one
important request
-

p
lease try to ke
ep the baseball
-
themed team names

going
!

Setup

Please see the
included
TestMachineConfig.doc file for instructions on how to set up a
test sandbox for the directory. Get Kurt to set up a
Virtual Machine for you ASAP.
Remember to keep Windows Update

up
-
to
-
date or the Virtual Machine will be
quarantined

(this is bad)
.


To deploy delivered code to the production server, we followed a series of steps to
guarantee accuracy and maintain website

stability. Remember, you are working with a
system that is live and in
-
use, availability is essential!


1.

Branch cod
e in CVS to a frozen folder. This will be your deployment code.

2.

Run any database scripts you may have created. This step should be done fi
rst, as
code/database inconsistencies give users nasty error messages that should be
avoided.

3.

Copy folder of updated code to the production server.

4.

Create a backup of the live code to allow for rollback in the event of a deployment
failure.

5.

Take a moment t
o ensure that all connection strings are pointed to the production
database and not the sandbox. The Google Maps applet also has a unique key for
each domain that will need to be changed.

6.

Copy updated code over the production code.

7.

Rebuild all projects.

8.

V
erify changes on production website, and address any inconsistencies and errors.

Upgrade and Refactor

The first thing you should know
is that this project

is built on old technologies. Our first
thought was to keep going with these technologies to avoid i
ncompatibility issues. This
was not the best decision. We suggest upgrading to more current technologies. You may
consider upgrading

Visual Studio and
SQL Server
.


Please refer to the included Software Architecture Document for valuable information
abou
t the current design of the system. We inherited this design from three preceding
senior project teams, and identified a number of shortcomings that are overdue for
correction. The EMSWebService data
-
access layer is rather robust and solid, however,
the
presentation

layer is extremely disconnected and chaotic


the Registration and
STEPEMS projects are split, despite sharing functionality;
there is a large amount of
duplication within the code; a number of essential files are located outside all three
pro
jects (including the CSS and header pages); and the system desperately needs a
greater separation of concerns. For example, we found the process of adding a single
new organization type extremely convoluted and over
-
complicated


by abstracting this,
you
can future
-
proof the system to allow the sponsors the power to easily add yet
-
unknown organization types without the need for software rework.


Finally, you may find it helpful, after upgrading to a better IDE, to implement a testing
framework. Unit tests

especially would be helpful to verify functionality after
refactoring, as well as proving new functionality.


We feel that, by upgrading the technologies and refactoring the design, you can make
future feature implementations far more straightforward.

Beg
inning Project Requirements

Eliciting requirements is an important step in the development of every young Software
Engineer. You will have great fun interacting with your project sponsors and compiling a
list of project objectives. To get you started, we

have included a list of project
requirements that we did not address


we leave it to your discretion to investigate their
feasibility and accept or reject them as part of your project scope.


Portable Devices (mobile website)


the project sponsors would

like to see the site
accessible from mobile devices, including PDAs,
Blackberries, and iPods/Phones. This
would likely entail development of a WML portal for the directory website.


Automated Data Mining System (web

crawler)



one of the major bottleneck
s for your
sponsors’ productivity is the amount of time spent finding organizations to register and
verifying that their information is up
-
to
-
date. We attempted to address the latter problem
with a function to flag out
-
of
-
date entries, while a project con
sultant recommended a web

crawler to help automate the former. You may find this requirement to be out of the
scope of your project as we did, however.


Register Organizations as Multiple Types



organizations are currently classified with a
type (hospita
l, ambulance, etc.). However, there are some cases where an organization
may encompass two of these types (a fire department/ambulance).


Periodic Mailer



the project
sponsors would like an automatic, bi
-
annual mailer to
remind registrants to update thei
r profile information, relieving the pressure on the editors
to perform this function manually.


PDF Generation



the printed directory is currently published by exporting database
information in an Adobe InDesign document, which is delivered to the publis
her. The
sponsors have expressed interest in additionally supporting Adobe PDF as an export
format.


International Organizations



there exist some organizations which encompass multiple
direct instances, the “class” to an organization’s “object,” if you
will. An organization
like the Red Cross can have instances in many cities across the country. The sponsors
would like the ability to tag an organization as a subset of an International Organization,
and further, to search and sort by these tags (selecti
ng the profile for the Red Cross
[international organization] would return all organizations tagged as Red Cross
[individual organizations]).


List current information of disaster supplies at retail stores



the project sponsors would
like some means of in
terfacing with retail inventory systems, or a web interface for retail
employees to make note of their inventory, in order to provide an accurate summary of
disaster relief capacity. You may find this feature out of the scope of your senior project.


Addi
tional ideas proposed by the project sponsors that are likely out of scope for a
software development team:



Production server backup (for power failure)



Develop common ambulance patient report form (pre
-
hospital)



Develop common hospital emergency departmen
t patient information form



Offer on
-
demand printing by Xerox



Offer incentives for registration, such as raffles


Closing Comments

Some of your greatest resources are those that have travelled this path before you. Please
review our documentation (and, if
you’
re brave, the documentation of teams before us),
and, if you have any questions, contact Dave Beaton, a former senior project graduate
who currently handles support of the Emergency Services Directory. Best of luck with
your senior project, and most of al
l, have fun!


Signed,


Team Rain Delay