The Online Blood Banking and profile searching is to create an e-Information about the donor and organization that are related to donating the blood. Through this application any person who is interested in donating the blood can register himself in the same way if any organization wants to register itself with this site that can also register. Moreover if any general consumer wants to make reuest blood online he can also take the help of this site. !dmin is the main authority who can do addition" deletion" and modification if reuired. 1.2. Project Description This pro#ect is aimed to developing an online Blood $onation Information. The entire pro#ect has been developed keeping in view of the distributed client server computing technology" in mind. The Blood $onation !gent is to create an e-Information about the donor and organization that are related to donating the blood. Through this application any person who is interested in donating the blood can register himself in the same way if any organization wants to register itself with this site that can also register. Moreover if any general consumer wants to make reuest blood online he can also take the help of this site. !dmin is the main authority who can do addition" deletion" and modification if reuired. The pro#ect has been planned to be having the view of distributed architecture" with centralized storage of the database. The application for the storage of the data has been planned. %sing the constructs of M&-&'( &erver and all the user interfaces has been designed using the !&).*et technologies. The database connectivity is planned using the +&'( ,onnection- methodology. The standards of security and data protective mechanism have been given a big choice for proper usage. The application takes care of different modules and their associated reports" which are produced as per the applicable strategies and standards that are put forwarded by the administrative staff. The entire pro#ect has been developed keeping in view of the distributed client server computing technology" in mind. The specification has been normalized up to .*/ to eliminate all the anomalies that may arise due to the database transaction that are e0ecuted by the general users and the organizational administration. The user interfaces are browser specific to give distributed accessibility for the overall system. The internal database has been selected as M&- &'( server 1222. The basic constructs of table spaces" clusters and inde0es have been e0ploited to provide higher consistency and reliability for the data storage. The M&-&'( server 1222 was a choice as it provides the constructs of high-level reliability and security. The total front end was dominated using the !&).*et technologies. !t all proper levels high care was taken to check that the system manages the data consistency with proper business rules or validations. The database connectivity was planned using the latest +&'( ,onnection- technology provided by Microsoft ,orporation. The authentication and authorization was crosschecked at all the relevant stages. The user level accessibility has been restricted into two zones namely.
Problem Definition 2.1 Existin !"stem ,annot %pload and $ownload the latest updates. *o use of 3eb &ervices and 4emoting. 4isk of mismanagement and of data when the pro#ect is under development. (ess &ecurity. *o proper coordination between different !pplications and %sers. /ewer %sers 5 /riendly Dis#$v#nt#es 6. %ser friendliness is provided in the application with various controls. 1. The system makes the overall pro#ect management much easier and fle0ible. .. 4eadily upload the latest updates" allows user to download the alerts by clicking the %4(. 7. There is no risk of data mismanagement at any level while the pro#ect development is under process. 8. It provides high level of security with different level of authentication. 2.2. Propose$ !"stem To debug the e0isting system" remove procedures those cause data redundancy" make navigational seuence proper. To provide information about audits on different level and also to reflect the current work status depending on organization9auditor or date. To build strong password mechanism.
%$v#nt#es& %ser friendliness I provided in the application with various controls. The system makes the overall pro#ect management much easier and fle0ible. 4eadily upload the latest updates "allows user to download the alerts by clicking the url. It provides high level of security with different level of authentication. 'e#sibilit" !t($" )reliminary investigation e0amine pro#ect feasibility" the likelihood the system will be useful to the organization. The main ob#ective of the feasibility study is to test the Technical" Operational and :conomical feasibility for adding new modules and debugging old running system. !ll system is feasible if they are unlimited resources and infinite time. There are aspects in the feasibility study portion of the preliminary investigation; Technical /easibility Operation /easibility :conomical /easibility ).1. Tec*nic#l 'e#sibilit" The technical issue usually raised during the feasibility stage of the investigation includes the following; $oes the necessary technology e0ist to do what is suggested< $o the proposed euipments have the technical capacity to hold the data reuired to use the new system< 3ill the proposed system provide adeuate response to inuiries" regardless of the number or location of users< ,an the system be upgraded if developed< !re there technical guarantees of accuracy" reliability" ease of access and data security< :arlier no system e0isted to cater to the needs of =&ecure Infrastructure Implementation &ystem>. The current system developed is technically feasible. It is a web based user interface for audit workflow at *I,-,&$. Thus it provides an easy access to the users. The database>s purpose is to create" establish and maintain a workflow among various entities in order to facilitate all concerned users in their various capacities or roles. )ermission to the users would be granted based on the roles specified. Therefore" it provides the technical guarantee of accuracy" reliability and security. The software and hard reuirements for the development of this pro#ect are not many and are already available in-house at *I, or are available as free as open source. The work for the pro#ect is done with the current euipment and e0isting software technology. *ecessary bandwidth e0ists for providing a fast feedback to the users irrespective of the number of users using the system. ).2. Oper#tion#l 'e#sibilit" )roposed pro#ects are beneficial only if they can be turned out into information system. That will meet the organization>s operating reuirements. Operational feasibility aspects of the pro#ect are to be taken as an important part of the pro#ect implementation. &ome of the important issues raised are to test the operational feasibility of a pro#ect includes the following; - Is there sufficient support for the management from the users< 3ill the system be used and work properly if it is being developed and implemented< 3ill 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 reuirements have been taken into consideration. &o there is no uestion of resistance from the users that can undermine the possible application benefits. The well-planned design would ensure the optimal utilization of the computer resources and would help in the improvement of performance status. ).). Economic 'e#sibilit" ! system can be developed technically and that will be used if installed must still be a good investment for the organization. In the economical feasibility" the development cost in creating the system is evaluated against the ultimate benefit derived from the new systems. /inancial benefits must eual or e0ceed the costs. The system is economically feasible. It does not reuire any addition hardware or software. &ince the interface for this system is developed using the e0isting resources and technologies available at *I," There is nominal e0penditure and economical feasibility for certain.
!"stem %n#l"sis +.1. !oftw#re Re,(irement !pecific#tion -!R!. The software" &ite :0plorer is designed for management of web sites from a remote location. INTRODUCTION P(rpose& The main purpose for preparing this document is to give a general insight into the analysis and reuirements of the e0isting system or situation and for determining the operating characteristics of the system. !cope& This $ocument plays a vital role in the development life cycle ?&$(,@ and it describes the complete reuirement of the system. It is meant for use by the developers and will be the basic during testing phase. !ny changes made to the reuirements in the future will have to go through formal change approval process. DE/E0OPER! RE!PON!I1I0ITIE! O/ER/IE2& The developer is responsible for;
$eveloping the system" which meets the &4& and solving all the reuirements of the system< $emonstrating the system and installing the system at clientAs location after the acceptance testing is successful. &ubmitting the reuired user manual describing the system interfaces to work on it and also the documents of the system. ,onducting any user training that might be needed for using the system. Maintaining the system for a period of one year after installation. T*e mo$(les involve$ #re& 6. %$ministr#tion& In this module the !dministrator has the privileges to add all the Blood Broups" Blood Type" Organization" Type" ,ountry" &tate" ,ity" and (ocation. Ce can search all the info about the Organization" $onor. User %cco(nt& !ccountI$ %sername )assword %ser$esc Cint'uestion !nswer 4oleI$ !ctive '(nction#lit"
!ssociation %ser !ccount with %ser4ole. !ssociation %ser !ccount with Organisation. !ssociation %ser !ccount with personal $etails. !ssociation %ser !ccount with :mployee deatails. !ssociation %ser !ccount with Blood$onation $etails. %lerts& !ll fields are mandatory &elect user role &elect role id &elect role name UserRole& 4oleI$ 4ole*ame 4ole$esc !ctive '(nction#lit"& !ssociation user role with user !ccount %lerts& &elect 4ole Id &elect role name 1D% !t#te& &tateI$ &tate*ame &tate,ode &tate$esc ,ountryI$ !ctive '(nction#lit"& !ssociation state with city !ssocition state with !ddress
%lerts& &elect &tate id &elect state name Co(ntr"& ,ountryI$ ,ountry*ame ,ountry$esc ,ountry,ode !ctive '(nction#lit"& !ssociation state with country !ssocition state with !ddress %lerts& &elect countryId &elect countryname &elect country code 1D% Cit"& ,ityI$ ,ity*ame ,ity$esc ,ity,ode &tateI$ !ctive '(nction#lit"& !ssociation (ocation with city !ssocition !ddress with city. %lerts& &elect cityId &elect city*ane &elect state code 1D%0oc#tion& (ocationI$ (ocation*ame (ocation$esc (ocation,ode ,ityI$ )in code !ctive '(nction#lit"& !ssociation (ocation with !ddress. %lerts& &elect (ocationId &elect (ocation *ame &elect )incode. 1loo$3ro(p& BloodBroupI$ BloodBroup $escription !ctive '(nction#lit"& !ssociation Blood group with )ersonal details. %lerts& &elect BloodBroupI$ &elect BloodBroupI$ 1loo$ T"pe& BloodTypeI$ Type*ame Type$esc !ctive '(nction#lit"& !ssociation Blood type with )ersonal details. %lerts& &elect BloodBroupI$ &elect Type*ame Person#l Det#ils& %ser!ccountI$ /irst*ame Middle*ame (ast*ame :mail $OB 3eight Bender Image%4( BloodBroupI$ BloodType BloodType !ddressI$ ,ontact*oDOffice ,ontact*oD4esidence Mobile*o !ctive '(nction#lit"& !ssociation personal detaials with preferd location $ay Time $etails. %lerts& &elect user account id &elect :mail id &elect date of birth C#ll Center& In this module all the employee who has been appointed by !dmin will come. !dmin will add all the information of employee and assign user name and password to them. By using that user name and password they will enter to their login and can search for all the donor" and about all the blood reuest which have been made by either consumer" donor or any organization. ,all center people will assign donor to related reuest. Emplo"ee Det#il& :mpId *ame !ddress )hone :mail !ctive '(nction#lit"& !ssociation :mployee $etails type with user !ccounts. %lerts& &elect :mp Id &elect email id Donor& $onor is that person who is interested in donating their blood so they can register themselves through this website. If any reuirement comes then they will be contacted and they can donate their blood. !long with it they can search for the various organization locations wise and can also make reuest for blood if needed Don#tion 're,(encies& /reuency I$ /reuency $escription '(nction#lit"& !ssociation $onor /reuencies with Blood donation preferences. %lerts& &elect /reuency Id Donor Preferre$ Or#ni4#tion& %ser !ccount $ Organization I$ !ctive '(nction#lit"& !ssociation $onor preferred organization with personal details. %lerts& &elect user account id &elect organization id. Or#ni4#tion& In this module if any organization wants to register itself then it can do it. It can also search for donor location wise and if needed then it can also make reuest for blood Or#ni4#tion& OrgI$ Org*ame OrgType :mail Org!ddrI$ OrgImage%4( Org$escription ,ontact*o Mobile*o !ctive ,omment '(nction#lit"& !ssociation organization type with Organization type. %lerts& &elect OrgId &elect :mail Or#ni4#tion T"pe& TypeI$ Type*ame Type $escription '(nction#lit"& !ssociation organization type with Organization. %lerts& &elect Type Id &elect Type *ame 5%RD2%RE RE6UIRE7ENT!&
)IE 1.F BCz )rocessor and !bove 4!M 861MB and !bove C$$ 12 BB Card $isk &pace and !bove !O'T2%RE RE6UIRE7ENT!&
8.1. D#t# 'low Di#r#ms -D'D. ! 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. ! full description of a system actually consists of a set of data flow diagrams. %sing two familiar notations Hourdon" Bane and &arson notation develops the data flow diagrams. :ach component in a $/$ is labeled with a descriptive name. )rocess is further identified with a number that will be used for identification purpose. The development of $/$>& is done in several levels. :ach process in lower level diagrams can be broken down into a more detailed $/$ in the ne0t level. The lop-level diagram is often called conte0t diagram. It consists a single process bit" which plays vital role in studying the current system. The process in the conte0t level diagram is e0ploded into other process at the first level $/$. The idea behind the e0plosion of a process into more process is that understanding at one level of detail is e0ploded into greater detail at the ne0t level. This is done until further e0plosion is necessary and an adeuate amount of detail is described for analyst to understand the process. (arry ,onstantine first developed the $/$ as a way of e0pressing system reuirements in a graphical from" this lead to the modular design. ! $/$ is also known as a +bubble ,hart- has the purpose of clarifying system reuirements and identifying ma#or transformations that will become programs in system design. &o it is the starting point of the design to the lowest level of detail. ! $/$ consists of a series of bubbles #oined by data flows in the system. D'D !971O0!& In the $/$" there are four symbols 6. ! suare defines a source?originator@ or destination of system data 1. !n arrow identifies data flow. It is the pipeline through which the information flows .. ! circle or a bubble represents a process that transforms incoming data flow into outgoing data flows. 7. !n open rectangle is a data store" data at rest or a temporary repository of data )rocess that transforms data flow. &ource or $estination of data $ata flow $ata &tore CON!TRUCTIN3 % D'D& &everal rules of thumb are used in drawing $/$>&; 6. )rocess should be named and numbered for an easy reference. :ach name should be representative of the process. 1. The direction of flow is from top to bottom and from left to right. $ata 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. !n alternative way is to repeat the source symbol as a destination. &ince it is used more than once in the $/$ it is marked with a short diagonal. .. 3hen a process is e0ploded into lower level details" they are numbered. 7. The names of data stores and destinations are written in capital letters. )rocess and dataflow names have the first letter of each work capitalized ! $/$ typically shows the minimum contents of data store. :ach data store should contain all the data elements that flow in and out. 'uestionnaires should contain all the data elements that flow in and out. Missing interfaces redundancies and like is then accounted for often through interviews. !%I0ENT 'E%TURE! O' D'D:! 6. The $/$ shows flow of data" not of control loops and decision are controlled considerations do not appear on a $/$. 1. The $/$ does not indicate the time factor involved in any process whether the dataflow take place daily" weekly" monthly or yearly. .. The seuence of events is not brought out on the $/$. T9PE! O' D%T% '0O2 DI%3R%7! 6. ,urrent )hysical 1. ,urrent (ogical .. *ew (ogical 7. *ew )hysical CURRENT P59!IC%0& In ,urrent )hysical $/$ proecess label include the name of people or their positions or the names of computer systems that might provide some of the overall system-processing label includes an identification of the technology used to process the data. &imilarly data flows and data stores are often labels with the names of the actual physical media on which data are stored such as file folders" computer files" business forms or computer tapes. CURRENT 0O3IC%0& The physical aspects at the system are removed as mush as possible so that the current system is reduced to its essence to the data and the processors that transform them regardless of actual physical form. NE2 0O3IC%0; This is e0actly like a current logical model if the user were completely happy with he user were completely happy with the functionality of the current system but had problems with how it was implemented typically through the new logical model will differ from current logical model while having additional functions" absolute function removal and inefficient flows recognized. NE2 P59!IC%0& The new physical represents only the physical implementation of the new system. RU0E! 3O/ERNIN3 T5E D'D:! PROCE!! 6@ *o process can have only outputs. 1@ *o process can have only inputs. If an ob#ect has only inputs than it must be a sink. .@ ! process has a verb phrase label. D%T% !TORE 6@ $ata cannot move directly from one data store to another data store" a process must move data. 1@ $ata 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 .@ ! data store has a noun phrase label. !OURCE OR !IN; The origin and 9or destination of data. 6@ $ata cannot move direly from a source to sink it must be moved by a process 1@ ! source and 9or sink has a noun phrase land D%T% '0O2 6@ ! $ata /low 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. 1@ ! #oin in $/$ means that e0actly the same data comes from any of two or more different processes data store or sink to a common location. .@ ! 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. 7@ ! $ata flow to a data store means update ?delete or change@. 8@ ! data /low from a data store means retrieve or use. ,onte0t $iagram Blood Donation Agent Future Use %$min Donor Organization Call Center D#t#1#se 1 st 0evel D'D:s 0evel 1 D'D& 'or %$min 7o$(le 0evel 1 D'D& 'or Users 7o$(le Admin login 0oin $#t# View of value Abilities details Value Abilities Table Call Center Login updating and editing Value Abilities Table D'D 'or Donor Cre#tion Insert New Donor Verify Data ! Verify Data !" Donor I$ Insert $onor Det#ils Donor $etails Insert Donor Id D'D 'or Oper#tor Cre#tion D'D 'or C#ll Center Cre#tion Insert New Operator Verify Data "! Verify Data "!" Operator Id Inser t Operator Details Operator $etails Insert Operator Id D'D for Donor Cre#tion Insert New Call Center Verify Data #! Verify Data #!" Call Center Id Insert Call Center Details ,all ,enter $etails Insert Call Center Id Donor Id $onor $etails Organizati on Details Donor Det#ils Blood Details Donor Details Insert New Donor Eerify $ata $! Eerify $ata $!"
Eerify $ata $!# Verify Data $!$ Eerify $ata 7.8 Dates Details Check in Organization Insert $onor Id Check for Dates Check for Appointm ent Details Check for Blood Type Eerify $ata 7.I Appointment Details Insert Insert $onor $etails 2or< 'low of %ll 7o$(les Administrator Logs In Login data Call Center Appointment Details Organiza tion Varios !eports "enerated the Donar View !andom Information for the App Donar Donor !eport Blood Details Call Center !eport Operator !eport Donar 8.2. U70 Di#r#ms
Use C#se Di#r#m& The unified modeling language allows the software engineer to e0press an analysis model using the modeling notation that is governed by a set of syntactic semantic and pragmatic rules. ! %M( system is represented using five different views that describe the system from distinctly different perspective. :ach view is defined by a set of diagram" which is as follows. %ser Model Eiew i. This view represents the system from the users perspective. ii. The analysis representation describes a usage scenario from the end-users perspective. !tr(ct(r#l mo$el view In this model the data and functionality are arrived from inside the system. This model view models the static structures. 1e*#vior#l mo$el view It represents the dynamic of behavioral as parts of the system" depicting the interactions of collection between various structural elements described in the user model and structural model view. Implement#tion 7o$el /iew In this the structural and behavioral as parts of the system are represented as they are to be built. Environment#l 7o$el /iew In this the structural and behavioral aspects of the environment in which the system is to be implemented are represented. %M( is specifically constructed through two different domains they are %M( !nalysis modeling" which focuses on the user model and structural model views of the system. %M( design modeling" which focuses on the behavioral modeling" implementation modeling and environmental model views. %se case $iagrams represent the functionality of the system from a user>s point of view. %se cases are used during reuirements elicitation and analysis to represent the functionality of the system. %se cases focus on the behavior of the system from e0ternal point of view. %ctors are e0ternal entities that interact with the system. :0amples of actors include users like administrator" bank customer Jetc." or another system like central database. Use c#se 7o$el SYSTEM NAME
Use case 1 Use case 2 Use case n !ctor !ctor Use C#ses of 1loo$ Don#tion %ent Interf#ce Use c#se 'or %$min 7o$(le
Use c#se 'or Donor 7o$(le 1loo$ Don#tion %ent Interf#ce Come )age (ogin )age $onar Come )age $onor !ccount $etail Make 4euest /or Blood Organization &earch )age &earch ,ontact & !bout us Donor Use c#se 'or C#ll Center 7o$(le 1loo$ Don#tion %ent Interf#ce
Come )age (ogin )age ,all ,enter Come )age Blood $onation $etail &earch $onor !ccording To 4euest &earch Blood $onor &earch ,ontact & !bout %& C#ll Center Use c#se 'or Or#ni4#tion 7o$(le Blood $onation !gent Interface Come )age (ogin )age Organization Come )age $onor&earch)age Make4euest/orBlood Organization!ccount$etail &earch ,ontact & !bout %& Or#ni4#tion Use case name (ogin Participating actors !dmin" $onor" ,all ,enter" Organization Flow of events The !ctor will give the user name and password to the system. The system will verify the authentication. Entry Condition The actor will enter the system by using username and password Exit condition If un authenticated should be e0ited Quality Requirements )assword must satisfy the comple0ity reuirements. Use case name !dmin 4egistration Participating actors !dmin Flow of events The !dmin will submit all the details and place in the application. Entry Condition Must satisfy all the norms given by the Blood $onation !gent interface site. Exit condition &uccessful or %n successful completion of creation of account. Quality Requirements !ll fields are mandatory. Use case name $onor 4egistration Participating actors $onor Flow of events The $onor must enter all his personal details. Entry Condition Eiew Come page Exit condition 4egistered $onor should be successfully logged out. :rror Message should be displayed on %n successful creation. Quality Best :rror Candling techniues. ,heck on Mandatory fields. Requirements Use case name ,all ,enter 4egistration Participating actors ,all ,enter Flow of events The ,all ,enter must enter all his personal details. Entry Condition Eiew Come page Exit condition 4egistered ,all ,enter should be successfully logged out. :rror Message should be displayed on %n successful creation. Quality Requirements Best :rror Candling techniues. ,heck on Mandatory fields. Use case name Organization 4egistration Participating actors Organization Flow of events The Organization must enter all his personal details. Entry Condition Eiew Come page Exit condition 4egistered Organization should be successfully logged out. :rror Message should be displayed on %n successful creation. Quality Requirements Best :rror Candling techniues. ,heck on Mandatory fields. !E6UENCE DI%3R%7! &euence $iagrams 4epresent the ob#ects participating the interaction horizontally and time vertically. !e,(ence Di#r#m for %$min
!dmin ; (ogin ; ,reate Bank !ccount ; (og Out %se url )ress login button )ress ,reate !ccount Time !e,(ence Di#r#m for Donor $onor ; (ogin ; !ccounts $B Bet login page ?@ )ress login button ?@ )ress create accounts button ?@ Ealidate forms ?@ !e,(ence Di#r#m for c#llcenter ,all ,enter ; (ogin ; !ccounts $B Bet login page ?@ )ress login button ?@ )ress create accounts button ?@ Ealidate forms ?@ !e,(ence Di#r#m for or#ni4#tion Organization ; (ogin ; !ccounts $B Bet login page ?@ )ress login button ?@ )ress create accounts button ?@ Ealidate forms ?@ !e,(ence Di#r#m 8 !dmin ; (ogin ; TG Ealidate ; $B
)ress login button?@ )ress !ccept94e#ect Button ; !ccount Ealidate !dmin Come )age &elect Ealidate or 4e#ect Transaction ?@ &elect Ealidate or 4e#ect !ccount?@ 4eports?@ 8.+. D#t#b#se Desin ER Di#r#ms ER $i#r#m for User %cco(nt #n$ Users
User%cco(nt& !ccountI$ %sername )assword %ser$esc Cint'uestion !nswer 4oleI$ User %cco(nt& Cas9 belo ngs UserRole& ER $i#r#m for User %cco(nt #n$ Or#nis#tion Or#nis#tion& OrgI$ Org*ame OrgType :mail Org!ddrI$ OrgImage%4( Org$escription ,ontact*o Mobile*o !ctive ,omment User %cco(nt Cas9 belo ngs Or#nis#tion& ER $i#r#m for Users %cco(nt #n$ Person#l Det#ils
User%cco(nt& !ccountI$ %sername )assword %ser$esc Cint'uestion !nswer 4oleI$ User %cco(nt& Cas9 belo ngs Person#l $et#ils ER $i#r#m for User %cco(nt #n$ Emplo"ee Det#ils ER $i#r#m for User Role #n$ 1loo$ User #cco(nt User %cco(nt& !ccountI$ %sername )assword %ser $esc Cint 'uestion !nswer 4ole I$ Cas9 belo ngs :mployee $etails %ser !ccount
ER $i#r#m for Donor 're,(encies #n$ 1loo$ Don#tion Preferences
Don#tion're,(encies& /reuencyI$ /reuency $escription !ctive 1loo$Don#tionPreference& )referenceI$ %ser!ccountI$ $onation/reuencyI$ 3antTo$onate3hitecells !ctive DonationFre'uen%ies& 1loo$Don#tionPrefere nce Cas9 belo ngs ER $i#r#m for Donor preferre$ or#ni4#tion #n$ person#l $et#ils
ER $i#r#m for Or#ni4#tion t"pe #n$ Or#ni4#tion .
DonorPreferre$Or#nis#tion& %ser!countI$ OrganisationI$ !ctive Person#l $et#ils& %ser!ccountI$ /irst*ame Middle*ame (ast*ame :mail $OB 3eight Bender Image%4( BloodBroupI$ BloodType !ddressI$ ,ontact*oDOffice ,ontact*oD4esidence Mobile*o !ctive Or#nis#tion& OrgI$ Org*ame OrgType :mail Org!ddrI$ OrgImage%4( Org$escription ,ontact*o Mobile*o !ctive ,omment Don#r preferre$ or#ni4#tion Pers#n#l Det#ils Cas9 belo ngs Or#ni4#tion Or#ni4#tion t"pe Cas9 belo ngs 8.8. D#t#b#se T#bles 1. D#t# Diction#r" 1D%= %$$ress !no Col(mn n#me D#t# t"pe Constr#int reference 6 !ddressI$ Bigint )rimary Ley 1 !ddress(ine6 varchar?861@ *ot null . (ocationI$ Bigint /oreign key B$!D(ocation 7 ,ityI$ Bigint /oreign key B$!D,ity 8 &tateI$ Bigint /oreign key B$!Dstate I ,ountryI$ Bigint !llow *ull B$!D,ountry M Kipcode varchar?62@ !llow *ull F !ctive Bit *ot *ull 1D%=1loo$Don#tionDet#ils !no Col(mn n#me D#t#t"pe Constr#int reference 6 I$ Bigint )rimary Ley 1 $onorI$ Bigint /oreign key B$!DBlood4euest . $onation$ate $atetime *otnull 7 TakerI$ Bigint /oreign key B$!D%ser!ccount 8 OrgI$ Bigint /oreign key BdaDOrganisation I 'uantity varchar?62@ !llow *ull M ,omment varchar?6217@ !llow *ull F !ctive Bit *otnull 1D%=1loo$Don#tionPreference !no Col(mnn#me D#t#t"pe Constr#int Reference 6 )referenceI$ bigint )rimary key 1 %ser!ccountI$ bigint /oreign key B$!D%ser!ccount . $onation/reuencyI$ tinyint /oreign key B$!D$onation /reuencies 7 3antTo$onate3hitecells bit !llow*ull 8 !ctive bit !llow*ull 1D%=1loo$3ro(p !no Col(mnn#me D#t#t"pe Constr#int reference 6 BloodBroupI$ tinyint )rimary Ley 1 BloodBroup varchar?62@ *ot *ull . $escription varchar?6217@ !llow *ull 7 !ctive bit *ot *ull 1D%=1loo$Re,(est !no Col(mnn#me D#t#t"pe Constr#int Reference 6 4euestI$ int )rimary Ley 1 $onorId bigint /oreign key B$!D%ser!ccount . OrgId bigint /oreign key B$!DOrganisation 7 *ame varchar?82@ !llow *ull 8 :mail varchar?82@ !llow *ull I )hone varchar?12@ !llow *ull M ,ountry varchar?82@ !llow *ull F &tate varchar?82@ !llow *ull N ,ity varchar?82@ !llow *ull 62 (ocation varchar?82@ !llow *ull 66 Blood4euire!ddress varchar?622@ !llow *ull 61 BloodType varchar?82@ !llow *ull 6. BloodBroup varchar?82@ !llow *ull 67 !pp$ate datetime !llow *ull 68 4e$ate datetime !llow *ull 6I &tatus varchar?62@ !llow *ull 6M 4euestType varchar?82@ !llow *ull 1D%=Cit" !no Col(mnn#me D#t#t"pe Constr#int Reference 6 ,ityI$ bigint )rimary key 1 ,ity*ame varchar?622@ *ot null . ,ity$esc varchar?6217@ allownull 7 ,ity,ode varchar?8@ !llownull 8 &tateI$ bigint /oreign key B$!D&tate I !ctive bit notnull 1D%=1loo$T"pe !no Col(mnn#mes D#t#t"pes Constr#int reference 6 BloodTypeI$ tinyint )rimary Ley 1 Type*ame varchar?82@ *ot null . Type$esc varchar?6217@ !llow*ull 7 !ctive bit *otnull 1D%=Co(ntr" !no Col(mnn#me D#t#t"pe Constr#int Reference 6 ,ountryI$ bigint )rimary key 1 ,ountry*ame varchar?622@ *ot null . ,ountry$esc varchar?6217@ !llow *ull 7 ,ountry,ode varchar?8@ !llow *ull 8 !ctive bit *ot null 1D%=Don#tion're,(encies !no Col(mnn#me D#t#t"pe Constr#int Reference 6 /reuencyI$ tinyint )rimary key 1 /reuency varchar?82@ *ot null . $escription varchar?188@ !llow null 7 !ctive bit !llow null 1D%=DonorPreferre$Or#nis#tion !no Col(mnn#me D#t#t"pe Constr#int Reference 6 %ser!countI$ bigint )rimary key 1 OrganisationI$ bigint *ot null . !ctive bit !llow null 1D%=Emplo"eeDet#il !no Col(mnn#me D#t#t"pe Constr#int reference 6 :mpId bigint )rimary Ley 1 *ame varchar?I2@ !llow *ull . !ddress varchar?682@ !llow *ull 7 )hone varchar?12@ !llow *ull 8 :mail varchar?18@ !llow *ull I !ctive tinyint !llow *ull 1D%='%6 !no Col(mnn#me D#t#t"pe Constr#int reference 6 /aI$ bigint )rimary key 1 'uestion varchar?.22@ !llow null . !nswer varchar?6222@ !llow null 7 !ctive bit !llow null 1D%=0oc#tion &no ,olumnname $atatype ,onstraints reference 6 (ocationI$ bigint )rimary Ley 1 (ocation*ame varchar?622@ *ot *ull . (ocation$esc varchar?6217@ !llow null 7 (ocation,ode varchar?8@ !llow null 8 ,ityI$ bigint !llow null I )incode varchar?62@ !llow null M !ctive bit !llow null 1D%=Or#nis#tion &no ,olumnname $atatype ,onstraint reference 6 OrgI$ bigint )rimary key 1 Org*ame varchar?622@ *ot null . OrgType tinyint /oreign key B$!DOrganisation Type 7 :mail varchar?82@ !llownull 8 Org!ddrI$ bigint /oreign key B$!D!ddress I OrgImage%4( varchar?688@ !llownull M Org$escription varchar?6217@ !llownull F ,ontact*o varchar?12@ !llownull N Mobile*o varchar?12@ !llownull 62 !ctive bit !llownull 66 ,omment varchar?861@ !llownull 1D%=Or#nis#tionT"pe !no Col(mnn#me D#t#t"pe Constr#int Reference 6 TypeI$ tinyint )rimary key 1 Type*ame varchar?82@ *ot null . Type$escription varchar?82@ !llow null 7 OrgImage varchar?.22@ !llow null 8 !ctive bit !llow null 1D%=Preferre$Don#tionD#"Time !no Col(mnn#mes D#t#tt"pe Const#rint Reference 6 $onor)referenceI$ bigint )rimary Ley 1 3eek$ay varchar?62@ *ot null . Time/rom varchar?62@ !llow null 7 Time%pto varchar?62@ !llow null 8 %ser!ccountI$ bigint !llow null I ,omment varchar?6217@ !llow null M !ctive bit *ot null F 1D%=Person#lDet#ils !no Col(mnn#me D#t#t"pe Constr#int Reference 6 %ser!ccountI$ bigint )rimary Ley 1 /irst*ame varchar?82@ *ot *ull . Middle*ame varchar?82@ !llow *ull 7 (ast*ame varchar?82@ !llow *ull 8 :mail varchar?622@ !llow *ull I $OB datetime *otnull M 3eight float !llow *ull F Bender varchar?I@ *ot *ull N Image%4( varchar?688@ !llow *ull 62 BloodBroupI$ tinyint /oreign key B$!DBloodgroup 66 BloodType tinyint /oreign key B$!DBloodType 61 !ddressI$ bigint /oreign key B$!D!ddress 6. ,ontact*oDOffice varchar?12@ !llow *ull 67 ,ontact*oD4esidence varchar?12@ !llow *ull 68 Mobile*o varchar?12@ *ot *ull 6I !ctive bit !llow *ull 1D%=UserRole !no Col(mnn#me D%t#t"pe Constr#int Reference 6 4oleI$ tinyint )rimary key 1 4ole*ame varchar?82@ *ot null . 4ole$esc varchar?6217@ !llow null 7 !ctive bit *ot null 1D%=!t#te !no Col(mnn#me D#t#t"pe Constr#int Reference 6 &tateI$ bigint )rimary key 1 &tate*ame varchar?622@ *ot null . &tate,ode varchar?8@ !llow null 7 &tate$esc varchar?6217 @ !llow null 8 ,ountryI$ bigint /oreign Ley B$!D,ountry I !ctive bit *ot null 1D%=User%cco(nt !no Col(mnn#me D#t#t"pe Constr#int Reference 6 !ccountI$ bigint )rimary key 1 %sername varchar?622@ *ot null . )assword varchar?622@ *ot null 7 %ser$esc varchar?6217@ !llow null 8 Cint'uestion varchar?688@ !llow null I !nswer varchar?688@ !llow null M 4oleI$ tinyint /oreign key B$!D%ser4ole F !ctive bit *ot null !oftw#re Development Environment >.1. Intro$(ction To .Net 'r#mewor< The .*:T /ramework is a new computing platform that simplifies application development in the highly distributed environment of the Internet. The .*:T /ramework is designed to fulfill the following ob#ectives; To provide a consistent ob#ect-oriented programming environment whether ob#ect code is stored and e0ecuted locally" e0ecuted locally but Internet-distributed" or e0ecuted remotely. To provide a code-e0ecution environment that minimizes software deployment and versioning conflicts. To provide a code-e0ecution environment that guarantees safe e0ecution of code" including code created by an unknown or semi-trusted third party. To provide a code-e0ecution environment that eliminates the performance problems of scripted or interpreted environments. To make the developer e0perience consistent across widely varying types of applications" such as 3indows-based applications and 3eb-based applications. To build all communication on industry standards to ensure that code based on the .*:T /ramework can integrate with any other code. The .*:T /ramework has two main components; the common language runtime and the .*:T /ramework class library. The common language runtime is the foundation of the .*:T /ramework. Hou can think of the runtime as an agent that manages code at e0ecution time" providing core services such as memory management" thread management" and 4emoting" while also enforcing strict type safety and other forms of code accuracy that ensure security and robustness. In fact" the concept of code management is a fundamental principle of the runtime. ,ode that targets the runtime is known as managed code" while code that does not target the runtime is known as unmanaged code. 'E%TURE! O' T5E CO77ON 0%N3U%3E RUNTI7E& The common language runtime manages memory" thread e0ecution" code e0ecution" code safety verification" compilation" and other system services. These features are intrinsic to the managed code that runs on the common language runtime. 3ith 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. /or e0ample" users can trust that an e0ecutable embedded in a 3eb 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 e0ceptionally featuring rich. The runtime also enforces code robustness by implementing a strict type- and code- verification infrastructure called the common type system ?,T&@. The ,T& ensures that all managed code is self-describing. The various Microsoft and third-party language compilers Benerate managed code that conforms to the ,T&. 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. /or e0ample" the runtime automatically handles ob#ect layout and manages references to ob#ects" 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. /or e0ample" 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. !ny compiler vendor who chooses to target the runtime can do so. (anguage compilers that target the .*:T /ramework make the features of the .*:T /ramework available to e0isting code written in that language" greatly easing the migration process for e0isting applications. .NET 'R%7E2OR; C0%!! 0I1R%R9 The .*:T /ramework class library is a collection of reusable types that tightly integrate with the common language runtime. The class library is ob#ect oriented" providing types from which your own managed code can derive functionality. This not only makes the .*:T /ramework types easy to use" but also reduces the time associated with learning new features of the .*:T /ramework. In addition" third-party components can integrate seamlessly with classes in the .*:T /ramework. /or e0ample" the .*:T /ramework collection classes implement a set of interfaces that you can use to develop your own collection classes. Hour collection classes will blend seamlessly with the classes in the .*:T /ramework. !s you would e0pect from an ob#ect-oriented class library" the .*:T /ramework types enable you to accomplish a range of common programming tasks" including tasks such as string management" data collection" database connectivity" and file access. In addition to these common tasks" the class library includes types that support a variety of specialized development scenarios. /or e0ample" you can use the .*:T /ramework to develop the following types of applications and services; ,onsole applications. &cripted or hosted applications. 3indows B%I applications ?3indows /orms@. !&).*:T applications. GM( 3eb services. 3indows services. /or e0ample" the 3indows /orms classes are a comprehensive set of reusable types that vastly simplify 3indows B%I development. If you write an !&).*:T 3eb /orm application" you can use the 3eb /orms classes. C0IENT %PP0IC%TION DE/E0OP7ENT ,lient applications are the closest to a traditional style of application in 3indows-based programming. These are the types of applications that display windows or forms on the desktop" enabling a user to perform a task. ,lient applications include applications such as word processors and spreadsheets" as well as custom business applications such as data-entry tools" reporting tools" and so on. ,lient applications usually employ windows" menus" buttons" and other B%I elements" and they likely access local resources such as the file system and peripherals such as printers. !nother kind of client application is the traditional !ctiveG control ?now replaced by the managed 3indows /orms control@ deployed over the Internet as a 3eb page. This application is much like other client applications; it is e0ecuted natively" has access to local resources" and includes graphical elements. In the past" developers created such applications using ,9,OO in con#unction with the Microsoft /oundation ,lasses ?M/,@ or with a rapid application development ?4!$@ environment such as MicrosoftP Eisual BasicP. The .*:T /ramework incorporates aspects of these e0isting products into a single" consistent development environment that drastically simplifies the development of client applications. The 3indows /orms classes contained in the .*:T /ramework are designed to be used for B%I development. Hou can easily create command windows" buttons" menus" toolbars" and other screen elements with the fle0ibility necessary to accommodate shifting business needs. /or e0ample" the .*:T /ramework provides simple properties to ad#ust visual attributes associated with forms. In some cases the underlying operating system does not support changing these attributes directly" and in these cases the .*:T /ramework automatically recreates the forms. This is one of many ways in which the .*:T /ramework integrates the developer interface" making coding simpler and more consistent. %!P.NET !erver %pplic#tion Development &erver-side applications in the managed world are implemented through runtime hosts. %nmanaged applications host the common language runtime" which allows your custom managed code to control the behavior of the server. This model provides you with all the features of the common language runtime and class library while gaining the performance and scalability of the host server. The following illustration shows a basic network schema with managed code running in different server environments. &ervers such as II& and &'( &erver can perform standard operations while your application logic e0ecutes through the managed code. !erver?!i$e 7#n#e$ Co$e& !&).*:T is the hosting environment that enables developers to use the .*:T /ramework to target 3eb-based applications. Cowever" !&).*:T is more than #ust a runtime hostQ it is a complete architecture for developing 3eb sites and Internet-distributed ob#ects using managed code. Both 3eb /orms and GM( 3eb services use II& and !&).*:T as the publishing mechanism for applications" and both have a collection of supporting classes in the .*:T /ramework. If you develop and publish your own GM( 3eb service" the .*:T /ramework provides a set of classes that conform to all the underlying communication standards" such as &O!)" 3&$(" and GM(. %sing those classes enables you to focus on the logic of your service" without concerning yourself with the communications infrastructure reuired by distributed software development. /inally" like 3eb /orms pages in the managed environment" your GM( 3eb service will run with the speed of native machine language using the scalable communication of II&. %ctive !erver P#es.NET !&).*:T is a programming framework built on the common language runtime that can be used on a server to build powerful 3eb applications. !&).*:T offers several important advantages over previous 3eb development models; En*#nce$ Perform#nce. !&).*:T is compiled common language runtime code running on the server. %nlike its interpreted predecessors" !&).*:T can take advantage of early binding" #ust-in-time compilation" native optimization" and caching services right out of the bo0. This amounts to dramatically better performance before you ever write a line of code. 2orl$?Cl#ss Tool !(pport. The !&).*:T framework is complemented by a rich toolbo0 and designer in the Eisual &tudio integrated development environment. 3H&I3HB editing" drag-and-drop server controls" and automatic deployment are #ust a few of the features this powerful tool provides. Power #n$ 'lexibilit". Because !&).*:T is based on the common language runtime" the power and fle0ibility of that entire platform is available to 3eb application developers. The .*:T /ramework class library" Messaging" and $ata !ccess solutions are all seamlessly accessible from the 3eb. !&).*:T is also language-independent" so you can choose the language that best applies to your application or partition your application across many languages. /urther" common language runtime interoperability guarantees that your e0isting investment in ,OM-based development is preserved when migrating to !&).*:T. !implicit". !&).*:T makes it easy to perform common tasks" from simple form submission and client authentication to deployment and site configuration. /or e0ample" the !&).*:T page framework allows you to build user interfaces that cleanly separate application logic from presentation code and to handle events in a simple" Eisual Basic - like forms processing model. !dditionally" the common language runtime simplifies development" with managed code services such as automatic reference counting and garbage collection. 7#n#e#bilit". !&).*:T employs a te0t-based" hierarchical configuration system" which simplifies applying settings to your server environment and 3eb applications. Because configuration information is stored as plain te0t" new settings may be applied without the aid of local administration tools. This Rzero local administrationR philosophy e0tends to deploying !&).*:T !c#l#bilit" #n$ %v#il#bilit". !&).*:T has been designed with scalability in mind" with features specifically tailored to improve performance in clustered and multiprocessor environments. /urther" processes are closely monitored and managed by the !&).*:T runtime" so that if one misbehaves ?leaks" deadlocks@" a new process can be created in its place" which helps keep your application constantly available to handle reuests. C(stomi4#bilit" #n$ Extensibilit". !&).*:T delivers a well-factored architecture that allows developers to Rplug-inR their code at the appropriate level. In fact" it is possible to e0tend or replace any subcomponent of the !&).*:T runtime with your own custom-written component. Implementing custom authentication or state services has never been easier. !ec(rit". 3ith built in 3indows authentication and per-application configuration" you can be assured that your applications are secure. 0%N3U%3E !UPPORT The Microsoft .*:T )latform currently offers built-in support for three languages; ,S" Eisual Basic" and T&cript. 25%T I! %!P.NET 2E1 'OR7!@ The !&).*:T 3eb /orms page framework is a scalable common language runtime programming model that can be used on the server to dynamically generate 3eb pages. Intended as a logical evolution of !&) ?!&).*:T provides synta0 compatibility with e0isting pages@" the !&).*:T 3eb /orms framework has been specifically designed to address a number of key deficiencies in the previous model. In particular" it provides; The ability to create and use reusable %I controls that can encapsulate common functionality and thus reduce the amount of code that a page developer has to write. The ability for developers to cleanly structure their page logic in an orderly fashion ?not Rspaghetti codeR@. The ability for development tools to provide strong 3H&I3HB design support for pages ?e0isting !&) code is opaue to tools@. CODE?1E5IND 2E1 'OR7! !&).*:T supports two methods of authoring dynamic pages. The first is the method shown in the preceding samples" where the page code is physically declared within the originating .asp0 file. !n alternative approach--known as the code-behind method--enables the page code to be more cleanly separated from the CTM( content into an entirely separate file. CA.NET %DO.NET O/ER/IE2 !$O.*:T is an evolution of the !$O data access model that directly addresses user reuirements for developing scalable applications. It was designed specifically for the web with scalability" statelessness" and GM( in mind. !$O.*:T uses some !$O ob#ects" such as the Connection and Comm#n$ ob#ects" and also introduces new ob#ects. Ley new !$O.*:T ob#ects include the D#t#!et" D#t#Re#$er" and D#t#%$#pter. The important distinction between this evolved stage of !$O.*:T and previous data architectures is that there e0ists an ob#ect -- the D#t#!et -- that is separate and distinct from any data stores. Because of that" the D#t#!et functions as a standalone entity. Hou can think of the $ata&et as an always disconnected recordset that knows nothing about the source or destination of the data it contains. Inside a D#t#!et" much like in a database" there are tables" columns" relationships" constraints" views" and so forth. ! D#t#%$#pter is the ob#ect that connects to the database to fill the D#t#!et. Then" it connects back to the database to update the data there" based on operations performed while the D#t#!et held the data. In the past" data processing has been primarily connection-based. *ow" in an effort to make multi-tiered apps more efficient" data processing is turning to a message-based approach that revolves around chunks of information. !t the center of this approach is the D#t#%$#pter" which provides a bridge to retrieve and save data between a D#t#!et and its source data store. It accomplishes this by means of reuests to the appropriate &'( commands made against the data store. Connections. /or connection to and managing transactions against a database. Comm#n$s. /or issuing &'( commands against a database. D#t#Re#$ers. /or reading a forward-only stream of data records from a &'( &erver data source. D#t#!ets. /or storing" 4emoting and programming against flat data" GM( data and relational data. D#t# %$#pters. /or pushing data into a D#t#!et" and reconciling data against a database. @. Connections& ,onnections are used to Atalk toA databases" and are represented by provider-specific classes such as !,lConnection. ,ommands travel over connections and resultsets are returned in the form of streams which can be read by a D#t#Re#$er ob#ect" or pushed into a D#t#!et ob#ect. Comm#n$s& ,ommands contain the information that is submitted to a database" and are represented by provider-specific classes such as !,lComm#n$. ! command can be a stored procedure call" an %)$!T: statement" or a statement that returns results. Hou can also use input and output parameters" and return values as part of your command synta0. The e0ample below shows how to issue an I*&:4T statement against the Nort*win$ database. D#t#Re#$ers& The D#t#Re#$er ob#ect is somewhat synonymous with a read-only9forward-only cursor over data. The D#t#Re#$er !)I supports flat as well as hierarchical data. ! D#t#Re#$er ob#ect is returned after e0ecuting a command against a database. The format of the returned D#t#Re#$er ob#ect is different from a recordset. /or e0ample" you might use the D#t#Re#$er to show the results of a search list in a web page. !60 !ER/ER ! database management" or $BM&" gives the user access to their data and helps them transform the data into information. &uch database management systems include dBase" parado0" IM&" &'( &erver and &'( &erver. These systems allow users to create" update and e0tract information from their database. ! database is a structured collection of data. $ata refers to the characteristics of people" things and events. &'( &erver stores each data item in its own fields. In &'( &erver" the fields relating to a particular person" thing or event are bundled together to form a single complete unit of data" called a record ?it can also be referred to as raw or an occurrence@. :ach record is made up of a number of fields. *o two fields in a record can have the same field name. $uring an &'( &erver $atabase design pro#ect" the analysis of your business needs identifies all the fields or attributes of interest. If your business needs change over time" you define any additional fields or change the definition of e0isting fields. !60 !erver T#bles &'( &erver stores records relating to each other in a table. $ifferent tables are created for the various groups of information. 4elated tables are grouped together to form a database. Prim#r" ;e" :very table in &'( &erver has a field or a combination of fields that uniuely identifies each record in the table. The %niue identifier is called the )rimary Ley" or simply the Ley. The primary key provides the means to distinguish one record from all other in a table. It allows the user and the database system to identify" locate and refer to one particular record in the database. Rel#tion#l D#t#b#se &ometimes all the information of interest to a business operation can be stored in one table. &'( &erver makes it very easy to link the data in multiple tables. Matching an employee to the department in which they work is one e0ample. This is what makes &'( &erver a relational database management system" or 4$BM&. It stores data in two or more tables and enables you to define relationships between the table and enables you to define relationships between the tables. 'orein ;e" 3hen a field is one table matches the primary key of another field is referred to as a foreign key. ! foreign key is a field or a group of fields in one table whose values match those of the primary key of another table. Referenti#l Interit" *ot only does &'( &erver allow you to link multiple tables" it also maintains consistency between them. :nsuring that the data among related tables is correctly matched is referred to as maintaining referential integrity. CODIN3 2E1CON'I3 'I0E&-Desin Co$e. %sed to set the connections of each page. <?xml version="1.0"?> <!-- Note: As an alternative to hand editing this file yo !an se the "e# admin tool to !onfigre settings for yor a$$li!ation. %se the &e#site->As$.Net 'onfigration o$tion in (isal )tdio. A fll list of settings and !omments !an #e fond in ma!hine.!onfig.!omments sally lo!ated in *&indo"s*+i!rosoft.Net*,rame"or-*v..x*'onfig --> <!onfigration> <a$$)ettings> <add -ey="'onn)tr" vale="data sor!e=/A+0A- .1'A231.45data#ase=3lood3e6eath,ederalAgent5integrated se!rity=ss$i"7> <7a$$)ettings> <!onne!tion)trings> <add name="3lood1onationAgent'onne!tion)tring" !onne!tion)tring="1ata )or!e=/A+0A-.1'A231.458nitial 'atalog=3lood1onationAgent5integrated se!rity=ss$i" $roviderName=")ystem.1ata.)6l'lient" 7> <7!onne!tion)trings> <system."e#> <!-- )et !om$ilation de#g="tre" to insert de#gging sym#ols into the !om$iled $age. 3e!ase this affe!ts $erforman!e9 set this vale to tre only dring develo$ment. --> <!om$ilation de#g="tre"> <assem#lies> <add assem#ly=")ystem.1esign9 (ersion=..0.0.09 'ltre=netral9 :#li!;ey<o-en=304,2,=,11120A4A"7> <add assem#ly=")ystem.&e#.>xtensions9 (ersion=1.0.?10.2.09 'ltre=netral9 :#li!;ey<o-en=413,4@2?A14?A>42"7> <add assem#ly=")ystem.&e#.>xtensions.1esign9 (ersion=1.0.?10.2.09 'ltre=netral9 :#li!;ey<o-en=413,4@2?A14?A>42"7> <add assem#ly=")ystem.&indo"s.,orms9 (ersion=..0.0.09 'ltre=netral9 :#li!;ey<o-en=3==A2'2?1B4A>0@B"7><7assem#lies><7!om$ilation> <!-- <he <athenti!ation> se!tion ena#les !onfigration of the se!rity athenti!ation mode sed #y A):.N>< to identify an in!oming ser. --> <athenti!ation mode="&indo"s"7> <!-- <he <!stom>rrors> se!tion ena#les !onfigration of "hat to do if7"hen an nhandled error o!!rs dring the exe!tion of a re6est. )$e!ifi!ally9 it ena#les develo$ers to !onfigre html error $ages to #e dis$layed in $la!e of a error sta!- tra!e. <!stom>rrors mode="/emoteCnly" defalt/edire!t="Deneri!>rror:age.htm"> <error stats'ode="A04" redire!t="NoA!!ess.htm" 7> <error stats'ode="A0A" redire!t=",ileNot,ond.htm" 7> <7!stom>rrors> --> <7system."e#> <7!onfigration> User 0oin 'orm sing )ystem5 sing )ystem.1ata5 sing )ystem.'onfigration5 sing )ystem.'olle!tions5 sing )ystem.&e#5 sing )ystem.&e#.)e!rity5 sing )ystem.&e#.%85 sing )ystem.&e#.%8.&e#'ontrols5 sing )ystem.&e#.%8.&e#'ontrols.&e#:arts5 sing )ystem.&e#.%8.Etml'ontrols5 $#li! $artial !lass Fogin : )ystem.&e#.%8.:age G 'he!-%ser ser = ne" 'he!-%serHI5 %serA!!ont3sinessFayer a!!ont = ne" %serA!!ont3sinessFayerHI5 CrganiJationA!!ont3sinessFayer org = ne" CrganiJationA!!ont3sinessFayerHI5 $rote!ted void :ageKFoadHo#Le!t sender9 >ventArgs eI G txt%sername.,o!sHI5 M $rote!ted void #tnFoginK'li!-Ho#Le!t sender9 >ventArgs eI G try G ser.%sername = txt%sername.<ext5 ser.:ass"ord = txt:ass"ord.<ext5 77'he!- %ser
M M Testin B.1. INTRODUCTION &oftware testing is a critical element of software uality 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. ! 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 uality with methods that can economically and effectively apply to both strategic to both large and small-scale systems. B.2. !TR%TE3IC %PPRO%C5 TO !O'T2%RE TE!TIN3 The software engineering process can be viewed as a spiral. Initially system engineering defines the role of software and leads to software reuirement 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. %*IT T:&TI*B MO$%(: T:&TI*B &%B-&H&T:M T:&I*B &H&T:M T:&TI*B !,,:)T!*,: T:&TI*B Component Testing Integration Testing User Testing B.). Unit Testin %nit testing focuses verification effort on the smallest unit of software design" the module. The unit testing we have is white bo0 oriented and some modules the steps are conducted in parallel. 1. 25ITE 1OC TE!TIN3 This type of testing ensures that !ll independent paths have been e0ercised at least once !ll logical decisions have been e0ercised on their true and false sides !ll loops are e0ecuted at their boundaries and within their operational bounds !ll internal data structures have been e0ercised to assure their validity. To follow the concept of white bo0 testing we have tested each form .we have created independently to verify that $ata flow is correct" !ll conditions are e0ercised to check their validity" !ll loops are e0ecuted on their boundaries. 2. 1%!IC P%T5 TE!TIN3 :stablished techniue of flow graph with ,yclomatic comple0ity was used to derive test cases for all the functions. The main steps in deriving test cases were; %se the design of the code and draw correspondent flow graph. $etermine the ,yclomatic comple0ity of resultant flow graph" using formula; E?B@U:-*O1 or E?B@U)O6 or E?B@U*umber Of 4egions 3here E?B@ is ,yclomatic comple0ity" : is the number of edges" * is the number of flow graph nodes" ) is the number of predicate nodes. $etermine the basis of set of linearly independent paths. ). CONDITION%0 TE!TIN3 In this part of the testing each of the conditions were tested to both true and false aspects. !nd all the resulting paths were tested. &o that each path that may be generate on particular condition is traced to uncover any possible errors. +. D%T% '0O2 TE!TIN3 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. 8. 0OOP TE!TIN3 In this type of testing all the loops are tested to all the limits possible. The following e0ercise was adopted for all loops; !ll the loops were tested at their limits" #ust above them and #ust below them. !ll the loops were skipped at least once. /or nested loops test the inner most loop first and then work outwards. /or concatenated loops the values of dependent loops were set with the help of connected loop. %nstructured loops were resolved into nested loops or concatenated loops and tested as above. :ach unit has been separately tested by the development team itself and all the input have been validated. O(tp(t !creens 5ome P#e
%$min 0oin %$min 5ome %$$ new Or#ni4#tion
Retrievin Or#ni4#tion inform#tion
%DD NE2 COUNTR9 Co(ntr" Inform#tion %DD NE2 !T%TE !t#te Inform#tion %DD NE2 CIT9 Cit" Inform#tion %DD NE2 0OC%TION 0oc#tion Inform#tion Reistr#tion 'orm 'or %ll Users 0oin form User 5ome !e#rc*'orDonor Up$#te %cco(nt Det#ils Re,(est for bloo$ CONC0U!ION It has been a great pleasure for me to work on this e0citing and challenging pro#ect. This pro#ect proved good for me as it provided practical knowledge of not only programming in !&).*:T and EB.*:T web based application and no some e0tent 3indows !pplication and &'( &erver" but also about all handling procedure related with D1loo$ 1e,(e#t* 'e$er#lE. 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 pro#ects independently. 1ENE'IT!& The pro#ect is identified by the merits of the system offered to the user. The merits of this pro#ect are as follows; - It>s a web-enabled pro#ect. This pro#ect 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. &ometimes the user finds in the later stages of using pro#ect 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 e0tent. %ser is provided the option of monitoring the records he entered earlier. Ce can see the desired records with the variety of options provided by him. /rom every part of the pro#ect the user is provided with the links through framing so that he can go from one option of the pro#ect to other as per the reuirement. This is bound to be simple and very friendly as per the user is concerned. That is" we can sat that the pro#ect is user friendly which is one of the primary concerns of any good pro#ect. $ata storage and retrieval will become faster and easier to maintain because data is stored in a systematic manner and in a single database. $ecision 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. !llocating of sample results becomes much faster because at a time the user can see the records of last years. :asier and faster data transfer through latest technology associated with the computer and communication. Through these features it will increase the efficiency" accuracy and transparency" F.1 0I7IT%TION!& 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. 1I10IO3R%P59 'OR .NET IN!T%00%TION www.support.mircosoft.com 'OR DEP0O97ENT %ND P%C;IN3 ON !ER/ER www.developer.com www.68seconds.com 'OR !60 www.msdn.microsoft.com 'OR %!P.NET www.msdn.microsoft.com9net9uickstart9aspplus9default.com www.asp.net www.fme0pense.com9uickstart9aspplus9default.com www.asptoday.com www.aspfree.com www.7guysfromrolla.com9inde0.asp0