Table of Contents | ||||||
---|---|---|---|---|---|---|
|
Requirement | Overall Description | |||||||||
---|---|---|---|---|---|---|---|---|---|---|
Section | 2 | |||||||||
JIRA Task |
|
Anchor | ||||
---|---|---|---|---|
|
Epi Info™ 7 is used worldwide for the rapid assessment of disease outbreaks; for the development of small to mid-sized disease surveillance systems; as ad hoc components integrated with other large scale or enterprise-wide public health information systems; and in the continuous education of public health professionals learning the science of epidemiology, tools, and techniques.
Section | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Center |
---|
|
Anchor | ||||
---|---|---|---|---|
|
The typical Epi Info™ user is a college-educated professional who is familiar with the terminology used in health care, statistics, and epidemiology. The user is also familiar with basic computer usage and associated terminology (variables, data fields, functions, parameters, arguments, etc.). There is limited space within the application to give instructions and guidance to the user; these cues are sufficient for prompting the user to perform the next task but are not voluminous enough to also teach concepts.
From that body of users, we anticipate two specific user levels. The advanced user is capable of using all aspects of the program. Principal investigators, lead epidemiologists and other individuals responsible for the scientific direction of public health investigations are likely to be advanced Epi Info™ users. This individual creates the data entry forms, including the potentially complex check-code logic that validates data and guides the user of the through the data entry fields. The advanced user may also set up the analyses using the Visual Dashboard and Classic Analysis tools. Based on knowledge and expertise acquired in the field, the advanced user will know the most appropriate statistics to calculate during data collection and can decide how best to present that data using graphs, tables and maps. In contrast, basic users, with limited experience and training, can use Epi Info™ in the field to administer questionnaires to subjects during interviews and update the prepared analyses with new data after collection.
Anchor | ||||
---|---|---|---|---|
|
Anchor | ||||
---|---|---|---|---|
|
System components and constraints identified:
- File system
- Purpose
- Stores form data, analytical results, shape files
- Location of Epi Info™ executables, Dynamically Linked Libraries (DLLs), config files
- Constraints
- Limit on maximum file size
- Limit on length of file name
- Syntax for file references in different directories (relative and absolute)
- Syntax for file references on other file systems (hard disks or partitions)
- File access permissions
- Purpose
- Database Engine
- Purpose
- Stores form configuration and collected form data
- Receives data from Enter module as SQL
- Supplies data to Classic Analysis and Visual Dashboard
- Constraints
- Local Microsoft Access
- Local or remote SQL Server
- Receives data from Enter module as SQL
- Supplies data to analytical modules
- Purpose
- User input
- Keyboard and locale-dependent character mappings
- Mouse, three button, middle button click and scroll wheel
- Touch screen, pointer, gestures and keyboard emulation
- Program output
- Video display terminal
- Printer, postscript
- File system
Anchor | ||||
---|---|---|---|---|
|
Keyboard
The keyboard generates signals in response to keystrokes which are translated by the operating system into a string of characters and made available to a program as Standard Input. The keystrokes can represent alphanumeric characters, punctuation, and symbols as well as control characters and cursor-movement commands. The relationship between the byte (or bytes) generated by a keystroke and the character represented is determined by the system's character set (ASCII, UTF-8, UNICODE, etc.). The character set is, in turn, controlled by the system's locale, the linguistic and geographic environment in which the user and system operate. Epi Info™ must be flexible enough to support input in multiple languages based on locale in order to accurately record, for example, the names of subjects, and locations.
Mouse
The mouse, or substitute such as a touch pad or track ball with buttons, takes user input to move the system pointer (or cursor) relative to its current position on the screen. Through the use of buttons or tapping gestures, it also takes logical input, often based on the position of the cursor on regions of the screen such a buttons or fields. The use of motion and button input together enable graphical user interface (GUI) interactions such as pull-down menus and scrolling. The ability of a program to draw a picture on the screen and use it to prompt the user for specific input using the mouse and keyboard is the hallmark of modern interface design; its ability to guide a relatively untrained user through a complex series of interactions greatly increases the number of potential users for an application.
Touch Screen
Touch-sensitive screens are becoming more common on laptop PCs and are nearly ubiquitous on tablets and mobile devices. The touch screen, like the mouse, moves the system pointer in response to user input, essentially mirroring the movement of the user's digit over the screen on the screen. However, unlike the mouse, the absence of buttons necessitates a means for emulating them. This is typically accomplished by gestures such as the "tap" and "double-tap" movements used in place of the left and right mouse buttons, respectively. Other gestures are possible, such as "pinching" (two widely-separated fingers on the screen which are then drawn together) and "stretching" (the opposite movement: two fingers together then moving apart), used to effect zooming in and zooming out. A touch screen can also emulate a keyboard by displaying an image of a keyboard and mapping a touch event that occurs over a particular letter to the appropriate character code. The operating system translates gestures and keystrokes on virtual keyboards on the touch screen into equivalent codes, making the choice of input devices essentially invisible from the programmer's perspective.
Anchor | ||||
---|---|---|---|---|
|
The Epi Info™ launch screen and main menu is 682 × 496 (pixels), allowing it to operate with a standard 800 × 600 (SVGA) screen. This is adequate for data entry, although scrolling is required to see all fields on the form. The analytical and mapping functions will also work with this resolution but usability suffers. Higher resolution is always better; a minimum resolution of 1024 × 768 (XGA) is recommended.
Anchor | ||||
---|---|---|---|---|
|
Epi Info™ 7 is intended to run on x86-based personal computers running the Microsoft Windows operating system. It has the following requirements:
- Windows XP or above
- Microsoft .NET Framework 4.0 or above
Anchor | ||||
---|---|---|---|---|
|
There is a button on the main menu labeled "Epi Info Website" that identifies the default browser and forks a process calling the browser program with the appropriate command-line options to open the URL "http://wwwn.cdc.gov/epiinfo/".
Epi Info™ 7 must read and write from the following data sources/formats:
- MS Excel 97-2003 Workbook (.xls) or MS Excel 2007 Workbook (.xlsx)
- ASCII text file
- MS Access 2002-2003 (.mdb) or MS Access 2007(.accdb)
- Microsoft SQL Server Database
See also: Interfaces to other applications under Constraints.
Anchor | ||||
---|---|---|---|---|
|
Epi Info™ 7 is intended for use on portable computers or computers located in the region affected by a disease outbreak. Because these outbreaks often occur in third-world countries or remote areas with limited resources, the application needs to be able to run on relatively antiquated hardware. The benchmark system should have the following configuration:
- CPU: 1 GHz Intel Pentium III class
- RAM: no more than 256 MB
- HDD: 5400 RPM SATA I (150 MB/sec)
The minimal system must be able to support the complete workflow for a realistic epidemiological study. Specific parameters for what constitutes a "realistic epidemiological study" will be described in more detail under performance requirements.
Anchor | ||||
---|---|---|---|---|
|
The mode of operation shall be exclusively user-initiated/interactive.
Anchor | ||||
---|---|---|---|---|
|
Regulatory policies
Clinical data, alone or in combination with personal identifiers such as name, address or social security number (Personally Identifiable Information (PII)), may constitute Protected Health Information (PHI) and thus fall under the jurisdiction of the Health Insurance Portability and Accountability Act of 1996 (HIPAA). Title II of HIPAA defines PHI and the circumstances in which PHI can be disclosed to third parties without the patient's written consent, and provides for both civil and criminal penalties for violations of its privacy provisions. Unless explicit efforts are made to prevent the collection of PII, Epi Info™ datasets should be considered PHI and safeguarded with the same procedures used to protect other confidential medical records. There is no requirement for the Epi Info™ application to safeguard this information; that responsibility is incumbent on the individual user.
Anchor | ||||
---|---|---|---|---|
|
Epi Info™ 7 has a limited number of interfaces to external applications. The system uses the operating systems's default browser to display the User Guide, "How To" videos, Epi Info™ Q&A and to contact the Help Desk and access other "Epi" resources such as ActivEpi and OpenEpi. The most important interface of Epi Info™ 7 is with its underlying database, MS Access or MS SQL Server. Access is the database typically used for stand-alone installations where Epi Info™ 7 and the database are running on the same platform. This configuration allows self-contained form design, data collection and analysis without Internet connectivity. Epi Info™ 7 can operate with SQL Server in the same manner. However, SQL Server is more commonly deployed as a remote database server with Epi Info™ 7 connecting via the Internet as the client. Several mapping functions must also interface with external applications over the Internet. The Check Code command Geocode accesses a GIS database to translate geographical locations (e.g., country, state/province, city, address) to latitude and longitude. These coordinates can then be plotted on detailed and up-to-date maps retrieved from the Bing Maps Portal.
Reliability requirements
Specific reliability requirements, such a "mean time between failures" and other quantitative measures, have not been specified.
Criticality of the application
Epi Info™ plays a crucial role in enabling epidemiologists to respond to disease outbreaks and other public health emergencies, and to take direct action to mitigate the associated morbidity and mortality, the ability of the application to faithfully record and analyze data is of primary importance; the consequences of data loss are manifold. Replacing lost data by repeating patient interviews is costly in resources and manpower; in most cases, it is either impossible or wholly impractical. More importantly, data loss can delay or even prevent scientific findings that could enable life-saving interventions. Similarly, errors in data analysis can result in missed opportunities or false leads that divert resources from more productive pursuits. For this reason, comprehensive testing of all aspects of the application is required.
Anchor | ||||
---|---|---|---|---|
|
The requirements discussed in this software requirements specification (SRS) assume the continued availability of the Microsoft Windows 7 operating system supporting the Microsoft .NET Framework 4.0 or above, or an operating system that is backward compatible with Windows 7 and the .NET framework.
Anchor | ||||
---|---|---|---|---|
|
All requirements discussed in this SRS reflect functionality implemented in Epi Info™ version 7.2.