Blood Bank Managment System
Blood Bank Managment System
Blood Bank Managment System
Submitted By:
BBMS Page 1
Blood Bank Management System
DECLARATION:
We hereby declare that this project report is original and has not been published or
submitted for any other degree award to any other University before.
______________________
APPROVED
BBMS Page 2
Blood Bank Management System
DEDICATION
OUR PARENTS
Who encourage us throughout our MCS program and throughout the life and carried
with bundles of prayers.
OUR COLLEAGUES/FRIENDS
Who gave their valuable suggestions in improving our project and became participants
in our personal grooming.
BBMS Page 3
Blood Bank Management System
"In the Name of Allah the Most Gracious and Most Merciful"
A part from the efforts of me, the success of any project depends largely on the
encouragement and guidelines of many others. I take this opportunity to express my
gratitude to the people who have been instrumental in the successful completion of this
project.
I would like to show my greatest appreciation to our supervisor Khaistah khan sir. I
can’t say thank you enough for tremendous support and help. I feel motivated and
encouraged every time I attend their meeting. Without their encouragement and
guidance this project would not have materialized.
The guidance and support received from all the members who contributed and who are
contributing to this project, was vital for the success of the project. I am grateful for their
constant support and help.
BBMS Page 4
Blood Bank Management System
ABSTRACT
Blood Bnak Management System MODULE
There are so many online blood donors websites working the purpose of this
―WebBased Blood Bank Management System” was to develop a blood management
information system to assist in the management of blood donor records; ease and control
the donation of blood in various parts of the country make blood available efficiently to
help the humanity. This will be user friendly, secure and fastest to collect blood. It will
maintain confidentiality of both user and donor. This online society to be developed
benefits greatly the donors, user, needy people and all volunteers who are working for
any blood bank. The system provides volunteer donors in specific area and required
blood group. Admin, user can generate Search for specific blood group in this online
blood management system. This project facilitates the humanity to give timely and free
of cost access to required blood group.
BBMS Page 5
Blood Bank Management System
TABLE OF CONTENTS
Declaration ................................................................................................................ ................................................ 2
Abstract ..................................................................................................................................................................... 3
Blood Donor Society Module ................................................................................................................................... 3
SMS- Server and Messaging Module ................................................................................................. ..................... 3
Dedication .................................................................................................................................................................. 4
Our Parents ..................................................................................................................... ............................................ 4
Our Teacher and Supervisor ................................................................................................. .................................. 4
Our Colleagues/Friends ............................................................................................................................. ............... 4
Preface and Acknowledgment ................................................................................................................................ 5
Chapter-1 Introduction ............................................................................................................. .................. 12
1-Introduction to problem ...................................................................................................................................... 13
1.1-Problem Statement ........................................................................................................................................... 13
1.1.1-General Objective .......................................................................................................................................... 13
2.2.1-Blood Seekers
................................................................................................................................................. 18
BBMS Page 6
Blood Bank Management System
3.3.2.1-Management Organization
........................................................................................................................ 24
3.3.2.2-Project Manager ............................................................................................ ............................................. 24
3.3.2.3-Quality Assurance Manager ...................................................................................................................... 24
3.3.3-Tasks ............................................................................................................................................................... 25
3.3.3.1-Product Assessments
........................................................................................................ .......................... 25
3.3.3.2-Process Assessments ................................................................................................................................. 25
BBMS Page 7
Blood Bank Management System
3.4.1.2-Scope ............................................................................................................................................................ 27
3.4.2-Management ............................................................................................................... .................................... 27
3.4.2.1 SCM Responsibilities ............................................................................................................................. .. 27
3.4.2.2-SCMP Implementation
............................................................................................................................... 27
3.4.2.3-Applicable Policies, Directives, and Procedures ....................................................................................... 28
3.4.3-SCM Activities ............................................................................................................................. .................. 28
3.4.3.1-Configuration Identification
...................................................................................................................... 28
3.4.3.2-Change Control ............................................................................................................................. ............ 29
3.4.3.3-Configuration Status Accounting ............................................................................................................ 29
3.4.3.4-Audits and Reviews .................................................................................................................................. 30
3.4.4-Tools, Techniques, and Methodologies ........................................................................................................ 30
3.4.5-Supplier Control ........................................................................................................................................... . 30
3.8.1-Introduction
................................................................................................................................................... 43
BBMS Page 8
Blood Bank Management System
BBMS Page 9
Blood Bank Management System
4.1.6.6-Distribution ................................................................................................................................................. 63
4.3.1-Blood Seeker
............................................................................................................................. ..................... 67
BBMS Page 10
Blood Bank Mnagment System
4.3.3 User/Guest
............................................................................................................................. ........................ 68
4.3.4 Super Admin
.................................................................................................................................................. 69
4.3.5 Blood Donor (Post Blood Request)
............................................................................................................. 70
4.3.6-Signup ................................................................................................................................... .......................... 71
4.4-Collaboration Diagram .................................................................................................................................... 72
BBMS
Page 11
Blood Bank Mnagment System
6.1.1.5-Architecture .............................................................................................................................................. 86
6.1.1.5.1-Common Language Infrastructure (CLI) ............................................................................................ 86
6.1.1.5.2 Assembly (CLI) ........................................................................................................................................ 86
6.1.1.5.3 Metadata ........................................................................................................ ......................................... 87
6.1.1.5.4 Security ............................................................................................................................. ...................... 87
6.1.1.5.5 Class library ............................................................................................................................................. 88
7.1.1-Conclusion ...................................................................................................................................................... 95
7.1.2-Foreseeable Enhancements ........................................................................................................................... 9 5
Chapter 8- Appendix-A .............................................................................................................. 96
8.1-Bibliography & References .............................................................................................................................. 96
BBMS
Page 12
Blood Bank Mnagment System
1-INTRODUCTION
BBMS
Page 13
Blood Bank Mnagment System
1-Introduction to Problem
Blood Babnk Management System (BBMS) is the process of interconnecting volunteer
Blood Donor (BD) and needy people for blood transfusion. In Pakistan, there are many
NGO’s and social sites which are working for blood collection, safety and management.
Our project is basically an idea of one of our group member who works for University
of
Blood Bank Management System Collaboration with Ghreeb Awami Tanzeem
Bajkta whose mission is to mobilize the power of humanity for improving the lives of
the vulnerable in Buner. Blood Bank Management System (BBMS) fulfills this mission
while adhering to the principles of impartiality, neutrality, independence, unity,
universality and voluntary service for the people of Buner. It will operate throughout
Buner Insha Allah, besides providing adequate supply of blood for transfusion.
BBMS will have a computer system to manage/save blood donor records and
disseminate results to BDs who are scattered throughout the country. Registered user
can search for specific blood group and can send search. This information would be used
identifying/locating existing BD. The computerization of blood donor came at the ripe
time given the background to the situation. This is more so because the demand for safe
blood in Buner has increased due to soaring increase in total population and high rate of
uncertainty
1.1-Problem Statement
The basic purpose of blood bank management system is free availability of blood on a
single click. Before that many system which was working manually but the problem was
time and cost to collect blood donor data. The system was characterized by delays and
sometimes failure to access records. Therefore, the existing system was reviewed and an
effective/robust blood donor management information system designed to assist
volunteers.
1.1.1-General Objective
The main objective of the study was to create electronic blood donor management
information system in order to assist in the management of blood donor records using
modern technology.
We have the following objectives in our mind:
BBMS
Page 14
Blood Bank Mnagment System
• To provide the better accessibility to the needy people to search specific blood
group
• To build up a good interacting interface between the Volunteer donors and blood
seeker.
• To make ourselves familiar with the professional tools like Visual Studio 2010,
.Net, C#.
• The main objective in this study is to develop online management system for
blood availability.
• To identify simple design for volunteer/donors and needy people that eases of
use and identify BDS Effectiveness.
1.1.2-Specific Objectives
To conduct a study on blood donor management
To design an electronic blood donor management system
To validate the design using a prototype
1.2-Scope of Study
1.2.1-Main Page
i. Register as donor
ii. Add blood request
iii. Search blood donor by blood group
iv. Can I donate?
v. Social Media
1.2.2-Blood Seeker
Bloods seekers can sign-up/sign-in and submit blood Search/request. Blood seekers can
manage other things associated with their account. Blood Seeker can add articles, news
events. He can search for specific blood group in specific city and can post blood request.
He can post/Search request via SMS/Email when needed blood.
BBMS
Page 15
Blood Bank Mnagment System
1.2.3-Blood Donor
Blood Donor can sign-up/sign-in and will update his information about availability for
bleeding and can manage account. Add articles and news shares his past experience of
donation.
1.2.4-Administration
The administrator module having all privileges about this entire project, he can update,
delete, and modify the details about blood seeker, blood donor and Blood Search details.
Administrator maintains the blood seeker database He can add a blood request, can add
donor and manage photos, videos.
• Manage /Add / Edit / Delete blood postings. Add /Delete / Edit donor
• Manage/Edit/Delete Accounts.
• View / Edit / Delete Blood Request.
1.3-System Analysis
1.3.2-Software Requirements
One of the most difficult tasks is that, the selection of the software, once system
requirement is known is determining whether a particular software package fits the
requirements. After initial registration further security is needed to determine the
desirability of particular software compared with other donors. This section first
summarizes the application requirement question and then suggests more detailed
comparisons.
BBMS
Page 16
Blood Bank Mnagment System
BBMS
Page 17
Blood Bank Mnagment System
6-TOOL USED
BBMS
Page 18
Blood Bank Mnagment System
6.1-Languages
6.1.1 Microsoft .NET
6.1.1.1 Introduction
The Microsoft .NET Framework is a software framework that can be installed on
computers running Microsoft Windows operating systems. It includes a large library of
coded solutions to common programming problems and a virtual machine that manages
the execution of programs written specifically for the framework. The .NET Framework
is a key Microsoft offering and is intended to be used by most new applications created
for the Windows platform.
The framework's Base Class Library provides a large range of features including user
interface, data and data access, database connectivity, cryptography, web application
development, numeric algorithms, and network communications. The class library is
used by programmers, who combine it with their own code to produce applications.
Programs written for the .NET Framework execute in a software environment that
manages the program's runtime requirements. Also part of the .NET Framework, this
runtime environment is known as the Common Language Runtime (CLR). The CLR
provides the appearance of an application virtual machine so that programmers need not
consider the capabilities of the specific CPU that will execute the program. The CLR
also provides other important services such as security, memory management, and
exception handling. The class library and the CLR together constitute the .NET
Framework.
Version 30 of the .NET Framework is included with Windows Server 2008 and
Windows Vista. The previous stable version of the framework, 3.5, is included with
Windows 7, and can also be installed on Windows XP and the Windows Server 2003
family of operating systems. Version 4 of the framework was released as a public beta
on 20 May 2009. In February 2010, Microsoft released a .NET Framework 4 release
candidate. On April 12 2010, the final version of the .NET Framework 4 was released.
The .NET Framework family also includes two versions for mobile or embedded device
use. A reduced version of the framework, the .NET Compact Framework, is available
on Windows CE platforms, including Windows Mobile devices such as smart phones.
Additionally, the .NET Micro Framework is targeted at severely resource constrained
devices UOB-BBMS Tools Used
BBMS
Page 19
Blood Bank Mnagment System
With regards to security, managed components are awarded varying degrees of trust,
depending on a number of factors that include their origin (such as the Internet,
enterprise network, or local computer). This means that a managed component might or
might not be able to perform file-access operations, registry-access operations, or other
sensitive functions, even if it is being used in the same active application.
The runtime enforces code access security. For example, users can trust that an
executable embedded in a Web page can play an animation on screen or sing a song, but
cannot access their personal data, file system, or network. The security features of the
runtime thus enable legitimate Internet-deployed software to be exceptionally feature
rich.
The runtime also enforces code robustness by implementing a strict type-and-
codeverification infrastructure called the common type system (CTS). The CTS ensures
that all managed code is self-describing. The various Microsoft and third-party language
compilers generate managed code that conforms to the CTS. This means that managed
code can consume other managed types and instances, while strictly enforcing type
fidelity and type safety.
In addition, the managed environment of the runtime eliminates many common software
issues. For example, the runtime automatically handles object layout and manages
references to objects, releasing them when they are no longer being used. This automatic
memory management resolves the two most common application errors, memory leaks
and invalid memory references.
The runtime also accelerates developer productivity. For example, programmers can
write applications in their development language of choice, yet take full advantage of
the runtime, the class library, and components written in other languages by other
developers. Any compiler vendor who chooses to target the runtime can do so. Language
compilers that target the .NET Framework make the features of the .NET Framework
available to existing code written in that language, greatly easing the migration process
for existing applications.
While the runtime is designed for the software of the future, it also supports software of
today and yesterday. Interoperability between managed and unmanaged code enables
developers to continue to use necessary COM components and DLLs The runtime is
designed to enhance performance. Although the common language runtime provides
many standard runtime services, managed code is never interpreted.
6.1.1.3 History
Microsoft started development of the .NET Framework in the late 1990s, originally
under the name of Next Generation Web Services (NGWS). By late 2000 the first beta
versions of .NET 1.0 were released
Windows XP (including service packs) does not come with any version of the .NET
Framework installed. Version 3.0 of the .NET Framework is included with Windows
Server 2008 and Windows Vista. Version 3.5 is included with Windows 7, and can also
BBMS
Page 20
Blood Bank Mnagment System
be installed on Windows XP and the Windows Server 2003 family of operating systems.
On 12 April 2010, .NET Framework 4 was released alongside Visual Studio 2010.
The .NET Framework family also includes two versions for mobile or embedded device
use. A reduced version of the framework, the .NET Compact Framework, is available
on Windows CE platforms, including Windows Mobile devices such as smartphones.
Additionally, the .NET Micro Framework is targeted at severely resource-constrained
devices.
6.1.1.4 Principal Designing Features
6.1.1.4.1 Interoperability
Because interaction between new and older applications is commonly required, the .NET
Framework provides means to access functionality that is implemented in programs that
execute outside the .NET environment. Access to COM components is provided in the
System.Runtime.InteropServices and System.EnterpriseServices namespaces of the
framework; access to other functionality is achieved using the P/Invoke feature.
6.1.1.4.2 Common Language Runtime engine
The Common Language Runtime (CLR) serves as the execution engine of the .NET
Framework. All .NET programs execute under the supervision of the CLR, guaranteeing
certain properties and behaviors in the areas of memory management, security, and
exception handling. UOB-BDS Tools Used
6.1.1.4.3-Language independence
The .NET Framework introduces a Common Type System, or CTS. The CTS
specification defines all possible data types and programming constructs supported by
the CLR and how they may or may not interact with each other conforming to the
Common Language Infrastructure (CLI) specification. Because of this feature, the .NET
Framework supports the exchange of types and object instances between libraries and
applications written using any conforming .NET language.
6.1.1.4.4-Base Class Library
The Base Class Library (BCL), part of the Framework Class Library (FCL), is a library
of functionality available to all languages using the .NET Framework. The BCL provides
classes that encapsulate a number of common functions, including file reading and
writing, graphic rendering, database interaction, XML document manipulation, and so
on. It consists of classes, interfaces of reusable types that integrate with CLR (Common
Language Runtime).
6.1.1.4.5-Simplified deployment
The .NET Framework includes design features and tools which help manage the
installation of computer software to ensure it does not interfere with previously installed
software, and it conforms to security requirements.
BBMS
Page 21
Blood Bank Mnagment System
6.1.1.4.6 Security
The design addresses some of the vulnerabilities, such as buffer overflows, which have
been exploited by malicious software. Additionally, .NET provides a common security
model for all applications.
6.1.1.4.7 Portability
While Microsoft has never implemented the full framework on any system except
Microsoft Windows, it has engineered the framework to be platform-agnostic, and cross-
platform implementations are available for other operating systems (see Silverlight and
the Alternative implementations section below). Microsoft submitted the specifications
for the Common Language Infrastructure (which includes the core class libraries,
Common Type System, and the Common Intermediate Language), the C# language, and
the C++/CLI language to both ECMA and the ISO, making them available as official
standards. This makes it possible for third parties to create compatible implementations
of the framework and its languages on other platforms. UOB-BDS Tools Used
6.1.1.5-Architecture
6.1.1.5.1-Common Language Infrastructure (CLI)
The purpose of the Common Language Infrastructure (CLI) is to provide a
languageneutral platform for application development and execution, including
functions for Exception handling, Garbage Collection, security, and interoperability. By
implementing the core aspects of the .NET Framework within the scope of the CL, this
functionality will not be tied to a single language but will be available across the many
languages supported by the framework. Microsoft's implementation of the CLI is called
the Common Language Runtime, or CLR.
6.1.1.5.2 Assembly (CLI)
The CIL code is housed in CLI assemblies. As mandated by the specification, assemblies
are stored in the Portable Executable (PE) format, common on the
Windows platform for all UOB-BBMS Tools Used
BBMS
Page 22
Blood Bank Mnagment System
DLL and EXE files. The assembly consists of one or more files, one of which must
contain the manifest, which has the metadata for the assembly. The complete name of
an assembly (not to be confused with the filename on disk) contains its simple text name,
version number, culture, and public key token. Assemblies are considered equivalent if
they share the same complete name, excluding the revision of the version number. A
private key can also be used by the creator of the assembly for strong naming. The public
key token identifies which public key an assembly is signed with. Only the creator of
the keypair (typically the .NET developer signing the assembly) can sign assemblies that
have the same strong name as a previous version assembly, since he is in possession of
the private key. Strong naming is required to add assemblies to the Global Assembly
Cache.
6.1.1.5.3 Metadata
All CIL is self-describing through .NET metadata. The CLR checks the metadata to
ensure that the correct method is called. Metadata is usually generated by language
compilers but developers can create their own metadata through custom attributes.
Metadata contains information about the assembly, and is also used to implement the
reflective programming capabilities of .NET Framework.
6.1.1.5.4 Security
.NET has its own security mechanism with two general features: Code Access Security
(CAS), and validation and verification. Code Access Security is based on evidence that
is associated with a specific assembly. Typically the evidence is the source of the
assembly (whether it is installed on the local machine or has been downloaded from the
intranet or Internet). Code Access Security uses evidence to determine the permissions
granted to the code. Other code can demand that calling code is granted a specified
permission. The demand causes the CLR to perform a call stack walk: every assembly
of each method in the call stack is checked for the required permission; if any assembly
is not granted the permission a security exception is thrown.
When an assembly is loaded the CLR performs various tests. Two such tests are
validation and verification. During validation the CLR checks that the assembly contains
valid metadata and CIL, and whether the internal tables are correct. Verification is not
so exact. The verification mechanism checks to see if the code does anything that is
'unsafe'. The algorithm used is quite conservative; hence occasionally code that is 'safe'
does not pass. Unsafe code will only be executed if the assembly has the 'skip
verification' permission, which generally means code that is installed on the local
machine.
.NET Framework uses appdomains as a mechanism for isolating code running in a
process. Appdomains can be created and code loaded into or unloaded from them
independent of other appdomains. This helps increase the fault tolerance of the
application, as faults or crashes in one appdomain do not affect rest of the application.
Appdomains can also be configured independently with different security privileges.
BBMS
Page 23
Blood Bank Mnagment System
security of the application by isolating potentially unsafe code. The developer, however,
has to split the application into sub domains; it is not done by the CLR.
6.1.1.5.5 Class library
The .NET Framework includes a set of standard class libraries. The class library is
organized in a hierarchy of namespaces. Most of the built in APIs are part of either
System.* or Microsoft.* namespaces. These class libraries implement a large
number of common functions, such as file reading and writing, graphic rendering,
database interaction, and XML document manipulation, among others. The .NET
class libraries are available to all CLI compliant languages. The .NET Framework
class library is divided into two parts: the Base Class Library and the Framework
Class Library. The Base Class Library (BCL) includes a small subset of the entire
class library and is the core set of classes that serve as the basic API of the Common
Language Runtime. The classes in mscorlib.dll and some of the classes in System.dll
and System.core.dll are considered to be a part of the BCL. The BCL classes are
available in both .NET Framework as well as its alternative implementations
including .NET Compact Framework, Microsoft Silverlight and Mono. The
Framework Class Library (FCL) is a superset of the BCL classes and refers to the
entire class library that ships with .NET Framework. It includes an expanded set of
libraries, including Windows Forms, ADO.NET, ASP.NET, Language Integrated
Query, Windows Presentation Foundation, and Windows Communication
Foundation among others. The FCL is much larger in scope than standard libraries
for languages like C++, and comparable in scope to the standard libraries of Java.
6.3-Applications
6.3.1-Microsoft Visual Studio
6.3.1.1-Introduction
Microsoft Visual Studio is an integrated development environment (IDE) from
Microsoft. It is used to develop console and graphical user interface applications along
with Windows Forms applications, web sites, web applications, and web services in both
native code together with managed code for all platforms supported by Microsoft
Windows, Windows Mobile, Windows CE, .NET Framework, .NET Compact
Framework and Microsoft Silverlight.
Visual Studio includes a code editor supporting IntelliSense as well as code refactoring.
The integrated debugger works both as a source-level debugger and a machine-level
debugger. Other built-in tools include a forms designer for building GUI applications,
web designer, class designer, and database schema designer. It accepts plug-ins that
enhance the functionality at almost every level—including adding support for source-
BBMS
Page 24
Blood Bank Mnagment System
control systems (like Subversion and Visual SourceSafe) and adding new toolsets like
editors and visual designers for domain-specific languages or toolsets for other aspects
of the software development lifecycle (like the Team Foundation Server client: Team
Explorer)
Visual Studio supports different programming languages by means of language services,
which allow the code editor and debugger to support (to varying degrees) nearly any
programming language, provided a language-specific service exists. Builtin languages
include C/C++ (via Visual C++), VB.NET (via Visual Basic .NET), C# (via Visual C#),
and F# (as of Visual Studio 2010). Support for other languages such as M, Python, and
Ruby among others is available via language services installed separately. It also
supports XML/XSLT, HTML/XHTML, JavaScript and CSS. Individual language-
specific versions of Visual Studio also exist which provide more limited language
services to the user: Microsoft Visual Basic, Visual J#, Visual C#, and Visual C++.
Microsoft provides "Express" editions of its Visual Studio 2010 components Visual
Basic, Visual C#, Visual C++, and Visual Web Developer at no cost. Visual Studio 2010,
2008 and 2005 Professional Editions, along with language-specific versions (Visual
Basic, C++, C#, J#) of Visual Studio Express 2010 are available for free to students as
downloads via Microsoft's DreamSpark program.
6.3.1.2.Architecture
Visual Studio does not support any programming language, solution or tool intrinsically,
instead allows the plugging of functionality coded as a VSPackage. When installed, the
functionality is available as a Service. The IDE provides three services:
SVsSolution, which UOB-BBMS Tools Used
BBMS
Page 25
Blood Bank Mnagment System
provides the ability to enumerate projects and solutions; SVsUIShell, which provides
windowing and UI functionality (including tabs, toolbars and tool windows); and
SVsShell, which deals with registration of VSPackages. In addition, the IDE is also
responsible for coordinating and enabling communication between services. All editors,
designers, project types and other tools are implemented as VSPackages. Visual Studio
uses COM to access the VSPackages. The Visual Studio SDK also includes the Managed
Package Framework (MPF), which is a set of managed wrappers around the COM-
interfaces that allow the Packages to be written in any CLI compliant language.
However, MPF does not provide all the functionality exposed by the Visual Studio COM
interfaces. The services can then be consumed for creation of other packages, which add
functionality to the Visual Studio IDE.
Support for programming languages is added by using a specific VSPackage called a
Language Service. A language service defines various interfaces which the VSPackage
implementation can implement to add support for various functionalities.[
Functionalities that can be added this way include syntax coloring, statement
completion, brace matching, parameter information tooltips, member lists and error
markers for background compilation. If the interface is implemented, the functionality
will be available for the language. Language services are to be implemented on a
perlanguage basis. The implementations can reuse code from the parser or the compiler
for the language. Language services can be implemented either in native code or
managed code. For native code, either the native COM interfaces or the Babel
Framework (part of Visual Studio SDK) can be used. For managed code, the MPF
includes wrappers for writing managed language services.
6.3.1.3-Features
6.3.1.3.1-Code editor
Visual Studio, like any other IDE, includes a code editor that supports syntax
highlighting and code completion using IntelliSense for not only variables, functions and
methods but also language constructs like loops and queries. IntelliSense is supported
for the included languages, as well as for XML and for Cascading Style Sheets and
JavaScript when developing web sites and web applications. Autocomplete suggestions
are popped up in a modeless list box, overlaid on top of the code editor. In Visual Studio
2008 onwards, it can be made temporarily semi-transparent to see the code obstructed
by it. The code editor is used for all supported languages.
The Visual Studio code editor also supports setting bookmarks in code for quick
navigation. Other navigational aids include collapsing code blocks and incremental
search, in addition to normal text search and regex search. The code editor also includes
a multi-item clipboard and a task list. The code editor supports code snippets, which are
saved templates for repetitive code and can be inserted into code and customized for the
project being worked on. A management tool for code snippets is built in as well. These
tools are surfaced as floating windows which can be set to automatically hide when
BBMS
Page 26
Blood Bank Mnagment System
unused or docked to the side of the screen. The Visual Studio code editor also supports
code refactoring including , UOB, BBMS Tools Used parameter reordering,
variable and method renaming, interface extraction and encapsulation of class members
inside properties, among others.
Visual Studio features background compilation (also called incremental compilation).
As code is being written, Visual Studio compiles it in the background in order to provide
feedback about syntax and compilation errors, which are flagged with a red wavy
underline. Warnings are marked with a green underline. Background compilation does
not generate executable code, since it requires a different compiler than the one used to
generate executable code. Background compilation was initially introduced with
Microsoft Visual Basic but has now been expanded for all included languages.
6.3.1.3.2-Debugger
Visual Studio includes a debugger that works both as a source-level debugger and as a
machine-level debugger. It works with both managed code as well as native code and
can be used for debugging applications written in any language supported by Visual
Studio. In addition, it can also attach to running processes and monitor and debug those
processes. If source code for the running process is available, it displays the code as it is
being run. If source code is not available, it can show the disassembly. The Visual Studio
debugger can also create memory dumps as well as load them later for debugging. Multi-
threaded programs are also supported. The debugger can be configured to be launched
when an application running outside the Visual Studio environment crashes.
The debugger allows setting breakpoints (which allow execution to be stopped
temporarily at a certain position) and watches (which monitor the values of variables as
the execution progresses). Breakpoints can be conditional, meaning they get triggered
when the condition is met. Code can be stepped over, i.e., run one line (of source code)
at a time. It can either step into functions to debug inside it, or step over it, i.e., the
execution of the function body isn't available for manual inspection. The debugger
supports Edit and Continue, i.e., it allows code to be edited as it is being debugged (32
bit only; not supported in 64 bit). When debugging, if the mouse pointer hovers over any
variable, its current value is displayed in a tooltip ("data tooltips"), where it can also be
modified if desired. During coding, the Visual Studio debugger lets certain functions be
invoked manually from the Immediate tool window. The parameters to the method are
supplied at the immediate window.
6.3.1.4-Visual Studio 2010
Visual Studio 2010 IDE has been redesigned which, according to Microsoft, clears the
UI organization and "reduces clutter and complexity." The new IDE better supports
multiple document windows and floating tool windows, while offering better
multimonitor support. The IDE shell has been rewritten using the Windows Presentation
Foundation (WPF), whereas the internals have been redesigned using Managed
Extensibility Framework (MEF) that offers more extensibility points than previous
BBMS
Page 27
Blood Bank Mnagment System
versions of the IDE that enabled add-ins to modify the behavior of the IDE. UOB-BDS
Tools Used
The new multi-paradigm ML-variant F# forms part of Visual Studio 2010; as do M, the
textual modeling language, and Quadrant, the visual model designer, which are a part of
the Oslo initiative.
Visual Studio 2010 comes with .NET Framework 4 and supports developing applications
targeting Windows 7. It supports IBM DB2 and Oracle databases, in addition to
Microsoft SQL Server. It has integrated support for developing Microsoft Silverlight
applications, including an interactive designer. Visual Studio 2010 offers several tools
to make parallel programming simpler: in addition to the Parallel Extensions for the
.NET Framework and the Parallel Patterns Library for native code, Visual Studio 2010
includes tools for debugging parallel applications. The new tools allow the visualization
of parallel Tasks and their runtime stacks. Tools for profiling parallel applications can
be used for visualization of thread wait-times and thread migrations across processor
cores. Intel and Microsoft have jointly pledged support for a new Concurrency Runtime
in Visual Studio 2010 and Intel has launched parallelism support in Parallel Studio as an
add-on for Visual Studio.
The Visual Studio 2010 code editor now highlights references; whenever a symbol is
selected; all other usages of the symbol are highlighted. It also offers a Quick Search
feature to incrementally search across all symbols in C++, C# and VB.NET projects.
Quick Search supports substring matches and camelCase searches. The Call Hierarchy
feature allows the developer to see all the methods that are called from a current method
as well as the methods that call the current one. IntelliSense in Visual Studio supports a
consume-first mode which developers can opt into. In this mode, IntelliSense will not
auto-complete identifiers; this allows the developer to use undefined identifiers (like
variable or method names) and define those later. Visual Studio 2010 can also help in
this by automatically defining them, if it can infer their types from usage. Current
versions of Visual Studio have a known bug which makes IntelliSense unusable for
projects using pure C (not C++).
Visual Studio 2010 features a new Help System replacing the MSDN Library viewer.
The Help System is no longer based on Microsoft Help 2 and does not use Microsoft
Document Explorer. Dynamic help containing links to related help topics based on
where the developer was in the IDE has been removed in the shipping product, but can
be added back using a download from Microsoft.
Visual Studio Ultimate 2010 (formerly Team System or Team Suite) is codenamed
Rosario. It includes new modeling tools, such as the Architecture Explorer, which
graphically displays projects and classes and the relationships between them. It supports
UML activity diagram, component diagram, (logical) class diagram, sequence diagram,
and use case diagram. Visual Studio Ultimate 2010 also includes Test Impact Analysis
BBMS
Page 28
Blood Bank Mnagment System
which provides hints on which test cases are impacted by modifications to the source
code, without actually running the test cases. This speeds up testing by avoiding running
unnecessary test cases. UOB-BDS Tools Used
Visual Studio Ultimate 2010 also includes a Historical Debugger for managed code
called IntelliTrace. Unlike the current debugger, that records only the currently active
stack, IntelliTrace records all events like prior function calls, method parameters, events,
exceptions etc. This allows the code execution to be rewound in case a breakpoint wasn't
set where the error occurred. IntelliTrace will cause the application to run more slowly
than the current debugger, and will use more memory as additional data needs to be
recorded. Microsoft allows configuration of how much data should be recorded, in effect
allowing developers to balance speed of execution and resource usage. The Lab
Management component of Visual Studio Ultimate 2010 uses virtualization to create a
similar execution environment for testers and developers. The virtual machines are
tagged with checkpoints which can later be investigated for issues, as well as to
reproduce the issue. Visual Studio Ultimate 2010 also includes the capability to record
test runs that capture the specific state of the operating environment as well as the precise
steps used to run the test. These steps can then be played back to reproduce issues. UOB-
BDS Tools Used
6.4 UOB-BDS Summary and Conclusions
6.5-Classes
BBMS
Page 29
Blood Bank Mnagment System
7.1-Introduction
This chapter will conclude the study by summarizing and reviewing the findings from
the study, in addition presenting research contribution, problems and limitations, and the
future work on this project.
Also this project suggestion simple design Blood Seeker to got help from volunteer
donor.
BBMS
Page 30
Blood Bank Mnagment System
7.1.1-Conclusion
This system has been developed successfully incorporate all the requirements.
Appropriate care has taken during database design maintain database integrity and to
avoid redundancy of data. This site was developed in such a way that any further
modifications needed can be easily done. User feels freely while using this site. In this
all technical complexities are hidden. This site is a more user friendly. The quality fusers
like correctness, efficiency, usability, maintainability, portability, accuracy, errors,
tolerance, expandability and communicatively all are successfully done.
7.1.2-Foreseeable Enhancements
There is always a room for improvement in any software package, however good and
efficient it may be. The important thing is that the website should be flexible enough for
further modifications. Considering this important factor, the web site is designed in such
a way that the provisions are given for further enhancements. At present this website
provides all the information using static pages and reservation forms. In future we can
enhance our project by providing options like. Include many sites information.
8. APPENDIX-A
BIBLIOGRAPHY & REFERENCES 8.1
.NET Framework. (n.d.). Retrieved from Wikipedia, the free encyclopedia:
http://en.wikipedia.org/wiki/.NET_Framework
Application Outsourcing. (n.d.). Retrieved from Jiffy solutions:
http://www.jiffysolutions.com/AreaOfExpertise/dotnet5.htm
BBMS
Page 31
Blood Bank Mnagment System
Cascading Style Sheets. (n.d.). Retrieved from Wikipedia, the free encyclopedia:
http://en.wikipedia.org/wiki/Cascading_Style_Sheets
Class diagram. (n.d.). Retrieved from Wikipedia, the free encyclopedia:
http://en.wikipedia.org/wiki/Class_diagram
Class Library. (n.d.). Retrieved from Microsoft:
http://msdn.microsoft.com/enus/library/d11h6832(v=vs.71).aspx
Concept: Use-Case Model. (n.d.). Retrieved from
http://epf.eclipse.org/wikis/abrd/core.tech.common.extend_supp/guidances/concepts/u
se_case_model_CD178AF9.html
CSS Menu,DHTML Menu,Javascript Menu,Drop-Down Menu: AllWebMenus DHTML
menu tool. (n.d.). Retrieved from Likno:
http://www.likno.com/?gclid=CM3P6Yu3tK4CFYWDDgodIARLOQ
DBDD. (n.d.). Retrieved from http://kkovacs.eu/stuff/MIL-STD-498-
templateshtml/DBDD.html
Dorothy Graham, E. v. (n.d.). FOUNDATIONS OF SOFTWARE TESTING. Example:
Software Architecture Document. (n.d.). Retrieved from
http://www.ecs.csun.edu/~rlingard/COMP684/Example2SoftArch.htm#introduction
Free VPN Software: Virtual Networking with LogMeIn Hamachi | LogMeIn Hamachi.
(n.d.). Retrieved from Hamachi: https://secure.logmein.com/products/hamachi/
Gornik, D. (n.d.). Relational Modeling.
BBMS
Page 32
Blood Bank Mnagment System
Marciniak, J. (2001). Encyclopedia of Software Engineering. (2nd, Ed.) New York: John
Wiley and Sons, Inc.
Metro (design language). (n.d.). Retrieved from Wikipedia, the free encyclopedia:
http://en.wikipedia.org/wiki/Metro_(design_language)
Microsoft .net framework. (n.d.). Retrieved from Essay Bank:
http://essaybank.degreeessays.com/languages/microsoft-net-framework.php Microsoft
.Net Framework. (n.d.). Retrieved from Opsview:
http://www.opsview.com/technology/guides-help/supported-
technologies/microsoftnet-framework
Microsoft PowerPoint - Sequence Diagram in UML. (n.d.). Retrieved from 4shared:
http://dc190.4shared.com/doc/gRFxXuak/preview.html
Microsoft SQL Server. (n.d.). Retrieved from Wikipedia, the free encyclopedia:
http://en.wikipedia.org/wiki/Microsoft_SQL_Server
Microsoft Visual Studio. (n.d.). Retrieved from Wikipedia, the free encyclopedia:
http://en.wikipedia.org/wiki/Microsoft_Visual_Studio
Microsoft's Latest Programming Language: Visual C# - Developer Zone. (n.d.).
Retrieved from National Instruments: http://www.ni.com/white-paper/3645/en Miler,
J. (2009). SDLC Models.
Mitchell, S. (n.d.). Security Basics and ASP.NET Support. Overview
of the .NET Framework. (n.d.). Retrieved from Microsoft:
http://msdn.microsoft.com/en-us/library/zw4w595w.aspx
Paul Deitel, H. D. (n.d.). C# 2010 FOR PROGRAMMERS. (4. Edition, Ed.) Boston:
Pearson Education, Inc.
Pogue, F. (n.d.). George C. Marshall. New York: Viking Press.
Robert T. Futrell, D. F. (n.d.). Quality Software Project Management.
Schulmeyer, G. (2008). Handbook of software quality assurance. Boston: Artech House.
Sequence diagram. (n.d.). Retrieved from Wikipedia, the free encyclopedia:
http://en.wikipedia.org/wiki/Sequence_diagram
BBMS
Page 33
Blood Bank Mnagment System
Software Testing Articles, Training, Books, Jobs, Events and More! - Part 2. (n.d.).
Retrieved from Software Testing Portal: http://www.softwaretestingportal.com/page/2/
Software Testing Portal. (n.d.). Retrieved from Test Plan vs Test Strategy. Download
Free Templates: http://www.softwaretestingportal.com/test-plan-vs-test-strategy-
freetemplates/
SQL Server database developer | web development applications. (n.d.). Retrieved from
Snow Micro: http://www.snowmicro.com/sql_server.aspx Stunning CSS3. (n.d.).
Retrieved from Scribd:
http://www.scribd.com/doc/55243473/Stunning-CSS3#outer_page_21 The
Write Less, Do More, JavaScript Library. (n.d.). Retrieved from jQuery:
http://jquery.com/
Tools to Report your Testing Activity – Part 1. (n.d.). Retrieved from Software Testing
Portal: http://www.softwaretestingportal.com/reporting-tools-software-testing/
TortoiseSVN. (n.d.). Retrieved from Tortoise SVN:
http://tortoisesvn.net/docs/release/TortoiseSVN_en/index.html UML - Class Diagram.
(n.d.). Retrieved from Tutorials Point:
http://www.tutorialspoint.com/uml/uml_class_diagram.htm UML Use Case
Diagrams: Tips. (n.d.). Retrieved from http://www.andrew.cmu.edu/course/90-
754/umlucdfaq.html#uses Understanding UML Use Cases Modeling. (n.d.). Retrieved
from http://www.methodsandtools.com/archive/archive.php?id=24
Use SQL Server Management Studio. (n.d.). Retrieved from msdn.microsoft:
http://msdn.microsoft.com/en-us/library/ms174173.aspx
Vision document. (n.d.). Retrieved from Wikipedia, the free encyclopedia:
http://en.wikipedia.org/wiki/Vision_document
VisualSVN Server. (n.d.). Retrieved from Wikipedia, the free encyclopedia:
http://en.wikipedia.org/wiki/VisualSVN_Server
VisualSVN Server | Features. (n.d.). Retrieved from Visual SVN Server:
http://www.visualsvn.com/server/features/
What is HTML5? (n.d.). Retrieved from http://whatishtml5.net/
BBMS
Page 34
Blood Bank Mnagment System
2.1-Existing solution
Now a day’s many blood banks and online societies working for the availability of blood
for patients like thalassemia, blood disorder and any other causalities but the blood
seeker visited blood banks or take help of relative for donation Online society provides
contacts information of donors if they approached individually it’s too late to search a
volunteer donor who is available for donation in specific city. So it’s time consuming
and cost effective process of accessing a donor
2.2-Proposed solution
Modules:
i. Blood Donor
ii. Blood Seeker
iii. Register User
iv. Admin
2.2.1-Blood Seekers:
BBMS
Page 35
Blood Bank Mnagment System
2.2.2-Blood Donor:
The Blood Donors Functions including registration as volunteer donors. He can share
articles and post information, share his experience during blood donation. He can able
to search for the bloods in the site. He can able to download the information which is
available for the blood donor. He can able to view the blood details. In any situation the
bloodseeker needs to change his password then he can change on his own. He can view
the details of his own profile and he can modify his details in his profile. He can view
the details of all donors which he is authorized. He can see the available blood request.
He will be able to see recent donors
Advantages:
2.2.3-Register User
The Register User Functions helps to perform some tasks on his own. He can able to
register himself as a volunteer donor/Seeker. After registering into the site then he will
be one of the blood donor/seeker.
BBMS
Page 36
Blood Bank Mnagment System
2.2.4 Administration
The Admin Functions helps to perform some tasks on his own. He maintaining the total
project, he can able to add more blood request and he can able to add blood donor. The
admin check all details of blood seekers and blood donors.
2.3-Product Functions
The Web-Based Donor Management Information System provides online real time
information about the bloods available from the volunteer. The Product functions are
more or less the same as described in the product perspective. The functions of the
system include the system providing different type of services based on the type of users
[Member/Admin].
• The member should be provided with the updated information about the bloods
catalog.
• Provisions for the members to search the blood they want.
• The member is given a provision to check his account information and change
the account information any time.
• The members are provided with the bloods available and allowed to Search
blood, which they want.
• The admin can get the information about the members who have registered
himself volunteer donor.
• The admin can get the information about the members who have Search for
bloods.
• The admin is provided with interfaces to add/delete the bloods request.
BBMS
Page 37
Blood Bank Mnagment System
3- ANALYSIS
3.1.1-Introduction
The purpose of this chapter is to provide the background and literature relevant to this
study for assessing Blood Donor Management Information System. The chapter contains
brief definition and discussions of concepts central to the investigation.
BBMS
Page 38
Blood Bank Mnagment System
3.1.2 Background
st
Overtime, there has been on-going digital revolution of the 21 century especially in the
integration of Information Systems (IS) into the existing various sectors of human
engagement. This revolution has come with a view of enhancing the quality of services
provided, improve data systems and automate all the originally manual operation. They
generate reports based on data from various sources to aid management in taking
decisions, coordinating, controlling, analysis and planning for the organization.
Information systems whether automated or manual comprise of people, machines and
methods of data collection, processing, transmission and dissemination. They therefore,
play a vital role in facilitating planning, coordination and decision-making process.
The integration of IT in the medical sector has lead to the increase in the development
of Health Information System (HIS) in the developing world. HIS as a system that
integrates data collection, processing, reporting, and use of information necessary for
improving health service effectiveness and efficiency through better management at all
levels of health services. An example of the integration talked of is the Hospital
Information Support System (HISS). This electronic transfer system was introduced for
hospital wards for purposes of ordering of patients’ tests and reporting results. Another
example of integration of IT in medical sector is the use of handheld devices to collect
data, carry information to patients and used as references.
3.1.4-Web Based
Web based is concerned with many layers, such as the human computer interaction user
and database design. One of most important aspects in web design is navigation and
BBMS
Page 39
Blood Bank Mnagment System
information design. There exist of a lot navigation structured nowadays. Choosing what
kind of navigation best fits the site is not always straightforward. Nearly every large
online system gets its content from a separate database. It's very important to think about
how to make use of that database and also access it. Such as putting the SQL queries
directly in the analyzer ,where web programmers need them is not a good way of using
the database .If the database structure change, they have to manually update all the
separate queries in different page. The only widely used interface and web application
will become the predominate software. With today popularity of web based software and
the advantage it brings by using it, web inter face is where a browser is used to access
the application is fundamental part of software development itself. Although browser is
an external application the future for web based software will be promising.
3.1.5-Society
An online community is a virtual community that exists online and whose members
enable its existence through taking part in membership ritual. An online community can
take the form of an information system where anyone can post content, such as a Bulletin
board system or one where only a restricted number of people can initiate posts, such as
Weblogs. Online communities have also become a supplemental form of communication
between people who know each other primarily in real life. Many means are used in
social software separately or in combination, including textbased chat rooms and forums
that use voice, video text or avatars. Significant sociotechnical change may have resulted
from the proliferation of such Internet-based social networks.
BBMS
Page 40
Blood Bank Mnagment System
and what" for the project and is a gauge against which all future decisions should be
validated. The aim of Blood Donor Management Information System is facilitate
both the seeker of bloods as well as the needy people. In this online application any
blood seeker can search for the available bloods at any moment with updated information
when he needs blood he can post blood request. A blood seeker can directly visit this
society and view the bloods availability information along with downloading the
required information when he logs into the system he would be able to view/update his
profile. He can search required blood group. He can share his experience and article.
3.3.1-Introduction
Software Quality Assurance (QA) is a systematic, planned set of actions necessary to
provide adequate confidence that the software development process or the maintenance
process of a software system product conforms to established functional technical
requirements as well as with the managerial requirements of keeping the schedule and
operating within the budgetary confines.
In developing products and services, quality assurance is any systematic process of
checking to see whether a product or service being developed is meeting specified
requirements. Many companies have a separate department devoted to quality assurance.
A quality assurance system is said to increase customer confidence and a company's
credibility, to improve work processes and efficiency, and to enable a company to better
compete with others.
3.3.1.1-Purpose
The purpose of this Quality Assurance (QA) Plan is to establish the goals, processes, and
responsibilities required to implement effective quality assurance functions for BBMS
(Blood Bank Management System)
The -BBMS Quality Assurance Plan provides the framework necessary to ensure a
consistent approach to software quality assurance throughout the project life cycle. It
defines the approach that will be used by personnel to monitor and assess processes and
products to provide objective insight into the maturity and quality of the software. The
systematic monitoring of products, processes, and services will be evaluated to ensure
they meet requirements and comply with the needs of our customers and their policies,
standards, and procedures.
3.3.1.2-Scope
This plan covers QA activities throughout UOB-BDS (The University of Lahore– Blood
Donor Society). The goal of the QA program is to verify that all software and
documentation to be delivered meet all technical requirements. The QA procedures
BBMS
Page 41
Blood Bank Mnagment System
defined herein shall be used to examine all deliverable software and documentation to
determine compliance with technical and performance requirements.
The objectives of QA are:
• A quality management approach
• Effective software engineering technology (methods and tools)
• Formal technical reviews that are applied throughout the software process
• BBMS Analysis
• A multi testing strategy is draw
• Control of software documentation and the changes made to it
• A procedure to assure compliance with software development standards when
applicable
3.3.2-Management
The Management organizational structure, its roles and responsibilities, and the software
quality tasks to be performed
3.3.2.1-Management Organization
Quality is every user’s responsibility. Overall Project or Program Quality is the
responsibility of the assigned Manager.
3.3.2.2-Project Manager
The Project Manager (PM) is specifically responsible for the success of our Project,
including but not limited to cost, schedule, and quality.
BBMS
Page 42
Blood Bank Mnagment System
3.3.3-Tasks
The tasks (product and process assessments) to be performed during the development,
operations, and maintenance of software and systems
3.3.3.1-Product Assessments
The following are typical product assessments that may be conducted by quality
personnel:
Peer Review.
3.3.3.2-Process Assessments
The following are typical process assessments that may be conducted by quality
personnel:
• Project Planning
• Project Monitoring and Control
• Measurement and Analysis
• System/Subsystem Reviews
• Peer Reviews
• Requirements Management
• Software Configuration Management and Configuration Audits
• Test Management (Verification & Validation)
• Software Problem Reporting and Corrective Action
• Risk Management
• Supplier Agreement Management
BBMS
Page 43
Blood Bank Mnagment System
3.3.4.1-Project Manager
Responsibilities include, but are not limited to:
3.3.4.2-Quality Personnel
Responsibilities include, but are not limited to:
3.4.1-Introduction
In software engineering, software configuration management (SCM) is the task of
tracking and controlling changes in the software. Configuration management practices
include revision control and the establishment of baselines.
3.4.1.1-Purpose
Page 44
Blood Bank Mnagment System
3.4.1.2-Scope
UOB-BDS is server side software projects which interact with Blood Seeker and Blood
Donor to use activities like search blood, post blood request.
3.4.2-Management
The Management organizational structure, its roles and responsibilities and the SCM
Responsibilities and implementation to be performed. The whole team consists of three
members
3.4.2.2-SCMP Implementation
BBMS
Page 45
Blood Bank Mnagment System
3.4.3-SCM Activities
Describe how the following requirements for SCM shall be satisfied:
3.4.3.1-Configuration Identification
Identify the software project baselines (that is, the initial approved configuration
identifications) and correlate them to the specific life-cycle phases. For each baseline,
the following shall be described:
BBMS
Page 46
Blood Bank Mnagment System
The items which form each baseline (for example, software requirements
specifications, deliverable software, etc.). The review and approval events and the
acceptance criteria associated with establishing each baseline. The users' and
developers' participation in establishing baselines. Elements of a baseline definition
might include the following:
3.4.3.2-Change Control
Describe the methods of implementing approved change proposals (to include changes
in source and object code, and documentation). The procedures for software library
control including those procedures that provide for:
• Access control
• Read and write protection for applicable baselines
• File protection
• File identification
• Archive maintenance
• Change history
• Disaster recovery
• If patches must be used to change object code, describe the methods for
identification and control the role of each:
BBMS
Page 47
Blood Bank Mnagment System
Tools:
i. Visual Studio 2010
ii. .Net
iii. SQL Server Management Studio
BBMS
Page 48
Blood Bank Mnagment System
3.4.5-Supplier Control
State the provisions for assuring that vendor-provided and subcontractor-developed
software meet established SCM requirements. Indicate the proposed methods for control
of subcontractors and vendors insofar as it impacts on the execution of this SCMP. As a
minimum, the supplier shall be required to implement a SCM plan in accordance.
3.5.1-Introduction
In this Section the design of the application is done for the UOB-BBMS Use web
application, there are two parts in this chapter, and the first part is a system design, the
second part is system development.
Lists of Requirements:
3.5.1.1-Functional Requirements
Depended on the objectives and the definition of the Use Cases, the following are the
functional requirements for UOB-BDS. The complete list of the system a requirement
(the functional requirements) is shown in Table 4.1.
Requirement
No Requirement Description Priority
ID
BBMS
Page 49
Blood Bank Mnagment System
Listed below are the functional requirements and non-functional requirement of the
system. In the priority column, the following short hands are used:
i. M - mandatory requirements (something the system must do)
ii. D - desirable requirements (something the system preferably should do)
iii. O- optional requirements (something the system may do)
BBMS
Page 50
Blood Bank Mnagment System
BBMS
Page 51
Blood Bank Mnagment System
FR_04 Login
BBMS
Page 52
Blood Bank Mnagment System
Priority
No Requirement ID Requirement Description
M
5 NFR_02_03 Categorize depended on the subject
BBMS
Page 53
Blood Bank Mnagment System
NFR_03 Efficiency
M
6 NFR_03_01 Performance
8 NFR_03_03 Space M
NFR_04 Security
BBMS
Page 54
Blood Bank Mnagment System
3.6-Use-Case Model
3.6.1-Introduction
Use Case Diagrams can be used to describe the functionality of a system in a horizontal
way. That is, rather than merely representing the details of individual features of your
system, UCDs can be used to show all of its available functionality, use case diagram
are used to show the functionality that the system will provide and to show which user
will communicated with the system in some way to use the functionality and the use case
diagram is one of a type behavioral diagram defined by the Unified Modeling Language
(UML). The purpose of UML is present a graphical overview of the functionality
provided by a system in terms of ACTOR, the aim to represented as USE-CASE and
any dependencies between those use cases.
BBMS
Page 55
Blood Bank Mnagment System
3.6.2-Use-Case Diagrams
3.6.2.1-Bloodseeker
BBMS
Page 56
Blood Bank Mnagment System
3.6.2.2-Blood Donor
BBMS
Page 57
Blood Bank Mnagment System
3.6.2.3-Administrator
BBMS
Page 58
Blood Bank Mnagment System
3.6.2.4-UOB-BBMS
BBMS
Page 59
Blood Bank Mnagment System
3.7.1 Introduction
The general idea of a use case is to represent intended sequences of interaction between
a system (even if not yet implemented) and the world outside that system. The definition
used in the Rational Unified Process is that a use case is ―a description of a set or
sequence of actions, including variants, that a system performs that yields an observable
result of value to a particular actor. An essential use case is a structured narrative,
expressed in the language of the application domain and of users, comprising a
simplified, generalized, abstract, technology-free and implementation independent
description of one task or interaction that is complete, meaningful, and well-defined from
the point of view of users in some role or roles in relation to a system and that embodies
the purpose or intentions underlying the interaction
3.7.1.1-Actors
The actors model anything that needs to exchange information with the system. Actor
can model human user, but they can also model other systems communicating with our
System. The essential thing is that actors constitute anything that is external to the system
we are to develop. In UOB-BBMS we have three main Actors which are as followed:
Blood Seeker
This Actor is seeker of bloods who need blood he search and Search by give information.
Blood Donor
This Actor is donor of blood who can post for donation of blood.
Register User
This Actor is able to register himself as Donors/Seekers
Administration
This Actor can:
Page 60
Blood Bank Mnagment System
3.7.1.2-Use-case
After defining what is outside our system, we can define the Functionality inside it. The
researcher doing this to specifying the Use-cases to a specific way of using the system
by performing some part of the Functionality. Each use-case constitutes a complete
course of events initiated by an actor and it specifies the interaction that takes place
between an actor and the system. The collected Use-cases specify all the existing ways
of using the system. In UOB-BDS we have three main Actors which are as followed:
3.7.1.3-Blood Seeker
UseCase Name : Blood Seeker
Scenario: Search for the Blood
Brief Description: When a Donor/Seeker want to Search for a Blood, he login in on
the site
and then move to search page type the Blood he want to search,
system display Blood result if Blood find he select the Blood and
post request via Mobile/Email SMS
BBMS
Page 61
Blood Bank Mnagment System
3.7.1.4BloodDonor
BBMS
Page 62
Blood Bank Mnagment System
3.8-Software Architecture
3.8.1-Introduction
UOB-Blood Bank Management System is a .NET Based Project which is use as bridge
to donate blood and find blood .
3.8.1.1-Purpose
UOB- BBMS is a web app, which run online on a web server, so a comprehensive
architectural overview of the system, using a number of different architectural views to
depict different aspects of the system. It is intended to capture and convey the significant
architectural decisions which have been made on the system.
3.8.1.2-Scope
BBMS
Page 63
Blood Bank Mnagment System
BBMS
Page 64
Blood Bank Mnagment System
3.9-Screen Shots
3.9.1-Main Page
BBMS
Page 65
Blood Bank Mnagment System
3.9.2-Blood groups
BBMS
Page 66
Blood Bank Mnagment System
BBMS
Page 67
Blood Bank Mnagment System
BBMS
Page 68
Blood Bank Mnagment System
BBMS
Page 69
Blood Bank Mnagment System
BBMS
Page 70
Blood Bank Mnagment System
BBMS
Page 71
Blood Bank Mnagment System
BBMS
Page 72
Blood Bank Mnagment System
BBMS
Page 73
Blood Bank Mnagment System
BBMS
Page 74
Blood Bank Mnagment System
BBMS
Page 75
Blood Bank Mnagment System
BBMS
Page 76
Blood Bank Mnagment System
BBMS
Page 77
Blood Bank Mnagment System
BBMS
Page 78
Blood Bank Mnagment System
BBMS
Page 79
Blood Bank Mnagment System
BBMS
Page 80
Blood Bank Mnagment System
BBMS
Page 81
Blood Bank Mnagment System
3.9.12-Photo/Video Gallery
BBMS
Page 82
Blood Bank Mnagment System
BBMS
Page 83
Blood Bank Mnagment System
4-DESIGN
BBMS
Page 84
Blood Bank Mnagment System
4.1-Database Design
4.1.1-Introduction
The section introduces the Database Design Document (DDD) for UOB-BDS to its
readers.
This DDD for the UOB-BDS software has the following objectives:
4.1.3-Intended Audiences
This DDD is intended for the following audiences:
BBMS
Page 85
Blood Bank Mnagment System
• Testers, whose test cases must validate the requirements specified in this
document.
4.1.4-Database Overview
UOB-BDS database having different entities depend on different attributes to store and
retrieve data of user e.g. name, blood group, city, Blood contact number …etc.
4.1.5-Document Overview
This DDD is organized into the following sections:
BBMS
Page 86
Blood Bank Mnagment System
4.1.6 1-Interfaces
Design decisions regarding queries or other inputs the database will accept and outputs
(displays, reports, messages, responses, etc.) it will produce, including interfaces with
other systems and users.
4.1.6.2-Behavior
Design decisions on database behavior in response to each input or Search including
actions, response times and other performance characteristics, selected equations,
disposition, and handling of unallowed inputs.
4.1.6.3-Appearance
Design decisions on how databases will appear to the user
4.1.6.4-DBMS Platform
Design decisions on the database management system to be used (including name and
version / release) and the type of flexibility to be built into the database for adapting to
changing requirements.
BBMS
Page 87
Blood Bank Mnagment System
4.1.6.5-Qualities
Design decisions on the levels and types of availability, security, privacy and continuity
of operations to be offered by the database
4.1.6.6-Distribution
Design decisions on the database distribution (e.g., Client/server), master database file
updates and maintenance, including and maintaining consistency, establishing /
reestablishing maintaining synchronization, enforcing integrity and business rules.
4.1.6.7-Operations
Design decisions on backup and restoration including data and process distribution
strategies, permissible actions during backup and restoration, and special considerations
for new or non-standard technologies such as video and sound.
4.1.6.8-Maintenance
Design decisions on repacking, sorting, indexing, synchronization, and consistency
including automated disk management and space reclamation considerations, optimizing
strategies and considerations, storage and size considerations, and population of the
database and capture of legacy data.
4.2-Domain Model
4.2.1-Introduction
4.2.1.1-Purpose
The purpose of this document is to outline how to build a Common Information Model
to support integration for an SOA.
BBMS
Page 88
Blood Bank Mnagment System
4.2.2.1-Overview
A Common Domain Data Model, also called a Common Information Model, is an
information model that is not bound to a particular implementation (i.e. system or
application). A Common Information Model establishes enterprise semantics for data
and a common format for business objects. This allows it to be used for exchanging
business information in the following ways:
In general, domain objects are pulled out of the knowledge base of domain experts or
from the knowledge represented in existing IT systems.
4.2.2.2-Getting Started
First, decide on the initial scope for the Common Information Model effort. One of the
greatest challenges of creating the Common Information Model is determining project
scope. Starting with an enterprise scope will lead to a long-lived project with little or no
business value in the early stages. A limited Common Information Model scope can
result in models that are likely to change as more systems are considered that were
outside of the original scope
A pragmatic approach to establish the initial scope of the Common Information Model
is to define an integration domain and start the Common Information Model within a
domain constraint. The domain of the integration, as defined by a context diagram and
use cases (also integration design artifacts), establishes the domain model for data
integration. Within the context of the domain, multiple data sources are mapped together
to a common form. These common data formats then become part of the Common
Information Model.
BBMS
Page 89
Blood Bank Mnagment System
In general, the remaining steps to establishing a Common Information Model for SOA
are:
4.2.2.3-Model Objects
Once the initial scope is set, there are a number of ways to approach building the
Common Information Model. A top-down approach to identify objects, for the Common
Information Model, is to perform business modeling and identify the concepts used in
the domain. You may take a bottom-up approach and start by profiling data in existing
systems and identifying objects from data in existing systems. Yet another approach for
building a Common Information Model is to use one or more industry standards (e.g.
ebXML, TIGERS, GJXDM) as a starting point.
Create models that capture the association between objects. Identify role name and
multiplicity for associations. For large domains you may want to create a series of
models to capture all objects and relations.
The Common Information Model should cover the Conceptual, Logical and Physical
layers for each domain. It is suggested that the three layers are explicitly differentiated.
Three layers, three separate models, three sets of standards and rules. The models must
address each layer distinctly.
BBMS
Page 90
Blood Bank Mnagment System
4.3-Sequence Diagram
4.3.1-Introduction
The invocation of methods in each object, and the order in which the invocation
occurs is captured in a Sequence diagram.
This makes the Sequence diagram a very useful tool to easily represent the dynamic
behavior of a system.
A Sequence diagram is two-dimensional in nature. On the horizontal axis, it shows
the life of the object that it represents, while on the vertical axis, it shows the sequence
of the creation or invocation of these objects.
Because it uses class name and object name references, the Sequence diagram is
very useful in elaborating and detailing the dynamic design and the sequence and origin
of invocation of objects.
BBMS
Page 91
Blood Bank Mnagment System
BBMS
Page 92
Blood Bank Mnagment System
4.3.1-Blood Seeker
BBMS
Page 93
Blood Bank Mnagment System
4.3.3 User/Guest
BBMS
Page 94
Blood Bank Mnagment System
BBMS
Page 95
Blood Bank Mnagment System
BBMS
Page 96
Blood Bank Mnagment System
4.3.6-Signup
BBMS
Page 97
Blood Bank Mnagment System
4.4-Collaboration Diagram
4.4.1-Introduction
A collaboration diagram is an interaction diagram that emphasizes the structural
organization of objects that send and receive messages. It shows a set of objects, links
among those objects, and messages sent and received by those objects. Collaboration
diagram are used to illustrate dynamic view of a system.
4.4.2.2-Instance level
It shows a specific instance of an interaction taking place and involving specific object
instances. The diagram shows objects, links and stimuli.
BBMS
Page 98
Blood Bank Mnagment System
BBMS
Page 99
Blood Bank Mnagment System
BBMS
Page 100
Blood Bank Mnagment System
4.4.5 Sign-Up
BBMS
Page 101
Blood Bank Mnagment System
Page 102
Blood Bank Mnagment System
4.5.1-Introduction
The class diagram is the main building block of object oriented modeling. It is used both
for general conceptual modeling of the systematics of the application, and for detailed
modeling translating the models into programming code. Class diagrams can also be
used for data modeling. The classes in a class diagram represent both the main objects
and or interactions in the application and the objects to be programmed. In the class
diagram these classes are represented with boxes which contain three parts:
In the design of a system, a number of classes are identified and grouped together in a
class diagram which helps to determine the static relations between those objects. With
detailed modeling, the classes of the conceptual design are often split into a number of
subclasses.
4.6-Component Diagram
4.6.1-Introduction
A component diagram shows a set of components and their relationships. Component
diagrams are used to illustrate static implementation view of a system. A component
typically maps to one or more classes, interfaces, or collaborations.
BBMS
Page 103
Blood Bank Mnagment System
4.7-Deployment Diagram
4.7.1 Introduction
A deployment diagram shows a set of nodes and their relationships. Deployment
diagrams illustrate the static deployment view of architecture. The deployment Diagram
describes how an application is deployed across an infrastructure. It is used to show the
distribution of components, typically across a multi-tier system or the deployment of
components around a heterogeneous environment.In other words, The Deployment
diagram shows the physical configuration of run-time processing components of a
distributed system. The intention of the deployment model is not to describe the
infrastructure, but rather the way in which specific components belonging to an
application is deployed across it. Thus, deployment diagrams act as the link and
reference point between how the system is built and where system components are
deployed. For example, a three-tier web application has three distinct nodes: a frontend
web server, an application server, and a database server. There is also the browser
running on an end-user client node.
BBMS
Page 104
Blood Bank Mnagment System
4.7.2 Diagram
BBMS
Page 105
Blood Bank Mnagment System
5-TESTING
BBMS
Page 106
Blood Bank Mnagment System
BBMS
Page 107