Você está na página 1de 35

Sagacious

Software Requirements Specification

Version 2.0

April 5

Blood Donor Database

2012
Version 2.0
Team Members: Maulik Sanghavi Sowmya Iyer Shrey Shah Udit Chitalia

Software Requirements Specifications

Team Name:

Sagacious
Faculty Guide:

Prof. Seema Shrawane

Veermata JijabaiTechnologicalInstitute

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

Sagacious

Software Requirements Specification

Version 2.0

Revision History
Date 05/04/12 Version 2.0 Description Synopsis Author Sagacious

Blood Donor Database Software Requirements Specification Sagacious

Version 2.0 05-04-2012

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

Sagacious

Software Requirements Specification

Version 2.0

Table of Contents
1 Introduction .................................................................................................................................... 5 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 2 Purpose ................................................................................................................................... 5 Scope ....................................................................................................................................... 5 Definition, Acronyms, and Abbreviations ............................................................................... 7 References .............................................................................................................................. 9 Technologies to be used ......................................................................................................... 9 Tools to be Used ..................................................................................................................... 9 Localization ............................................................................................................................. 9 Overview ................................................................................................................................. 9

Overall Description.......................................................................................................................... 9 2.1 2.2 2.3 2.4 2.5 Product Perspective .............................................................................................................. 10 Product Function ................................................................................................................... 10 User Characteristics .............................................................................................................. 10 Constraints ............................................................................................................................ 10 Use case model survey:......................................................................................................... 11 Use Case ........................................................................................................................ 12

2.5.1 2.6

Database Design.................................................................................................................... 13 ER diagram .................................................................................................................... 13 XML Database Schema .................................................................................................. 14

2.6.1 2.6.2 2.7

Activity diagram .................................................................................................................... 23 Affiliate .......................................................................................................................... 23 Blood for relative .......................................................................................................... 24 Blood from particular donor ......................................................................................... 25 Delete Account.............................................................................................................. 26 Edit profile ..................................................................................................................... 26 Change password .......................................................................................................... 27 Create account by donor............................................................................................... 28 Update blood store ....................................................................................................... 29 Sign in ............................................................................................................................ 30 Search donor ................................................................................................................. 31 Give points .................................................................................................................... 31 Blood to Relative ........................................................................................................... 32

2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.7.6 2.7.7 2.7.8 2.7.9 2.7.10 2.7.11 2.7.12

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

Sagacious 2.7.13 2.7.14 2.8

Software Requirements Specification

Version 2.0

Create account by organisation .................................................................................... 33 Create Event .................................................................................................................. 34

Assumptions and Dependencies ........................................................................................... 35

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

Sagacious

Software Requirements Specification

Version 2.0

Software Requirements Specification


1 Introduction
1.1 Purpose
Blood donors database is a web-portal in which organizations like blood banks, hospitals and NGOS can sign up as members and also any individual wanting to donate blood can become a member. This project is an attempt to make the transfer of blood between blood banks and hospitals secure, simple and to ensure that blood donated by citizens is used for the intended purpose and not misused, which is a very common occurrence these days. It helps to avoid the entire official paper work as all exchange of information is done through the internet. This brings in a very systematic and organised approach to blood donation and blood availability for patients and helps in handling emergency situations more effectively. Also, it helps to promote social awareness amongst individuals about the little role they can play in contributing to the society by donating blood.

1.2 Scope
An organisation (blood, bank hospital and NGO) wanting to become a part of the website must fill in all the mandatory details. Admin will verify the authenticity of the organisation and if the organisation is really secure for the website, a randomly generated password will be sent to the organisations email id. A user who wishes to can create his account must fill in all the mandatory details .A randomly generated password is then sent to his email id. The users (the account holders) and the organisations can log in to their respective accounts by providing the username(email id) and the password. Both users and organisations can view and also edit their respective profiles and change their passwords. Every time a user donates blood, he receives points.

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

Sagacious

Software Requirements Specification

Version 2.0

Blood store is the quantity of blood of each blood group in a blood bank. Every blood group has a threshold value for its quantity and when this threshold is reached, the blood bank will not give away this blood group(unless there is an emergency). Through its account, a blood bank can do the following things: o It can search for a donor by state, city, blood group and other such parameters. The search should be efficient enough to find donors, whose health reports are good and who have not donated blood in the last three months. Also, the search should not give the same donor names every time. It must be random. o It must notify the selected donors the place where they need to come to donate blood (in most cases address of the blood bank) along with a deadline date before which blood must be donated (because blood bank would notify more donors in every fixed time span). o It can update its blood store whenever an individual donates blood to the bank. If the individual is an account holder in the web site, points of the account holder must be incremented. Any organisation(blood bank, NGO) may arrange events like blood donation camps, health awareness camps etc and these details are posted in the organisations profile(account) Organisations must keep a check on the number of attendees of the event to making necessary arrangements. Admin can view the details of the all account holders and organizations. Through his account the user can do the following things: o He can request blood from another user. This is done by filling a form which must be submitted. Admin will verify the reason for this demand and if the reason is valid and the transaction is secure, both the parties will be notified. o He can request blood for a relative. All the details of the relative must be filled in a form which must be submitted. The user with highest points get first priority. After blood is given to the users relative, the users points are decremented.

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

Sagacious

Software Requirements Specification

Version 2.0

o He can browse through profiles of the various organizations which are a part of the website and affiliate with an organisation if he wishes to. o He can confirm whether he is attending or nor attending an event of a particular organisation. o A user can update his health status on his profile. So if he is unfit, he would not appear in the search of any blood bank. A non-member (not an account holder) may only view the various organizations, their details and can confirm whether he is attending or not attending an event. He cannot view the details of account holders. He can sign up and become an account holder on the website.

1.3 Definition, Acronyms, and Abbreviations


Organization: It refers to a blood bank, hospital or NGO which is registered with the web site. User/account holder: User or account holder refers to an individual who is a registered member of the website and may be asked to donate blood Admin: Administrator (super user) refers to the managing body of the blood bank having all access privileges etc. Non-member: Non-member refers to an unregistered user who has no other permissions other than that of viewing the details of organisations. Relative: Any relative or close friend for whom a donor wishes to request blood through the website by losing his points.

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

Sagacious

Software Requirements Specification

Version 2.0

Points: A certain value given to a donor whenever he donates blood, which is decremented by some value when the donors relative, is given blood. SRS: Software Requirements Specification
HTTP:

Hyper-Text Transfer Protocol is a transaction-oriented client/server protocol between the web-browser and the web server.
HTTPS:

Secure Hyper-Text Transfer Protocol is a HTTP over SSL (secure sockets layer) or its successor, TLS (Transport Layer Security)
TCP/IP:

Transmission Control Protocol/Internet Protocol is the suite of communication protocols to connect various hosts on net. It uses several protocols, the two main ones being TCP and IP. HTML (Hyper Text Markup Language): It is used to create static web pages.
JSP (Java Server Pages):

It is used to create dynamic web content.


J2EE (Java 2 Enterprise Edition):

It is a programming platform, belonging to the Java platform, which is used for developing and running distributed java applications WASCE (WebSphere Application Server Community Edition): It is an application server that runs and supports the J2EE and the web service applications.
DB2 (IBM Database 2):

It is a database management system that provides a flexible and efficient database platform to raise a strong "on demand" business applications.

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

Sagacious

Software Requirements Specification

Version 2.0

1.4

References
IEEE SRS Format IBM TGMC Sample Synopsis. Problem Statement: Provided by IBM Joseph Schmuller: Teach Yourself UML in 24 Hours, Third Edition.


1.5

Technologies to be used
HTML: Hyper Text Markup Language XML: Extensive Mark Up Language JAVA: Application architecture J2EE: Application architecture AJAX: Asynchronous Java script And XML

1.6 Tools to be Used


Rational Rose Rational Application Developer: Integrated Development

Environment DB2: Database WAS: Web sphere Application Server 6.0

1.7 Localization
The system will initially be available in one language English. Support for other languages will be added later.
1.8

Overview

The remainder of this document is two chapters: Overall Description: It will describe the major components of the system, interconnection and external interfaces. Specific Requirements: It will describe the functions of actors, their role in the system and Constraints . Supplementary Specifications capture requirements that are not included in the use Cases . They mainly include the non-functional requirements.

2 Overall Description
This section is an overall description of the project, and describes the general factors that it is
Date 5/04/12 Sagacious/Maharashtra 2012 Page no

Sagacious

Software Requirements Specification

Version 2.0

Affected by.

2.1 Product Perspective

Data is mainly stored in XML documents. The software provides easy storage and portability by the use of pure XML.
2.2

Product Function Storing and maintaining Blood Donors' records: The main
function of this system is to store and maintain the information of Blood Donors and make them available quickly and at all times. Maintaining Health details: The selection of Donors is made simpler by providing their Health details too.

2.3 User Characteristics


The user should know the basics in operating a computer and searching on the web. The user should also have understanding of simple English.

2.4 Constraints
Login and Password are used for determination of user. Guests are given nominal viewing functionality. The system uses a single server. The 24 x 7 availability may be affected in case of maintenance of server, because of the use of a single server.

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

10

Sagacious

Software Requirements Specification

Version 2.0

2.5 Use case model survey:


1) Administrator: Responsible for managing system users. View all details: He can view all the details of all the members of the website. Authenticate hospitals, blood banks and NGO: If a hospital, blood bank or NGO wants to become a part of the website, request must be approved by administrator. Verify: If a user requests blood from another user, the request is evaluated by administrator and only then further proceedings can happen. 2) Organization (blood bank, hospital, NGO):They are the end users and have majority of functionalities, provided they are authenticated. Search for donor by place: Blood banks can search for donors/users by state, city, blood group and other such parameters. Provide points to blood donors: Whenever a donor donates blood to a blood bank and if the donor is a user of the website, his points are incremented. Post announcements/Start campaign: Update blood store: Whenever a donor donates blood to a blood bank, the blood bank must update the blood store , the quantity of the concerned blood group must be incremented. 3) Users or Account holders: They are the end users and have majority of functionalities, provided they are authenticated. Request blood from a particular donor: A blood donor can fill a form and request blood from a specific donor, this form is verified by administrator. Request blood for relative: A blood donor can request blood for his relative from a particular blood bank. Affiliate with an organisation: A user can affiliate with an organisation due to which he will receive notifications from that organisation.

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

11

Sagacious

Software Requirements Specification

Version 2.0

Attending or not attending an event : A user can choose to attend or nor attend an event of an affiliated or non-affiliated organisation. 4) Non-members: They are not authenticated members of the website. View details of organisations: He can view the details of all the registered organisations. Sign up: A non -member can sign up and become a member of the website.
2.5.1 Use Case

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

12

Sagacious

Software Requirements Specification

Version 2.0

2.6 Database Design


2.6.1 ER diagram

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

13

Sagacious

Software Requirements Specification

Version 2.0

2.6.2 XML Database Schema <?xml version="1.0" encoding="utf-16"?> <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="blooddonordatabase"> <xs:complexType> <xs:sequence> <xs:element name="admin"> <xs:complexType> <xs:sequence> <xs:element name="emailid" type="xs:string" /> <xs:element name="password" type="xs:string" /> <xs:element name="donortodonor"> <xs:complexType> <xs:sequence> <xs:element name="emailidto" type="xs:string" /> <xs:element name="emailidfrom" type="xs:string" /> <xs:element name="reason" type="xs:string" /> <xs:element name="requiredbloodgroup" type="xs:string" /> </xs:sequence> </xs:complexType> </xs:element>

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

14

Sagacious

Software Requirements Specification

Version 2.0

<xs:element name="verifyorganization" maxOccurs="unbounded" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="orgemailid" type="xs:string" /> <xs:element name="username" type="xs:string" /> <xs:element name="password" type="xs:string" /> <xs:element name="address" type="xs:string" /> <xs:element name="city" type="xs:string" /> <xs:element name="state" type="xs:string" /> <xs:element name="phonenumber" type="xs:decimal" /> <xs:element name="type" type="xs:string" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="log" maxOccurs="unbounded" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="info" type="xs:string" /> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType>
Date 5/04/12 Sagacious/Maharashtra 2012 Page no

15

Sagacious

Software Requirements Specification

Version 2.0

</xs:element> <xs:element maxOccurs="unbounded" name="blooddonor"> <xs:complexType> <xs:sequence> <xs:element name="emailid" type="xs:string" /> <xs:element name="username" type="xs:string" /> <xs:element name="password" type="xs:string" /> <xs:element name="address" type="xs:string" /> <xs:element name="state" type="xs:string" /> <xs:element name="city" type="xs:string" /> <xs:element name="sex" type="xs:string" /> <xs:element name="bloodgroup" type="xs:string" /> <xs:element name="healthstatus" type="xs:string" /> <xs:element name="lastdonateddate" type="xs:dateTime" /> <xs:element name="birthday" type="xs:dateTime" /> <xs:element name="phonenumber" type="xs:decimal" /> <xs:element name="points" type="xs:int" /> <xs:element name="affiliatedorgs" maxOccurs="unbounded" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="data" maxOccurs="unbounded" minOccurs="0"> <xs:complexType>

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

16

Sagacious

Software Requirements Specification

Version 2.0

<xs:sequence> <xs:element name="emailid" type="xs:string" /> <xs:element name="name" type="xs:string" /> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="bloodbank" maxOccurs="unbounded" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="orgemailid" type="xs:string" /> <xs:element name="username" type="xs:string" /> <xs:element name="password" type="xs:string" /> <xs:element name="address" type="xs:string" /> <xs:element name="city" type="xs:string" /> <xs:element name="state" type="xs:string" /> <xs:element name="phonenumber" type="xs:decimal" /> <xs:element name="bloodstore" maxOccurs="1" minOccurs="0">
Date 5/04/12 Sagacious/Maharashtra 2012 Page no

17

Sagacious

Software Requirements Specification

Version 2.0

<xs:complexType> <xs:sequence> <xs:element name="Apos" type="xs:int" /> <xs:element name="Aneg" type="xs:int" /> <xs:element name="ABneg" type="xs:int" /> <xs:element name="ABpos" type="xs:int" /> <xs:element name="Opos" type="xs:int" /> <xs:element name="Oneg" type="xs:int" /> <xs:element name="Bpos" type="xs:int" /> <xs:element name="Bneg" type="xs:int" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="event" maxOccurs="unbounded" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="eventname" type="xs:string" /> <xs:element name="scheduleddatefrom" type="xs:dateTime" /> <xs:element name="scheduleddatetill" type="xs:dateTime" /> <xs:element name="description" type="xs:string" /> <xs:element name="timefrom" type="xs:dateTime" /> <xs:element name="timetill" type="xs:dateTime" /> <xs:element name="venue" type="xs:string" />

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

18

Sagacious

Software Requirements Specification

Version 2.0

<xs:element name="address" type="xs:string" /> <xs:element name="personincharge" type="xs:string" /> <xs:element name="contactnumber" type="xs:decimal" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="feedback" type="xs:string" /> <xs:element name="relativeinfo" > <xs:complexType> <xs:sequence> <xs:element name="donoremailid" type="xs:string" /> <xs:element name="relativeemailid" type="xs:string" /> <xs:element name="name" type="xs:string" /> <xs:element name="surname" type="xs:string" /> <xs:element name="address" type="xs:string" /> <xs:element name="state" type="xs:string" /> <xs:element name="city" type="xs:string" /> <xs:element name="sex" type="xs:string" /> <xs:element name="bloodgroup" type="xs:string" /> <xs:element name="dateofbirth" type="xs:dateTime" /> <xs:element name="phonenumber" type="xs:decimal" /> <xs:element name="points" type="xs:int" /> </xs:sequence>

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

19

Sagacious

Software Requirements Specification

Version 2.0

</xs:complexType> </xs:element> <xs:element name="affiliatedmembers" maxOccurs="unbounded" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element maxOccurs="unbounded" name="data"> <xs:complexType> <xs:sequence> <xs:element name="emailid" type="xs:string" /> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="ngo-hospital" maxOccurs="unbounded" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="orgemailid" type="xs:string" />

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

20

Sagacious

Software Requirements Specification

Version 2.0

<xs:element name="username" type="xs:string" /> <xs:element name="password" type="xs:string" /> <xs:element name="address" type="xs:string" /> <xs:element name="state" type="xs:string" /> <xs:element name="city" type="xs:string" /> <xs:element name="phonenumber" type="xs:decimal" /> <xs:element name="event"> <xs:complexType> <xs:sequence> <xs:element name="eventname" type="xs:string" /> <xs:element name="scheduleddatefrom" type="xs:dateTime" /> <xs:element name="scheduleddatetill" type="xs:dateTime" /> <xs:element name="description" type="xs:string" /> <xs:element name="timefrom" type="xs:dateTime" /> <xs:element name="timetill" type="xs:dateTime" /> <xs:element name="venue" type="xs:string" /> <xs:element name="address" type="xs:string" /> <xs:element name="personincharge" type="xs:string" /> <xs:element name="contactnumber" type="xs:decimal" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="affiliatedmembers">

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

21

Sagacious

Software Requirements Specification

Version 2.0

<xs:complexType> <xs:sequence> <xs:element maxOccurs="unbounded" name="data"> <xs:complexType> <xs:sequence> <xs:element name="emailid" type="xs:string" /> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

22

Sagacious

Software Requirements Specification

Version 2.0

2.7 Activity diagram


2.7.1 Affiliate

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

23

Sagacious

Software Requirements Specification

Version 2.0

2.7.2 Blood for relative

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

24

Sagacious

Software Requirements Specification

Version 2.0

2.7.3 Blood from particular donor

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

25

Sagacious

Software Requirements Specification

Version 2.0

2.7.4 Delete Account

2.7.5 Edit profile

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

26

Sagacious

Software Requirements Specification

Version 2.0

2.7.6 Change password

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

27

Sagacious

Software Requirements Specification

Version 2.0

2.7.7 Create account by donor

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

28

Sagacious

Software Requirements Specification

Version 2.0

2.7.8 Update blood store

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

29

Sagacious

Software Requirements Specification

Version 2.0

2.7.9 Sign in

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

30

Sagacious

Software Requirements Specification

Version 2.0

2.7.10

Search donor

2.7.11

Give points

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

31

Sagacious

Software Requirements Specification

Version 2.0

2.7.12

Blood to Relative

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

32

Sagacious

Software Requirements Specification

Version 2.0

2.7.13

Create account by organisation

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

33

Sagacious

Software Requirements Specification

Version 2.0

2.7.14

Create Event

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

34

Sagacious

Software Requirements Specification

Version 2.0

2.8 Assumptions and Dependencies


The admin is created in the system already The end user should have a basic knowledge of English and computer usage

Date 5/04/12

Sagacious/Maharashtra 2012

Page no

35

Você também pode gostar