Lab II – Surface Water Detection System Specification ... Running Head: Lab II – Surface Water...

advertisement
Lab II – Surface Water Detection System Specification
Running Head:
Lab II – Surface Water Detection System Specification
Lab II – Surface Water Detection System Product Specification Outline
CS 411W Lab II
Prototype Product Specification
For
Surface Water Detection System
Prepared by: Eric Boyd, Green Team
Date: 3/21/2011
1
Lab II – Surface Water Detection System Specification
2
TABLE OF CONTENTS
1
2
3
INTRODUCTION ...................................................................................................................5
1.1
Purpose ..............................................................................................................................5
1.2
Scope .................................................................................................................................5
1.3
Definitions, Acronyms, and Abbreviations .......................................................................8
1.5
Overview .........................................................................................................................11
GENERAL DESCRIPTION ..................................................................................................11
2.1
Prototype Architecture Description .................................................................................11
2.2
Prototype Functional Description....................................................................................13
2.3
External Interfaces...........................................................................................................15
SPECIFIC REQUIREMENTS ..............................................................................................23
3.1
Functional Requirements.................................................................................................23
3.2
Performance Requirements .............................................................................................27
3.3
Assumptions and Constraints ..........................................................................................28
3.4
Non-Functional Requirements ........................................................................................32
APPENDICES ...............................................................................................................................34
Appendix A
Hardware Listing ..............................................................................................34
Appendix B
Software Listing ................................................................................................34
[This space left intentionally blank]
Lab II – Surface Water Detection System Specification
3
LIST OF FIGURES
Figure 1. Major Functional Component Diagram .........................................................................13
Figure 2. Networked-System Functional Breakdown ...................................................................14
Figure 3. Closed-System Functional Breakdown ..........................................................................14
Figure 4. Hardware Component Diagram .....................................................................................16
Figure 5. Parallax Ultrasonic Sensor .............................................................................................17
Figure 6. EBox Front and Back View ...........................................................................................18
Figure 7. Software Component Diagram.......................................................................................19
[This space left intentionally blank]
Lab II – Surface Water Detection System Specification
4
LIST OF TABLES
Table 1. Prototype vs. Real-World Implementation Comparison....................................................7
Table 2. Effects of Assumptions, Dependencies, and Constraints on Requirements ....................29
[This space left intentionally blank]
Lab II – Surface Water Detection System Specification
1
5
INTRODUCTION
Section one of this document provides an introduction to the Surface Water Detection
System, and identifies its purpose, the scope of its benefits and objectives, and establishing a
common nomenclature of definitions, acronyms, and abbreviations to be used in the remainder of
this document. Section one concludes with an overview of the remaining sections of this
document.
1.1
Purpose
The Surface Water Detection System (SWDS) is combination of hardware and software
components used to alert drivers of hazardous road conditions caused by inundations of water on
roadways. Drivers are alerted at the inundated location via a flashing warning sign triggered by a
small computer and ultrasonic sensor installed at a notoriously hazardous section of roadway.
The SWDS is marketed toward municipal jurisdictions such as a city or state to provide a higher
level of safety on its roadways.
1.2
Scope
The SWDS is designed allowing for two possible applications; a closed-system design for
rural areas, and a networked-system design for larger metropolitan areas with any number of
hazardous locations caused by frequent inundations of water due to snow, rain, or storm surges.
The main objective of the SWDS is to provide immediate warning of a hazardous section of
roadway caused by inundation. Often, drivers are not able to adequately identify a portion of
roadway that is impassible for their vehicle. The SWDS hopes to mitigate situations where
drivers try to pass these flooded areas, and become stuck, resulting in property damage or even
personal injury.
Lab II – Surface Water Detection System Specification
6
The second objective of the SWDS aims to use technology such as the World Wide Web
in order to provide a means for drivers to check frequently inundated stretches of road along their
route before leaving their home or office. Technologies such as geo-location services and
mobile syndication technologies can be used to provide an effective information and alert system
for today’s tech-savvy drivers.
The prototype design of the SWDS as described in this document will demonstrate these
main capabilities of the overall SWDS design. The major differences between this prototype
design and the commercial application of the SWDS involve: simulating a network infrastructure
versus utilizing a large-scale network in a metropolitan area, simulating certain physical
components along the network such as network switches, and using proof of concept hardware
for the ultrasonic sensor and embedded computer since ruggedized housings and industrial
strength sensors will not be necessary. The differences between the prototype and the
commercial implementation are further detailed in Table one below.
[This space left intentionally blank]
Lab II – Surface Water Detection System Specification
Feature
Sensor
Microcontroller
Multi-Sensor
Network
Centralized Data
Center
Report Generator
Bing Maps™
application
RSS
7
Real World Implementation
Prototype
One sensor available for closed system;
multiple sensors for networked system.
Ruggedized housing to protect from the
elements.
For closed system, embedded data store and
algorithms to throw out erroneous data. For
networked solution, programmed to send
data to centralized data center.
Will feature one sensor that
detects and sends data to the
simulation computer in the
closed system demonstration.
Will feature one
microcontroller that receives
data from a single sensor and
sends it to the development
PC.
This will be simulated for the
networked demonstration.
If client chooses to implement networked
solution, this is available for
implementation. The number of sensors will
be determined by the client based upon
several factors.
Data collection server that stores the info
from the microcontroller
Users can access reports from the product
website which will feature an administrative
login for clients. The data is pulled from a
database on the server.
Featured on the product website with realtime water depth measurements in inches.
Included on the product website for entities
to subscribe.
Will be simulated.
This is simulated in a GUI on
the development computer.
Will be simulated on the
product website via a GUI.
An icon will be featured on
the product website but will
not be functional.
Table 1. Prototype vs. Real-World Implementation Comparison
[This space left intentionally blank]
Lab II – Surface Water Detection System Specification
1.3
8
Definitions, Acronyms, and Abbreviations
Administrative Web Application (AWA): Multipurpose portal containing management tools
for administering remote devices.
Algorithm: A precise rule or set of rules specifying how to solve a problem.
Annual software license: A legal contract governing the usage of software that is updated once
a year.
Application Programming Interface (API): Software implemented to allow for simpler and
more abstracted interactions with other software.
Baseline package: The basic closed-system version of the flood detection system that includes
the ultrasonic sensor, microcontroller, ruggedized housing, and flashing warning sign.
This is best suited for remote locations where a sensor network would be impractical.
Bid proposal: An explanation of products and services given with an estimated cost.
Centralized data center: The software and hardware that acts a central point for collecting the
sensor data transmissions over a network and recording their values into a database.
Client: Any end-system that is connected to a network.
Closed system: A single ultrasonic sensor, microcontroller, ruggedized housing, and warning
sign set up that has no network interface.
Closed-System Remote Device (CSRD): Combination of components which are in charge of
gathering information and onsite data logging.
Commercial front-end: An entity that provides some means, via website or physical location, to
sell a product. These are direct whose primary goal is to sell its company’s deliverables to
a targeted market.
Lab II – Surface Water Detection System Specification
9
Data Acquisition Host (DAH): Software component in charge of receiving information from
remote sensors and logging to the database.
Embedded data store: The ability to store data on the microcontroller.
Flooding: An inundated area of roadway that is considered impassible due to an influx of water.
Global Positioning System (GPS): A navigational system that pinpoints latitude and longitude
of a location using stationary satellites.
Bing Maps API: A technology created by Bing that utilizes maps to support a variety of uses,
typically displaying related locations in map form through a web browser.
Graphical User Interface (GUI): A user-friendly interface that allows easy access to an
applications features, which uses a mouse and keyboard as input devices.
Microcontroller: A small computer on a chip that is used to control electronic devices.
Modularized: Development technique which involves breaking a unified process or idea into
coherent segments for the purpose of abstraction or simplicity.
Multi-sensor network: Several sensor installations connected by a network infrastructure that
relay measurements back to a centralized data center.
Network: A system of interconnected electronic components or circuits.
Networked-System Remote Device (NSRD): Combination of components which are in charge
of gathering and communicating information over a network to a centralized location.
Onsite Data Acquisition Device (ODAD): Device capable of configuring the CSRD and
downloading its stored data.
Prototype: Logical step in the development process demonstrating the real world potential of a
concept.
Public Web Server (PWS): Computer that hosts the public website and web services.
Lab II – Surface Water Detection System Specification
10
Real time data: Information that is collected in the actual time the process is occurring.
Really Simple Syndication (RSS): Formatted XML used to provide subscribers with
information updated on a regular basis.
Risk analysis: Identifying and assessing factors that may compromise the success of a project.
Ruggedized housing: An enclosure designed to protect an electronic device such as a field
sensor from the elements.
Server: A computer used to accept incoming requests and information over a network, and inturn, generates and transmits data back to another user or computer (client).
Ultrasonic sensor: A sensor that calculates changes in depth using high frequency sound waves.
URL: Uniform Resource Locator
User based applications: Programs developed for the purpose of providing services to users.
Warning sign: A type of traffic sign that indicates a hazard on the road that may not be readily
apparent to a driver.
Web Server: A computer that delivers content from websites over the Internet.
[This space left intentionally blank]
Lab II – Surface Water Detection System Specification
1.4
11
Overview
This product specification outlines the hardware and software configuration, external
interfaces, and the capabilities and features of the Surface Water Detection System prototype.
Sections two and three of this document provide a general description of the prototype, a
description of the prototype’s architecture, the prototype’s major functional components, the
prototype’s functional and non-functional requirements, and any assumptions and constraints of
the prototype design.
2
2.1
GENERAL DESCRIPTION
Prototype Architecture Description
This section outlines each of the major functional components of the SWDS that
comprise its overall high-level architecture, and the actual hardware used in the implementation
of the prototype design.
2.1.1 Closed-System Remote Device (CSRD)
This component obtains the sensor measurement data from the ultrasonic sensor, and logs
the data to its local storage. In addition, this component stores its own configuration data, which
is configurable through a program also supplied by this component. This component of the
prototype will be demonstrated using the Microsoft eBox platform for embedded devices, and a
Parallax ultrasonic sensor.
2.1.2 Onsite Data Acquisition Device (ODAD)
This component interacts with the CSRD and allows the operator to download sensor
measurement data from the CSRD’s local storage, and configure the CSRD using the CSRD’s
built-in configuration program. This component of the prototype will be demonstrated using a
laptop connected to the Microsoft eBox via Ethernet connection.
Lab II – Surface Water Detection System Specification
2.1.3 Networked-System Remote Device (NSRD)
This component is essentially the same as the CSRD; it differs only in that it sends the
sensor measurement data that it collects over a network to be stored in a centralized database.
Also, network operators can set the configuration for a particular NSRD by updating its
configuration table in the centralized database, where the NSRD will check for new
configuration data if it successfully establishes network connectivity. This component of the
prototype will be demonstrated using the Microsoft eBox for embedded devices, and a laptop
connected to the eBox using an Ethernet connection.
2.1.4 Data Acquisition Host (DAH)
This component collects sensor measurement data from any number of NSRDs on the
network, and logs that data to a centralized database. This component of the prototype will be
demonstrated by a laptop running a program that listens for the sensor data being sent from the
Microsoft eBox connected via Ethernet connection.
2.1.5 Administrative Web Application (AWA)
This component provides an interface for network operators to monitor the status of
NSRDs on the network, configure NSRDs by updating a configuration table in the centralized
database, and querying the centralized database for historical sensor measurement data. This
component of the prototype will be demonstrated by a laptop that hosts a web application, a
database, and that is connected to the Microsoft eBox via Ethernet connection.
[This space left intentionally blank]
12
Lab II – Surface Water Detection System Specification
13
2.1.6 Public Web Server (PWS)
This component is a publicly available web server. The web server hosts a website with a
news feed section that alerts users to hazardous conditions, an interactive Bing Maps section that
displays the real-time status of the NSRDs on the network, and an interface for users to create a
custom alert by selecting specific NSRDs to be included in their alert.
2.2
Prototype Functional Description
This section describes the functional components of the SWDS by providing a summary
of each major functional component. Figure one illustrates these major functional components
and how they relate to one another. Figure two illustrates the type of data being transmitted
between each of the components over the networked-system.
Closed System
Remote Device
Networked System
Remote Device
Onsite Data
Acquisition
Device
Administrative
Web
Application
Data Acquisition
Host
Public Web
Server
Database
Figure 1. Major Functional Component Diagram (MFCD)
Lab II – Surface Water Detection System Specification
Administrative Store
Web
Get
Application
14
Device Configuration
Sensor Data
Sensor Data
Database
Sensor Data
Get
Public Web
Server
Store
Data Acquisition
Host
Sensor Data
Device Configuration
Get
Networked
System Remote
Device
Figure 2. Networked-System Functional Breakdown
2.2.1 Closed-System Remote Device (CSRD)
The CSRD function provides the capability to record sensor measurement data, storing
that data locally on the embedded device, and providing the necessary software to record
measurements, and allow for onsite operators to configure the CSRD. Figure three illustrates the
functional breakdown of the CSRD.
Closed System
Remote Device
Device Configuration
Store
Logged Data
Get
Onsite Data
Acquisition
Device
Figure 3. Closed-System Functional Breakdown
2.2.2
Onsite Data Acquisition Device (ODAD)
The ODAD function allows an onsite operator to configure the CSRD and download
sensor measurement data from the CSRD’s local storage.
Lab II – Surface Water Detection System Specification
15
2.2.3 Networked-System Remote Device
The NSRD function encompasses the functions of the CSRD but also utilized a network
to transmit its sensor measurement data to the Data Acquisition Host (DAH) for storage in the
centralized database. Figure three illustrates the networked-system.
2.2.4
Data Acquisition Host (DAH)
The DAH function collects sensor measurement data from the NSRDs on the network
and stores that data in the centralized database.
2.2.5 Administrative Web Application (AWA)
The AWA function allows network operators to monitor NSRD status, remote
configuration of NSRDs, and querying the centralized database for historical sensor
measurement data.
2.2.6
Public Web Server (PWS)
The PWS function provides a website with a news feed of any current hazardous NSRD
status, an interactive Bing Maps section displaying the real-time status of NSRDs on the
network, and the ability to configure a custom alert.
2.3
External Interfaces
This section describes the physical and logical interfaces that make up the SWDS
prototype design.
[This space left intentionally blank]
Lab II – Surface Water Detection System Specification
2.3.1 Hardware Interfaces
The following section describes the hardware components used in the SWDS prototype
design, and the physical connections between each of the hardware components. Figure four
illustrates the major hardware components.
Figure 4. Hardware Component Diagram
[This space left intentionally blank]
16
Lab II – Surface Water Detection System Specification
17
2.3.1.1 Parallax Ultrasonic Sensor
The Parallax Ultrasonic Sensor uses ultrasonic sound waves to measure the distance
between itself and any surface that it is aimed at. This sensor will be used to measure the height
of an inundation of water. The Parallax Ultrasonic Sensor will be connected to the Microsoft
eBox via USB adapter. Figure five shows a picture of the Parallax Ultrasonic Sensor.
Figure 5. Parallax Ultrasonic Sensor
[This space left intentionally blank]
Lab II – Surface Water Detection System Specification
18
2.3.1.2 Microsoft eBox for Embedded Devices
The Microsoft eBox for Embedded Devices is essentially a compact computer capable of
running software for devices connected to it such as the Parallax Ultrasonic Sensor. This
computer is capable of storing sensor measurement data, and providing a limited set of software
that allows onsite operators the ability to download data from its local storage and configure any
settings needed to operate the eBox and sensor. The eBox will connect to the Parallax Ultrasonic
Sensor via USB, and to the Development Computer via Ethernet cable. Figure six shows the
front and back views of the Microsoft eBox.
Figure 6. EBox Front and Back View.
2.3.1.3 Development Computer (Laptop)
The Development Computer is a standard laptop that will be used to plug-in to the
Microsoft eBox to demonstrate how data can be collected from the eBox, and also how to
configure the eBox and sensor. The Development Computer will also be used to simulate
network conditions, and will host the Administrative Web Application, Public Web Server, and
centralized database. The Development Computer will connect to the eBox via Ethernet cable.
Lab II – Surface Water Detection System Specification
19
2.3.2 Software Interfaces
The following section outlines the software interfaces involved in the SWDS prototype
design, the hardware that each software component resides on, and the information transmitted
between these software components.
Remote Device
Development PC
Data
Acquisition
Client
Data
Acquisition
Host
Control
Software
Database
User
Applications
Figure 7. Software Component Diagram
2.3.2.1 Sensor Measurement and Warning Sign Program
The Sensor Measurement Program resides on the eBox and controls the actions of the
Parallax Ultrasonic Sensor and warning sign. This program runs continuously checking for any
changes in the sensor’s measurement readings. An increment is specified in the program’s
configuration file, and no change is recorded unless the increment setting is surpassed. A
threshold is specified in the program’s configuration file, and triggers the warning sign if the
threshold is met or surpassed. Likewise, the warning sign is turned-off once the measurement
returns below the threshold. This program is also responsible for writing data to the eBox’s local
storage. This program is implemented using C# and the Microsoft .Net Compact Framework.
[This space left intentionally blank]
Lab II – Surface Water Detection System Specification
20
2.3.2.2 Network Version of the Sensor Measurement and Warning Sign Program
The network version of the program checks for network connectivity to an IP address
specified in the program’s configuration file. If network connectivity is established, the program
is responsible for sending out sensor measurement data over the network to be recorded in a
centralized database. If network connectivity is lost, or if no IP address is specified in the
program’s configuration file, the program will continue to run the closed-system version of the
software. This program is implemented using C# and the Microsoft .Net Compact Framework.
2.3.2.3 Configuration Program for the eBox and Ultrasonic Sensor
This program allows an onsite operator to configure the various settings necessary for the
eBox and Ultrasonic Sensor to operate. This program resides on the eBox and allows an onsite
operator to connect over some network protocol such as Telnet or HTTP to access the program.
This program is implemented using C# and the Microsoft .Net Compact Framework.
2.3.2.4 Data Acquisition Host Server
This program resides on the Development Computer and is used to simulate physical
hardware that would reside on the commercial version of the SWDS. This program is responsible
for listening to network communications from the eBox (the sensor measurement data), and
writing that data to a centralized database. This program is implemented using C# and the
Microsoft .Net Framework, and LINQ (Language Integrated Query) to connect to and
manipulate the centralized database.
[This space left intentionally blank]
Lab II – Surface Water Detection System Specification
21
2.3.2.5 Centralized Database
The Centralized Database is used in the network application of the SWDS to record
sensor measurement data from the networked eBoxes, provide a centralized location for eBox
configuration data, and an interface for network operators to query historical sensor
measurement data. The database resides on the Development Computer, and is implemented
using Microsoft SQL Server. The database is manipulated using standard SQL statements, and
the Object-Relational Mapping (ORM) tool, LINQ (Language Integrated Query) provided by the
Microsoft .Net Framework for use in C# applications.
2.3.2.6 Administrative Web Application
The Administrative Web Application is a program that is accessed through an internet
browser such as Microsoft Internet Explorer or Mozilla Firefox. The program can be deployed
over the World Wide Web or within a secured intranet. The Administrative Web Application
provides an interface for network operators to monitor the status of the eBoxes on the network,
the ability to configure any eBox by updating the configuration table in the centralized database,
and querying the centralized database for historical sensor measurement data. The
Administrative Web Application is implemented using Microsoft ASP.NET.
[This space left intentionally blank]
Lab II – Surface Water Detection System Specification
22
2.3.2.7 Public Web Server
The Public Web Server is essentially a program that hosts the public website and web
services available to the general population. This includes a website with a news feed of any
current hazardous conditions, an interactive real-time map of sensor status implemented using
Bing Maps, and an interface allowing users to create customizable alters by selecting any
combination of eBoxes along their route. The Public Web Server is implemented using Microsoft
ASP.NET.
2.3.3 User Interfaces
2.3.3.1 Development Computer (Laptop)
This user interface will give users a graphical view when interfacing with the CSRD’s
configuration program, running the AWA, and accessing the PWS.
2.3.4 Communication Protocols and Interfaces
2.3.4.1 TCP/IP via Ethernet
This protocol is used for communication between the NSRD and the Development
Computer.
2.3.4.2 USB 2.0
This protocol is used to connect the Parallax Ultrasonic Sensor to the Microsoft eBox.
[This space left intentionally blank]
Lab II – Surface Water Detection System Specification
3
23
SPECIFIC REQUIREMENTS
This section contains the detailed requirements for the SWDS.
3.1
Functional Requirements (Eric Boyd/Marissa Hornbrook)
3.1.1 Closed-System Remote Device (CSRD)
The Closed-System Remote Device (hereafter referred to as CSRD) operates by obtaining
measurement data from the ultrasonic sensor and processing the data by filtering it through the
logic algorithm mentioned previously. The data is stored locally and a copy of the device’s
settings is kept inside it for configuration purposes. During a collaborative session, a list of
requirements was created to further detail the closed system and they are as follows.
1. The CSRD will be preprogrammed to accept measurement data directly from the sensor.
2. The CSRD will be preprogrammed with filtering logic capable of discarding erroneous
data.
3. The CSRD will record data from the sensor to its internal storage device.
4. The CSRD will activate a flashing warning sign on the road when the incoming
measurements record a depth that sets a preprogrammed trigger.
5. The CSRD will provide a program that allows a technician to configure the device, and
copy its local storage of sensor measurement data via network protocol (Telnet, HTTP,
etc.)
6. The CSRD will keep a local copy of its own configuration comprised of the following
items:
a. Unique ID: An identifier unique to each sensor.
b. Name: To eastablish a location (Example, corner of Main St. and Route 44)
c. Latitude/Longitude: The global position utilized by Bind MapsTM.
Lab II – Surface Water Detection System Specification
24
d. Offset: The distance from the sensor to the road will be recorded once and set as the
zero marker. Any distance beyond that is the offset and will be viable data.
e. Threshold: Preprogrammed trigger that will activate the flashing road sign.
f. Increment: Measurement fluctuation.
g. IP address: This is to coordinate with the Data Acquisition Host to obtain
measurements from the closed-system since the data is not being transferred to a
database over a network.
7. The CSRD provides a program that allows an onsite operator to configure the CSRD, and
copy the CSRD’s local storage of sensor measurement data via some network protocol
such as Telnet or HTTP.
3.1.2 Onsite Data Acquisition Device (ODAD)
This function defines interactions with the CSRD to collect sensor measurement data form
the CSRD’s local storage, and gives the onsite operator the ability to modify the CSRD’s
configuration file. The following functional requirements shall be provided:
1. An onsite operator is able to connect to the CSRD via physical link such as Ethernet or
Serial cable to provide access the CSRD’s configuration program over some network
protocol such as Telnet or HTTP.
2. An onsite operator, once connected to the CSRD, can download sensor measurement data
from the CSRD’s local storage to free device space.
[This space left intentionally blank]
Lab II – Surface Water Detection System Specification
25
3.1.3 Networked-System Remote Device (NSRD)
This function encompasses those of the CSRD by allowing the NSRD to act as a CSRD if
network connectivity is lost. In addition, the NSRD transmits its sensor measurement data over a
static network to a centralized collection node (the Data Acquisition Host) and provides a means
for network operators to configure the NSRD and copy any of its local storage over the static
network. The following functional requirements shall be provided:
1. The NSRD shall revert to CSRD operations if network connectivity is lost.
2. The NSRD checks for network connectivity at regularly timed intervals.
3. The NSRD resumes NSRD operations if after a time of lost network connectivity, the
NSRD reestablishes network connectivity.
4. Once the NSRD establishes network connectivity, it sends its sensor measurement data
overt the network to the Data Acquisition Host (DAH).
3.1.4 Data Acquisition Host (DAH)
This function collects sensor measurement data from the NSRDs on the network and logs
that data to a centralized database. The following functional requirements shall be provided:
1. The DAH receives data from NSRDs on the network.
2. The DAH logs data received from the NSRDs to a centralized database.
[This space let intentionally blank]
Lab II – Surface Water Detection System Specification
26
3.1.5 Administrative Web Application (AWA)
This function provides administrative services for querying the centralized database, and
monitoring and configuring NSRDs on the network. The following functional requirements shall
be provided:
1. The AWA provides a graphical display of the status of the NSRDs on the network.
2. The AWA provides a graphical user interface for remotely configuring a NSRD over the
network.
3. The AWA provides a graphical user interface for querying the centralized database of
sensor measurement data.
4. Queries of the centralized database can be performed according to both a particular set of
NSRDs, and a specific data and time range.
[This space left intentionally blank]
Lab II – Surface Water Detection System Specification
27
3.1.6 Public Web Server (PWS)
This function provides a publicly available interactive website and web services to the
general population. The website provides a news feed alerting users to current inundations in the
jurisdiction, and an interactive Google Maps section where users can view the real-time status of
NSRDs in the jurisdiction. An interface for users to customize personal alerts of monitored
sections along their daily routes is also provided. The following functional requirements shall be
provided:
1. The PWS provides a news feed section on the homepage that informs users of any current
inundations in the jurisdiction.
2. The PWS provides an interactive Bing Maps section where users can view the real-time
status of the NSRDs in the jurisdiction.
3. The PWS provides a graphical user interface for allowing users to pick which NSRDs in
the jurisdiction shall be included in their own personal alert.
3.2
Performance Requirements (Robert Dayton)
3.2.1 Networked and Closed-System Remote Devices
Both shall meet the following performance requirements:
1. Accurately read distances from one inch to eight feet in one inch increments.
2. Make incremental measurement readings on an adjustable schedule with a five second
default interval.
3. Identify and filter-out measurement reading jumps of greater than two inches over a 15
second period.
4. For local data logging, the remote device must be equipped with a storage device large
enough to maintain historical data for at least six months.
Lab II – Surface Water Detection System Specification
28
3.2.2 Data Acquisition Host (DAH)
The DAH shall meet the following performance requirements:
1. Support receiving remote device sensor data at the same rate at which the sensor is
making incremental measurement readings.
3.3
Assumptions and Constraints (Jill Mostoller)
There are various assumptions, constraints and dependencies in place for the prototype
development. Table two contains a list of each assumption, dependency and constraint. The table
also lists a brief description of the effects on the prototype requirements.
[This space left intentionally blank]
Lab II – Surface Water Detection System Specification
Condition
A simulated sensor will not
stop functioning during a
simulation.
A customized web interface
will not be used for each
user type.
Type
Constraint
Effect on Requirements
Bounds the problem of
malfunctioning sensors.
Constraint
Bounds the problem of
designing multiple web
interfaces with different
functionalities.
Bounds the problem of
transmitting the data
archives and updating the
software of the closed
system.
Bounds the problem of
setting up a network for the
city.
Allows us to assume data is
relevant and will be
effective in alerting drivers
in time.
Allows for minimal data
security.
Allows us to only develop
high-level algorithms for
the centralized data center.
Allows for minimal error
checking when processing
data archive requests.
Allows us to assume the
data-sorting algorithm is
correct.
A method will be developed Constraint
by the customer to transmit
data locally from a closed
system.
The city already has a
network set up that we can
piggyback.
Data transmission delay
will not be large enough to
effect real time results.
Constraint
Data collected is not
sensitive in any way.
The microcontroller will not
perform any data
processing.
The user will not look up
data archives for invalid
dates.
Any spike in data will be
regarded as an obstruction
(such as a vehicle) and will
be thrown out.
The eBox will be able to
support the microcontroller.
Assumption
The physical sensor is
available and functioning.
Dependency
Assumption
Assumption
Assumption
Assumption
Dependency
The prototype will rely on
the development PC to run
the data sorting algorithms.
The prototype will rely
exclusively on simulated
sensors.
Table 2. Effects of Assumptions, Dependencies, and Constraints on Requirements
29
Lab II – Surface Water Detection System Specification
30
3.3.1 Assumptions
Five assumptions are being made for our prototype. Our first and most important
assumption is that any spike in data will be thrown out. This spike in depth level would indicate
an obstruction, such as a vehicle, in the road and should be caught by our data-sorting algorithm.
Our second assumption is that the data by the sensor is not sensitive in any way. The system will
not require extensive security for the information collected because water depth measurements
would not classify as confidential material.
The third assumption for our prototype is that the website user will not try to access data
archives for invalid dates. These include both dates that do not exist, as well as dates that precede
the installation of the system. This assumption will allow minimal error checking with the data
archive retrieval. Another assumption our prototype has is that the microcontroller does not
perform any data processing. This allows us to focus on developing our algorithms solely in a
higher-level language that would not be supported by the microcontroller. Our final assumption
is that the data transmission delay from the sensor to the centralized data center and the warning
sign will not be large. The system will be able to detect dangerous water levels and warn drivers
within a one-minute time-span of the event occurring.
3.3.2 Constraints
We have four constraints for our prototype to help limit the scope. Our first constraint is
that our simulated sensors will not malfunction during a given simulation. This will simplify our
simulation program and not require us to address sensor failures. In the real world product, a city
engineer will attend to any malfunctioning sensors in person. Our second constraint is that there
will be a generalized web front to show the website components of our prototype. In the real
world product, we will have three user types, city users, insurance company users and general
Lab II – Surface Water Detection System Specification
31
public users. For the purpose of our prototype, will be developing a web front for the user type
with the most functionality, i.e., the city users.
The third and fourth constraints bound the problems of setting up a network and
transmitting data from a closed system. The third constraint is that the city will already have a
network for us to piggyback. With this constraint, we will not need to worry about setting up a
reliable network to transfer data to the centralized data center. The fourth constraint pertains to
only the closed system. The city will need to develop a way, e.g., through Bluetooth, to transmit
the data archives and update the software of the closed system sensor.
3.3.3 Dependencies
There have been two dependencies identified for our prototype. The first dependency is
that the physical sensor is available and functional. If the physical sensor cannot be obtained or is
broken, we will need to exclusively use simulated sensors. The second dependency is that the
eBox is able connect with the microcontroller. The eBox will hold the high-level sorting
algorithms so if the microcontroller that controls the sensor cannot connect to the eBox, we will
need to connect it to a development PC instead.
[This space left intentionally blank]
Lab II – Surface Water Detection System Specification
3.4
32
Non-Functional Requirements
This section describes the non-functional requirements of the SWDS.
3.4.1 Security (Katherine Kenyon)
There are two main areas of concern with regards to securing the Surface Water
Detection System; hardware and software. Securing the hardware involves ensuring the integrity
of the ruggedized housing unit and the components inside. The ruggedized housing unit is
designed to protect the inside components and withstand normal weather conditions. Concerns
for the ruggedized housing unit include: sabotage, vandalism, and accidents. Sabotage occurs
when a person illegally tampers with the functioning of the system. Vandalism refers to the
illegal modification of the ruggedized housing exterior to affect its appearance but not it’s
functioning. Potential accidents include environmental damage from extreme weather conditions
like a hurricane - or collision with moving automobiles. Vandalism, sabotage, and accidents can
all be inhibited by placing the housing unit in a secure location as far away from traffic as
possible and out of reach of potential criminals.
Since the software components do not collect personal or private information security
concerns are minimal. The software must be user-access protected to provide customized views
to each type of user. The data does not need to be encrypted on the server because hacking
attempts are unlikely and even if they do occur the stored data is public information.
[This space left intentionally blank]
Lab II – Surface Water Detection System Specification
33
3.4.2 Maintainability (Cassandra Rothrauf)
The two main things that need to be maintained for the SWDS are the ultrasonic sensors
and how to plan and maintain the data on the servers. The sensors can be physically stolen and
broken due to bad weather. It is necessary to restore the failed product by contacting the local
service station. The station will have electric engineers on the spot that will need to be equipped
with the extra parts. Apart from replacing the parts, maintaining a database is constantly being
monitored. Maintainability is achieved by modifying the software. Improvement and software
changes in the environment will help monitor the database system. The employees located at
each station will need to be fully knowledgeable of the software and how to fix the product.
3.4.3 Reliability (Chris Meier)
The Surface Water Detection System’s prototype must be available 24/7 in order to
accurately maintain the updated weather conditions information for the user GUI. In terms of the
Insurance Agency and City GUIs the availability can be somewhat more flexible. The sensor
and microcontroller must be protected from the elements to insure this, by using a ruggedized
housing. In Addition, if the sensor data becomes erroneous and continuously misreads then a
debugging procedure will be initiated and if this fails to remedy the problem a technician will
have to visit the sensor on site for manual troubleshooting. If the sensor or any of its
components were to become compromised it would no longer be able to maintain updated
conditions and could create a problem. The SWDS Data Center will annually back up all data in
the database to another disk, as a safeguard against any data corruption or disk failure.
[This space left intentionally blank]
Lab II – Surface Water Detection System Specification
Appendices
Appendix A: Hardware Listing
1. Parallax Ultrasonic Sensor
2. Microsoft eBox for Embedded Devices
3. Laptop (as Development Computer)
4. USB Cable
5. Ethernet Cable
Appendix B: Software Listing
1. Microsoft Windows 7 Compact Edition
2. Microsoft .Net Compact Framework
3. Microsoft .Net Frameworks 3.5 and 4
4. Microsoft Visual Studio 2010 Professional Edition
5. Microsoft SQL Server 2008
6. Microsoft SQL Server Management Studio
7. Mercurial Software Configuration Management
8. NUnit Unit Test Software for the .Net 3.5 Framework and Unit Test Runner GUI
9. Ninject Dependency Injection/Inversion of Control
34
Download