software requirement specification -...

21
Software Requirement Specification for Knowledge Management System Version 1.0 Prepared by Ankit Mishra HCL Infosystems 24-Feb-09

Upload: trinhkhanh

Post on 27-Mar-2018

216 views

Category:

Documents


3 download

TRANSCRIPT

Software Requirement Specification

for

Knowledge Management System

Version 1.0

Prepared by

Ankit Mishra

HCL Infosystems

24-Feb-09

Table of Contents

About HCL Infosystems..........................................................................................3

1. Introduction.............................................................................................................. 4

1.1 Purpose ............................................................................................................................ 4

1.2 Document Conventions.................................................................................................... 4

1.3 Intended Audience and Reading Suggestions.................................................................. 4

1.4 Project Scope................................................................................................................... 5

1.5 References........................................................................................................................ 5

2. Overall Description.................................................................................................. 5

2.1 System Perspective.......................................................................................................... 6

2.2 Features of KMS ............................................................................................................. 7

2.3 Operating Environment.................................................................................................... 7

2.4 Design and Implementation Constraints.......................................................................... 7

2.5 User Documentation........................................................................................................ 8

3. External Interface Requirements........................................................................... 9

3.1 User Interfaces................................................................................................................. 9

3.2 Hardware Interfaces....................................................................................................... 10

3.3 Software Interfaces........................................................................................................ 10

3.4 Communications Interfaces........................................................................................... 11

4. System Features......................................................................................................12 4.1 Authorization and Authentication.....................................................................12

4.2 Archiving of Data..............................................................................................13 4.3 Creating Folders................................................................................................13 4.4 Sharing of Knowledge.......................................................................................14 4.5 Searching...........................................................................................................14 4.6 Modifications....................................................................................................14 4.7 Current News.....................................................................................................155. Other Nonfunctional Requirements..................................................................... 16

5.1 Logical Structure ........................................................................................................... 16

5.2 Security Requirements................................................................................................... 17

6. Requirements Estimation......................................................................................18

6.1 Work Effort Estimation.................................................................................................18

6.2 Project Estimation Worksheet............................................................................19

Appendix A Glossary.................................................................................................20

Knowledge Management System Software Requirement Specification - 2 -

About HCL Infosystems“Together we create the enterprises of tomorrow"

HCL Infosystems Ltd is one of the pioneers in the Indian IT market , with its origins

in 1976. For over quarter of a century, they have developed and implemented

solutions for multiple market segments, across a range of technologies in India.

HCL Infosystems has alliances with global technology leaders like Intel, AMD,

Microsoft, Bull, Toshiba, Nokia, Sun Microsystems, Ericsson, NVIDIA, SAP,

Scansoft, SCO, EMC, Veritas, Citrix, CISCO, Oracle, Computer Associates, RedHat,

Infocus, Duplo, Samsung and Novell.

Advantage HCL

HCL Infosystems (HCLI) draws it's strength from 30 years of experience in handling

the ever changing IT scenario , strong customer relationships, ability to provide the

cutting edge technology at best-value-for-money and on top of it, an excellent service

& support infrastructure. Today, HCL is country's premier information enabling

company. It offers one-stop-shop convenience to its diverse customers having an

equally diverse set of requirements.

Strengths of HCL can be summarized as:

* Ability to understand customer's business and offer right technology.

* Long standing relationship with customers.

* Best-vale-for-money offerings.

HCL Infosystems has to its claim several technology pioneering initiatives. Some of

them are:

* Country's first DeskTop PC - BusyBee in 1985.

* Country's first branded home PC - Beanstalk in 1995.

* Country's first Pentium 4 based PC at sub 40k price point.

* Country's first Media Center PC. "To provide world-class information technology solutions and services to enable our customers to serve their

customers better"

Knowledge Management System Software Requirement Specification - 3 -

1. Introduction

1.1 Purpose

The purpose of this document is to present a detailed description of the Knowledge

Management System. It will explain the purpose and features of the system, the

interfaces of the system, what the system will do, the constraints under which it must

operate and how the system will react to external stimuli. This document is intended

for both the stakeholders and the developers of the system.

1.2 Document Conventions

This document takes some conventions in consideration. For every topic heading font

size taken is 16 and for subheadings it is 14 and most of the document is written with

a font size of 12.Important topics, headers and words are highlighted so as to stand

their significance. Higher-level requirements are given higher priority which is clearly

visible by the detailed description of the requirement.

1.3 Intended Audience and Reading Suggestions

This document is intended for Developers, project managers, marketing staff, users,

testers, and documentation writers.

Brief Summary of whole SRS document can be summarize within following sections

(Users are required to follow this sequence only in order to have a better

understanding of the document).

Section 1 describes the insight of this document particularly focusing on the purpose,

conventions followed in this document, which it is meant for giving brief view of the

project scope and references.

Section 2 gives overall structure of the project including feature description,

Operating Environment Design and Implementation constraints.

Knowledge Management System Software Requirement Specification - 4 -

Section 3 gives brief description about the features of the project.

Section 4 building an estimation workbook which will guide us in further

development of project. Project estimating is not an exact science. In fact, in the early

stages of a project, it has often been hit and misses. By building and deploying a

standard estimating workbook, we are able to capture our current knowledge and

further that knowledge as our experience guides us.

1.4 Project Scope

Knowledge management systems are seen as enabling technologies for effective and

efficient knowledge management.

This project is intended to utilize the knowledge held in the organization so that it can

be shared among the peers and also can be reused. This project allows easy way of

learning for the trainees by utilizing the knowledge of their seniors and in a manner

ease out the work of the organization. This project will enable the massive amount of

knowledge in an organization to be archived and through its searching module will

allow the documents to be traced in moments.

It helps in storing several documents of a company under a single storage. It provides

the facility to upload and download files such as technical, commercial and other

documents. It allows employees to be notified of any new modification being done to

the documents they are interested in or any new information they seem to be

interested in.

1.5 References

IEEE. IEEE Std 830-1998 IEEE Recommended Practice for Software Requirements

Specifications. IEEE Computer Society, 1998.

Knowledge Management System Software Requirement Specification - 5 -

2. Overall Description

2.1 System Perspective

Figure1 System Environment

System comprises of two main users Employee and Administrator. Employees creates

knowledge or uses existing Knowledge. This Knowledge is shared among the teams

with in an organisation. Organizations usually comprises of departments but there

areprojects running within an organisation and usually there are teams who handles

projects. So KMS user of particul team will be sharing Knowledge with his other

team members only.

Knowledge Management System Software Requirement Specification - 6 -

2.2 Features of KMS

• Authorization/Authentication

EmployeesAdministrator

• Archiving documentation, codes, audio, videos, zip files

• Date of creation, creator, modified by

• Knowledge Sharing - Uploading/downloading of data

• Creation of personal and shared folders

• Search option based on certain amount of keywords.

• Current news

• Training new fresh minds

• Adding personal notes.

• Trashing the unwanted material to recycle bin which on further deletion will be no longer available

2.3 Operating Environment

• Operating system: Windows Xp, Vista, [Linux (untested)]

• Hardware: Pentium 4 processor, 1gb ram ,

• Software Components required: JSP, Servlets,Ajax, Apache Tomcat

WebServer, MySql (for server)

2.4 Design and Implementation Constraints

• This project requires a JRE component to be installed on the system for which

it is intended for.

• One cannot access or share knowledge from any remote location like home or

outside organization since it’s intended for LAN i.e. within an organization.

Knowledge Management System Software Requirement Specification - 7 -

2.5 User Documentation

Project focuses on an organization so the clients will be the employees of the

company and there will be one administrator who will handle the whole system.

Thus one document will focus the client and one will focus the administrator. System

will come with an inbuilt help file apart from that there will be installation document

and manuals describing KMS

Knowledge Management System Software Requirement Specification - 8 -

3. External Interface Requirements

3.1 User Interfaces

User interfaces will be created in java with the help of Java Swings component. With

every component being used in the interface there will be tool tips which will help a

novice user to know in brief what the particular component is intended to

Tabbed style menus will also be provided. Look and feel of the interface will be kept

in mind and all basic necessities will be present

A brief sketch of the KMS

Figure 2

3.2 Hardware Interfaces

The system comprises of clients which are spread in an organization over intranet.

Every system acts as a client over which application is being installed. These clients

interact with the server handled by the administrator over LAN.

Knowledge Management System Software Requirement Specification - 9 -

A simple logical flow of knowledge and connecting with server can be shown as

Figure 3 Client Server Architecture

3.3 Software Interfaces

Have to be identified.

3.4 Communications Interfaces

Since this application is intended for intranet within an organization so for networking

RMI is being used which will for the communication interface.

Knowledge Management System Software Requirement Specification - 10 -

Figure 4 Basic structure of RMI

Broad Overview Of KMS Architecture

Figure 5 KMS Architecture

Knowledge Management System Software Requirement Specification - 11 -

4. System Features

4.1 Authorization and Authentication

4.1.1 Description and priority

Authentication is the process of determining whether someone or something is, in

fact, who or what it is declared to be. In private and public computer networks

(including the Internet), authentication is commonly done through the use of logon

passwords. Knowledge of the password is assumed to guarantee that the user is

authorized. As the portal contains sensitive information about the company that

should not be viewed by users other than the company employees care should be

taken that only the authorized employees of the company get registered with the site.

This is achieved by asking the employee to enter a secret code given by the

organization before getting registered.

Priority Rating(1 - 9)Benifit 9Penalty 9Cost 7Importance 9

4.2 Archiving of Data

4.2.1 Description and priority

This allows all the documents, videos, audio and other files of an organization to be

archived at a single place. This feature allows knowledge to be available at any time.

Priority Rating(1 - 9)Benifit 9Penalty 9Cost 7Importance 9

Knowledge Management System Software Requirement Specification - 12 -

4.3 Folder creation4.3.1. Description and priority

This feature allows to create folders and subfolders for better archiving of data.

Administrator creates two folders for every authenticated client when they are

registered. These are shared folder and personal folder .

Priority Rating(1 - 9)Benifit 9Penalty 9Cost 7Importance 9

4.4 Sharing of Knowledge

4.4.1 Description and priorty

This feature allows knowledge gathered to be shared among employees of an

organization.This feature is facilitated by two aspects of uploading the documents and

downloading the documents.

Uploading

This feature allows authenticated users to upload their documents on a server so that

documents can be shared among employee of organization.This allows documents to

be archived so that they can be used by employees of an organization.

Downloading

It is a process by which authenticate clients can download files from server and files

are given certain amount of rights such as read right etc.

Priority Rating(1-9)Benifit 9Penalty 9Cost 8Importance 9

Knowledge Management System Software Requirement Specification - 13 -

4.5 Searching4.5.1 Description and priority

This feature allows users to search for documents, files on the basis of keywords,

searching can also be done on the basis of author.

Priority Rating(1 - 9)Benifit 9Penalty 9Cost 7Importance 9

4.6 Modifications4.6.1 Description and priority

This is responsible to maintain the record of who made changes to the documents,

when and who was the original creator. Employees will be notified when the

modifications will be done as they will send a note.

Priority Rating(1 - 9)Benifit 9Penalty 9Cost 7Importance 9

Knowledge Management System Software Requirement Specification - 14 -

4.7 Current News4.7.1. Description and priority

Administrator updates the news section which lets users to notify about current

happenings of organization.

Priority Rating(1 - 9)Benifit 9Penalty 9Cost 7Importance 7

Knowledge Management System Software Requirement Specification - 15 -

5. Other Nonfunctional Requirements

5.1 Logical Structure Of KMS database

Employee Data Entity

Data item Type DescriptionName Text Name of EmployeeEmployee_id Text Employeet unique idTeam_name Text To which team employee belongs

Project Data Entity

Data item Type DescriptionProject_id Text Unique id of ProjectProject_Name Text Name of the ProjectProject_Desc Text Small Description of projectTeam_name Text Which team is working on

project

Knowledge Management System Software Requirement Specification - 16 -

EmployeeUploads/Downloads

Knowledge

Works on

Project

Team

Works in

has

Knowledge Entity

Data item Type Descriptions.no Numeric Index of fileContent_type Text Which kind of file is being saved

or retrieved from serverSize Numeric Tells the size of the file being

uploaded or downloadedAuthor Text Name of the employee who has

created the KnowledgeCreated_on Date Tells when originally file was

createdModified_on Date Tells when last file was modifed

Team Entity

Data item Type DescriptionTeam_id Text Gives unique id for teamNo_of_members Numeric Tells how many members are

there with in an TeamEmployee_id (FK)

Varchar Tells which employee is working in which team

Project_id(FK) integer Tells on which project team is working

5.2 Security Requirements

System is being build with login capabilities so that only authorized employees of an

organization can access the system. Read, write modify permissions are granted on

account for whom knowledge is meant.

Apart from this Java Rmi provides inbuilt security features and some will be added to

make it a more secure system.

Knowledge Management System Software Requirement Specification - 17 -

6. Requirement Estimation6.1 Work Effort Estimation

Activity Work Effort %

Definition PhaseBusiness Requirements 6%Functional Specifications 10%

Delivery PhaseDetailed Design 20%Code and unit testing 40%System Testing 14%User Acceptance Testing 10%

Definition phase

1. The Business Requirements are the Business Analysis Document and

Business Requirement Document and it also includes Infrastructure

Requirements Document, Application Technical Requirement Document.

2. The Functional Specifications deliverables include the application prototype

and the Functional Specification Document.

Delivery Phase

1. Detailed Design it includes the Architectural Modelling and Detailed Design

Document.

2. Code and Unit Test includes the development of the software and the testing

by the developers of their particular units, and includes the Code Review Results.

3. System Testing includes the System Test Plan and Plans and Scripts, the

System Test Cases, and the System Test Log.

4. User Acceptance Testing includes the Acceptance Test Plan with Scripts and

completed Test Log, and also includes the implementation planning and

execution.

Knowledge Management System Software Requirement Specification - 18 -

6.2 Project Estimate Worksheet

Project Phase Activity Standard Effort Work %

Phase Team Size

Computed work effort hours

Computed Task Duration weeks

Computed Task Finish Date

Business Requirements 6% 2 35 1Functional Specifications 10% 2 70 2Detailed Design 20% 2 70 2Code and Unit Test 40% 2 270 8System Testing 14% 2 17.5 1/2User Acceptance Testing 10% 2 17.5 1/2

100%

Knowledge Management System Software Requirement Specification - 19 -

Appendix A: Glossary

Term DefinitionAuthor Person submitting an article to be shared

among team memebers.

Database It is the collection of data and Knowledge which is being monitored by this system.

Downloading It is the process of retriving knowledge from the server.

Explicit Knowledge It is the one which can be codified, which is present in the form of documents, white papers, design papers, presentations audio, video files or in zip formats

KMS Client Person who is using KMS system.KMS Administrator Person who is responsible for managing

KMS System.Knowledge Management It is the collection of processes that

governs the creation, dissemination and utilisation of Knowledge.

KMS System It addresses the need of an organisation that desires not to reinvent knowledge and not to spend excess time in finding the hard to find knowledge; an organisation that successfully use the ingoing and outgoing traffic of knowledge.

Software Requirement Specifcation A document that completely describes all of the functions of a proposed system and the constraints under which it must operate. For example, this document.

Sharing It is the process through which explicit or tacit knowledge is being communicated to other individuals

Stakeholder Any person with an interest in the project who is not a developer.

Tacit Knowledge knowledge which resides in the brain of human beings.

Knowledge Management System Software Requirement Specification - 20 -

Knowledge Management System Software Requirement Specification - 21 -