Software Requirements Specification For Sahana Modification to use LDAP and Active Directory Team Members

Alex Lanstein

Candyce Young-Fields

Copyright (c) 2005, Gregory W. Hislop. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation. Table of Contents

1 Introduction...... 4 1.1 Purpose...... 4 1.2 Scope...... 4 1.3 Definitions, Acronyms, and Abbreviations...... 4 1.4 References...... 4 1.5 Overview...... 4 2 Overall Description...... 5 2.1 Product Perspective...... 5 2.2 Product Functions...... 5 2.3 User Characteristics...... 5 2.4 Constraints...... 5 2.5 Assumptions and Dependencies...... 5 2.6 Apportioning of Requirements...... 5 3 Specific Requirements...... 6 3.1 External Interfaces...... 6 3.2 Functions...... 6 3.3 Performance Requirements...... 6 3.4 Logical Database Requirements...... 6 3.5 Design Constraints...... 6 3.6 Standards Compliance...... 6 3.7 Software System Attributes...... 6

2 1 Introduction This project involves the creation of a modification to Sahana to allow a database dump from a variety of backeds to import seamlessly into the Sahana missing persons database. The module is intended to add users into the missing persons database without manually creating the records. The intent is to allow an entire college or corporation to, with a single click, setup a missing persons registry of everyone in their organization. Purpose This document describes the high-level and detailed requirements of the Sahana AD/LDAP Modifications

1.1 Scope The AD/LDAP Modificationsis intended to support the larger Sahana effort by providing management support for volunteers including allocation, distribution, and tracking of volunteers.

1.2 Definitions, Acronyms, and Abbreviations Sahana – A product to assist in the planning, structure, and implementation of disaster recovery LDAP – Lightweight Directory Access Protocol AD – Active Directory – an LDAP-like implementation

1.3 References See Sahana documentation for more Sahana related details.

1.4 Overview

The remainder of the document contains an overall description of the modification requirements as well as the detailed requirements for the main functionality of the modifications.

3 2 Overall Description

2.1 Product Perspective The Sahana AD/LDAP Modification set modification of the larger Sahana project. Product Functions

The main purpose of the AD/LDAP Modification is to allow an organization to automatically set up a missing persons database of all their people. It will allow said people to “check themselves in” after they answer a predetermined security question. User Characteristics The primary users of the AD/LDAP Modifications are administrations and users of an organization that has experienced a wide scale disaster.

2.2 Constraints While it is possible for the AD/LDAP Modifications to operate outside the bounds of Sahana, for any support to be given they must operate as a part of the larger Sahana project. It must adhere to all Sahana standards and constraints.

2.3 Assumptions and Dependencies The AD/LDAP Modifications will use RSS, CSV files, MySQL, PHP, and PHP-LDAP.

2.4 Apportioning of Requirements

The requirements described in section 3 contain all requirements to be implemented for the demonstration at the end of the semester.

4 3 Specific Requirements

3.1 External Interfaces

3.2 Functions

Projects 1.0 Display Projects Input Selection the link to the AD/LDAP Modifications from the Sahana main page. Action --- Output Display possible actions Notes Priority High

Projects 1.0 Dump Data Input Selection of choice 1. Action User is brought to a page requesting the database url, username, and password Output The script crawls through the database and dumps all information requested into a common data source Notes The data source could be csv, raw text, rss, or sql Priority High

Projects 1.0 Import Data Input Selection of choice 2. Action User is brought to a page asking which and where the data source is that they want to import Output  Sahana-compatable user database is created that has users first name, last name, username, email, emergency contact, and security question Notes Priority High. 3.3 Performance Requirements None identified.

3.4 Logical Database Requirements Data tables to be developed by CC include: Users table to contain information stated about about the user.

3.5 Design Constraints All design must adhere to existing Sahana conventions and standards.

5 3.6 Standards Compliance None identified.

3.7 Software System Attributes None identified.

6