Online Quiz
Online Quiz
Online Quiz
Online Quiz
Project Report submitted for the partial fulfillment
Project Report submitted for the partial fulfillment
For the award of the degree
For the award of the degree of
of
B Tech(Electronics & Comm.)
B Tech(Electronics & Comm.)
CERTIFICATE
CERTIFICATE
CONTENT$
CONTENT$
CONTENT$
CONTENT$
1. $%nosis
1. $%nosis
1. $%nosis
1. $%nosis
2. 'ntrouction
2. 'ntrouction
2. 'ntrouction
2. 'ntrouction
#.
#.
$%stem
$%stem
Anl%sis
Anl%sis
#.
#. $%stem
$%stem Anl%sis
Anl%sis
•
•
•
•
*reliminr% 'n+esti,tion
*reliminr% 'n+esti,tion
*reliminr% 'n+esti,tion
*reliminr% 'n+esti,tion
-esiilit% $tu%
-esiilit% $tu%
-esiilit% $tu%
-esiilit% $tu%
Technical Feasibility
Technical Feasibility
Technical Feasibility
Technical Feasibility
Operational
Operational Feasibilit
Operational Feasibility
Operational Feasibility
Feasibility
y
Economical Feasibility
Economical Feasibility
Economical Feasibility
Economical Feasibility
•
•
•
•
!therin, 'n/ormtion
!therin, 'n/ormtion
!therin, 'n/ormtion
!therin, 'n/ormtion
••
•
•
$%stem $tu%
$%stem $tu%
$%stem $tu%
$%stem $tu%
Existing System
Existing System
Existing System
Existing System
Proposed System
Proposed System
Proposed System
Proposed System
0.
0.
$%stem
$%stem
euirements
euirements
0.
0. $%stem
$%stem euirements
euirements
Software Enironment
Software Enironment
Software Enironment
Software Enironment
!or"ing Enironment
!or"ing Enironment
!or"ing Enironment
!or"ing Enironment
#ardware Config$ration
#ardware Config$ration
#ardware Config$ration
#ardware Config$ration
Software Config$ration
Software Config$ration
Software Config$ration
Software Config$ration
3.
3.
$%stem
$%stem
esi,n
esi,n
3.
3. $%stem
$%stem esi,n
esi,n
•
•
•
•
System Flow %iagram
System Flow %iagram
System Flow %iagram
System Flow %iagram
••
•
•
%ata Flow %iagrams
%ata Flow %iagrams
%ata Flow %iagrams
%ata Flow %iagrams
• • •
•
%atabase %esign
%atabase %esign
%atabase %esign
%atabase %esign
%ata %ictionary
%ata %ictionary
%ata %ictionary
%ata %ictionary
•
•
•
•
%etailed %escription
%etailed %escription
%etailed %escription
%etailed %escription
• • •
•
Screens
Screens
Screens
Screens
4.
4.
$%stem
$%stem
Te
Te
stin,
stin,
4.
4. $%stem
$%stem T
Testin,
estin,
5.
5.
'mlement
'mlement
tion n
tion n
E+lu
E+lu
tion
tion
5.
5. 'mlementtio
'mlementtion
n n
n E+lution
E+lution
6.
6.
Conclusion 7i
Conclusion 7i
th -ut
th -ut
ure Enh
ure Enh
ncement
ncement
6.
6. Conclusion 7ith
Conclusion 7ith -uture
-uture Enhncement
Enhncement
8. Bilio,rh%
8. Bilio,rh%
8. Bilio,rh%
8. Bilio,rh%
$9NO*$'$
$9NO*$'$
The main aim of Online &$i' is to facilitate a $ser friendly enironment of
The main aim of Online &$i' is to facilitate a $ser friendly enironment of
(l$eboo" implementation and red$ces the man$al effort) *sers of the system ar e+
(l$eboo" implementation and red$ces the man$al effort) *sers of the system are+
,) Teachers
,) Teachers
-) St$dents
-) St$dents
In past days .$i' is cond$cted man$ally b$t in f$rther resol$tion of the
In past days .$i' is cond$cted man$ally b$t in f$rther resol$tion of the
technology we are able to generate the score and pose the .$eries a$tomatically))
technology we are able to generate the score and pose the .$eries a$tomatically))
Sec$re access of confidential data/ better design to
Sec$re access of confidential data/ better design to
gie effectie (l$eboo" and flexible) Serice based architect$re will be highly
gie effectie (l$eboo" and flexible) Serice based architect$re will be highly
desirable for f$t$re extension) Iss$es are to red$ce the man$al press$re and ma"e
desirable for f$t$re extension) Iss$es are to red$ce the man$al press$re and ma"e
the pro0ect in effectie manner
the pro0ect in effectie manner ..
Techer
Techer is able to ma"e .$i' .$estions and ta"e a contest both) ($t st$dents
is able to ma"e .$i' .$estions and ta"e a contest both) ($t st$dents
are only able to gie a .$i') Their res$lt is isible on the screen after the
are only able to gie a .$i') Their res$lt is isible on the screen after the
s$ccessf$l completion of the .$i')
s$ccessf$l completion of the .$i')
(oth are able to as" any .$ery from the administrator and gie any
(oth are able to as" any .$ery from the administrator and gie any
s$ggestion to improe the site)
s$ggestion to improe the site)
The
The
present pro0ect el$cidates
present pro0ect el$cidates
the following features.
the following features.
••
Registartion of Teachers and Students
Registartion of Teachers and Students
••
Making of Quiz
Making of Quiz
••
Taking of Quiz
Taking of Quiz
••
Queries from sers
Queries from sers
•System Development:
System Development:
The process of building s"stems has alwa"s been comple# with s"stem becoming The process of building s"stems has alwa"s been comple# with s"stem becoming larger$ the costs and comple#ities get multiplied. So the need for better methods for larger$ the costs and comple#ities get multiplied. So the need for better methods for de%eloping s"stems is widel" recognized to be effecti%e and the applied model should meet de%eloping s"stems is widel" recognized to be effecti%e and the applied model should meet a few basic re&uirements.
a few basic re&uirements.
The model should be structured and co%er the entire s"stem de%elopmentThe model should be structured and co%er the entire s"stem de%elopment process from feasibilit" stud" to programming$ testing and implementation. process from feasibilit" stud" to programming$ testing and implementation.
The model should utilize established methods and techni&ues like databaseThe model should utilize established methods and techni&ues like database designs$ normalizations and structured programming techni&ues.
designs$ normalizations and structured programming techni&ues.
The model should consist of building blocks$ which define tasks$ results andThe model should consist of building blocks$ which define tasks$ results and interfaces.
interfaces.
The model should separate the logical s"stem from the ph"sical s"stem.The model should separate the logical s"stem from the ph"sical s"stem.
'ocumentation should be a direct result of the de%elopment work and should'ocumentation should be a direct result of the de%elopment work and should be concise$ precise and as non(redundant as possible.
be concise$ precise and as non(redundant as possible.
)ased on the abo%e re&uirements of the s"stem model$ s"stem stud" has been made. )ased on the abo%e re&uirements of the s"stem model$ s"stem stud" has been made.
*arious methodologies ha%e been applied for s"stem stud"$ e%ol%ing design documents$ *arious methodologies ha%e been applied for s"stem stud"$ e%ol%ing design documents$ data modeling$ input screen design and report design.
data modeling$ input screen design and report design.
Project:
Pro ject:
The persons who are students can enhance and judge their knowledge from the online The persons who are students can enhance and judge their knowledge from the online &uizes on the site. Teachers are able to make &uizes. Students and teachers can ask their &uizes on the site. Teachers are able to make &uizes. Students and teachers can ask their &ueries in the site. The" are also able to contact the administrator with the help of the &ueries in the site. The" are also able to contact the administrator with the help of the address gi%en in the !ontact us option.
$9$TE" ANAL9$'$
$9$TE" ANAL9$'$
Preliminary Investigation:
Preliminary Investigation:
First in the s"stem de%elopment process is preliminar" +n%estigation. Preliminar" First in the s"stem de%elopment process is preliminar" +n%estigation. Preliminar" +n%estigation is conducted in the following phases.
+n%estigation is conducted in the following phases.
•
• Project clarificationProject clarification
•
• Feasibility studyFeasibility study
•
• Project appraisalProject appraisal
Project clarification is the process of selecting a project re&uest for further stud". Project clarification is the process of selecting a project re&uest for further stud". ,hen a s"stem de%elopment or modification re&uest is made$ the first s"stems acti%it"$ the ,hen a s"stem de%elopment or modification re&uest is made$ the first s"stems acti%it"$ the preliminar" in%estigation$ begins the acti%it" has three parts- Re&uest clarification$ feasibilit" preliminar" in%estigation$ begins the acti%it" has three parts- Re&uest clarification$ feasibilit" stud" and project appraisal. Man" re&uest from emplo"ees and users in organization are stud" and project appraisal. Man" re&uest from emplo"ees and users in organization are not clearl" stated.
not clearl" stated.
Therefore before an" s"stems in%estigation can be considered$ the project re&uest Therefore before an" s"stems in%estigation can be considered$ the project re&uest must be e#amined to determine preciousl" what the originator wants. This is called Re&uest must be e#amined to determine preciousl" what the originator wants. This is called Re&uest clarification.
clarification.
s important outcome of the preliminar" in%estigation is the determination that the s important outcome of the preliminar" in%estigation is the determination that the s"stem re&uest in feasible.
s"stem re&uest in feasible.
Feasibility Study:
Feasibility Study:
The feasibilit" stud" is performed to determine whether the proposed s"stem is The feasibilit" stud" is performed to determine whether the proposed s"stem is %iable considering the Technical$ /perational and 0conomical factors. fter going through %iable considering the Technical$ /perational and 0conomical factors. fter going through feasibilit" stud" we can ha%e a clear(cut %iew of the s"stem1s benefits and drawbacks.
The proposed s"stem is de%eloped using cti%e Ser%er Page$ *) Script and 2TM3 as The proposed s"stem is de%eloped using cti%e Ser%er Page$ *) Script and 2TM3 as front(end tool and /racle 4 as the back end. The proposed s"stem needs a Personal ,eb front(end tool and /racle 4 as the back end. The proposed s"stem needs a Personal ,eb Ser%er to ser%e the re&uests submitted b" the users. The ,eb browser is used to %iew the Ser%er to ser%e the re&uests submitted b" the users. The ,eb browser is used to %iew the web page that is a%ailable within the ,indows operating s"stem itself. The proposed s"stem web page that is a%ailable within the ,indows operating s"stem itself. The proposed s"stem will run under ,in5#$ 6T$ and win7888 en%ironment. s ,indows is %er" user friendl" and will run under ,in5#$ 6T$ and win7888 en%ironment. s ,indows is %er" user friendl" and 9+ /S it is %er" eas" to use. ll the re&uired hardware and software are readil" a%ailable in 9+ /S it is %er" eas" to use. ll the re&uired hardware and software are readil" a%ailable in the market. 2ence the s"stem is technicall" feasible.
the market. 2ence the s"stem is technicall" feasible.
Operational Feasibility: Operational Feasibility:
The proposed s"stem is operationall" feasible because of the following reasons. The proposed s"stem is operationall" feasible because of the following reasons.
The customer is benefited more as most of his time is sa%ed. The customer isThe customer is benefited more as most of his time is sa%ed. The customer is ser%iced at his place of work.
ser%iced at his place of work.
The cost of the proposed s"stem is almost negligible when compared to theThe cost of the proposed s"stem is almost negligible when compared to the benefits gained.
benefits gained.
Economical Feasibility: Economical Feasibility:
s the necessar" hardware and software are a%ailable in the market at a low cost$ s the necessar" hardware and software are a%ailable in the market at a low cost$ the initial in%estment is the onl" cost incurred and does not need an" further enhancements. the initial in%estment is the onl" cost incurred and does not need an" further enhancements. 2ence it is economicall" feasible.
2ence it is economicall" feasible.
The s"stem is feasible in all respects and hence it encourages taking up the s"stem The s"stem is feasible in all respects and hence it encourages taking up the s"stem design.
design.
athering Information:
athering Information:
The anal"sis through collection of data pla"s the wider role in the anal"sis of the The anal"sis through collection of data pla"s the wider role in the anal"sis of the s"stem. So the data is collected at different le%els of management to keep track of full s"stem. So the data is collected at different le%els of management to keep track of full information of the s"stem.
information of the s"stem.
The collection of data is done from( The collection of data is done from(
:.
;.
;. 33ow 3e%el Managementow 3e%el Management 'ifferent methods used to collect the
'ifferent methods used to collect the
data-!uestioners: !uestioners:
The data is collected through &uestioners b" filling a set of &uestions from the The data is collected through &uestioners b" filling a set of &uestions from the different le%els of management. The &uestions made b" &uestioners are three different different le%els of management. The &uestions made b" &uestioners are three different t"pes.
t"pes.
The" are( The" are( :.
:. Structured questioners:Structured questioners: 2. Unstructured questioners: 2. Unstructured questioners: 3. Semi-structured questioners 3. Semi-structured questioners--Intervie"s: Intervie"s:
+nter%iews were conducted to collect the information. The inter%iews were +nter%iews were conducted to collect the information. The inter%iews were conducted at two le%els.
conducted at two le%els. :.
:. Formal Group Interviews:Formal Group Interviews: the inter%iews conducted for formal groupsthe inter%iews conducted for formal groups i.e.$ the hierarchical <official= groups in the firm.
i.e.$ the hierarchical <official= groups in the firm. 7.
7. Informal Group Interviews: Informal Group Interviews: the inter%iews were conducted forthe inter%iews were conducted for informal groups i.e.$ the groups formed outside the compan". informal groups i.e.$ the groups formed outside the compan".
Observation: Observation:
The data is also collected b" obser%ation of the firm. The data is collected b" The data is also collected b" obser%ation of the firm. The data is collected b" obser%ing on the site at different timings and at different situations like when the firm is obser%ing on the site at different timings and at different situations like when the firm is bus" and when the firm hasn1t much work to do.
bus" and when the firm hasn1t much work to do.
#ecord #evie": #ecord #evie":
To collect the data and to get a clear idea of the firm some of the data is also To collect the data and to get a clear idea of the firm some of the data is also
collected from the past records of the firm. This information helps %er" much to get a clear collected from the past records of the firm. This information helps %er" much to get a clear idea of the firm i.e.$ the different problems occurred in different seasons and some
idea of the firm i.e.$ the different problems occurred in different seasons and some e#ception conditions. This %er" much gi%es a clear idea of e#ceptional conditions. e#ception conditions. This %er" much gi%es a clear idea of e#ceptional conditions.
System Study:
System Study:
Present system: Present system: I
In the e#isted s"stem$ &uz &uestions are pro%ided in a page to the students. Their is non the e#isted s"stem$ &uz &uestions are pro%ided in a page to the students. Their is no timing set for the &uiz &uestions. The teachers ha%e to check the &ustions b" themsel%es. timing set for the &uiz &uestions. The teachers ha%e to check the &ustions b" themsel%es. Their work becomes hactic.
Their work becomes hactic.
Problem in Existing System1
Problem in Existing System1
•
•
There is no scope for teams to play)
There is no scope for teams to play)
•
•
All the .$estions will be displayed at a time)
All the .$estions will be displayed at a time)
•
• The winners are not allowed to pla" another round.The winners are not allowed to pla" another round. •
• There is no &uestion of negati%e marking and marks.There is no &uestion of negati%e marking and marks. •
• These &uizes are not so much interacti%e to the students.These &uizes are not so much interacti%e to the students.
Proposed system: Proposed system:
Proposed system proides a sol$tion to existing system by extending its facilities as follows+ Proposed system proides a sol$tion to existing system by extending its facilities as follows+
•
• There is a scope of any n$mber of topics on which the .$i'es are made)There is a scope of any n$mber of topics on which the .$i'es are made)
•
• There is a chance of answering the .$stions and edit it before the s$bmission of the .$i')There is a chance of answering the .$stions and edit it before the s$bmission of the .$i')
•
$imitation: $imitation:
•
• +n this projects there are no team contests.+n this projects there are no team contests. •
• The students and teachers are able to judge their knowledge but can not be able toThe students and teachers are able to judge their knowledge but can not be able to
campare them with others. campare them with others.
$9$TE" EQ;'E"ENT$
$9$TE" EQ;'E"ENT$
Soft"are Environment:
Soft"are Environment:
Software 0n%ironment is a technical specification of re&uirement of software product. Software 0n%ironment is a technical specification of re&uirement of software product. This specifies the en%ironment for de%elopment$ operation and maintenance of the product. This specifies the en%ironment for de%elopment$ operation and maintenance of the product.
Technolog" Technolog" used-• • 2ttp2ttp • • 2ttp )asics2ttp )asics • • ja%a ja%a • • /racle ::/racle :: • • SQ3SQ3 • • 2TM32TM3 • • >a%ascript>a%ascript • • !SS!SS • • Ser%letSer%let •
• >a%a Ser%er Pages <>SP=>a%a Ser%er Pages <>SP=
%TTP: %TTP:
The 2"perte#t Transfer Protocol is stateless$ T!P?+P based protocol used for The 2"perte#t Transfer Protocol is stateless$ T!P?+P based protocol used for communicating on the ,orld ,ide ,eb. 2TTP defines the precise manner in which ,eb communicating on the ,orld ,ide ,eb. 2TTP defines the precise manner in which ,eb clients communicate with ,eb ser%ers. 2TTP?:.8 is the most common %ersion in use toda". clients communicate with ,eb ser%ers. 2TTP?:.8 is the most common %ersion in use toda". /ddl" enough$ this protocol is not officiall" recognized as an +nternet standard. +t is /ddl" enough$ this protocol is not officiall" recognized as an +nternet standard. +t is documented in the informational RF! :5@A. +ts successor$ 2TTP?:.:$ is currentl" a proposed documented in the informational RF! :5@A. +ts successor$ 2TTP?:.:$ is currentl" a proposed +nternet standard and man" browsers and ser%ers now support this new %ersion.
CLIENT
WEB SERVER
%TTP &asics: %TTP &asics:
The 2TTP protocol follows a %er" simple re&uest?response paradigm. +n short$ a The 2TTP protocol follows a %er" simple re&uest?response paradigm. +n short$ a con%ersation between a ,eb browser and ,eb ser%er goes something like this- the client con%ersation between a ,eb browser and ,eb ser%er goes something like this- the client opens a connection to the ser%er$ the client makes a re&uest to the ser%er$ the ser%er opens a connection to the ser%er$ the client makes a re&uest to the ser%er$ the ser%er responds to the re&uest$ and the connection is closed.
responds to the re&uest$ and the connection is closed. The four stages of a simple ,eb The four stages of a simple ,eb
transaction-
The client opens a connection to the ser%er.The client opens a connection to the ser%er.
The client makes a re&uest to the ser%er.The client makes a re&uest to the ser%er.
The ser%er responds to the re&uest.The ser%er responds to the re&uest.
The connection is closed.The connection is closed.
!lient opens a connection !lient opens a connection
!lient Sends Re&uest !lient Sends Re&uest
Ser%er Responds Ser%er Responds !onnection !losed !onnection !losed 'onnectionless Protocol: 'onnectionless Protocol:
2TTP is a connectionless protocol. s "ou ma" ha%e guessed$ the difference between 2TTP is a connectionless protocol. s "ou ma" ha%e guessed$ the difference between a connectionless and a connection(oriented protocol is in the wa" the" handle connections. a connectionless and a connection(oriented protocol is in the wa" the" handle connections. sing a connectionless protocol$ the client opens a connection with the ser%er$ sends a sing a connectionless protocol$ the client opens a connection with the ser%er$ sends a re&uest$ recei%es a response$ and closes the connection. 0ach re&uest re&uires its own re&uest$ recei%es a response$ and closes the connection. 0ach re&uest re&uires its own connection. ,ith a connection(oriented protocol$ the client connects to the ser%er$ sends a connection. ,ith a connection(oriented protocol$ the client connects to the ser%er$ sends a
re&uest$ recei%es response$ and then holds the connection open in order to ser%ice future re&uest$ recei%es response$ and then holds the connection open in order to ser%ice future re&uests.
re&uests.
The connectionless nature of 2TTP is both strength and a weakness. )ecause it holds The connectionless nature of 2TTP is both strength and a weakness. )ecause it holds a connection open onl" long enough to ser%ice the re&uest$ %er" few ser%er resources are a connection open onl" long enough to ser%ice the re&uest$ %er" few ser%er resources are re&uired to ser%ice large numbers of users. +n fact man" popular ,eb sites ser%ice millions re&uired to ser%ice large numbers of users. +n fact man" popular ,eb sites ser%ice millions of users in a single da". The drawback to a connectionless protocol is that a connection must of users in a single da". The drawback to a connectionless protocol is that a connection must be established with e%er" re&uest. /pening a new connection with each re&uest incurs a be established with e%er" re&uest. /pening a new connection with each re&uest incurs a performance penalt" that translates into additional dela"s for the user.
performance penalt" that translates into additional dela"s for the user.
lternati%el"$ a connectionless protocol such as FTP has a strong performance lternati%el"$ a connectionless protocol such as FTP has a strong performance ad%antage o%er a connectionless protocol. This is due to the fact that the o%erhead re&uired ad%antage o%er a connectionless protocol. This is due to the fact that the o%erhead re&uired to open a new connection is incurred onl" once rather than with e%er" re&uest. to open a new connection is incurred onl" once rather than with e%er" re&uest. nfortunatel"$ each open connection consumes some amount of ser%er resources. These nfortunatel"$ each open connection consumes some amount of ser%er resources. These finite resources$ such as memor" and disk space$ limit the number of concurrent users the finite resources$ such as memor" and disk space$ limit the number of concurrent users the ser%er can handle. +n contrast to a ,eb site$ an FTP site can rarel" support more than a few ser%er can handle. +n contrast to a ,eb site$ an FTP site can rarel" support more than a few hundred users at a time.
hundred users at a time.
Stateless Protocol: Stateless Protocol:
s stated in the definition$ 2TTP is a stateless protocol. protocol is said to be s stated in the definition$ 2TTP is a stateless protocol. protocol is said to be stateless if it has no memor" of prior connections and cannot distinguish one client1s re&uest stateless if it has no memor" of prior connections and cannot distinguish one client1s re&uest from that of another. +n contrast$ FTP is a
from that of another. +n contrast$ FTP is a stateful stateful protocol$ because the connection is notprotocol$ because the connection is not opened and closed with e%er" re&uest. fter the initial login$ the FTP ser%er maintains the opened and closed with e%er" re&uest. fter the initial login$ the FTP ser%er maintains the user1s credentials throughout the session. /n the other hand$ due to its stateless nature$ user1s credentials throughout the session. /n the other hand$ due to its stateless nature$ there is no inherent method in 2TTP for tracking a client1s tra%ersal of a ,eb site. 0%er" there is no inherent method in 2TTP for tracking a client1s tra%ersal of a ,eb site. 0%er" connection is a new re&uest from an anon"mous client.
connection is a new re&uest from an anon"mous client.
The stateless nature of 2TTP is both strength and a weakness. +t is strength in that The stateless nature of 2TTP is both strength and a weakness. +t is strength in that its stateless nature keeps the protocol simple and straightforward. +t also consumes fewer its stateless nature keeps the protocol simple and straightforward. +t also consumes fewer resources on the ser%er and can support more simultaneous users since there are no client resources on the ser%er and can support more simultaneous users since there are no client credentials and connections to maintain. The disad%antage is in the o%erhead re&uired to credentials and connections to maintain. The disad%antage is in the o%erhead re&uired to create a new connection with each re&uest and the inabilit" to track a single user as he create a new connection with each re&uest and the inabilit" to track a single user as he tra%erses a ,eb site.
(ava: (ava:
2aa lang$age is platform independent if it does not hae any dependency on the operating
2aa lang$age is platform independent if it does not hae any dependency on the operating
system)
system)
*s$ally dependency on the O3S is created+1
*s$ally dependency on the O3S is created+1
,)
,) At the time of deelopment by ino"ing O3S library f$nctions from the application/
At the time of deelopment by ino"ing O3S library f$nctions from the application/
-)
-) At the time of compilation by following O3S specific format in co mpiled code/ and
At the time of compilation by following O3S specific format in co mpiled code/ and
4)
4) At the time of exec$tion by $sing the O3S for la$nching the application)
At the time of exec$tion by $sing the O3S for la$nching the application)
That is/ a 5ang$age is platform independent if+1
That is/ a 5ang$age is platform independent if+1
,)
,) It is compiled in a platform m$t$al manner)
It is compiled in a platform m$t$al manner)
-)
-) 5ang$age proides its own r$ntime enironment for the exec$tion of its application)
5ang$age proides its own r$ntime enironment for the exec$tion of its application)
4)
4) 5ang$age proides a comprehensie library for the application deelopers to deelop all
5ang$age proides a comprehensie library for the application deelopers to deelop all
types of application witho$t $sing the O3S concern)
types of application witho$t $sing the O3S concern)
(ava Server Pages: (ava Server Pages:
Short for
Short for
J J avaava S S erver erver P P ageage) A serer1side
) A
serer1side technology/ 2aa Serer Pages are an extension to the
technology/ 2aa Serer Pages are an extension to the
2aa
2aa serlet
serlet technology that was deeloped by
technology that was deeloped by S$n
S$n))
2SPs hae dynamic scripting capability that wor"s in tande m with
2SPs hae dynamic scripting capability that wor"s in tande m with#T65
#T65 code/ separating the
code/ separating the
page logic from the static elements 11 the act$al design and display of the page 11 to help ma"e
page logic from the static elements 11 the act$al design and display of the page 11 to help ma"e
the #T65 more f$nctional7i)e) dynamic database .$eries8)
the #T65 more f$nctional7i)e) dynamic database .$eries8)
A 2SP is translated into 2aa serlet before being r$n/ and it processes #TTP re.$ests and
A 2SP is translated into 2aa serlet before being r$n/ and it processes #TTP re.$ests and
generates responses li"e any serlet) #oweer/ 2SP technology proides a more conenient way
generates responses li"e any serlet) #oweer/ 2SP technology proides a more conenient wa y
to code a serlet) Translation occ$rs the first time the application is r$n) A 2SP translator is
to code a serlet) Translation occ$rs the first time the application is r$n) A 2SP translator is
triggered by the )0sp file name extension in a *R5) 2SPs are f$lly interoperable with serlets) 9o$
triggered by the )0sp file name extension in a *R5) 2SPs are f$lly interoperable with serlets) 9o$
can incl$de o$tp$t from a serlet or forward the o$tp$t to a serlet/ and a serlet can incl$de
can incl$de o$tp$t from a serlet or forward the o$tp$t to a serlet/ and a serlet can incl$de
o$tp$t from a 2SP or forward o$tp$t to a 2SP)
o$tp$t from a 2SP or forward o$tp$t to a 2SP)
2SPs are not restricted to any specific platform or serer) It was orignially created as an
2SPs are not restricted to any specific platform or serer) It was orignially created as an
alternatie to 6icrosoft:s
alternatie to 6icrosoft:sASPs
ASPs 7Actie Serer Pages8) Recently/ howeer/ 6icrosoft has
7Actie Serer Pages8) Recently/ howeer/ 6icrosoft has
co$ntered 2SP technology with its own
)hy to use (ava * : )hy to use (ava * :
•
•
Ex
Ex
cel
cel
l
l
ent
ent
t
t
ool
ool
i
i
ng:
ng:
I
I
DE,
DE,
CI
CI
,
,
et
et
c
c
.
.
••
Vas
Vas
t
t
ar
ar
r
r
ay
ay
of
of
3r
3r
d
d
par
par
t
t
y
y
l
l
i
i
br
br
ar
ar
i
i
es
es
.
.
••
Hu
Hu
ge
ge
amo
amou
un
nt
t
o
o
f
f
d
do
oc
c
ume
umen
nt
t
a
a
t
t
i
i
o
o
n
n
a
a
v
v
ai
ai
l
l
ab
a
bl
l
e
e
.
.
••
Lar
Lar
ge
ge
pool
pool
of
of
de
dev
vel
el
oper
oper
s
s
a
a
v
vai
ai
l
l
abl
abl
e.
e.
••
Pl
Pl
at
at
f
f
or
or
m
m
ubi
ubi
qui
qui
t
t
ous
ous
.
.
••
Ex
Ex
c
c
el
el
l
l
ent
ent
per
per
f
f
or
or
manc
manc
e.
e.
••
Ex
Ex
cel
cel
l
l
ent
ent
s
s
pec
pec
i
i
fi
fi
cat
cat
i
i
on.
on.
••
St
St
ur
ur
dy
dy
gar
gar
bage
bage
col
col
l
l
ec
ec
t
t
i
i
on.
on.
••
Managed
Manage
d
memor
memor
y
y
.
.
••
Nat
Nat
i
i
v
v
e
e
t
t
hr
hr
eads
eads
.
.
••
Ch
Ch
oi
oi
c
c
e
e
-
-
i
i
mp
mp
l
l
e
e
me
me
nt
nt
e
e
d
d
b
b
y
y
mu
mu
l
l
t
t
i
i
p
p
l
l
e
e
v
v
e
e
nd
nd
or
or
s
s
.
.
>a%a is platform independent language. +t can be used for !lient Side programming as well >a%a is platform independent language. +t can be used for !lient Side programming as well as Se%er Side Programming.
as Se%er Side Programming.
)hy to use (SP* : )hy to use (SP* :
In the early days of the !eb/ the Common <ateway Interface 7C<I8 was the only tool for
deeloping dynamic web content) #oweer/ C<I is not an efficient sol$tion) For eery re.$est
that comes in/ the web serer has to create a new operating system process/ load an interpreter
and a script/ exec$te the script/ and then tear it all down again) This is ery taxing for the serer
and doesn=t scale well when the amo$nt of traffic increases)
;$mero$s C<I alternaties and enhancements/ s$ch as FastC<I/ mod> perl from
Apache/ ;SAPI from ;etscape/ ISAPI from 6icrosoft/ and 2aa Serlets from S$n
6icrosystems/ hae been created oer the years) !hile these sol$tions offer better performance
and scalability/ all of these technologies s$ffer from a common problem+ they generate web
pages by embedding #T65 directly in programming lang$age code) This p$shes the creation of
dynamic web pages excl$siely into the realm of programmers) 2aaSerer Pages/ howeer/
changes all that)
/racle is a comprehensi%e operating en%ironment that packs the power of a /racle is a comprehensi%e operating en%ironment that packs the power of a mainframe Relational 'atabase Management s"stem into user microcomputer. +t pro%ides a mainframe Relational 'atabase Management s"stem into user microcomputer. +t pro%ides a set of functional programs that user can use as tools to build structures and perform tasks$ set of functional programs that user can use as tools to build structures and perform tasks$ became applications de%eloped in oracle are completel" portable to other %ersions of the became applications de%eloped in oracle are completel" portable to other %ersions of the programmer who can create a comple# application in a single user en%ironment and then programmer who can create a comple# application in a single user en%ironment and then mo%e it to a multi user platform. ser do not ha%e to be an e#pert to appreciate oracle but mo%e it to a multi user platform. ser do not ha%e to be an e#pert to appreciate oracle but the better user understands the program$ the producti%el" and creati%el" can use the tools the better user understands the program$ the producti%el" and creati%el" can use the tools it pro%ides.
it pro%ides.
Support for 'ODD,S #ules: Support for 'ODD,S #ules:
/racle supports the following rules of
/racle supports the following rules of Dr-E-F-'odd Dr-E-F-'odd--Rule:- +nformation Rule
Rule:- +nformation Rule B0SB0S Rule7- 9uaranteed ccess
Rule7- 9uaranteed ccess B0SB0S Rule;- S"stematic Representation of missing information
Rule;- S"stematic Representation of missing information B0SB0S Rule@- !omprehensi%e /nline !atalogue
Rule@- !omprehensi%e /nline !atalogue B0SB0S RuleA- !omprehensi%e 'ata Sub(3anguage
RuleA- !omprehensi%e 'ata Sub(3anguage B0SB0S RuleC- *iew pdating
RuleC- *iew pdating Partiall"Partiall" RuleD- 2igh le%el +nsert$ pdate$ 'elete
RuleD- 2igh le%el +nsert$ pdate$ 'elete B0SB0S Rule4- Ph"sical 'ata +ndependence Partiall" Rule4- Ph"sical 'ata +ndependence Partiall" Rule5- 3ogical 'ata +ndependence
Rule5- 3ogical 'ata +ndependence Partiall"Partiall" Rule:8- +ntegrit" +ndependence Partiall" Rule:8- +ntegrit" +ndependence Partiall" Rule::- 'istribution 'ependence B0S Rule::- 'istribution 'ependence B0S Rule:7- 6on Sub%ersion B0S Rule:7- 6on Sub%ersion B0S Features of Oracle:
Features of Oracle:
+- Oracle is portable: +- Oracle is portable:
The oracle R')MS is a%ailable on wide range of platforms ranging from pc1s to super The oracle R')MS is a%ailable on wide range of platforms ranging from pc1s to super computers and as a multi(user network loadable module for 6o%ell 6etware. +f "ou run the computers and as a multi(user network loadable module for 6o%ell 6etware. +f "ou run the same application on one s"stem "ou can run the same application on other s"stems without same application on one s"stem "ou can run the same application on other s"stems without
.- Oracle is 'ompatible: .- Oracle is 'ompatible:
The /racle command can be used for !/M indicating with +)M$ ')?7$ MainframeThe /racle command can be used for !/M indicating with +)M$ ')?7$ Mainframe R')MS$ which is different from /racle$ i.e.$ /racle is compatible with ')?7. /racle R')MS R')MS$ which is different from /racle$ i.e.$ /racle is compatible with ')?7. /racle R')MS is a high performances fault tolerant ')MS$ which is speciall" designed for online is a high performances fault tolerant ')MS$ which is speciall" designed for online transaction processing and for handling the large database applications.
transaction processing and for handling the large database applications.
/- Oracle #D&0S is available "ith t"o options: /- Oracle #D&0S is available "ith t"o options:
/racle R')MS %ersion 4 with transaction processing option and oracle R')MS /racle R')MS %ersion 4 with transaction processing option and oracle R')MS %ersion 4 without transaction processing option. /racle with transaction processing option %ersion 4 without transaction processing option. /racle with transaction processing option offers three features$ which contributes to a %er" high le%el of transaction processing offers three features$ which contributes to a %er" high le%el of transaction processing throughout.
throughout.
S!$:
S!$:
The name SQ3 stands for Structural Quer" 3anguage. SQ3 is a data access language$ The name SQ3 stands for Structural Quer" 3anguage. SQ3 is a data access language$ like an" other language$ it is used for communication. SQ3 communicates with database like an" other language$ it is used for communication. SQ3 communicates with database manager. The database manager could be /racle$ +nformi#$ ')7 and SQ3 database. SQ3 is manager. The database manager could be /racle$ +nformi#$ ')7 and SQ3 database. SQ3 is eas" to learn. 'espite the fact that SQ3 is a computer programming language$ it is much eas" to learn. 'espite the fact that SQ3 is a computer programming language$ it is much simpler than traditional programming language like !/)/3$ )S+!$ F/RTR6 or P+. This is simpler than traditional programming language like !/)/3$ )S+!$ F/RTR6 or P+. This is due to the fact that SQ3 is a non(procedural language.
due to the fact that SQ3 is a non(procedural language.
SQ3 is one of the /racle facilities. +t is important to understand in each case its SQ3 is one of the /racle facilities. +t is important to understand in each case its differences$ purpose and place in the /racle famil".
differences$ purpose and place in the /racle famil".
o
o SQ3 is the language used to access a relational database$ including /racle.SQ3 is the language used to access a relational database$ including /racle. o
o SQ3 Ma" be used with each of the /racle tools$ where access to theSQ3 Ma" be used with each of the /racle tools$ where access to the
database is re&uired. database is re&uired.
Overvie" of S!$: Overvie" of S!$:
s"stem ES"stem R E in the mid(:5D8s. +n :5D5$ /racle !orporation introduced the first s"stem ES"stem R E in the mid(:5D8s. +n :5D5$ /racle !orporation introduced the first commerciall" a%ailable implementation of SQ3.
commerciall" a%ailable implementation of SQ3.
Features of S!$: Features of S!$:
SQ3 is an 0nglish(like language. +t uses words such as select$ insert$ delete asSQ3 is an 0nglish(like language. +t uses words such as select$ insert$ delete as part of its command set.
part of its command set.
SQ3 is a non(procedural language- "ou specif" what SQ3 is a non(procedural language- "ou specif" what information "ou re&uire$information "ou re&uire$ not how to get it. +n other words$ SQ3 does not re&uire "ou to specif" the not how to get it. +n other words$ SQ3 does not re&uire "ou to specif" the access method to the data. ll SQ3 statements use the &uer" optimizer E a access method to the data. ll SQ3 statements use the &uer" optimizer E a part of the R')MS E to determine the fastest means of retrie%ing the part of the R')MS E to determine the fastest means of retrie%ing the specified data. This feature makes it easier for "ou to concentrate on specified data. This feature makes it easier for "ou to concentrate on obtaining the desired result.
obtaining the desired result.
SQ3 processes sets of records rather than a single record at a time. The mostSQ3 processes sets of records rather than a single record at a time. The most common form of a set of records is a table.
common form of a set of records is a table.
range of user including ')s$ application programmers$ management range of user including ')s$ application programmers$ management personnel$ and man" other t"pes of end users can use SQ3.
personnel$ and man" other t"pes of end users can use SQ3.
SQ3 pro%ides commands for a %ariet" of tasks including-SQ3 pro%ides commands for a %ariet" of tasks
including-
Quer"ing dataQuer"ing data
+nserting$ updating and deleting rows in a table+nserting$ updating and deleting rows in a table
!reating$ modif"ing and deleting database objects!reating$ modif"ing and deleting database objects
!ontrolling access to the database and database objects!ontrolling access to the database and database objects
S!$ Processing 'apabilities: S!$ Processing 'apabilities:
SQ3 is composed of a definition language a 'ata Manipulation 3anguage and a 'ata SQ3 is composed of a definition language a 'ata Manipulation 3anguage and a 'ata !ontrol 3anguage. These three languages support the complete spectrum of Relational 'ata !ontrol 3anguage. These three languages support the complete spectrum of Relational 'ata processing acti%it". +n fact most SQ3 based product all access to the data through SQ3. processing acti%it". +n fact most SQ3 based product all access to the data through SQ3.
+- Data Definition $anguage: +- Data Definition $anguage:
''3 allows creation$ 'eletion and Modification of data structure for bar s"stem. ''3 allows creation$ 'eletion and Modification of data structure for bar s"stem. These structures include tables$ databases and inde#es.
These structures include tables$ databases and inde#es. 0#- !reate$ 'rop and lter.
0#- !reate$ 'rop and lter.
.- Data 0anipulation $anguage: .- Data 0anipulation $anguage:
These commands are used to manipulate the data in tables directl" or through %iews. These commands are used to manipulate the data in tables directl" or through %iews. There are four standard 'M3 statements. The" are select$ delete$ insert and update.
There are four standard 'M3 statements. The" are select$ delete$ insert and update.
/- Data control language: /- Data control language:
These commands are used to control usage and access of data. The most commonl" These commands are used to control usage and access of data. The most commonl" found one1s will include grant$ re%oke.
found one1s will include grant$ re%oke.
)hy to 1se* )hy to 1se*
/racle greatl" supports R')MS features. lso it supports high securit" to the data /racle greatl" supports R')MS features. lso it supports high securit" to the data and faster accessing capabilit". +t can be run on a %ariet" of platforms and operating and faster accessing capabilit". +t can be run on a %ariet" of platforms and operating s"stems. /ne can de%elop an application easil" b" pro%iding user(friendl" en%ironment. s"stems. /ne can de%elop an application easil" b" pro%iding user(friendl" en%ironment.
The features of oracle are portabilit" and compatibilit". The features of oracle are portabilit" and compatibilit".
%T0$:
%T0$:
The e#tended reach of information and ser%ices to customers that the +nternet has The e#tended reach of information and ser%ices to customers that the +nternet has enabled$ has created a new challenge for the de%eloper. The de%eloper should de%elop a enabled$ has created a new challenge for the de%eloper. The de%eloper should de%elop a user interface that is distributable$ a%ailable on multiple platforms and supports a wide user interface that is distributable$ a%ailable on multiple platforms and supports a wide range of client en%ironments from handheld wireless de%ices to high(end workstations. So range of client en%ironments from handheld wireless de%ices to high(end workstations. So to maintain a broad reach to client en%ironments and to achie%e greatest compatibilit" with to maintain a broad reach to client en%ironments and to achie%e greatest compatibilit" with all browsers$ this s"stem uses standard 2TM3.
The user interface has been designed in 2TM3 hence can be browsed in an" web The user interface has been designed in 2TM3 hence can be browsed in an" web browser.
browser.
'ascading Style Sheets: 'ascading Style Sheets:
These ha%e been used to separate data form presentation. )" using these st"le These ha%e been used to separate data form presentation. )" using these st"le sheets throughout the project$ a uniform look and feel can be maintained for all the 2TM3 sheets throughout the project$ a uniform look and feel can be maintained for all the 2TM3 elements and tags that ha%e been used in the project. +f there is an" re%amp the wa" the elements and tags that ha%e been used in the project. +f there is an" re%amp the wa" the content has been presented in the website$ the changes can be made to the appropriate content has been presented in the website$ the changes can be made to the appropriate st"le sheet$ which will be reflected across all the st"le sheets.
st"le sheet$ which will be reflected across all the st"le sheets.
(avaScript:
(avaScript:
Until recently, Web-site design was limited by the cnstraints ! "T#L and
C$I% &a'aScri(t is an easy-t-)se lang)age, de'el(ed by Netsca(e, which
can be embedded in "T#L (ages t ma*e them mre interacti'e and
dynamic%
&a'aScri(t allws site designers with mderate (rgramming s*ills t add
ca(abilities t their Web (ages, incl)ding instant )ser !eedbac*, ad'anced
!rm (rcessing, ((-)( windws, ad'anced !rame a((licatins, and m)ch
mre% +) learn the basic elements ! the &a'aScri(t lang)age and se'eral
techni)es t ta*e y)r Web (ages t the net le'el%
.rere)isite/ 0amiliarity with "T#L and Web (age design% Sme
(rgramming e(erience in C, Vis)al Basic, r the e)i'alent%
WOK'N! EN<'ON"ENT
WOK'N! EN<'ON"ENT
%ard"are 'onfiguration:
%ard"are 'onfiguration:
Processor
Processor
-
-
!ore iA
!ore iA
RM
RM
-
-
@9) RM
@9) RM
2ard 'isk 'ri%e
2ard 'isk 'ri%e
-
-
@88 9) 2''
@88 9) 2''
He"board
He"board
-
-
:8@ ke"s
:8@ ke"s
Mouse
Mouse
-
-
3ogitech Mouse
3ogitech Mouse
Monitor
Monitor
-
-
3aptop
3aptop
'ispla" T"pe
'ispla" T"pe
-
-
3!'
3!'
Soft"are 'onfiguration:
Soft"are 'onfiguration:
/perating S"stem
/perating S"stem
-
-
,indows D<2ome )asic=
,indows D<2ome )asic=
,eb ser%er
,eb ser%er
-
-
pache Tomcat 4.8.;
pache Tomcat 4.8.;
,eb )rowser
,eb )rowser
-
-
9oogle !hrome
9oogle !hrome
'esigning Tool <+'0=
'esigning Tool <+'0=
-
-
6et)eans +'0 4
6et)eans +'0 4
Ser%er Side Scripting
Ser%er Side Scripting
-
-
>a%a
>a%a
!lient Side Scripting
!lient Side Scripting
-
-
ja%ascript$ >SP$ ser%let
ja%ascript$ >SP$ ser%let
)ackend
$9$TE" E$'!N
$9$TE" E$'!N
Introduction to System Design: Introduction to System Design:
S"stem design is the process of planning a new s"stem or to replace the e#isting S"stem design is the process of planning a new s"stem or to replace the e#isting s"stem. Simpl"$ s"stem design is like the blueprint for building$ it specifies all the features s"stem. Simpl"$ s"stem design is like the blueprint for building$ it specifies all the features that are to be in the finished product.
that are to be in the finished product.
S"stem design phase follows s"stem anal"sis phase. 'esign is concerned with S"stem design phase follows s"stem anal"sis phase. 'esign is concerned with identif"ing functions$ data streams among those functions$ maintaining a record of the identif"ing functions$ data streams among those functions$ maintaining a record of the design decisions and pro%iding a blueprint the implementation phase.
design decisions and pro%iding a blueprint the implementation phase.
'esign is the bridge between s"stem anal"sis and s"stem implementation. Some of 'esign is the bridge between s"stem anal"sis and s"stem implementation. Some of the essential fundamental concepts in%ol%ed in the design of application software
the essential fundamental concepts in%ol%ed in the design of application software
are-• • bstractionbstraction • • Modularit"Modularit" • • *erification*erification
2bstraction 2bstraction is used to construct solutions to problem without ha%ing to takeis used to construct solutions to problem without ha%ing to take account of the intricate details of the %arious component sub problems. bstraction allows account of the intricate details of the %arious component sub problems. bstraction allows s"stem designer to make step(wise refinement$ which at each stage of the design ma" hide$ s"stem designer to make step(wise refinement$ which at each stage of the design ma" hide$ unnecessar" details associated with representation or implementation from the surrounding unnecessar" details associated with representation or implementation from the surrounding en%ironment.
en%ironment.
0odularity
0odularity is concerned with decomposing of main module into well(definedis concerned with decomposing of main module into well(defined manageable units with well(defined interfaces among the units. This enhances design manageable units with well(defined interfaces among the units. This enhances design clarit"$ which in turn eases implementation$ 'ebugging$ Testing$ 'ocumenting and clarit"$ which in turn eases implementation$ 'ebugging$ Testing$ 'ocumenting and Maintenance of the software product. Modularit" %iewed in this sense is a %ital tool in the Maintenance of the software product. Modularit" %iewed in this sense is a %ital tool in the construction of large software projects.
construction of large software projects. 3erification
3erification is fundamental concept in software design. design is %erifiable if itis fundamental concept in software design. design is %erifiable if it can be demonstrated that the design will result in implementation that satisfies the can be demonstrated that the design will result in implementation that satisfies the customer1s re&uirements. *erification is of two t"pes namel".
Some of the important factors of &ualit" that are to be considered in the design of Some of the important factors of &ualit" that are to be considered in the design of application software
application software
are-#eliability: #eliability:
The software should beha%e strictl" according to the original specification and should The software should beha%e strictl" according to the original specification and should function smoothl" under normal conditions.
function smoothl" under normal conditions.
E4tensibility: E4tensibility:
The software should be capable of adapting easil" to changes in the specification. The software should be capable of adapting easil" to changes in the specification.
#eusability: #eusability:
The software should be de%eloped using a modular approach$ which permits modules The software should be de%eloped using a modular approach$ which permits modules to be reused b" other application$ if possible.
to be reused b" other application$ if possible.
The S"stem 'esign briefl" describes the concept of s"stem design and it contains The S"stem 'esign briefl" describes the concept of s"stem design and it contains four sections. The first section briefl" describes the features that the s"stem is going to four sections. The first section briefl" describes the features that the s"stem is going to pro%ide to the user and the outputs that the proposed s"stem is going to offer.
pro%ide to the user and the outputs that the proposed s"stem is going to offer.
The second section namel" 3ogical 'esign describes the 'ata Flow 'iagrams$ which The second section namel" 3ogical 'esign describes the 'ata Flow 'iagrams$ which show clearl" the data mo%ements$ the processes and the data sources$ and sinks$ 0(R show clearl" the data mo%ements$ the processes and the data sources$ and sinks$ 0(R diagrams which represent the o%erall logical design of the database$ and high(le%el process diagrams which represent the o%erall logical design of the database$ and high(le%el process structure of the s"stem.
structure of the s"stem.
The process of design in%ol%es Iconcei%ing and planning out in the mindJ and making The process of design in%ol%es Iconcei%ing and planning out in the mindJ and making a drawing pattern$ or sketch of the s"stem. +n software design there are two t"pes of major a drawing pattern$ or sketch of the s"stem. +n software design there are two t"pes of major acti%ities$ !onceptual 'esign and 'etailed 'esign.
acti%ities$ !onceptual 'esign and 'etailed 'esign.
!onceptual or logical or e#ternal design of software in%ol%es concei%ing$ planning !onceptual or logical or e#ternal design of software in%ol%es concei%ing$ planning out$ and specif"ing the e#ternall" obser%able characteristics of a software product. These out$ and specif"ing the e#ternall" obser%able characteristics of a software product. These characteristics include user displa"s$ e#ternal data sources$ functional characteristics and characteristics include user displa"s$ e#ternal data sources$ functional characteristics and high(le%el process structure for the product.
'etails or internal design in%ol%es concei%ing$ planning out$ and specif"ing the 'etails or internal design in%ol%es concei%ing$ planning out$ and specif"ing the internal structure and processing details of the software product. The goal of internal design internal structure and processing details of the software product. The goal of internal design is to specif" internal structure$ processing details$ blueprint of implementation$ testing$ and is to specif" internal structure$ processing details$ blueprint of implementation$ testing$ and maintenance acti%ities.
maintenance acti%ities.
/ne of the important fundamental concepts of software design is modularit". /ne of the important fundamental concepts of software design is modularit". modularit" s"stem consists interfaces among the units. Modularit" enhances design clarit"$ modularit" s"stem consists interfaces among the units. Modularit" enhances design clarit"$ which in turn eases implementation$ debugging$ testing$ documentation$ and maintenance which in turn eases implementation$ debugging$ testing$ documentation$ and maintenance of the software product.
of the software product.
The other fundamental concepts of software design include abstraction$ structure$ The other fundamental concepts of software design include abstraction$ structure$ information hiding$ concurrenc" and %erification. The use of structuring permits information hiding$ concurrenc" and %erification. The use of structuring permits decomposition of a large s"stem into smaller$ more manageable units with well(defined decomposition of a large s"stem into smaller$ more manageable units with well(defined relationships to the other units. The s"stem design is %erifiable if it can be demonstrated relationships to the other units. The s"stem design is %erifiable if it can be demonstrated that the design will result in an implementation that satisfies the customer1s re&uirements. that the design will result in an implementation that satisfies the customer1s re&uirements.
Preliminary Design: Preliminary Design:
Preliminar" design is basicall" concerned with deri%ing an o%erall picture of the Preliminar" design is basicall" concerned with deri%ing an o%erall picture of the s"stem. 'eri%ing entire s"stem into modules and sub(modules while keeping !ohesion and s"stem. 'eri%ing entire s"stem into modules and sub(modules while keeping !ohesion and !oupling factors in mind. Tools$ which assist in preliminar" design process$ are 'ata Flow !oupling factors in mind. Tools$ which assist in preliminar" design process$ are 'ata Flow 'iagrams.
'iagrams.
'ode design: 'ode design:
The purpose of code is to facilitate the identification and retrie%al for items of The purpose of code is to facilitate the identification and retrie%al for items of information. code is an ordered collection of s"mbols designed to pro%ide uni&ue information. code is an ordered collection of s"mbols designed to pro%ide uni&ue identification of an entit" or attribute. To achie%e uni&ue identification there must be onl" identification of an entit" or attribute. To achie%e uni&ue identification there must be onl" one place where the identified entit" or the attribute can be entered in the codeG con%ersel" one place where the identified entit" or the attribute can be entered in the codeG con%ersel" there must be a place in the code for e%er" thing that is to be identified. This mutuall" there must be a place in the code for e%er" thing that is to be identified. This mutuall" e#clusi%e feature must be built into an" coding s"stem.
e#clusi%e feature must be built into an" coding s"stem.
The codes for this s"stem are designed with two features in mind. /ptimum human The codes for this s"stem are designed with two features in mind. /ptimum human oriented use and machine efficienc". 3ength of the code range from length of one to length oriented use and machine efficienc". 3ength of the code range from length of one to length of fi%e
of fi%e characteristics-
characteristics-
The code structure is uni&ueG ensuring that onl" one %alue of the code with aThe code structure is uni&ueG ensuring that onl" one %alue of the code with a single meaning ma" be correctl" applied to a gi%en entit" or attributes.
The" ha%e a uniform size and format.The" ha%e a uniform size and format.
The codes are simple so that the user can easil" understand it.The codes are simple so that the user can easil" understand it.
The codes are also %ersatile i.e.$ it is eas" to modif" to reflect necessar"The codes are also %ersatile i.e.$ it is eas" to modif" to reflect necessar" changers in condition$ chart eristic and relationships of the encode entities.
changers in condition$ chart eristic and relationships of the encode entities.
The codes are also easil" storable for producing reports in a predeterminedThe codes are also easil" storable for producing reports in a predetermined order of format.
order of format.
The codes are also stable and do not re&uire being fre&uentl" updatedThe codes are also stable and do not re&uire being fre&uentl" updated thereb" promoting user efficienc".
thereb" promoting user efficienc".
The codes are also meaningful.The codes are also meaningful.
The" are also operable i.e.$ the" are ade&uate for present and anticipate dataThe" are also operable i.e.$ the" are ade&uate for present and anticipate data processing both for machine and human use.
processing both for machine and human use.
Input Design: Input Design:
+nput design is a part of o%erall s"stem design$ which re&uires %er" careful attention. +nput design is a part of o%erall s"stem design$ which re&uires %er" careful attention. The main objecti%es of input design
The main objecti%es of input design
are-
To produce a cost(effecti%e method of input.To produce a cost(effecti%e method of input.
To achie%e the highest possible le%el of accurac".To achie%e the highest possible le%el of accurac".
To ensure that the input is acceptable to and understood b" the user staff.To ensure that the input is acceptable to and understood b" the user staff. +n this s"stem input screens are designed %er" carefull" so that no inaccurate +n this s"stem input screens are designed %er" carefull" so that no inaccurate data will enter the database. The data is made as eas" as possible. For simplif"ing the data will enter the database. The data is made as eas" as possible. For simplif"ing the data entr" man" facilities are gi%en.
data entr" man" facilities are gi%en.
0ach and e%er" screen in this s"stem is facilitated b" man" pushbuttons so that 0ach and e%er" screen in this s"stem is facilitated b" man" pushbuttons so that the user can easil" work with this s"stem.
Output Design: Output Design:
/utputs from computer s"stems are re&uired primaril" to communicate the results of /utputs from computer s"stems are re&uired primaril" to communicate the results of processing to users. The" are also to pro%ide a permanent hard cop" of these results for processing to users. The" are also to pro%ide a permanent hard cop" of these results for later consultation.
later consultation.
The %arious t"pes of outputs are re&uired b" this s"stem are gi%en The %arious t"pes of outputs are re&uired b" this s"stem are gi%en
below-
0#ternal outputs$ whose destination is outside the concern and which re&uire0#ternal outputs$ whose destination is outside the concern and which re&uire special attention because the"$ project the image of the concern.
special attention because the"$ project the image of the concern.
+nternal outputs$ whose destination is within the concern and which re&uire+nternal outputs$ whose destination is within the concern and which re&uire careful design because the" are the user1s main interface within the computer.
careful design because the" are the user1s main interface within the computer.
/peration outputs$ whose use is purel" within the computer department$/peration outputs$ whose use is purel" within the computer department$ 0.g.$ program listings$ usage statistics etc$
0.g.$ program listings$ usage statistics etc$
+nteracti%e outputs$ which in%ol%es the user in communicating directl" with+nteracti%e outputs$ which in%ol%es the user in communicating directl" with the computers.