Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents
outlinetrue
absoluteUrltrue
stylenone

RequirementOverall Description
OutlineLevel2
JIRA TasksCreate
Jira Legacy
serverJIRA (epiinfo.atlassian.net)
serverId27f48ee9-ab62-3138-905f-2fd252d98a0b
keyEIR-14
Revise
Jira Legacy
serverJIRA (epiinfo.atlassian.net)
serverId27f48ee9-ab62-3138-905f-2fd252d98a0b
keyEIR-52

Anchor
ProductFunctions
ProductFunctions
Product Functions

Epi Info™ 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
Column
width20px

 

Column

Child pages (Children Display)
alltrue
depth1
styleh2
pageSystem Components (Modules)
excerptTyperich content


 

Center


 

Anchor
User Characteristics
User Characteristics
User Characteristics

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 Master may advanced user may also set up the analyses using the Visual Dashboard or and Classic Analysis tooltools.  Based on his or her knowledge and expertise acquired in managing outbreaksthe field, the Master 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.  The second user type is the Apprentice. The primary role of the Apprentice is to use  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.  The Apprentice need not have the advanced training and domain expertise of the clinician or epidemiologist, although he or she may interact with one or both (particularly the clinician) in the conduct of the interview.

Anchor
Product Perspective
Product Perspective
Product Perspective

Anchor
System interfaces
System interfaces
System Interfaces

System components and constraints identified:

    • File system
      • Purpose
        • Stores
  • analytical results,
        • 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
    • 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 (question)
        • SQL
        • Supplies data to analytical modules
    • 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

Epi Info System Block Diagram, System Interfaces.  Figure shows data flow in and out of Epi Info.  Epi Info is represented as the central object with user input modes, keyboard, Touchscreen and Mouse, on the left with arrows pointing to Epi Info.  On the right, arrows leading out of Epi Info represent output modes, Display and Printer.  Below, system storage, FileSystem and Database, connect to and from EpiInfo.  Above, Internet resources including Reference Data and GIS data connect with Epi Info with a bidirectional arrow (although data flow is primarily to Epi Info).

Anchor
User interfaces
User interfaces
User Interfaces

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. 

WarningtitleFact Check

Statement about how OS handles input from different devices is speculation which must be verified or omitted.

Anchor
Hardware interfaces
Hardware interfaces
Hardware Interfaces

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
Software interfaces
Software interfaces
Software Interfaces

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
Communications interfaces
Communications interfaces
Communications Interfaces

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
Describe protocol for downloading GIS data in Map module (question)

See also: Interfaces to other applications under Constraints.

Anchor
Memory constraints
Memory constraints
CPU and Memory Constraints

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
Operations
Operations
Operations

The mode of operation shall be exclusively user-initiated/interactive.

Anchor
Constraints
Constraints
Constraints

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
Interfaces to other applications

Browser, SQL Server

Interfaces to other applications
Interfaces to other applications

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.  

However, the required reliability of the application can be expressed in operational terms.

Criticality of the application

Epi Infoplays 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
Assumptions and Dependencies
Assumptions and Dependencies
Assumptions and Dependencies

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
Apportioning of Requirements
Apportioning of Requirements
Apportioning of Requirements

All requirements discussed in this SRS reflect functionality implemented in Epi Info™ version 7.2.