N.S.S. COLLEGE, RAJAKUMARI KULAPPARACHAL P.O. - 685619 IDUKKI (Dist.), KERALA DEPARTMENT OF COMPUTER APPLICATIONS CERTIFICATE This is to certify that this project report entitled projectname submitted in partial fulfillment of the requirements for the degree of Bachelor of Computer Applications of Mahatma Gandhi University is a bonafide record of project work done by name (Reg.No: 170021096823) and name (Reg.No: 170021096840), under my guidance and supervision. Head of the department Dr. Shyam Kumar K. Associate Professor, Department of Computer Applications, NSS College, Rajakumari. Guide Dr. Ajitha R.S., Assistant Professor, Department of Computer Applications, NSS College, Rajakumari External Examiner NSS COLLEGE , RAJAKUMARY Page 1 DECLARATION We, name (Reg. No.170..) and name (Reg. No.), S5 B.C.A. hereby declare that this project report entitled “Projectname “ is a bonafide record of project work done by me in partial fulfillment of the requirements for the Degree of Bachelor of Computer Applications , under the guidance of Dr. Ajitha R.S., Assistant Professor, Department of Computer Applications, NSS College Rajakumari. I further declare that no part of it has been formed as the basis for the award of any degree, diploma or any other similar title of any university or institution to any person. RAJAKUMARY name(register number) Name(register number) S5 BCA NSS COLLEGE , RAJAKUMARY Page 2 ACKNOWLEDGEMENT Rajakumary Name(reg. no.) Name(reg.no.) NSS COLLEGE , RAJAKUMARY Page 3 ABSTRACT NSS COLLEGE , RAJAKUMARY Page 4 TABLE OF CONTENTS CHAPTER 1. Page INTRODUCTION 2. 1 1.1 Preamble 1 1.2 About The Project 2 1.3 About The Organisation 3 SYSTEM ANALYSIS 2.1.Existing System 2.2. Drawbacks of Existing System 2.3. Proposed System 2.4. Advantages of Proposed System 3. FEASIBILITY STUDY 3.1 Economic Feasibility 3.2 Technical Feasibility 3.3 Behavioral Feasibility 4. SYSTEM DESIGN 4.1. Modules Design 4.2 Data Flow Diagram for the project and Explanation . 4.3 Database Design 4.4 Table Design 4.5 Normalization Principles used 4.6 Tables 5. HARDWARE AND SOFTWARE SELECTION 5.1. Front-End : 5.2. Back-End : 5.3. Hardware Specification NSS COLLEGE , RAJAKUMARY Page 5 6. CODING 6.1 Input Forms Design 6.2 Selected Code 6.3 Output Reports Design 7. SYSTEM TESTING AND IMPLEMENTATION 7.1. Unit testing 7.2 Integration testing 7.3. System testing 7.4. Validation testing 7.5. Implementation 8. CONCLUSION AND FUTURE ENHANCEMENT APPENDIX BIBLIOGRAPHY NSS COLLEGE , RAJAKUMARY Page 6 1.INTRODUCTION 1.2 ABOUT THE PROJECT This project is aimed to develop an online Blood Bank Management System. The Blood Donation Agent is to create an e-Information about the donor that are related to donating the blood. Through this application any person who is interested in donating the blood can register himself with this site. Moreover if any general consumer wants to make request blood online he can also take the help of this site……………………………. 1.3 ABOUT THE ORGANISATION We have done our system study in Morning Star Medical Center Blood Bank in Adimali, Kerala. It is a licensed firm for blood bank. They donate blood with the certificate of the Medical Officer. Here homologous donations are done, ie; a standard whole blood donation. NSS COLLEGE , RAJAKUMARY Page 7 2.SYSTEM ANALYSIS 2.1 EXISTING SYSTEM 2.2 DRAWBACKS OF EXISTING SYSTEM 2.3 PROPOSED SYSTEM . 2.4 ADVANTAGE OF PROPOSED SYSTEM NSS COLLEGE , RAJAKUMARY Page 8 3. FEASIBILITY STUDY Preliminary investigation examine project feasibility, the likelihood the system will be useful to the organization. The main objective of the feasibility study is to test the Economical, Technical and Behavioral feasibility for adding new modules and debugging old running system. All system is feasible if they are unlimited resources and infinite time. There are aspects in the feasibility study portion of the preliminary investigation: Economic Feasibility Technical Feasibility Behavioral Feasibility 3.1 ECONOMIC FEASIBILITY . 3.2 TECHNICAL FEASIBILITY 3.3 BEHAVIORAL FEASIBILITY Proposed projects are beneficial only if they can beturned out into information system. That will meet the organization’s operating requirements. Operational feasibility aspects of the project are to be taken as an important part of the project implementation. Some of the important issues raised are to test the operational feasibility of a project includes the following: Is there sufficient support for the management from the users? Will the system be used and work properly if it is being developed and implemented? Will there be any resistance from the user that will undermine the possible application benefits? This system is targeted to be in accordance with the above-mentioned issues. Beforehand, the management issues and user requirements have been taken into consideration. So there is no question of resistance from the users that can undermine the possible application benefits. NSS COLLEGE , RAJAKUMARY Page 9 The well-planned design would ensure the optimal utilization of the computer resources and would help in the improvement of performance status. NSS COLLEGE , RAJAKUMARY Page 10 4. SYSTEM DESIGN System design is a solution or approach for the creation of a new system. Design provides the understanding and procedural details necessary for the implementation of the system recommended in the system study. During the system design, the emphasis is on translating the performance requirements into design specifications. System design covers two phases, logical design and physical design. System design goes through two phases of development, logical and physical design. The DFD shows the logical flow of the system and defines the boundaries of the system .The physical design covers review the current physical system , prepares output specification, prepares input specification, prepares edit, security and control specification, specifies the implementation plan, prepares a logical design walkthrough of the information flow and review benefits ,costs, target data and system constraints. The design phase covers Review of the current physical system. Prepare the output specification that determining the format content and frequency of the reports including the terminal specification etc. Prepares the input specification. Prepares the edit control and security specification. Specifies the implementation plan. Prepares the logical design walk through of the information flow, output, input controls and the implementation plan. 4.1 MODULES DESIGN This project deals with management of donation in offline. The activities of this project may include managing stock based on activities of donation , purchase, and other activities .The existing system is partially computerized due to the difficulties of existing system we have to introduce new proposed system . The existing system is prone to error. It is time consuming it is very difficult to produce the report. The objective and scope of the proposed system is to record the activities of the user. In this project there three modules; 1.ADMIN Admin can add, view the details of donors and patients, can manage blood stock details, manage donor and patient details registeration and other activities related to blood bank. 2.DONORS NSS COLLEGE , RAJAKUMARY Page 11 Donors can register to blood bank online with their details including personnel details, medical details, also they can donate blood and view the whole details. Donors can also login with their username and password. 3. PATIENTS Patients can login with username and password. They use the id and their phone number, view their personal details and can have blood bag booking facility. 4.2 DATA FLOW DIAGRAM A data flow diagram is graphical tool used to describe and analyze movement of data through a system. These are the central tool and the basis from which the other components are developed. The transformation of data from input to output, through processed, may be described logically and independently of physical components associated with the system. These are known as the logical data flow diagrams. The physical data flow diagrams show the actual implements and movement of data between people, departments and workstations. A full description of a system actually consists of a set of data flow diagrams. Using two familiar notations Yourdon, Gane and Sarson notation develops the data flow diagrams. Each component in a DFD is labeled with a descriptive name. Process is further identified with a number that will be used for identification purpose. The development of DFD’S is done in several levels. Each process in lower level diagrams can be broken down into a more detailed DFD in the next level. The lop-level diagram is often called context diagram. It consists a single process bit, which plays vital role in studying the current system. The process in the context level diagram is exploded into other process at the first level DFD. The idea behind the explosion of a process into more process is that understanding at one level of detail is exploded into greater detail at the next level. This is done until further explosion is necessary and an adequate amount of detail is described for analyst to understand the process. Larry Constantine first developed the DFD as a way of expressing system requirements in a graphical from, this lead to the modular design. A DFD is also known as a “bubble Chart” has the purpose of clarifying system requirements and identifying major transformations that will become programs in system design. So it is the starting NSS COLLEGE , RAJAKUMARY Page 12 point of the design to the lowest level of detail. A DFD consists of a series of bubbles joined by data flows in the system. Basic Data Flow Diagram Symbols A direct line represents a flow of data Circles stands for process that converts data into information. A process represents transformation where incoming data flows are changed into outgoing data flows. Source is represented by square. A source is a person or part of an organization which enter or receives information from the system, but is considered to be outside the contest of data flow model. An open-ended rectangle represents a data store CONSTRUCTING A DFD: NSS COLLEGE , RAJAKUMARY Page 13 Several rules of thumb are used in drawing DFD’S: 1. Process should be named and numbered for an easy reference. Each name should be representative of the process. 2. The direction of flow is from top to bottom and from left to right. Data traditionally flow from source to the destination although they may flow back to the source. One way to indicate this is to draw long flow line back to a source. An alternative way is to repeat the source symbol as a destination. Since it is used more than once in the DFD it is marked with a short diagonal. 3. When a process is exploded into lower level details, they are numbered. 4. The names of data stores and destinations are written in capital letters. Process and dataflow names have the first letter of each work capitalized A DFD typically shows the minimum contents of data store. Each data store should contain all the data elements that flow in and out. Questionnaires should contain all the data elements that flow in and out. Missing interfaces redundancies and like is then accounted for often through interviews. SAILENT FEATURES OF DFD’S 1. The DFD shows flow of data, not of control loops and decision are controlled considerations do not appear on a DFD. 2. The DFD does not indicate the time factor involved in any process whether the dataflow take place daily, weekly, monthly or yearly. 3. The sequence of events is not brought out on the DFD. RULES GOVERNING THE DFD’S PROCESS 1) No process can have only outputs. 2) No process can have only inputs. If an object has only inputs than it must be a sink. 3) A process has a verb phrase label. DATA STORE 1) Data cannot move directly from one data store to another data store, a process must move data. 2) Data cannot move directly from an outside source to a data store, a process, which receives, must move data from the source and place the data into data store 3) A data store has a noun phrase label. SOURCE OR SINK NSS COLLEGE , RAJAKUMARY Page 14 The origin and /or destination of data. 1) Data cannot move direly from a source to sink it must be moved by a process 2) A source and /or sink has a noun phrase land DATA FLOW 1) A Data Flow has only one direction of flow between symbols. It may flow in both directions between a process and a data store to show a read before an update. The later is usually indicated however by two separate arrows since these happen at different type. 2) A join in DFD means that exactly the same data comes from any of two or more different processes data store or sink to a common location. 3) A data flow cannot go directly back to the same process it leads. There must be atleast one other process that handles the data flow produce some other data flow returns the original data into the beginning process. 4) A Data flow to a data store means update (delete or change). 5) A data Flow from a data store means retrieve or use. Context diagram DONOR response response PATIENT request request BLOOD BANK MANAGEMENT SYSTEM response EMPLOYEE request 13 NSS COLLEGE , RAJAKUMARY Page 15 LEVEL ONE Enter DONOR registration information DONOR Manage ment Booking and purchase DONOR Manageme nt EMPLOYEE Enter userid and password LOGIN Employee Manageme nt STOCK Manage ment PATIENT Donor Details Booking Details Purchase Details Employee Details Stock Details PATIENT Enter PATIENT registration information Managem ent Patient Details 15 LEVEL TWO NSS COLLEGE , RAJAKUMARY Page 16 1 . DONOR MANAGEMENT Enter donor info REGISTRATION Update donor info DONOR Donor info Retrieve donor info donor details Update donor info 17 1 . DONOR MANAGEMENT Enter donor info REGISTRATION Update donor info DONOR Donor info Retrieve donor info donor details Update donor info 17 NSS COLLEGE , RAJAKUMARY Page 17 PATIENT MANAGEMENT 2. Enter patient info REGISTRATION Update patient info PATIENT Patient info Retrieve patient info patient details Update patient info 20 3 . BOOKING AND PURCHASE MANAGEMENT purchase details Donor booking Booking details details Patient purchase details Retrieve Patient info Retrieve book details Booking Managem ent Purchase Managem ent Retrieve Purchase info Employee Enter purchase info Exchange Blood Bill Generation donor details Bill bill info Donor 21 NSS COLLEGE , RAJAKUMARY Page 18 4 . STAFF MANAGEMENT staff details Retrieve staff info ADD EMPLOYEE Update staff info Enter staff info Staff info Update staff info 22 E R DIAGRAM ER Diagram (Entity relationship diagram) is a visual representation of data that describes data is related to each other. E R Diagrams are used to represent between entity sets. The following Symbols are used in E-R diagram, 1. Entity An entity can be any object, place, and person. In ER-diagram an entity is represented using rectangles. NSS COLLEGE , RAJAKUMARY Page 19 2. Relationship A relationship describes relations between entities. Relationship is represented using diamonds. 3. Attribute A attribute describes a property or characteristic of an entity. An attribute represented using oval shaped box (ellipse) and are connected to entities or relationship by lines. NSS COLLEGE , RAJAKUMARY Page 20 bagid quantit y quantity Ddate Ndate Bid DONATES Pid weigh t Did DONOR Tid BOOKED Blood group dname Under go BLOOD Tname TEST PATIENT PURCHASED Purchase id Blood group pname Purchase date Quantit y PAID Max value Min value BILL CONDUCTED BY EMPLOYEE Billing date billid sname No of bag Phno address Employee id NSS COLLEGE , RAJAKUMARY Page 21 4.3 DATABASE DESIGN Database design is an important activity in design. The efficiency of the system lies in the efficiency of the database. The database design consists of predetermining number of tables that are to be used and fields that are to be used in each table. The efficiency of the system to retrieve the appropriate data depends on how the fields are specified and the coding mostly depends on format of the database. To group the given data and to give them a logical structure, a database design is necessary. The overall objective in the development of a database is to treat data as an organized resource and is an integrated whole. A database is a collection of interrelated data stored minimum redundancy to serve many users quick and efficiently. The general objective is to make information access easy, quick, inexpensive and flexible for the users. In this project, we are mainly concentrated into relational database. Relational database stores data in table, which is turn, are composed of rows also known as records, columns also known as fields. The fields in relational models are, Primary key-The key which uniquely identify records. They also known notify the not null constraint. Foreign key-The key references the primary key, is the data inserted in the primary key column of the table. The general theme is to handle information as an integrated whole, with a minimum of redundancy and improved performance, Some general objective in establishing a database are follows: Eliminating existing data files. Share data among all users. Incorporate changes easily and quickly. Provide data security from unauthorized use. Simplify the use of data files. Lower the cost of storing retrieving the data. Improve accuracy and consistency. Provide data security for unauthorized use. A complete database management system separates definition of data from programs. The concept of data independence is one of the key advantage of a database management system. With a DBMS, it is possible to design file structure much more easily and to set up a database that can be used by a number of different application. As a result, the system increases programming productivity. NSS COLLEGE , RAJAKUMARY Page 22 The choice of a particular database management system is complicated. In this system a relational data model is used because of the many features it offers. Relational data model can be analyzed formally, which gives them a strong foundation and some degree of standardization across implementation. Data directory specifies the major element in the system, and care should be taken, while designing, in order to avoid unnecessary duplication of data. The entire package depends on how the data is maintained in the system. Several tables are maintaining the system to store data those are required for the processing of various data as well as storing intermediate for the final processed results. Different modules to meet their needs access these stored data. 4.4 TABLE DESIGN Table is a collection of data. These data are saved in row and column. The data of each row are different units. Hence, rows are called RECORDS and column of each row is called FIELDS. Some of the major task in computer system is to and manage data. Data stored in table. 1. Login Table FIELDNAME DATATYPE SIZE CONSTRAINTS Username varchar 30 Not NULL Password varchar 20 Not NULL Role varchar 10 Not NULL 2.Donor Table FIELDNAME DATATYPE SIZE Did varchar 10 Dname varchar 30 DBgroup varchar 5 Not null Blood Group Weight number 3 Not null Weight DOB date Not null Date of birth Gender varchar NSS COLLEGE , RAJAKUMARY 6 CONSTRAINTS Primary key DESCRIPTION Donor id Donor name Gender Page 23 Address varchar 30 Address City varchar 20 City Phno number 10 Status varchar 12 LDdate date Not null Phone number Status volunteer) (volunteer/not Last Donated Date if volunteer 3. Blood stock table FIELDNAME DATATYPE SIZE CONSTRAINTS DESCRIPTION Did varchar 10 Foreign key Donor id Quantity number 3 Not null Quantity of blood taken Donated date date Bagid varchar Expiry date date Donated date 10 Primary key Blood bag id Not null Expiry blood date of 4.Employee Table FIELDNAME DATATYPE Staff_id varchar 10 Primary key Staff id Staff_name varchar 15 Not null Staff name Address varchar 30 Staff_phno bigint 10 NSS COLLEGE , RAJAKUMARY SIZE CONSTRAINTS DESCRIPTION Address Not null Staff number phone Page 24 5.PATIENT DETAILS FIELDNAME DATATYPE SIZE CONSTRAINTS DESCRIPTION Pid varchar 10 Primary key Patient id Pname varchar 30 PBgroup varchar 5 Gender varchar 6 Gender of patient Address varchar 30 address Phno bigint 10 Patient name Not null Not null Patient group Patient number blood phone 6. BOOKING TABLE FIELDNAME DATATYPE SIZE CONSTRAINTS DESCRIPTION Bid varchar 10 Primary key Booking id Pid varchar 10 Foreign key Patient id Needed_date date Not null Needed date Quantity number 3 Not null Quantity needed Doctor_name varchar 15 Doctor name Purpose varchar 25 Purpose for blood Booking_date date NSS COLLEGE , RAJAKUMARY Not null Booking date Page 25 7. BILLING DETAILS FIELD NAME DATATYPE SIZE CONSTRAINTS DESCRIPTION Billid varchar 10 Primary key Billing id Pid varchar 10 Foreign key Patient id No.of.bags number 10 Not null Number of bags Amount number 3 Not null Total amount Billing_date date Not null Date of billing 4.5 NORMALIZATION One of the major tasks in designing a relational database is normalization. The process of normalization ensures that there will not be problems in updating the database and the operation of the various relations will not lead to inconsistent and incorrect data. NSS COLLEGE , RAJAKUMARY Page 26 Normalization is the process of organizing data in a database .The includes creating tables and establishing relationship between those tables according to rules designed both to protect data and to make the database more flexible by eliminating two factors: Redundancy and inconsistent dependency. Redundant data wastes disks space and creates maintenance problems. If data exists in more than one place must be changed, the data must be changed in exactly the same way in all locations. There are few rules for database normalization. Each rule is called a “normal form”, if the first rule is observed, the database is said to be in “first normal form” .If three rules are observed ,the database is considered as in the “third normal form” . First Normal Form Eliminate repeating groups in individual tables. In this system here we eliminate all the repeating groups from the database. Also all the tables contain at least one of the fields that can be uniquely identified. In the system, we split the student details, course details, fees details, instructor details, office staff details, etc … in to separate tables .So the system’s database is in its first normal form. Second Normal Form A relation is said to be in 2NF if it is in 1NF and non key attributes are functionally dependent on the key attributes. In this system, It is described above that it is in first normal form, all the tables that are split like the course table, fees table have established a relation with the student table. The instructor table establishes a relation with the course table. Since the tables in the database are functionally dependent on the key attributes. The system is in second normal form. Third Normal Form Third normal form normalization will be needed where all attributes in a relation tuple are not functionally dependent only on the key attribute. If two non key attributes are functionally dependent then there will be unnecessary duplication of data. Eliminates fields that do not depend on the key. Values in record that are not part of that record’s key do not belong in the table. In general, any time the contents of a group of fields may apply to more than a single record in the table, consider placing those fields in a separate table. NSS COLLEGE , RAJAKUMARY Page 27 During the normalization process, first check whether the relations are in the first normal form, then in the second and finally in the third normal form. To confirm to second and third normal forms, each non key fields must gives us information about the entire key. Thus normalization creates a database in which there is minimum redundancy of data. NSS COLLEGE , RAJAKUMARY Page 28 5. HARDWARE AND SOFTWARE SELECTION Software Specification Operating System : Windows 10 IDE : Visual studio 2013 Front End : ASP.NET WITH C# code behind Back End : SQL Server 2014 Web Server : IIS 7.0 Web Browser : Google Chrome Internet Technologies : Javascript, C#, PYTHON, PHP, HTML, CSS Hardware Specification An important matter in building an application is selecting hardware and software. The hardware drives the software to facilitate solutions. Factors like cost performance etc are taken into consideration during the purchase of the hardware component for any computerized system. Hardware requirements needs for the system Processor : Pentium 1.80 GHz or more RAM : 4GB Hard disk : 90 GB Monitor : SVGA Color Keyboard : 104 Keys Mouse : Optical 5.1 Front End The front end is an interface between the user and the back end. The front and back ends may be distributed amongst one or more systems. In network computing, front end can refer to any hardware that optimizes or protects network traffic. It is called application Front-end hardware because it is placed on the network's outwardfacing front end or boundary. Network traffic passes through the front-end hardware before entering the network. NSS COLLEGE , RAJAKUMARY Page 29 In compilers, the front end translates a computer programming source code into an intermediate representation, and the back end works with the intermediate representation to produce code in a computer output language. The back end usually optimizes to produce code that runs faster. The front-end/back-end distinction can separate the parser section that deals with source code and the back end that generates code and optimizes. These days, front-end development refers to the part of the web users interact with. In the past, web development consisted of people who worked with Photoshop and those who could code HTML and CSS. Now, developers need a handle of programs like Photoshop and be able to code not only in HTML and CSS, but also JavaScript or jQuery, which is a compiled library of JavaScript. Most of everything you see on any website is a mixture of HTML, CSS, and JavaScript, which are all controlled by the browser. For example, if you’re using Google Chrome or Firefox, the browser is what translates all of the code in a manner for you to see and with which to interact, such as fonts, colors, drop-down menus, sliders, forms, etc. In order for all of this to work, though, there has to be something to support the front-end; this is where the backend comes into play. 1.PHP:Introduction PHP is now officially known as “PHP: Hypertext Preprocessor”. It is a server-side scripting language usually written in an HTML context. Unlike an ordinary HTML page, a PHP script is not sent directly to a client by the server; instead, it is parsed by the PHP binary or module, which is server-side installed. HTML elements in the script are left alone, but PHP code is interpreted and executed. PHP code in a script can query databases, create images, read and write files, talk to remote servers – the possibilities is endless. The output from PHP code is combined with the HTML in the script and the result sent to the user’s web-browser, therefore it can never tell the user whether the web-server uses PHP or not, because the entire browser sees is HTML. PHP’s support for Apache and MySQL further increases its popularity. Apache is now the most-used web-server in the world, and PHP can be compiled as an Apache module. MySQL is a powerful free SQL database, and PHP provides a comprehensive set of functions for working with it. The combination of Apache, MySQL and PHP is all but unbeatable. That doesn’t mean that PHP cannot work in other environments or with other tools. In fact, PHP supports an extensive list of databases and web-servers. While in the mid-1990s it was ok to build sites, even relatively large sites, with hundreds of individual hard-coded HTML pages, NSS COLLEGE , RAJAKUMARY Page 30 today’s webmasters are making the most of the power of databases to manage their content more effectively and to personalize their sites according to individual user preferences. Reasons for using PHP There are some indisputable great reasons to work with PHP. As an open source product, PHP is well supported by a talented production team and a committed user community. Furthermore, PHP can be run on all the major operating systems with most servers. a) Learning PHP is easy Basic is easy any interpreted language should be easy to learn. Since you are isolated from the system (no pointers to use, no memory to allocate). The other advantage that all modern interpreted languages share is good associative array constructs. b) Its Performance While we can build an application that serves millions of pages a day on a server, when we really look at the performance of the language it sucks. We are still orders of magnitude from real performance. Not only that, but since PHP is designed around a single process model our ability to share data structures or connection pool resources is left to native code libraries. • The low cost There are many languages which are available at very less cost. There are some languages which are available at very less cost like below: • PHP • C • C++ etc d) It’s Open Source, We can modify it We can modify it if you need a hole in your head! Technically the point is that it’s an open source project and they release patches often. You’re point is that the community is actively working out the bugs. So, what any active language is doing this... Unfortunately C, C++ and Perl have all “died” at this point and will pretty much remain static at their current functionality. Its Portability NSS COLLEGE , RAJAKUMARY Page 31 C is portable; it’s just the OS bits that aren’t. A lot PHP isn’t portable to Windows since people don’t use the OS abstractions to avoid some problems. It has interfaces to a large variety of database systems PHP supports a large variety of the database. Support available Online Support is available for using PHP. 2. HTML:Introduction HTML or Hyper Text Markup Language is the standard markup language used to create web pages. HTML was created in 1991 by Tim Berners-Lee at CERN in Switzerland. It was designed to allow scientists to display and share their research. HTML is written in the form of HTML elements consisting of tags enclosed in angle brackets(like <html>). HTML tags most commonly come in pairs like <h1> and </h1>, although some tags represent empty elements and so are unpaired, for example <img>. The first tag in a pair is the start tag, and the second tag is the end tag (they are also called opening tags and closing tags). The purpose of a web browser is to read HTML documents and compose them into visible or audible web pages. The browser does not display the HTML tags, but uses the tags to interpret the content of the page. HTML describes the structure of a website semantically along with cues for presentation, making it a markup language rather than a programming language. HTML elements form the building blocks of all websites. HTML allows images and objects to be embedded and can be used to create interactive forms. It provides a means to create structured documents by denoting structural semantics for text such as headings, paragraphs, lists, links, quotes and other items. It can embed scripts written in languages such as Java Script which affect the behavior of HTML web pages. HTML is descriptive markup language. Library of various markup languages is defined in various browsers. a) HTML Images - The <img> Tag and the Src Attribute In HTML, images are defined with the <img> tag. The <img> tag is empty, which means that it contains attributes only, and has no closing tag. To display an image on a page, you need to use the src attribute. Src stands for "source". The value of the src attribute is the URL of the image you want to display. NSS COLLEGE , RAJAKUMARY Page 32 Syntax for defining an image: <imgsrc="url" alt="some_text"> b) HTML FORMS HTML forms are used to pass data to a server. The <form> tag is used to create an HTML form: <form> . input_elements . </form> An HTML form can contain input elements like text fields, checkboxes, radio-buttons, submit buttons and more. A form can also contain select lists, textarea, fieldset, legend, and label elements. c) Image tag (<img>) : To add an image to an HTML document, we just need to include an <IMG> tag with a reference to the desired image. The <IMG> tag is an empty element i.e. it doesn’t require a closing tag and we can use it to include from small icons to large images. Syntax: <imgsrc=”URL” alt=”alternative text”> d) HTML Lists : An ordered list: • The first list item • The second list item • The third list item An unordered list: • List item • List item • List item 4.2.3 HTML 5 NSS COLLEGE , RAJAKUMARY Page 33 HTML5 will be the new standard for HTML. The previous version of HTML, HTML 4.01, came in 1999. The web has changed a lot since then. HTML5 is still a work in progress. However, the major browsers support many of the new HTML5 elements and APIs. HTML5 is cooperation between the World Wide Web Consortium (W3C) and the Web Hypertext Application Technology Working Group (WHATWG). WHATWG was working with web forms and applications, and W3C was working with XHTML 2.0. In 2006, they decided to cooperate and create a new version of HTML. Some rules for HTML5 were established: a) New features should be based on HTML, CSS, DOM, and JavaScript b) Reduce the need for external plug-ins (like Flash) c) Better error handling d) More markup to replace scripting e) HTML5 should be device independent f) The development process should be visible to the public 2.CSS Introduction CSS tutorial or CSS 3 tutorial provides basic and advanced concepts of CSS technology. Our CSS tutorial is developed for beginners and professionals. The major points of CSS are given below: • CSS stands for Cascading Style Sheet. • CSS is used to design HTML tags. • CSS is a widely used language on the web. • HTML, CSS and JavaScript are used for web designing. It helps the web designers to apply style on HTML tags. Cascading Style Sheets (CSS) is a style sheet language used for describing the look and formatting of a document written in a markup language. While most often used to style web pages and user interfaces written in HTML and XHTML, the language can be applied to any kind of XML document, including plain XML, SVG and XUL. CSS is a cornerstone specification of the web and almost all web pages use CSS style sheets to describe their presentation. CSS is designed primarily to enable the separation of document content from document presentation, including elements such as the layout, colors, and fonts. This separation can improve content accessibility, provide more flexibility and control in the specification of presentation NSS COLLEGE , RAJAKUMARY Page 34 characteristics, enable multiple pages to share formatting, and reduce complexity and repetition in the structural content (such as by allowing for table less web design). CSS can also allow the same markup page to be presented in different styles for different rendering methods, such as on-screen, in print, by voice (when read out by a speech-based browser or screen reader) and on Braille-based, tactile devices. It can also be used to allow the web page to display differently depending on the screen size or device on which it is being viewed. While the author of a document typically links that document to a CSS file, readers can use a different style sheet, perhaps one on their own computer, to override the one the author has specified. With plain HTML you define the colors and sizes of text and tables throughout your pages. If you want to change a certain element you will therefore have to work your way through the document and change it. With CSS you define the colors and sizes in "styles". Then as you write your documents you refer to the styles. Therefore: if you change a certain style it will change the look of your entire site. Another big advantage is that CSS offers much more detailed attributes than plain HTML for defining the look and feel of your site. 4. JAVASCRIPT Introduction JavaScript (JS) is a dynamic computer programming language. It is most commonly used as part of web browsers, whose implementations allow client-side scripts to interact with the user, control the browser, communicate asynchronously, and alter the document content that is displayed. It is also being used in server-side network programming (with Node.js), game development and the creation of desktop and mobile applications. JavaScript is a prototype-based scripting language with dynamic typing and has first-class functions. Its syntax was influenced by C. JavaScript copies many names and naming conventions from Java, but the two languages are otherwise unrelated and have very different semantics. The key design principles within JavaScript are taken from the Self and Scheme programming languages. It is a multi-paradigm language, supporting object-oriented, imperative, and functional programming styles. The application of JavaScript in use outside of web pages—for example, in PDF documents, sitespecific browsers, and desktop widgets—is also significant. Newer and faster JavaScript VMs and platforms built upon them (notably Node.js) have also increased the popularity of JavaScript for server-side web applications. On the client side, JavaScript was traditionally implemented as an NSS COLLEGE , RAJAKUMARY Page 35 interpreted language but just-in-time compilation is now performed by recent (post-2012) browsers. JavaScript was formalized in the ECMA Script language standard and is primarily used as part of a web browser (client-side JavaScript). This enables programmatic access to objects within a host environment. JavaScript is the most popular programming language in the world. It is the language for HTML, for the Web, for computers, servers, laptops, tablets, smart phones, and more. You can use JavaScript to: a) Change HTML elements • Delete HTML elements • Create new HTML elements • Copy and clone HTML elements 5.2 Back end SQL Server 2008 Microsoft SQL Server is a relational database server, developed by Microsoft. It is a software product whose primary function is to store and retrieve data as requested by other software applications, be it those on the same computer or those running on another computer across a network (including the Internet). There are at least a dozen different editions of Microsoft SQL Server aimed at different audiences and for different workloads. SQL Server 2008 (codenamed Yukon), released in October 2008, is the successor to SQL Server 2005. It included native support for managing XML data, in addition to relational data. For this purpose, it defined an xml data type that could be used either as a data type in database columns or as literals in queries. XML is converted to an internal binary data type before being stored in the database. Specialized indexing methods were made available for XML data. XML data is queried using Query. SQL Server 2008 added some extensions to the T-SQL language to allow embedding XQuery queries in T-SQL. In addition, it also defines a new extension to XQuery, called XML DML, which allows query-based modifications to XML data. SQL Server 2008 also allows a database server to be exposed over web services using TDS packets encapsulated within SOAP requests. When the data is accessed over web services, results are returned as XML. NSS COLLEGE , RAJAKUMARY Page 36 For relational data, T-SQL has been augmented with error handling features (try/catch) and support for recursive queries with CTEs (Common Table Expressions). SQL Server 2008 has also been enhanced with new indexing algorithms, syntax and better error recovery systems. Data pages are check summed for better error resiliency, and optimistic concurrency support has been added for better performance. Permissions and access control have been made more granular and the query processor handles concurrent execution of queries in a more efficient way. Services SQL Server also includes an assortment of add-on services. While these are not essential for the operation of the database system, they provide value added services on top of the core database management system. a. Service Broker Used inside an instance, it is used to provide an asynchronous programming environment. For cross instance applications, Service Broker communicates The Service Broker, which runs as a part of the database engine, provides a reliable messaging and message queuing platform for SQL Server applications. b. Replication Services SQL Server Replication Services are used by SQL Server to replicate and synchronize database objects, either in entirety or a subset of the objects present, across replication agents, which might be other database servers across the network, or database caches on the client side. Replication follows a publisher/subscriber model, i.e., the changes are sent out by one database server (“publisher”) and are received by others (“subscribers”). SQL Server supports three different types of replication. Transaction replication Each transaction made to the publisher database (master database) is synced out to subscribers, who update their databases with the transaction. Transactional replication synchronizes databases in near real time. Merge replication Changes made at both the publisher and subscriber databases are tracked, and periodically the changes are synchronized bi-directionally between the publisher and the subscribers. If the same data has been modified differently in both the publisher and the subscriber databases, synchronization will result in a conflict which has to be resolved - either manually or by using predefined policies. NSS COLLEGE , RAJAKUMARY Page 37 Hardware Specification An important matter in building an application is selecting hardware and software. The hardware drives the software to facilitate solutions. Factors like cost performance etc are taken into consideration during the purchase of the hardware component for any computerized system. Hardware requirements needs for the system Processor : Pentium 1.80 GHz or more RAM : 4GB Hard disk : 90 GB Monitor : SVGA Color Keyboard : 104 Keys Mouse : Optical NSS COLLEGE , RAJAKUMARY Page 38 6. CODING 6.1 Input Forms Design Input design is a design process of converting user oriented inputs to a computer based format. The input media used is keyboard. Details are entered through data entry screens. Outline data entry accepts commands and the data are displayed on the CRT screen for verification. The major approaches to input design are the menu and the prompt design. In each alternative, the user’s options are predefined and the system is designed in a user friendly manner. Appropriate error messagesare given when false details are entered. Design of a system in a menu driven fashion enables the user to select any option accordingly using simple keystrokes or mouse clicks. The following are the features of the data entry screen for proposed system: 1. User friendly: - The proposed system is designed in a user friendly manner. 2. Menu driven: - The proposed system is menu driven. This helps the user to select any option designs at any time and operations are very easy. 3. Interact:- The package is developed on the support of menu driven program. When we look through the menu items we can easily understand what is mean, so a person with little experience can also operate the system. 6.2 Selected Code Donor registration ; <html> <head> <title>donor</title> <link rel="stylesheet" type="text/css" href="pro.css"> </head> <body> <a href="dlogin.php">Back</a> <center> <h2>Donor Registration</h2> <br><br><br> <form method ="post" name="frm" onsubmit="return Reg()"> <table > <tr><th align="left">Donor_id<font color=red>*</font>:</th><td><input type="text" name="d_id"/></td></tr> NSS COLLEGE , RAJAKUMARY Page 39 <tr><th align="left">Name <font color=red>*</font>:</th><td><input type="text" name="d_name" placeholder="Enter donor name"required/></td></tr> <tr><th align="left">BloodGroup <font color=red>*</font>:</th><td><select name="bdgp"> <option value="" selected>-- SELECT --</option> <option value="A+ve">A+ve</option> <option value="B+ve">B+ve</option> <option value="O+ve">O+ve</option> <option value="AB+ve">AB+ve</option> <option value="A-ve">A-ve</option> <option value="B-ve">B-ve</option> <option value="O-ve">O-ve</option> <option value="AB-ve">AB-ve</option> </select> </td></tr> <tr><th align="left">Password <font color=red>*</font>: </th><td align="left"><input type="password" name="d_pwd" placeholder="Enter your password "required /><font color=grey><font color=red>*</font>which is used for login</font></td></tr> <tr><th align="left">Gender <font color=red>*</font>:</th><td><select name="d_gender"> <option value="M" selected>Male</option> <option value="F">Female</option> <option value="O">Others</option> </select></td></tr> <tr><th align="left">Date Of Birth <font color=red>*</font>:</th><td><input type="date" name="d_dob" required/></td></tr> <tr><th align="left">Address <font color=red>*</font>:</th><td><textarea rows="5" cols="50" name="d_address" placeholder="Enter our address"required></textarea></td></tr> <tr><th align="left">Phone Number <font color=red>*</font>:</th><td><input type="number" name="d_phn" placeholder="Enter a valid phone number (10 digit)" required/></td></tr> <tr><th align="left">Donor_email<font color=red>*</font>:</th><td><input type="text" name="d_email" placeholder="Enter a vaid email id"required></td></tr> <tr><th align="left">City <font color=red>*</font>:</th><td><input type="text" name="d_city" placeholder="Enter your city"required/></td></tr> <tr><th align="left">Weight <font color=red>*</font>:</th><td><input type="number" name="d_weight" placeholder="Enter your weight " min="50"required/></td></tr> <tr><th align="left">Status <font color=red>*</font>:</th><td><select name="vol"> <option value="Volunteer" selected>Volunteer</option> NSS COLLEGE , RAJAKUMARY Page 40 <option value="NonVolunteer">NonVolunteer</option> </select></td></tr> <tr><th align="left">Last Donated Date:</th><td><input type="date" name="d_ldd" /></td></tr> <tr><th></th><td><br><br><input type="submit" name="next" value="SUBMIT"></td></tr> </table> </form> </body> </html> <?php include('connection.php'); if(isset($_POST['next'])) { $did=$_POST['d_id']; $dpwd=$_POST['d_pwd']; $dn=$_POST['d_name']; $da=$_POST['d_address']; $ddob=$_POST['d_dob']; $dg=$_POST['d_gender']; $dph=$_POST['d_phn']; $dem=$_POST['d_email']; $dc=$_POST['d_city']; $db=$_POST['bdgp']; $dw=$_POST['d_weight']; $ds=$_POST['vol']; $dldd=$_POST['d_ldd']; $rl="donor"; $qr="INSERT INTO donor (d_id,d_name,d_bgroup,d_gender,d_dob,d_address,d_phn,d_email,d_city,d_weight,d_status,d_ldd) VALUES ('$did','$dn','$db','$dg','$ddob','$da','$dph','$dem','$dc','$dw','$ds','$dldd')"; $result1=mysqli_query($conn,$qr) or die ("Not Inserted #1 : ".mysqli_error($conn)); if($result1) { $qry=mysqli_query($conn,"INSERT INTO login (uid,pwd,role) VALUES('$did','$dpwd','$rl')") or die("Not Inserted #2 : ".mysqli_error()); NSS COLLEGE , RAJAKUMARY Page 41 $result2=mysqli_query($conn,$qry) or die ("Not Inserted #1 : ".mysqli_error($conn)); if($result2) { echo"Registration Successful<br>"; header("refresh:3;url=dlogin.php"); } } else { echo"Registration Unsuccessful:<hr>".mysqli_error($conn); header("refresh:5;url=1donor.php"); } } ?> <script> function Reg() { var di=document.forms["frm"]["d_id"]; var n=document.forms["frm"]["d_name"]; var db=document.forms["frm"]["dropdown"]; var p=document.forms["frm"]["d_pwd"]; var dg=document.forms["frm"]["d_gender"]; var d=document.forms["frm"]["d_dob"]; var a=document.forms["frm"]["d_address"]; var m=document.forms["frm"]["d_phn"]; var e=document.forms["frm"]["d_email"]; var c=document.forms["frm"]["d_city"]; var w=document.forms["frm"]["d_weight"]; var s=document.forms["frm"]["dropdown"]; var ldd=document.forms["frm"]["d_ldd"]; if(di.value==" ") { alert("Please enter Donor Id"); di.focus(); return false; } NSS COLLEGE , RAJAKUMARY Page 42 if(n.value==" ") { alert("Please enter name"); n.focus(); return false; } var l=/^[A-Za-z]+$/; if(!n.value.match(l)) { alert("Please enter a valid name"); n.focus(); return false; } if(db.value==" ") { alert("Please enter donor's blood group"); db.focus(); return false; } if(p.value==" ") { alert("Please enter password"); p.focus(); return false; } if(p.value.length < 0||p.value.length < 5 ) { alert("Enter a password with atleast 5 characters"); p.focus(); return false; } if(dg.value==" ") { alert("Please enter donor's gender"); dg.focus(); return false; } if(d.value==" ") NSS COLLEGE , RAJAKUMARY Page 43 { alert("Please enter date of birth"); d.focus(); return false; } if(a.value==" ") { window.alert("Please enter address"); a.focus(); return false; } /*var al=/^[A-Za-z ]+$/; if(!a.value.match(al)) { alert("Please enter a valid address"); a.focus(); return false; } */ if(m.value==" ") { alert("Please enter phone number"); m.focus(); return false; } if(m.value.length !=10) { alert("The mob_no must be 10 digits"); m.focus(); return false; } var mn=/^[0-9]+$/; if(!m.value.match(mn)) { alert("Please enter a valid mobile number"); m.focus(); return false; } NSS COLLEGE , RAJAKUMARY Page 44 if(e.value==" ") { alert("Please enter an email_id"); e.focus(); return false; } if(e.value.indexOf("@",0)<0) { alert("Please enter a valid email_id"); e.focus(); return false; } if(e.value.indexOf(".com",0)<0) { alert("Please enter a valid email_id"); e.focus(); return false; } if(c.value==" ") { alert("Please enter city"); c.focus(); return false; } if(w.value==" ") { alert("Please enter weight"); w.focus(); return false; } if(s.value==" ") { alert("Please enter status"); s.focus(); return false; } return true; NSS COLLEGE , RAJAKUMARY Page 45 } </script> Login ; <html> <head> <title> Login </title> <link rel="stylesheet" type="text/css" href="logincss.css"> </head> <body> <center><br><br><br><br><br><br><br><br><br> <h1><big>A D M I N&nbsp;&nbsp;&nbsp;&nbsp;L O G I N&nbsp;&nbsp;</big></h1> <br><br><br><br><br> <form method ="POST" name="frm" onsubmit="return Avalidate()"> <table align="center"> <img src="bloodpic.png" align="left" /> <tr><th align="center"><h4>USER_ID: </h4></th><td align="right"><input type="text" name="uid" required /></td></tr> <tr><th align="center"><h4>PASSWORD : </h4></th><td align="right"><input type="password" name="pwd" required /></td></tr> <tr><td></td><td align="center"><input type="submit" name="submit" value="LOGIN" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="reset" name="reset" value="CLEAR" /></td></tr> <tr><td colspan="2" align="center">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;& nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n bsp;&nbsp;<a href="Home.php">BACK TO HOME PAGE</a> </table> </form> </center> NSS COLLEGE , RAJAKUMARY Page 46 <br><br><br><br> </body> </html> <?php session_start(); if(isset($_POST["submit"])) { $uid=$_POST["uid"]; $pwd=$_POST["pwd"]; $conn = mysqli_connect ("localhost","root",""); if(!$conn) {die("could not connect:".mysqli_error());} //else //echo"successful connection<br>"; $db_fnd=mysqli_select_db($conn,"project"); if(!$db_fnd) {die("could not connect:".mysqli_error() );} //else //echo"successful connection<br>"; $qr=mysqli_query($conn,"select * from login where uid='$uid' and pwd='$pwd' and role='admin' ") or die("Error:".mysqli_error($conn)); //and Role='Admin' if(mysqli_num_rows($qr)>0) { $_SESSION['uid']=$uid; header("location:admin.html"); exit; } else { echo"Invalid username or password<br>"; header("refresh:3;url=alogin.php"); } mysqli_close($conn); } ?> NSS COLLEGE , RAJAKUMARY Page 47 <script> function Avalidate() { var u=document.forms["frm"]["uid"]; var p=document.forms["frm"]["pwd"]; if(u.value==" ") { window.alert("Please enter UserId"); u.focus(); return false; } if(p.value==" ") { alert("Please enter password"); p.focus(); return false; } if(p.value.length < 0||p.value.length < 5 ) { alert("Enter a password with atleast 5 characters"); n.focus(); return false; } return true; } </script> Patient registration ; <html> <head> <title>patient</title> <link rel="stylesheet" type="text/css" href="pro1.css"> </head> <body><center> <h2>Patient</h2> <br><br><br> NSS COLLEGE , RAJAKUMARY Page 48 <form method ="post" name="pform" onsubmit="return Regis()"> <table> <tr><th>Patient_id <font color=red>*</font>:</th><td><input type="text" name="pid"/></td></tr> <tr><th>Name <font color=red>*</font>:</th><td><input type="text" name="pname" placeholder="Enter patient name"required/></td></tr> <tr><th>BloodGroup <font color=red>*</font>:</th><td><select name="dropdown"> <option value="A+ve" selected>A+ve</option> <option value="B+ve">B+ve</option> <option value="0+ve">O+ve</option> <option value="AB+ve">AB+ve</option> <option value="A-ve">A-ve</option> <option value="B-ve">B-ve</option> <option value="O-ve">O-ve</option> <option value="AB-ve">AB-ve</option> </td></tr> <tr><th align="left">Date Of Birth <font color=red>*</font>:</th><td><input type="date" name="pdob"required/></td></tr> <tr><th>Gender <font color=red>*</font>:</th><td><input type="radio" name="pgender"value="Male"/>Male <input type="radio" name="pgender"value="Female"/>Female <input type="radio" name="pgender"value="Others"/>Others</td></tr> <tr><th>Password <font color=red>*</font>:</th><td><input type="text" name="ppwd" placeholder="Enter your password"required/><font color=grey><font color=red>*</font>which is used for login with atleast 5 characters</font></td></tr> <tr><th>Address <font color=red>*</font>:</th><td><textarea rows="5" cols="50" name="paddress" placeholder="Enter patient address"required></textarea></td></tr> <tr><th>Phone No <font color=red>*</font>:</th><td><input type="number" name="pphno" placeholder="Enter valid phone number"required/><font color=grey><font color=red>*</font>must have 10 digit</font></td></tr> <tr><th>Email <font color=red>*</font>:</th><td><input type="text" name="pemail" placeholder="Enter valid email id"required/></td></tr> <tr><th></th><td><br><br><input type="submit" name="sub" value="SUBMIT"></td></tr> </table> </form> </center> </body> </html <?php NSS COLLEGE , RAJAKUMARY Page 49 if(isset($_POST['sub'])) { $conn = mysqli_connect ("localhost","root",""); if(!$conn) {die("could not connect:".mysqli_error());} else echo"successful connection<br>"; $db_fnd=mysqli_select_db($conn,"project"); if(!$db_fnd) {die("could not connect:".mysqli_error() );} else echo"successful connection<br>"; $pid=$_POST['pid']; $pname=$_POST['pname']; $pbg=$_POST['dropdown']; $pgender=$_POST['pgender']; $ppwd=$_POST['ppwd']; $paddress=$_POST['paddress']; $pphno=$_POST['pphno']; $pemail=$_POST['pemail']; $rl="patient"; $qr=mysqli_query($conn,"INSERT INTO patient VALUES ('$pid','$pname','$pbg','$pgender','$ppwd','$paddress','$pphno','$pemail')"); $qry=mysqli_query($conn,"INSERT INTO login VALUES('$pid','$ppwd','$rl')");//(d_id,d_pwd) if($qr) { if($qry) { echo"Registration Successful<br>"; header("refresh:3;url=plogin.php"); } } else { echo"Registration Unsuccessful:<hr>".mysqli_error($conn); header("refresh:5;url=patient.php"); } } ?> NSS COLLEGE , RAJAKUMARY Page 50 <script> function Regis() { var pi=document.forms["pform"]["pid"]; var pn=document.forms["pform"]["pname"]; var pbgrp=document.forms["pform"]["dropdown"]; var pg=document.forms["pform"]["pgender"]; var p_pwd=document.forms["pform"]["ppwd"]; var pad=document.forms["pform"]["paddress"]; var p_phno=document.forms["pform"]["pphno"]; var pem=document.forms["pform"]["pemail"]; if(pi.value==" ") { alert("Please enter Patient Id"); pi.focus(); return false; } if(pn.value==" ") { alert("Please enter name"); pname.focus(); return false; } var m=/^[A-Za-z]+$/; if(!pn.value.match(m)) { alert("Please enter a valid name"); pn.focus(); return false; } if(pbgrp.value==" ") { alert("Please enter patient's blood group"); pbgrp.focus(); return false; } if(pg.value==" ") { NSS COLLEGE , RAJAKUMARY Page 51 alert("Please enter gender"); pg.focus(); return false; } if(p_pwd.value==" ") { alert("Please enter password"); p_pwd.focus(); return false; } if(p_pwd.value.length < 0||p.value.length < 5 ) { alert("Enter a password with atleast 5 characters"); p_pwd.focus(); return false; } if(pad.value==" ") { window.alert("Please enter address"); pad.focus(); return false; } var as=/^[A-Za-z ]+$/; if(!pad.value.match(as)) { alert("Please enter a valid address"); pad.focus(); return false; } if(p_phno.value==" ") { alert("Please enter phone number"); p_phno.focus(); return false; } if(p_phno.value.length !=10) NSS COLLEGE , RAJAKUMARY Page 52 { alert("The mob_no must be 10 digits"); p_phno.focus(); return false; } var mn=/^[0-9]+$/; if(!p_phno.value.match(mn)) { alert("Please enter a valid mobile number"); p_phno.focus(); return false; } if(pem.value==" ") { alert("Please enter an email_id"); pem.focus(); return false; } if(pem.value.indexOf("@",0)<0) { alert("Please enter a valid email_id"); pem.focus(); return false; } if(pem.value.indexOf(".com",0)<0) { alert("Please enter a valid email_id"); pem.focus(); return false; } return true; } </script> Blood stock ; <?php require_once 'Connection.php'; NSS COLLEGE , RAJAKUMARY Page 53 ?> <html> <body><br> <h1 align="center">Blood Stock</h1> <br><center><br> <table align=center> <tr><th align="left">BLOOD GROUP : <form method="post"> <select name="dropdown"> <option value="" selected>-- SELECT --</option> <option value="A+ve">A+ve</option> <option value="B+ve">B+ve</option> <option value="O+ve">O+ve</option> <option value="AB+ve">AB+ve</option> <option value="A-ve">A-ve</option> <option value="B-ve">B-ve</option> <option value="O-ve">O-ve</option> <option value="AB-ve">AB-ve</option> </select> <input type="submit" name="search" value= "SEARCH BY BLOOD GROUP" /></th> <th><input type="submit" name="view" value= "VIEW ALL Blood Bags" /> </form> </th></tr> </table> <?php include("connection.php"); // VIEW if(isset($_POST['view'])) { $qr=" SELECT * FROM blood_stock,donor where blood_stock.did=donor.d_id"; $qry=mysqli_query($conn,"$qr") or die("Error:".mysqli_error($conn)); $n=mysqli_num_rows($qry); echo "[ <b><big> Total Blood Bags Available : ".$n."</big></b> ] </p>"; echo "<table border=1 width=80% height=20%> <tr> NSS COLLEGE , RAJAKUMARY Page 54 <th>SLNO</th> <th>BLOOD GROUP</th> <th>QUANTITY</th> </tr>"; $i=1; while($row=mysqli_fetch_array($qry)) { echo "<tr> <td>".$i++."</td> <td>".$row['d_bgroup']."</td> <td>".$row['quantity']."</td> </tr>"; } echo "</table>"; } // SEARCH if(isset($_POST['search'])) { $d_bgroup=$_POST['dropdown']; if($d_bgroup!="") { $qr=" SELECT * FROM blood_stock,donor where blood_stock.did=donor.d_id and d_bgroup like '".$d_bgroup."'"; $qry=mysqli_query($conn,"$qr") or die("Error:".mysqli_error($conn)); if (mysqli_num_rows($qry)<1) { echo "!!! No Blood Bag available for the Blood Group <b><big>".$d_bgroup."</big></b> !!!</p>"; } else { $n=mysqli_num_rows($qry); echo "Blood Bag available for the Blood Group <b><big>".$d_bgroup."</big></b> [ <b><big> Total : ".$n."</big></b> ] </p>"; echo "<table align=center valign=middle border=1 width=50% cellpadding=5 cellspacing=3> <tr> <th>SLNO</th> <th>BLOOD GROUP</th> <th>DONATED DATE</th> <th>EXPIRY DATE</th> </tr>"; NSS COLLEGE , RAJAKUMARY Page 55 $i=1; while($row=mysqli_fetch_array($qry)) { echo "<tr> <td>".$i++."</td> <td>".$row['d_bgroup']."</td> <td>".$row['donated_date']."</td> <td>".$row['expiry_date']."</td> <td align=center> <form action=dltdonor.php method=POST> <input type=hidden name=d_id value=".$row['d_id']."> <input type=submit name=dl value=Delete> </form> <form action=updtdonor.php method=POST> <input type=hidden name=d_id value=".$row['d_id']."> <input type=submit name=up value=Update> </form> </td> </tr>"; } echo "</table>"; } } else { echo "<br><br><p id=err>Please specify the Blood Group for Checking !!!</p>"; } } ?> </body></html> Booking ; <?php include('connection.php'); if(isset($booked)) { $sql="insert into booking(bid,pid,needed_date,quantity,doctor_name,purpose,booking_date) NSS COLLEGE , RAJAKUMARY Page 56 values('$bid','$pid','$needed_date','$quantity','$doctor_name','$purpose','$booking_date')"; if(mysqli_query($con,$sql)) { $msg= "<h1 style='color:blue'>You have Successfully booked </h1><h2><a href='vorder.php'> <u>View </u></a></h2>"; } } ?> <html> <head> <title>Online Booking</title> <link rel="stylesheet" type="text/css" href="pro1.css"> </head> <body align="center"> <?php ?> <h1><b><u> Booking</u></b> </h1><br> <?php if() echo @$msg; ?> <!--Form Containe Start Here--> <form method="post"> <table align="center"> <tr><th align="left">Booking ID :</th> <td align="left"> <input type="text" value="<?php echo $result['bid']; ?>" readonly="readonly" name="bid" required></td></tr> <tr><th align="left">Patient ID :</th> <td align="left"><input type="text" value="<?php echo $result['pid']; ?>" readonly="readonly" name="pid" required/></td></tr> <tr><th align="left">Needed Date :</th> <td align="left"><input type="date" name="needed_date" placeholder="Type Needed Date"required></td></tr> NSS COLLEGE , RAJAKUMARY Page 57 <tr><th align="left">Quantity :</th> <td align="left"><input type="number" name="quantity" placeholder="Enter Needed Number Of Bags" required></td></tr> <tr><th align="left"> Doctor Name :</th> <td align="left"><input type="text" name="doctor_name" placeholder="Enter Doctor Name"required></td></tr> <tr><th align="left">Purpose :</th> <td align="left"><textarea Rows="5" Cols="25" name="purpose"></textarea></td></tr> <tr><th></th><td align="left"><br><br><br><br><br><input type="submit"value="BOOK" name="booked" required/></td></tr> </table> </form><br> <table border=1 width=80% height="20%"> <tr> <th>SLNO</th> <th>BOOKING ID</th> <th>NEEDED DATE</th> <th>QUANTITY</th> <th>DOCTOR NAME</th> <th>PURPOSE</th> <th>BOOKING DATE</th> </tr> <?php session_start(); $pid=$_SESSION['pid']; $date=date("Y-m-d"); include("connection.php"); $qr=" SELECT * FROM booking where bid='$pid'"; NSS COLLEGE , RAJAKUMARY Page 58 $qry=mysqli_query($conn,"$qr") or die("Error:".mysqli_error($conn)); $i=1; while($row=mysqli_fetch_array($qry)) { echo "<tr> <td>".$i++."</td> <td>".$row['bid']."</td> <td>".$row['needed_date']."</td> <td>".$row['quantity']."</td> <td>".$row['doctor_name']."</td> <td>".$row['purpose']."</td> <td>".$row['booking_date']."</td> <td align=center><br> <form action=delete_booking.php method=POST> <input type=hidden name=bid value=".$row['bid']."> <input type=submit name=dl value=CANCEL> </form> <br> </td> </tr>"; } ?> </table> </body> </html> Billing ; <!DOCTYPE html> <html> <head> <title>Billing</title> <meta http-equiv="refresh" content="20"> <style type="text/css"> body { //background-color: lightgrey; NSS COLLEGE , RAJAKUMARY Page 59 text-align: center; margin: 0; font-family: Calibri; } .form input, select { font-family: "Times New Roman"; padding: 5px; color: teal; font-stretch: 10px; //background-color: lightgrey; border-width: 0px 0px 1px 0px; border-bottom-color: tomato; } input[type=submit],[type=reset] { font-family: "Times New Roman"; padding: 10px; width: 60px; height: 40px; color: teal; border-radius: 40px; cursor: pointer; } input[type=submit]:hover,[type=reset]:hover { font-family: "Times New Roman"; padding: 10px; width: 60px; height: 40px; background-color: teal; color: white; border-radius: 40px; box-shadow: 2px 2px grey; cursor: pointer; } </style> </head> NSS COLLEGE , RAJAKUMARY Page 60 <body> <form method="post" class="form"> <table align="center"> <tr><th>Name : </th> <td><input type="text" name="name" placeholder="Enter your Name"></td> </tr> <tr><th>Mobile : </th> <td><input type="number" name="mob" placeholder="Mobile Number"></td> </tr> <tr><th>Age : </th> <td><input type="number" name="age" placeholder="Age" min="18" max="50"></td> </tr> <!--<tr><th>Time : </th> <td><input type="time" name="time"></td> </tr>--> <tr><th>Bags (purchased) : </th> <td><select name="bp"> <option value="0" selected>Nill</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select><select name="bgrp"> <option value="" selected>-- SELECT --</option> <option value="A+ve">A+ve</option> <option value="B+ve">B+ve</option> <option value="O+ve">O+ve</option> <option value="AB+ve">AB+ve</option> <option value="A-ve">A-ve</option> <option value="B-ve">B-ve</option> <option value="O-ve">O-ve</option> NSS COLLEGE , RAJAKUMARY Page 61 <option value="AB-ve">AB-ve</option> </select></td> </tr> <tr><th>Bags (donated) : </th> <td><select name="bd"> <option value="0" selected>Nill</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select><input type="text" name="did" placeholder="By whom ?"></td> </tr> <tr><th colspan="2" align="center"><input type="checkbox" name="agree" checked> I agree that all the information entered are correct</th> </tr> <tr align="center"><th colspan="2"><input type="submit" name="submit" value="Proceed">&nbsp;&nbsp;&nbsp;&nbsp;<input type="reset" name="reset" value="Clear"></th> </tr> </table> </form> </body> </html> <?php include('connection.php'); if(isset($_POST['submit'])) { $nm=$_POST['name']; $mob=$_POST['mob']; $age=$_POST['age']; $did=$_POST['did']; $purchase=$_POST['bp']; $blood=$_POST['bgrp']; $donate=$_POST['bd']; NSS COLLEGE , RAJAKUMARY Page 62 echo "<HR>"; $date=date("d-M-Y"); $ddate=date("Y-m-d"); $edate=date("Y-m-d",strtotime("+35 days")); if($purchase!='0') { if($blood!=""){ if ($purchase>0 && $donate>0) { if ($purchase>$donate) $res=$purchase-$donate; else if ($purchase<=$donate) $res=0; } else { if ($purchase!='0') $res=$purchase; else if ($donate!='0') $res=0; } echo "Name : ".$nm; echo "<BR>Mobile : +91 ".$mob; echo "<BR>Age : ".$age; echo "<BR>Purchased (Rs 950/bag) : ".$purchase."bags of Blood Group ".$blood; echo "<BR>Donated : ".$donate; echo "<BR><HR><BR>"; echo "Date : ".$date; echo "<BR>Bill : Rs ".$res*950; echo "<BR><BR><HR><BR>"; //$qry1="update from blood_stock where "; } else echo "<BR>Please specify Blood Group!"; } else if($donate!='0') { if ($did) { NSS COLLEGE , RAJAKUMARY Page 63 echo "Name : ".$nm; echo "<BR>Mobile : +91 ".$mob; echo "<BR>Age : ".$age; echo "<BR>Donated : ".$donate; echo "<BR>Date : ".$date; echo "<BR><HR><BR>"; //$didres="select d_id from donor where d_name like '".$did."'"; //echo "select d_id from donor where d_name like '".$did."'"; //$didresult=mysqli_query($conn,"$didres") or die("Error:".mysqli_error($conn)); //while($row=mysqli_fetch_array($didresult)) //{ //echo "insert into blood_stock values ('',$donate,$ddate,$edate,".$row['d_id'].")"; //$qry2="insert into blood_stock values ('',$donate,$ddate,$edate,".$row['d_id'].")"; $didres="select * from blood_stock"; $didresult=mysqli_query($conn,"$didres") or die("Error:".mysqli_error($conn)); $n=mysqli_num_rows($didresult); //echo "insert into blood_stock(bagid,quantity,donated_date,expiry_date,did) values ('".$n++."',$donate,$ddate,$edate,$did)"; $qry2="insert into blood_stock(bagid,quantity,donated_date,expiry_date,did) values ('".$n++."',$donate,$ddate,$edate,$did)"; $result=mysqli_query($conn,"$qry2") or die("Error:".mysqli_error($conn)); if($result) echo "Successfully Inserted..."; //echo "Bill : Rs ".$res*950; //echo "<BR><BR><HR><BR>"; } else echo "<BR>Please specify Donor Name!"; NSS COLLEGE , RAJAKUMARY Page 64 } else echo "<BR>Fill in the details!"; } ?> 6.3 Output Report Design The output is designed in such a way that it may acquire the full satisfaction of the system user. The output devices usually used are printers and VDU. So the output can be hardcopy outputs or display outputs. As the outputs is the most important source of information to the users, better design should improve the system’s relationship with us and also help in decision making. The formatted output is designed in order to understand the facts at a glance. Each column is labelled with suitable headings. Another thing that is to be considered is the output devices capability, print capability, response time, requirements etc. NSS COLLEGE , RAJAKUMARY Page 65 7. SYSTEM TESTING AND IMPLEMENTATION Testing Software testing is a critical element of software quality assurance and represents the ultimate review of specification, design and coding. In fact, testing is the one step in the software engineering process that could be viewed as destructive rather than constructive. A strategy for software testing integrates software test case design methods into a well-planned series of steps that result in the successful construction of software. Testing is the set of activities that can be planned in advance and conducted systematically. The underlying motivation of program testing is to affirm software quality with methods that can economically and effectively apply to both strategic to both large and small-scale systems. Why should We Test ? Although software testing is itself an expensive activity, yet launching of software without testing may lead to cost potentially much higher than that of testing, specially in systems where human safety is involved. In the software life cycle the earlier the errors are discovered and removed, the lower is the cost of their removal. Who should Do the Testing ? o Testing requires the developers to find errors from their software. o It is difficult for software developer to point out errors from own creations. o Many organisations have made a distinction between development and testing phase by making different people responsible for each phase. What should We Test ? We should test the program’s responses to every possible input. It means, we should test for all valid and invalid inputs. Suppose a program requires two 8 bit integers as inputs. Total possible combinations are 28x28. If only one second it required to execute one set of inputs, it may take 18 hours to test all combinations. Practically, inputs are more than two and size is also more than 8 bits. We have also not considered invalid inputs where so many combinations are possible. Hence, complete testing is just not possible, although, we may wish to do so. STRATEGIC APPROACH TO SOFTWARE TESTING The software engineering process can be viewed as a spiral. Initially system engineering defines the role of software and leads to software requirement analysis where the information domain, functions, behavior, performance, constraints and validation criteria for software are established. Moving inward along the spiral, we come to design and finally to coding. To develop computer software we spiral in along streamlines that decrease the level of abstraction on each turn. NSS COLLEGE , RAJAKUMARY Page 66 UNIT TESTING MODULE TESTING Component Testing SUB-SYSTEM TESING SYSTEM TESTING Integration Testing ACCEPTANCE TESTING User Testing 7.1. Unit Testing Unit testing focuses verification effort on the smallest unit of software design, the module. The unit testing we have is white box oriented and some modules the steps are conducted in parallel. 1. WHITE BOX TESTING This type of testing ensures that All independent paths have been exercised at least once All logical decisions have been exercised on their true and false sides All loops are executed at their boundaries and within their operational bounds All internal data structures have been exercised to assure their validity. To follow the concept of white box testing we have tested each form .we have created independently to verify that Data flow is correct, All conditions are exercised to check their validity, All loops are executed on their boundaries. 2. BASIC PATH TESTING Established technique of flow graph with Cyclomatic complexity was used to derive test cases for all the functions. The main steps in deriving test cases were: NSS COLLEGE , RAJAKUMARY Page 67 Use the design of the code and draw correspondent flow graph. Determine the Cyclomatic complexity of resultant flow graph, using formula: V(G)=E-N+2 or V(G)=P+1 or V(G)=Number Of Regions Where V(G) is Cyclomatic complexity, E is the number of edges, N is the number of flow graph nodes, P is the number of predicate nodes. Determine the basis of set of linearly independent paths. 3. CONDITIONAL TESTING In this part of the testing each of the conditions were tested to both true and false aspects. And all the resulting paths were tested. So that each path that may be generate on particular condition is traced to uncover any possible errors. 4. DATA FLOW TESTING This type of testing selects the path of the program according to the location of definition and use of variables. This kind of testing was used only when some local variable were declared. The definition-use chain method was used in this type of testing. These were particularly useful in nested statements. 5. LOOP TESTING In this type of testing all the loops are tested to all the limits possible. The following exercise was adopted for all loops: All the loops were tested at their limits, just above them and just below them. All the loops were skipped at least once. For nested loops test the inner most loop first and then work outwards. For concatenated loops the values of dependent loops were set with the help of connected loop. Unstructured loops were resolved into nested loops or concatenated loops and tested as above. Each unit has been separately tested by the development team itself and all the input have been tested. 7.2 Integration Testing+ The purpose of unit testing is to determine that each independent module is correctly implemented. This gives little chance to determine that the interface between modules is also correct, and for this reason integration testing must be performed. One specific target of integration testing is the NSS COLLEGE , RAJAKUMARY Page 68 interface: whether parameters match on both sides as to type, permissible ranges, meaning and utilization. 7.3 System Testing Of the three levels of testing, the system level is closet to everyday experiences. We test many things; a used car before we buy it, an on-line cable network service before we subscribe, and so on. A common pattern in these familiar forms is that we evaluate a product in terms of our expectations; not with respect to a specification or a standard. Consequently, goal is not to find faults, but to demonstrate performance. Because of this we tend to approach system testing from a functional standpoint rather than from a structural one. Since it is so intuitively familiar, system testing in practice tends to be less formal than it might be, and is compounded by the reduced testing interval that usually remains before a delivery deadline. During system testing, we should evaluate a number of attributes of the software that are vital to the user and are listed below. These represent the operational correctness of the product and may be part of the software specifications. Usable - Is the product convenient, clear, and predictable? Secure - Is access to sensitive data restricted to those with authorization? Compatible - Will the product work correctly in conjunction with existing data, software, and procedures? Dependable - Do adequate safeguards against failure and methods for recovery exist in the product? Documented - Are manuals complete, correct, and understandable? 7.4 Validation Testing o It refers to test the software as a complete product. o This should be done after unit & integration testing. o Alpha, beta & acceptance testing are nothing but the various ways of involving customer during testing. o IEEE has developed a standard (IEEE standard 1059-1993) entitled “ IEEE guide for software verification and validation “ to provide specific guidance about planning and documenting the tasks required by the standard so that the customer may write an effective plan. NSS COLLEGE , RAJAKUMARY Page 69 o Validation testing improves the quality of software product in terms of functional capabilities and quality attributes. 7.5 IMPLEMENTATION Implementation is simply means converting a new system design in to operation. This involves creating computer compatible files, training the operating staff and installing the hardware. The important thing to be noted is that, not interrupt the functioning of the organization during implementation. In system implementation, user training is crucial for minimizing in the resistance to change and giving the new system a chance to prove its worth. Training aids, such as user friendly manuals, a data dictionary, job performance aids that communicate information about the new system, and helps screens, provide the user with a good start on the system. Maintenance follows conversion to extend that changes are necessary to maintain satisfactory operation relative to changes in the user’s environment. Maintenance often includes minor enhancement or corrections to those problems that comes late in the system operation. The team implementation has different meaning, ranging the conversion of a basic application to a complete replacement of a computer system. The procedure, however, is virtually the same implementation is used to mean the process of converting a new or a revised system design into an operational one. Conversion is an aspect of implementation. The other aspects are the post implementation review and software maintenance. There are two types of implementations: Implementation of a computer system to replace a manual system. Implementation of a new computer system to replace an existing one. Implementation of modified application to replace an existing one. Once installed the application programs are used for many years. However, both the organization and users may change and the environment may differ over years. Implementation is the stage of the project when the theoretical design is turned into a working system. The implementation stage is a system project in its own right. It includes careful planning, investigation of current system and its constraints on implementation, design of methods to achieve the changeover, training of the staff in the changeover procedure and evaluation of the changeover method. The first task in implementation is planning deciding on the methods and time scale to be adopted. Once the planning has been completed, the major effort is to ensure that the programs in the system are working properly when the staff has been trained, the complete system involving both computer and user can be executed effectively. Thus, the clear plans are prepared for the activities. NSS COLLEGE , RAJAKUMARY Page 70 Successful implementation of the new system design is a critical phase in the system life cycle. Implementation means the process of converting a new or a revised system design into an operational one. This involves the following: Creating computer compactable files. Training the operating staffs. Training Training is a vital part of the computer based information system. The main aim of training is to make aware of the system concepts to users in detail. The training focuses on two issues: User capabilities. Name of the system being installed The training sections that are given to the operators and end users are different. The operators need to know the concept of system in deep. However, the end user training is only concerned with how to perform the transaction and how to access the transaction details. There are mainly three types of training: Brain storming section Seminar Computer awareness training Brain Storming Section It is a method of fact-finding techniques and unknowingly the participants can be made aware of various system concepts. Seminars In the seminar, the emphasis has to lie on the various features of the system. Use of various reports input and output procedures etc. after the seminars if require a practical workshop can be organized in order to have proper control over the operational staff. Computer Awareness Training (Technical training) Training is given based upon the environment in which the system is running and various software environments helping the working of the system. NSS COLLEGE , RAJAKUMARY Page 71 Conversion Conversion is the process of changing the old system to the new one. There are four wellknown conversion methods, which offer a range of advantages and disadvantages. The commonly used conversion methods are Parallel conversion Direct cutover conversion Phase in method Pilot approach Parallel Conversion This is considered as the most secure method, where both the systems (existing system and proposed system) are running in parallel. This method have some advantages, firstly the continued use of old system provides a fallback when a new system fails. Secondly, this method provides an ultimate testing of the new system because; both systems are running in parallel. So analysis of results from the system is possible. The disadvantage is that keeping the two systems running in the same time cause in the overheads. Direct Cutover Conversion In this method, the users use the new system only. The old system is completely replaced with the new system. This method is very cheap and fast but it is quite hazardous. The direct cutover methods convert from the old system to the new system. This method forces all system users to make the new system work. Direct cutover requires careful planning. Training sessions must be scheduled and maintained. Phase In Method The phase in method is used when it is not possible to install a new system throughout the organization all at once. This method supports a phased approach to system conversion. With this approach, implementation can be staged with conversion to the new system taking place by degrees e.g. some files may be converted to the new system in other files will be used in the old system. The result of the system implementation, will communicate the early users to other personals who are waiting for implementation. Based upon the results the other parts of the system may installed or not. Pilot Approach NSS COLLEGE , RAJAKUMARY Page 72 In this approach, a working version of information system is implemented in one part of the organization. When the system is approved for its performance, it is installed throughout the organization all at once or stage by stage. Post Implementation Review Post implementation review is conducted after the installation of the package. In addition, it is conducted to determine how closely the new system conforms to plan. The new system performance and user specifications are audited and checked for any differences. System Maintenance This software can be modified as need occurs. Maintenance includes all the activities after installation of the software that is performed to keep the system operational. The process of maintaining involves. Understanding the existing software Understand the effect of change Test for satisfaction Maintenance can be done to this project by simply adding the new requirements that are the form of database the system can be modified. The maintenance process also helps to remove an error that resides in the system even after testing process. NSS COLLEGE , RAJAKUMARY Page 73 8. CONCLUSION AND FUTURE ENHANCEMENT Conclusion It has been a great pleasure for me to work on this exciting and challenging project. This project proved good for me as it provided practical knowledge of not only programming in ASP.NET and VB.NET web based application and no some extent Windows Application and SQL Server, but also about all handling procedure related with “Blood Bank Management System”. It also provides knowledge about the latest technology used in developing web enabled application and client server technology that will be great demand in future. This will provide better opportunities and guidance in future in developing projects independently. The project in corporate with requirements of Data Management System For Blood Bank. This system has been developed as versatile and user friendly as possible keeping in mind and incorporated the advanced features in this technology. It has been designed in such a way that it can be updated accurately and efficiently and is to modify. The user of the package will have no doubt about its mode of operation because of its simplicity and appropriate screen messages. Using Visual Basic 6.0 and Microsoft Access 2007, the system was developed and tested with all possible samples of data. As whole, the system was well planned and designed. The performance of the system is provided to be efficient. All the customers receive on the overall benefits through the system. The system provides flexibility for incorporating new features, which may be necessary in future keeping in mind need of the end users, attempts has been made to cover as much areas as possible within stipulated time limits. BENEFITS: The project is identified by the merits of the system offered to the user. The merits of this project are as follows: It’s a web-enabled project. This project offers user to enter the data through simple and interactive forms. This is very helpful for the client to enter the desired information through so much simplicity. The user is mainly more concerned about the validity of the data, whatever he is entering. There are checks on every stages of any new creation, data entry or updation so that the user cannot enter the invalid data, which can create problems at later date. Sometimes the user finds in the later stages of using project that he needs to update some of the information that he entered earlier. There are options for him by which he can update the records. Moreover there is restriction for his that he cannot change the primary data field. This keeps the validity of the data to longer extent. NSS COLLEGE , RAJAKUMARY Page 74 User is provided the option of monitoring the records he entered earlier. He can see the desired records with the variety of options provided by him. From every part of the project the user is provided with the links through framing so that he can go from one option of the project to other as per the requirement. This is bound to be simple and very friendly as per the user is concerned. That is, we can sat that the project is user friendly which is one of the primary concerns of any good project. Data storage and retrieval will become faster and easier to maintain because data is stored in a systematic manner and in a single database. Decision making process would be greatly enhanced because of faster processing of information since data collection from information available on computer takes much less time then manual system. Allocating of sample results becomes much faster because at a time the user can see the records of last years. Easier and faster data transfer through latest technology associated with the computer and communication. Through these features it will increase the efficiency, accuracy and transparency. LIMITATIONS: The size of the database increases day-by-day, increasing the load on the database back up and data maintenance activity. Training for simple computer operations is necessary for the users working on the system FUTURE ENHANCEMENTS The proposed system is Blood Bank Management System. We can enhance this system by including more facilities for entering and viewing the feed donation, booking and ideas and for clearing doubts about blood donation in the common discussion window. NSS COLLEGE , RAJAKUMARY Page 75 APPENDIX Home page Login page NSS COLLEGE , RAJAKUMARY Page 76 Admin page Donor page NSS COLLEGE , RAJAKUMARY Page 77 Patient page Donor registration page ; NSS COLLEGE , RAJAKUMARY Page 78 Patient registration page ; NSS COLLEGE , RAJAKUMARY Page 79 BIBLIOGRAPHY K K Agarwal and Yogesh Singh, Software Engineering E Award, System Analysis And Design RamezElmasri. Fundamentals of Database System Peter Norton,Guide to VB6 WEB SOURCE http://www.youtube.com http://www.vbtutor.net NSS COLLEGE , RAJAKUMARY Page 80