# 1 Introduction
[NULL]

## 1.1 Purpose
This Software Requirements Specification (SRS) specifies the requirements for the prototype “Smart House” system, DigitalHome (DH), produced by the DigitalHomeOwner Division of HomeOwner Inc. It defines the capabilities needed to allow home residents to monitor and control environmental conditions, security, and selected appliances, primarily to support business decisions about future commercial development.

## 1.2 Scope
- Product name: DigitalHome (DH) prototype smart home system.
- What it will do:
  - Allow users to monitor and control temperature, humidity, security contacts/alarms, and the power state of small appliances and lighting.
  - Provide web-based access via a home web server and an Internet connection through a gateway to simulated devices (thermostats, humidistats, contact sensors, alarms, and power switches).
  - Support scheduling (planning) and historical reporting.
- Application, benefits, objectives, goals:
  - Application: residential home environment management.
  - Benefits: remote access to home environmental control and security; centralized planning; visibility through reporting.
  - Objectives: demonstrate feasibility and user value; inform HomeOwner Inc. decisions on commercial product development.
- Consistency with higher-level specifications:
  - Based on Digital Home High Level Requirements Definition [HLRD 2010] and the Digital Home Use Case Model [HO2010].
- Prototype constraints:
  - Operates in a simulated environment; no physical home; all sensors/controllers are simulated.

## 1.3 Product overview
[NULL]

### 1.3.1 Product perspective
The DH software operates as the control and management layer in a home system comprising:
- A DH home web server (either on a DH web server or a local home server) hosting the user interface, device management services, planning, and data storage.
- A DH wireless gateway device that bridges between the home web server and in-home devices via RF.
- Environmental and security devices (thermostats, humidistats, magnetic contact sensors, security alarms, and power switches).
- An Internet Service Provider (ISP) connection.

#### System interfaces
- DH home web server to DH gateway device: exchanges control commands and sensor data.
- DH gateway to in-home devices (thermostats, humidistats, contact sensors, alarms, power switches): wireless RF communication for monitoring and control.
- DH home web server to user endpoints: web-based interaction via authenticated sessions.
- External connectivity via ISP broadband Internet service.

#### User interfaces
- Web interface accessible via web-ready computer, cell phone, or PDA.
- Supports login/logout, browsing, entering parameters/requests, viewing real-time status, scheduling, and reports.
- Manual overrides via device-local controls (where available) persist until the next planned/default period.

#### Hardware interfaces
- DH Gateway:
  - RF module for wireless communication with devices.
  - Operates up to a 1000-foot indoor transmission range.
  - Connects to broadband Internet.
- Devices supported:
  - Thermostats: digital programmable; temperature range 14°F to 104°F sensing; setpoint control.
  - Humidistats: digital programmable; 30%–60% relative humidity setpoint control.
  - Magnetic contact switches for doors/windows.
  - Security alarms: one sound alarm subsystem; one light alarm subsystem with multiple lights.
  - Power switches: 115 V, 10 A programmable switches for appliances/lighting.

#### Software interfaces
- Security protocols: Transport Layer Security (TLS) for authentication and encryption of web interactions.
- Operating system, database, and other software products: [N/A].

#### Communications interfaces
- Broadband Internet (e.g., cable modem, high-speed DSL via ISP).
- Wireless RF between gateway and in-home devices.

#### Memory constraints
- [N/A]

#### Operations
- Modes: user-initiated operations via web interface; scheduled unattended operations via planner.
- Data acquisition from sensors at minimum 10 Hz; UI updates at least every 2 seconds.
- Backup: daily backup of configuration, default parameter settings, planning, and usage data at a time configurable by a DH technician.
- Recovery: on failure (power, Internet, software/hardware), restore from most recent backup.

#### Site adaptation requirements
- Site-specific setup by DH technician or master user:
  - Establish user accounts and roles.
  - Configure default parameter settings.
  - Register and map devices to home spaces.
  - Set backup schedule and operational parameters.

#### Interfaces with services
- ISP service for Internet connectivity.
- Hosted DH web server option (alternatively, local home server). Additional SaaS/cloud services: [N/A].

### 1.3.2 Product functions
- Access and control
  - Authenticate users; authorize general and master/technician roles.
  - Monitor and control temperature, humidity, security contacts/alarms, and power switches.
- Thermostat management
  - Read temperatures; set setpoints (60°F–80°F inclusive, 1°F increments); per-room control; Fahrenheit/Celsius support; scheduling.
- Humidistat management
  - Read humidity; set setpoints (30%–60% inclusive, 1% increments); per-room control; scheduling.
- Security management
  - Manage up to 50 door/window contacts; activate/deactivate sound and light alarms; alarm activation on OPEN contact when armed.
- Appliance and lighting management
  - Manage up to 100 power switches (115 V, 10 A); read ON/OFF state; change state; manual changes persist until next scheduled/default period.
- Planning and scheduling
  - Monthly planner: up to four time periods per day; per-day parameter settings; overrides via web or device controls.
- Reporting
  - Monthly reports (for any month in the past two years) with daily averages, minima (with time), maxima (with time) for temperature and humidity per device; security breach timestamps; DH system downtime periods.
- Administration
  - Setup and configuration by DH technician or master user; start/stop system operation; account management; system backups.

### 1.3.3 User characteristics
- General user:
  - Familiar with home layout and locations of devices.
  - Able to use a web interface for basic operations (login/logout, browsing, submitting requests).
- Master user:
  - Designated among users; can change system configuration (add accounts, modify defaults); has rights equivalent to DH technician.
- DH technician:
  - Trained in DH functionality, architecture, and operation.
  - Experienced with relevant hardware, software, and web services.
  - Responsible for setup, configuration, maintenance, and operational control.

### 1.3.4 Limitations
- Regulatory/standards: adherence to ASHRAE standards, policies, and procedures where applicable for HVAC.
- Hardware limitations: gateway-device wireless range up to 1000 feet indoors; device sensing ranges as specified.
- Interfaces: requires ISP broadband service; RF communications between gateway and devices.
- Parallel operation/audit/control: [N/A].
- Quality/reliability: no more than 1 failure per 10,000 hours; backup and recovery required.
- Safety/security considerations: security breaches, inappropriate environmental settings, or powering appliances can affect occupant safety; authentication and encryption via TLS required.
- Project constraints: prototype only; simulated environment; five-engineer team; 12-month completion; cost minimization for DH elements; use widely available technology.
- Real-time constraints from controlled systems: sensor update minimum 10 Hz; UI refresh at least every 2 seconds.
- Other: major requirement changes require approval by the DigitalHomeOwner Director.

## 1.4 Definitions
- Authentication: verification that a user is who they claim to be (e.g., username/password).
- Encryption: transforming information using a cipher so it is unreadable without a key.
- Gateway Device: home networking device connecting in-home devices to the Internet or WANs.
- Security Breach: an act that bypasses or contravenes the DH security system (e.g., opening a door when a contact is armed).
- Set Point: numeric value specifying the desired environmental value (e.g., 70°F for temperature).

# 2 References
- Compliance
  - [ASHRAE 2010] American Society of Heating, Refrigerating and Air-Conditioning Engineers, accessed October 2010, http://www.ashrae.org/
  - [IEEE 1008] ANSI/IEEE Std 1008-1987, IEEE Standard for Software Unit Testing, IEEE, 1987.
  - [IEEE 1012] IEEE Std 1012-2004, IEEE Standard for Software Verification and Validation, IEEE, 2004.
  - [IEEE1016] IEEE Std 1016-2009, IEEE Standard for Information Technology - Systems Design - Software Design Descriptions, IEEE, 2009.
  - [IEEE1028] IEEE Std 1028-2008, IEEE Standard for Software Reviews and Audits, IEEE, 2008.
  - [HO2305] Guidelines for Developing HomeOwner Technical Reports, HO2305, HomeOwner Inc., March 2002.
  - [HO4710] HomeOwner Coding Standard, HO4710, HomeOwner Inc., August 2009.

- Guidance
  - [HLRD 2010] Digital Home High Level Requirements Definition, HomeOwner Inc., September 2010.
  - [HO2010] Digital Home Use Case Model, HomeOwner Inc., DigitalHomeOwner Division, October 24, 2010.
  - [IEEE830] IEEE Std 830-1998, IEEE Recommended Practice for Software Requirements Specifications, IEEE, 1998.
  - [Meyer 2004] Meyer, G., Smart Home Hacks: Tips & Tools for Automating Your House, O’Reilly, 2004.

# 3 Requirements
[NULL]

## 3.1 Functions
- General system
  - Provide a DH home web server as the communication center through which users monitor and control devices.
  - Support access via web-ready computer, cell phone, or PDA.
  - Include a master DH gateway device that connects to broadband Internet and communicates wirelessly with home devices.
  - Equip DH with environmental controllers and sensors (thermostats, humidistats, contact sensors, security alarms, power switches).
  - Read sensor values via wireless communication and save them in the home database.
  - Send controller values to change the DH environment.

- Thermostat management
  - Allow monitoring and control of home temperature remotely.
  - Read temperature at each thermostat position.
  - Set thermostat temperature 60°F–80°F inclusive in 1°F increments.
  - Support up to eight thermostats, each placed in a single enclosed space.
  - Control thermostats individually or collectively to manage different spaces.
  - For each thermostat, allow up to twenty-four one-hour settings per day for every day of the week.
  - Manual setpoint changes persist until the end of the current planned/default period, after which planned/default settings resume.
  - Thermostats communicate wirelessly with the master control unit.
  - Support Fahrenheit and Celsius values.
  - Be compatible with centralized HVAC systems (gas, oil, electricity, solar, or combinations) and adhere to ASHRAE standards.

- Humidistat management
  - Allow monitoring and control of home humidity remotely.
  - Read humidity at each humidistat position.
  - Set humidity level 30%–60% inclusive in 1% increments.
  - Support up to eight humidistats, each placed in a single enclosed space.
  - For each humidistat, allow up to twenty-four one-hour settings per day for every day of the week.
  - Manual setpoint changes persist until the end of the current planned/default period, after which planned/default settings resume.
  - Use wireless signals via the master control unit to communicate with humidistats.

- Security system
  - Manage up to fifty door and window magnetic contact sensors.
  - Manage one sound alarm subsystem and one light alarm subsystem (with multiple lights).
  - Activate alarms when a security breach occurs and a monitored contact is OPEN.

- Appliance and lighting management
  - Manage up to one hundred 115 V, 10 A power switches (appliances and lighting units).
  - Provide the state (OFF/ON) of each power switch.
  - Change the state of each power switch (OFF↔ON), thereby changing the connected appliance state.
  - Manual state changes persist until the end of the current planned/default period, after which planned/default settings resume.

- Planning and reporting
  - Monthly planner: for a given month and year, create/modify a plan specifying up to four daily time periods and the environmental parameter settings (temperature, humidity, contact sensors, power switches) per day.
  - Allow overrides of planned parameter values via the website or device manual controls (if available).
  - Monthly reports (for any month within the past two years) including:
    - For each thermostat and humidistat: daily average, maximum with time, minimum with time.
    - Security breaches: day and time when alarms were activated.
    - Periods when the DH system was not in operation.

- Administration and accounts
  - Establish a DH user account upon installation; require login with account name and password.
  - Provide authentication and encryption using a recognized technology such as TLS.
  - DH technician (or master user) capabilities: setup and configuration (system parameters, user accounts), start/stop system operation.
  - Daily backups of system data (configuration, defaults, planning, usage) at a technician-set time; recovery restores from most recent backup.

- Error handling
  - Provide exception handling with clear, descriptive messages to users when an error or exceptional condition occurs.

## 3.2 Performance requirements
- UI refresh: displays of environmental conditions (temperature, humidity, contact sensors, power switches) updated at least every 2 seconds.
- Data acquisition: minimum sensor data acquisition rate of 10 Hz for temperature, humidity, contact sensor, and power state.
- Communication range: devices must be within 1000 feet (indoor) of the master control device to communicate.
- Capacity:
  - Up to 8 thermostats; up to 8 humidistats.
  - Up to 50 door/window contact sensors.
  - One sound alarm subsystem; one light alarm subsystem with multiple lights.
  - Up to 100 power switches (115 V, 10 A).

## 3.3 Usability requirements
- Provide online user documentation for the installed system including:
  - Frequently Asked Questions (e.g., changing passwords, support contacts).
  - Explanations of parameter setting and sensor reading, including limitations and accuracy constraints.
  - Instructions for using the DH Planner.
- Measurable usability criteria: [N/A].

## 3.5 Logical database requirements
- Types of information:
  - Configuration and default parameter settings.
  - User accounts and roles.
  - Planning data (monthly plans with daily periods and parameter settings).
  - Usage data: sensor readings (temperature, humidity, contact state) and device states (power switch states).
  - System operation status (uptime/downtime periods).
- Frequency of use:
  - Sensor data acquisition at least 10 Hz.
  - UI reads at least every 2 seconds.
  - Daily backups on a scheduled basis.
- Accessing capabilities:
  - Authenticated web access; role-based permissions (general user, master user, DH technician).
- Data entities and relationships: [N/A].
- Integrity constraints:
  - Parameter ranges enforced (e.g., temperature setpoints 60–80°F; humidity 30%–60%).
  - Single thermostat/humidistat per enclosed space; device-to-space mapping.
- Security:
  - Authentication and encryption of web interactions (e.g., TLS).
- Data retention:
  - Maintain data sufficient to generate monthly reports for any month within the past two years.

## 3.6 Design constraints
- Development process: use DigitalHomeOwner Inc. development process.
- Technology choices: employ widely used, accepted, and available hardware/software and standards where possible.
- Standards/policies:
  - HVAC-related: adhere to ASHRAE standards/policies/procedures.
  - Documentation: use HomeOwner document format [HO2305].
  - Coding: comply with HomeOwner Coding Standard [HO4710].
  - Modeling: object-oriented development using UML 2.0 (exceptions require CIO approval).
- Cost: minimize costs of DH elements; document cost-minimization efforts and comparisons in final report.
- Change control: major requirement changes require approval by the DigitalHomeOwner Director.
- Environment: prototype tested and operated in a realistic simulation (no physical home; simulated sensors/controllers).
- Project limitations: five-engineer team; 12-month completion from inception.

## 3.7 Software system attributes
- Reliability
  - No more than 1 failure per 10,000 hours of operation.
- Availability
  - Daily backups of all system data at a configurable time.
  - Recovery restores from the most recent backup after failures (power loss, Internet loss, software/hardware failure).
- Security
  - User authentication with account name and password.
  - Encryption and authentication of web sessions using a recognized security technology (e.g., TLS).
  - Role-based access: general user, master user, DH technician.
  - Exception handling with clear, descriptive messages.
- Maintainability
  - Documentation of requirements, design, and code.
  - Use of abstraction, information hiding, and module independence in design.
  - Conformance to IEEE standards [IEEE830, IEEE1008, IEEE1016, IEEE1028].
  - Prototype modules/components designed for incorporation into a fully specified commercial version.
- Portability
  - [N/A]
- Safety
  - No specific safety requirements; emphasize high reliability to avoid unsafe conditions (e.g., security breaches, inadequate lighting, inappropriate environmental settings).

## 3.8 Supporting information
- Team and roles:
  - Team Leader: Disha Chandra.
  - System Analyst and Requirements Manager: Michel Jackson.
  - System Architect and Design Manager: Yao Wang.
  - Planning Manager: Georgia Magee.
  - Quality Manager: Massood Zewail.
  - Construction Engineer: all team members.
- Schedule milestones:
  - Need Assessment – 9/15/2010; Project Launch – 9/16/2010; Project Plan – 9/27/2010; Requirements – 10/27/2010; Architecture – 11/15/2010; Cycle 1–6 Construction – 12/15/2010 to 5/16/2011; System Testing – 6/20/2011; Acceptance Testing – 7/14/2011; Postmortem – 8/1/2011.
- Use Case Model: see [HO2010] for additional functional detail and relationships among DH entities.

# 4 Verification
[NULL]

## 4.1 Functions
[N/A]

## 4.2 Performance requirements
[N/A]

## 4.3 Usability requirements
[N/A]

## 4.5 Logical database requirements
[N/A]

## 4.6 Design constraints
[N/A]

## 4.7 Software system attributes
[N/A]

# 5 Appendices
[NULL]

## 5.1 Assumptions and dependencies
- An ISP providing broadband Internet service (e.g., cable modem, high-speed DSL) is available and reliable.
- The prototype operates in a simulated environment (no physical home); simulated devices adhere to realistic physical properties and constraints.
- The DH system depends on a functional home web server (local or DH-hosted) and a DH wireless gateway device.
- Wireless RF within the home is sufficient to communicate up to 1000 feet indoors.
- The development team follows DigitalHomeOwner’s prescribed development process and HomeOwner standards.
- Widely available, accepted hardware/software technologies will be selected where possible.
- Project resource constraints (team size, timeline, budget) remain as stated.

## 5.2 Acronyms and abbreviations
- ASHRAE: American Society of Heating, Refrigerating and Air-Conditioning Engineers
- DH: DigitalHome
- DSL: Digital Subscriber Line
- FAQ: Frequently Asked Questions
- HVAC: Heating, Ventilation and Air Conditioning
- ISP: Internet Service Provider
- PDA: Personal Digital Assistant
- RF: Radio Frequency
- SRS: Software Requirements Specification
- TLS: Transport Layer Security
- UML: Unified Modeling Language
- WAN: Wide Area Network
