XSEC-2.1
(client/server) suite Requirement specification
Security System Based
On Face And Voice Recognition.
Project team: XPEG |
Document: Requirement Specification. |
Revision: 2.1 |
Last update: Date:
21/12/2003 1:00:00 |
|
Review date:
Nov 2 1999 |
|
Approval date:
Nov 3, 1999 |
|
Table
of Contents
1. Introduction
This document is the
Requirement specification for a security authentication system based on
faces and voice recognition, to be implemented by the XPEG project group.
The intended usage of the security system is a tool for authenticating users
for any valuable resource over any network of computers. "Real-life" factors
like user face variations and voice variations of a user are considered
important in the design. It is very important to state the fact that real
life implementations of such security systems are highly application
specific. Hence the main aim of the project should be to design software
that shows how robust human face and voice are in recognition. A successful
implementation of XSEC will be used to target the enterprise and thereby
implement it in some real life security system. The aspects related to
network efficiency like network load and network security are the main
factors that need to be handled.
The main goals of the project are to:
-
To design a template that authenticates the user based on
his face and voice. This template could then be used to implement a
functional security system on a real-life resource.
-
To make the training of the system for user face and voice
as simple as possible.
-
To make a platform (operating system) independent network
based authentication system.
-
To implement an easily extensible,
portable and configurable system.
The aim of this document
is to state the requirements which will characterize a product that fulfills
these goals. Requirements are set on the design, documentation and
architecture.
The project entails a great deal of prototyping and research
as it is very much charting the territory of artificial intelligence. The
volatility of the project has strong implications on the requirements. As a
basic risk managing strategy the requirements have been divided into three
levels:
Core
requirements:
These requirements are considered to be primary and should be met upon
completion of the project. Core requirements are tagged with
Core or
the word "shall*" (notice the asterisk!) in the documentation.
Base
requirements:
Secondary requirements, of which as many as possible, within reasonable
effort, should be met upon project completion. Base requirements are tagged
with Base or the word "should*" in the documentation.
Optional features:
Things that may be implemented if there is time and/or they require little
effort compared to their usefulness. This list includes "wild ideas", some
of which will be totally beyond the scope of the project, thought up during
customer meetings. Optional features are tagged with
optional or the
word "may*" in the documentation.
The rest of this document is structured as follows: Section 2
deals with the environment of the users, use cases and technical
environment. Following this in section 3 are the functional requirements set
on the network based security system. Requirements for documentation and
research can be found in section 4. The software architecture, including
performance requirements, is described in section 5. Section 6 presents the
usability considerations of the project. In section 7 the quality goals and
methods of their verification are presented. Section 8 briefly discusses
legal rights to use the project outcome.
2. Environment
2.1 Users
The system shall* support
users who can speak English and who have a normal human face feature. The
system may* be extended to support any user who can just speak out in any
language.
2.1.1 Core: End User.
The security system is
used by a person, who is familiar with basic computer usage. The person
trains the system for recognizing his face as well as voice by performing
simple mouse clicks. Training shall* involve taking a few face snap shots
(not more than 10) as will be specified in the final user manual followed by
a speaking session where the user is meant to speak out some English words
(not more than 20). Recognition shall involve taking a snapshot of the face
and spelling a few words (not more than 3).
2.1.2 Core: Administrator.
The administrator should
be a technically sound computer professional who shall maintain the user
database that holds valuable information related to voice and face features
of the users. The administrator should have a sound knowledge of the network
installation and network security aspects related to XSEC-2.0.
2.1.3 Base: Corporation using the security
system.
The corporate user wants
the software to be easy to install and maintain, preferably on a common
platform such as Windows XP or generic UNIX. The whole process of
authentication shall* be performed trough a GUI, which would provide an easy
to use training and recognition process.
2.2 Technology – Devices and Software.
The computer on which the
software runs should be connected to a digital camera such as a web camera
(XSEC shall be designed to make the best out of cheaply available, low
quality cameras) and a good quality microphone. The software shall* run on
Windows NT, Windows XP and shall* be easily portable to Linux.
2.3 Technology – Support for Java.
As java is the preferred
language for the development of a platform independent implementation hence
the software should* be built completely in Java. Sun’s Java runtime
environment should* be the target runtime environment. The choice of java is
also driven by the fact that the software can be easily ported to an array
of hand held electronic devices like mobile phones. Media framework support
for java shall* be the additional requirement.
3. Functionality
This section lists the functional requirements. The
requirements are divided into core, base and optional sections.
3.1 Core
A
voice and face Trainer:
The software shall* include an easy to use trainer GUI. Training should be
as simple as possible.
A
Recognizer:
The software shall* include a recognizer GUI. The recognition process should
involve a minimum user effort and a very high recognition rate.
An
Admin Tool:
There shall* be an administrator to XSEC-2.0 who shall* be provided a
network based GUI tool that should* handle a minimum basic administrating
facilities like assigning new users, making modifications on present users,
deleting users, blocking users: other additional facilities may* be added in
order to make the task of the administrator more lucid.
3.2 Base
A
database manager.
The database manager shall* be a GUI that makes essential features of a
database available in easy to use formats.
3.3 Optional
Camera settings GUI.
The user should be provided an easy to use interface that
helps configure the camera.
Microphone settings GUI.
The user should be provided an easy to use interface that helps configure
the microphone.
Help.
There shall* be ample, full and easy to understand help guides that should
give usage related information to any user of XSEC.
4. Software architecture
The main requirements on the software architecture is that it
should be simple and clear, yet easily extensible and sufficiently
versatile. The architecture should be highly modular with separate modules
for voice and face training and recognition. The modularity should help
provide a final system that could use either the voice or face or a
combination of both as a security system. The software shall* run in
Microsoft windows and should* be portable to various other operating
systems. A port to UNIX may* also be made.
5. Usability
A high level of usability is important on the end user side.
Thus, the recognizer shall* be designed with high usability and transparency
in mind. On the training side the software shall* be easy to use for the end
user guided by a technician. One shall* remember that although trainer
module requires a supervision of a technician, there is no excuse for an
overly complex or badly designed UI.
Another aspect is "usability of the code and documentation",
i.e. the code and the documentation shall* be, among other things, clear to
follow, lucid and well structured.
6. Quality: goals and verification
This section lists the 10 most important quality goals of the
project and methods of verifying their success upon project completion.
Priority |
Goal |
Verification |
1 |
Reliable recognizer. |
Recognition rate more than 90 percent. |
2 |
Easy to use trainer. |
Does any user with less than average computer knowledge
understand how to use XSEC-2.0? |
3 |
Admin Tool. |
Manages every aspect of a standard database like adding,
deleting. |
4 |
Device configuration. |
Configures all the configurable features of the camera
and microphone. |
7. Legal issues
The XPEG team will hold license to the outcome (documents,
source code, binaries etc...) of the project. |