STUDENT INFORMATION SYSTEM 1. LIST OF FIGURES FIGURES
USECASE DIAGRAM FOR FOR A ADMIN
USECASE DIAGRAM FOR FOR STU STUD DENT
CLASS DIAGRAM
SEQUENCE DIAGRAMS
COLLABO LLABORATIO RATIO N DIAGRAMS
COMPO MPO NENT DIAGRAM
DEPLOY EPLOYMENT MENT DIAGRAM
1
2. ABSTRACT
The mission of the t he Student Information System projec projectt is to cr eat eate an integ integr r ated informa information technolo echnology gy environme nvironment for stude students, nts, HOD , f acult aculty y, Staff and administr administr ation. Our goal is to foc fo cus on ustomers, se service rvicess and integ integr r ation for e for end use users. custome Student Information System Web-bas eb-based self -service rvice environme nvironment for stude students nts , prospec prospectiv tivee stude students, nts, and employee mplo yees; s; an administr administr ative tive tr ansac nsaction tion proce processin ssing g environme nvironment for unive university rsit y sta staff to cond onduct day-to day-to -day busin busineess; an informa information environme nvironme nt for all levels of f acult aculty y and sta staff to do r e porting porting, dat data extr extr action, action, and informa information analysis.
A student information system (SIS) is a softwa softwar e a pplica pplication tion for edu education cationaal estab stablis lish hments to manage stude student nt dat data. Stude tudent nt informa information sy syste stems provide provide ca pab pabiliti ilitiees for ente ntering ring stude student nt test and othe ot her r asse ssessme ssment sc scor es, b s, buil uild ding ing stude student nt sched schedul ulees, tr ack ack ing ing stude student nt atte tt endan dance, ce, and managin aging g many othe ot herr stude student nt-r elated dat data needs eeds in a school, chool, college ollege or unive university rsit y Our eas easy-to y-to--use use, integ integr r ated College ollege administr administr ation a pplica pplications tions ar e prove proven to r edu educe time time spe spent on administr administr ative tive task s so you can can conce oncentr ntr ate on r aising ising stude student nt achi achievement. Stude tudent nt Informa nformation Syst Systeem hav have to acce pt, process cess and gen gener ate r e ports accur accur ately and any point of time time any use user can can get get the stude student nt informa information
2
2. ABSTRACT
The mission of the t he Student Information System projec projectt is to cr eat eate an integ integr r ated informa information technolo echnology gy environme nvironment for stude students, nts, HOD , f acult aculty y, Staff and administr administr ation. Our goal is to foc fo cus on ustomers, se service rvicess and integ integr r ation for e for end use users. custome Student Information System Web-bas eb-based self -service rvice environme nvironment for stude students nts , prospec prospectiv tivee stude students, nts, and employee mplo yees; s; an administr administr ative tive tr ansac nsaction tion proce processin ssing g environme nvironment for unive university rsit y sta staff to cond onduct day-to day-to -day busin busineess; an informa information environme nvironme nt for all levels of f acult aculty y and sta staff to do r e porting porting, dat data extr extr action, action, and informa information analysis.
A student information system (SIS) is a softwa softwar e a pplica pplication tion for edu education cationaal estab stablis lish hments to manage stude student nt dat data. Stude tudent nt informa information sy syste stems provide provide ca pab pabiliti ilitiees for ente ntering ring stude student nt test and othe ot her r asse ssessme ssment sc scor es, b s, buil uild ding ing stude student nt sched schedul ulees, tr ack ack ing ing stude student nt atte tt endan dance, ce, and managin aging g many othe ot herr stude student nt-r elated dat data needs eeds in a school, chool, college ollege or unive university rsit y Our eas easy-to y-to--use use, integ integr r ated College ollege administr administr ation a pplica pplications tions ar e prove proven to r edu educe time time spe spent on administr administr ative tive task s so you can can conce oncentr ntr ate on r aising ising stude student nt achi achievement. Stude tudent nt Informa nformation Syst Systeem hav have to acce pt, process cess and gen gener ate r e ports accur accur ately and any point of time time any use user can can get get the stude student nt informa information
2
3. INTR ODUCTI ODUCTIO O N BRIEF OVER OVER VIEW IEW OF THE SYSTEM: 3.1 BRIEF Student Information System
Web-bas eb-based self -service rvice environme nvironment for stude students nts , prospec prospectiv tivee
stude students, nts, and employee mplo yees; s; an administr administr ative tive tr ansac nsaction tion proce processin ssing g environme nvironment for unive university rsit y sta staff to cond onduct day-to day-to -day busin busineess; an informa information environme nvironme nt for all levels of f acult aculty y and sta staff to do r e porting porting, dat data extr extr action, action, and informa information analysis. A student information system (SIS) is a softwa softwar e a pplica pplication tion for edu education cationaal estab stablis lish hments to manage stude student nt dat data. Stude tudent nt informa information sy syste stems provide provide ca pab pabiliti ilitiees for ente ntering ring stude student nt test and othe other r asse ssessme ssment sc scor es, b s, buil uild ding ing stude student nt sched schedul ulees, tr ack ack ing ing stude student nt atte tt endan dance, ce, and managin aging g many othe ot herr stude student nt-r elated dat data needs eeds in a school, chool, college ollege or unive university rsit y The mission of the t he Student Information System projec projectt is to cr eat eate an integ integr r ated informa information technolo echnology gy environme nvironment for stude students, nts, HOD , f acult aculty y, Staff and administr administr ation. Our goal is to foc fo cus on custome ustomers, se service rvicess and integ integr r ation for e for end use users. Our eas easy-to y-to--use use, integ integr r ated College ollege administr administr ation a pplica pplications tions ar e prove proven to r edu educe time time spe spent on administr administr ative tive task s so you can can conce oncentr ntr ate on r aising ising stude student nt achi achievement. Stude tudent nt Informa nformation Syst Systeem hav have to acce pt, process cess and gen gener ate r e ports accur accur ately and any point of time time any use user can can get get the stude student nt informa information
DVANTAGES 3.2 ADVANTAGES Student Information System (SIS) Vision :
Provide rovide bett betteer se service rvicess to stude students, nts, f acult aculty y, sta staff, prospec prospectiv tivee stude students, nts, administr administr ation, etc.
Provide rovide meanin eaning gful, consiste onsistent, and time timely dat data and informa information to end use users.
Promote romote vision of se senior ma managem agement to addr addr ess opportunitie opportunities for cha for chan nge. ge.
pdatte technolo structur e for mor e eff ectiv flexii bl new sy syste stems. U pda echnology gy infr astruc ectivee and flex ble deliv deliveer y of ne
3
Promote efficiencies by converting pa per processes to electronic form.
4. MOTIVATIO N The mission of the student information system project is to cr eate an integr ated information technology environment student, HOD, f aculty, staff and administr ation. Our goal is to focus on customers, services and integr ation for end users.
5. PR OBLEMSTATEMENT y
Eff ective for Administr ation purpose
y
Chea p
y
Better Service
6. PR OBLEM OBJECTIVES y
Improve oper ational & Str eamlining oper ations
y
Maintain student¶s database
y
Maintain glo bal standar ds
y
Reduce Manpower
y
Accur acy
y
Better service
y
Improved management and control
y
Neat formatted r e port
4
7.
REQUIREMENT ANALYSIS
SOFTWARE REQUIREMENT SPECIFICATIO N
7.1 SOFTWARE REQUIREMENT
Language
- j2sdk 1.5
J2ee technologies
- Servlets
Front End
- Html
Back End
- Or acle 10g
Platform
-Windows XP
A pplication server
-Tomcat 6.0
7.2 HAR DWARE REQUIREMENT
Processor
-Intel Pentium iv
RAM
-32 GB
Har d Disk
-1 GB
K ey
Boar d
Mouse
-101 keys -Any pointing device
5
8. DESIGN 8.1 DESIGN OVER VIEW: y
Functional design
y
Input design
y
Output design
8.2 DESIGN DESCRIPTIO N:
Functional design: MODULE-O NE: LOGIN AS ADMINISTRATOR In this module when the administrator will enter his user name and password , then he will enter in to the administr ator page and this page consists of two following su b modules SUBMODULE ± ONE: A DD STUDENT When the administr ator click s this link then a student r egistr ation form will a ppear. In this r egistr ation form the administr ator of the college/university/institute will enter the details of the students who ar e pursuing their education. The students detail like student id , student name , passwor d, f ather name, date of birth, nationality, addr ess, city , countr y , mo bile no, N.I.C , Email etc. SUBMODULE ± TWO: DELETE STUDENT The administr ator can delete the whole student information by click ing this link . By providing the user id of the student , the student information can be delete. MODULE ± TWO: LOGIN AS STUDENT In this module when a student enter his student id and passwor d , then he can visit all the following pages 1. Message: This su b module consists of two su b modules 1.1 In box: By click ing this link the student can see all the r eceived messages from his friend 1.2 Compose: If the student wants to send message then he can do by click ing this link 2. Attendance : When the student click this one , the student can get all his attendance ( pr esent and absent) by su b ject wise like no of pr esent and absent in oper ating system class ,in java class. 3. Profile : When the student click s this link he/she will get his/her profile. He will get information like student id , student name, passwor d, f ather name ,Date of birth, nationality, city, addr ess, countr y, phone no, mo bile no, N.I.C , Email. If he wants then he can change the profile 6
4. Results: When a student go through this , he will get the r esults in all the su b jects. How much Gr ade point he secur e out of 100 he can k now . 5. Time Table When the student click s this link then he will get all the information that on which day which room which class will be held at which time. 6. Fee When he will click this link then he can get all the f ees structur e semester wise and annual f ee 7. Library When he will click this link then he can the information like on which date he issued the book and on which date he r eturned the book and fines INPUT DESIGN: Input design is a part of over all system design. The main o b jective during the input designing is as given below: y
To produce a cost-eff ective method of input.
y
To achieve the highest possi ble level of accur acy.
y
To ensur e that the input is acce ptable and understood by the user .
OUTPUT DESIGN Outputs from computer systems ar e r equir ed primarily to communicate the r esults of processing to users. They ar e also used to provides a copy of the fine r eceipt. The various ty pes of outputs in gener al ar e: y y
y y
.External Outputs, whose destination is outside the helpdesk system. .Internal Outputs whose destination is with in helpdesk and they ar e the user¶s main interf ace with the computer. oper ational outputs whose use is pur ely with in the computer de partment. .Interf ace outputs, which involve the user in communicating dir ectly with the helpdesk online project
7
8.3
UML D IAGRA MS :
A use case illustr ates a unit of functionality provided by the system. The main purpose of the use-case diagr am is to help development teams visualize the functional r equir ements of a system, including the r elationship of "actors" (human beings who will inter act with the system) to essential processes, as well as the r elationships among diff er ent use cases. To show a use case on a use-case diagr am, you dr aw an oval in the middle of the diagr am and put the name of the use case in the center of, or below, the oval. To dr aw an actor (indicating a system user ) on a usecase diagr am, you dr aw a stick person to the left or right of your diagr am
USECASE DIAGRAM: For administrator:
Admin Login
Add student
Data Base
Admin Delete student
Update student Records
8
For student : Stude t login
Me ¡
¡
¢
ge ¡
ttendance
£
Profil e
Stude t
Data base
e ults ¡
¤
Timetabl e
Fee
¥
¥
ibrary
og out
9
CLASS DIAGRAM: The class diagr am shows how the diff er ent entities (people, things, and data) r elate to each other; in other wor ds, it shows the static structur es of the system. A class is de picted on the class diagr am as a r ectangle with thr ee horizontal sections. The upper section shows the class's name; the middle section contains the class's attri butes; and the lower section contains the class's oper ations (or "methods").
SEQUENCE DIAGRAM: 10
Sequence diagr ams show a detailed flow for a specific use case or even just part of a specific use case. They ar e almost self ex planator y; they show the calls between the diff er ent o b jects in their sequence and can show, at a detailed level, diff er ent calls to diff er ent o b jects. A sequence diagr am has two dimensions: The vertical dimension shows the sequence of messages/calls in the time or der that they occur; the horizontal dimension shows the o b ject instances to which the messages ar e sent.
For validity:
Admin/Student
Validation
Database
1 : Request for validity()
2 : Check for validity()
3 : Validate()
4 : Successful validate()
COLLABORATIO N DIAGRAM: 11
UML Collabor ation diagr ams illustr ate the r elationship and inter action between softwar e o b jects. They r equir e use cases, system oper ation contr acts, and domain model to alr eady exist. The collabor ation diagr a m illustr ates messages being sent between classes and o b jects (instances). A diagr am is cr eated for each system oper ation that r elates to the curr ent development cycle (iter ation). When cr eating collabor ation diagr ams, patterns ar e used to justif y r elationships. Patterns ar e best principles for assigning r esponsi bilities to o b jects and ar e descri bed further in the section on patterns. Ther e ar e two main ty pes of patterns used for assigning r esponsi bilities which ar e evaluative patterns and driving patterns. Each system oper ation initiates a collabor ation diagr am. Ther efor e, ther e is a collabor ation diagr am for ever y system oper ation.
aa a e ©
3 : Vali a e ¦
©
2 : Check f r vali i y ¦
©
Vali a i n ¦
©
1 : Re ue
A ¦
in/ u en4 : ucce ful vali a e
f r vali i y ¦
©
¦
¨
©
©
¦
¨
©
§
©
SEQUENCE DIAGRAM:
12
For administrator:
Admi
L gi
R AddSt dent
ReqUpdat eSt dent
!
!
"
at abase
1 : Ent er credentials for login() : C eck for validit () %
#
$
&
'
: Valid user()
: Successful login() 5 : Ent er det ails for adding a st udent() 6 : Add()
7 : Successful() 8 : successfull added() %
9 : Ent er credentials for updat e st udent records() 10 : Updat e()
11 : Successful() 12 : Successfull Updat ed() %
COLLABORATIO N DIAGRAM: 13
For administrator:
t b
4
4
5
4
6
1
: V lid
A
4
6
1
2
8
()
10 : pd t () 4
1
3
11 : S cc
6 : Add()
1
6
7 : S cc
6
6
4
2
1
f l()
2
)
4
9
t c d 1
7
1
8
)
4
)
6
8
: S cc 1
6
6
2
12 : S cc
6
)
9: 8:
6
9
2
9
1
6
6
f l logi () 2
)
1
@
2
t
1
2
f ll Upd t d() 4
6
2
qAddSt d
)
)
2
1
1
Logi
fo logi ()
ti l
1
8
B
0
@
8
1:
t
1
3
1
2
q pd t St d
1
0
1
2 : Ch k fo v lidit ()
f l()
6
2
f ll
4
@
2
5:
t c d 1
7
1
8
)
ti l fo 4
1
8
)
pd t 4
6
1
8
2
dd d() 1
t d t il fo 1
7
)
1
8
4
4
6
8
ddi g )
4
6
t d 1
2
)
t() Ad i (
SEQUENCE DIAGRAM:
14
)
6
t d 1
2
t co d () 1
)
8
6
8
For student:
St u ent C
e ViewPro ile
e View et ails
H
G
Lo n D
F
G
F
I
I
at a ase
E
: nt er re ent ials or lo in C
T
H
U
D
S
Q
R
V
: he
H
W
S
or ali ity() C
Y
X
3 : Vali () C
4 : Vali lo in() 5 : Re or iew ro ile() C
D
H
H
G
Y
`
6 : Re uest() G
7 : Set et ails() C
8 : Get t he et ails() C
9 : Re
G
H
or iew et ails() C
Y
10 : Re uest() G
11 : Set et ails() C
12 : Get et ails() C
COLLABORATIO N DIAGRAM:
15
P
Collaboration
diagram for student:
Dat aba e i
: a d()
u
e
h
c
0 : eque t () i
p
d
: Set det a ()
:
r
i
: Set det a ()
p
p
c
i
c
s
eck f r va d t y() b
t
h
: Ent er redent a f r g n() q
eq e Det a
p
d
c
c
i
c
i
f
h
: eque t () i
d
: a d g n()
v
e
b
h
: eq f r v e b
eq e e
c
d
r f e
c
h
c
det a () i
f
c
c
h
b
f
d
g
c
h
: Get det a () i
p
: eq f r v e b
w
d
c
h
e
y
c
h
r
c
r f e() b
f
c
x
c
h
: Get t e det a () i
t
c
h
S udent a
COMPO NENT DIAGRAM: 16
h
h
b
b
h
c
L gn b
c
A compone omponent diagr agr am provide providess a physi hysica call vie view of the the syste stem. Its purpose purpose is to sh show the t he de pe penden dencies that hat the softwa softwar e has has on the the othe otherr softwa softwar e compone omponents (e (e.g., softwa softwar e li br br arie ries) in the t he syste stem. The diagr agr a m can can be shown at a ver y high level, with wit h just the t he lar ge-gr ge-gr ain compone omponents, or it can can be shown at the t he compone omponent package package level.
DEPLOYMENT DIAGRAM:
17
The de ploy ployment diagr agr am shows how a syste stem will be physi hysica call lly y de ployed plo yed in the har har dwar e environme nvironment. Its purpose purpose is to sh show whe wher r e the diff er ent compone omponents of the the syste stem will phy physi sica call lly y run and how they will communica ommunicatte with with each othe other. r. Since ince the diagr agr am mode models ls the the physi hysica call runtime runtime, a syste stem's prod production sta staff will make make conside onsider r abl able use use of th this diagr agr am. notation in a de ploy plo yment diagr include ludess the nota notation elements used used in a compone omponent diagr The nota agr am inc agr am, with with a couple ouple of add of additions, itions, inc includ luding ing the conce once pt of a of a node node.. A node node r e pr esents eithe ither r aa physi hysica call mach m achin inee or a or a virtua virtual mach m achin inee node node.. To mode modell a node node,, simply simply dr aw a thr ee-dim ee-dimeensiona nsional cu be with with the name of the t he node node at the top of the t he cu be. be. Use the naming ming conve onvention used used in seq sequ uence diagr agr ams: ms: [insta [inst ance name] : [insta [instance ty pe] pe]
18
19
9. IMPLEMENTATIO N FR O NT END TOOL About Java: Features of The Language Used:
In my project, I have chosen Java language for developing the code. About Java
Initially the language was called as ³oak´ but it was r enamed as ³Java´ in 1995. The primar y motivation of this language was the need for a platform-inde pendent (i.e., ar chitectur e neutr al) language that could be used to cr eate softwar e to be em bedded in various consumer electronic devices. Java
is a programmer¶s language.
Java
is cohesive and consistent.
Except for those constraints imposed by the Internet environment, control. Finally, Java is to Internet programming where
C
Java
gives the programmer, full
was to system programming.
Imp ortance of Java to the I nternet
Java has had a profound eff ect on the Internet. This is because; Java ex pands the Universe of o b jects that can move about fr eely in Cyberspace. In a networ k, two categories of o b jects ar e tr ansmitted between the Server and the Personal computer. They ar e: Passive information and Dynamic active progr ams. The Dynamic, Self -executing progr ams cause serious pro blems in the ar eas of Security and pro bability. But, Java addr esses those concerns and by doing so, has opened the door to an exciting new form of progr am called the A pplet. Java can be u sed to create two ty p es of p rogra m s
A pplications and A pplets: An a pplication is a progr am that runs on our Computer under the oper ating system of that computer. It is mor e or less like one cr eating using C or C++. Java¶s ability to cr eate A pplets makes it important. An A pplet is an a pplication designed to be tr ansmitted over the Internet and executed by a Java ± compati ble web browser. An a pplet is
20
actually a tiny Java progr am, dynamically downloaded across the networ k, just like an image. But the diff er ence is, it is an intelligent progr am, not just a media file. It can r eact to the user input and dynamically change. F eatures
Of Java Security
Ever y time you that you download a ³normal´ progr am, you ar e risk ing a vir al inf ection. Prior to Java, most users did not download executable progr ams fr equently, and those who did scanned them for viruses prior to execution. Most users still worried about the possi bility of inf ecting their systems with a virus. In addition, another ty pe of malicious progr am exists that must be guar ded against. This ty pe of progr am can gather private information, such as cr edit car d num bers, bank account balances, and passwor ds. Java answers both these concerns by providing a ³fir ewall´ between a networ k a pplication and your computer. When you use a Java-compati ble Web browser, you can saf ely download Java a pplets without f ear of virus inf ection or malicious intent. Portability
For progr ams to be dynamically downloaded to all the various ty pes of platforms connected to the Internet, some means of gener ating portable executable code is needed .As you will see, the same mechanism that helps ensur e security also helps cr eate portability. Indeed, Java¶s solution to these two pro blems is both elegant and efficient. The Byte code
The key that allows the Java to solve the security and portability pro blems is that the output of Java compiler is Byte code. Byte code is a highly optimized set of instructions designed to be executed by the Java run-time system, which is called the Java Virtual Machine (JVM). That is, in its standar d form, the JVM is an interpr eter for byte code. Tr anslating a Java progr am into byte code helps makes it much easier to run a progr am in a wide variety of environments. The r eason is, once the run-time package exists for a given system, any Java progr am can run on it. Although Java was designed for interpr etation, ther e is technically nothing about Java that pr events onthe-fly compilation of byte code into native code. Sun has just completed its Just In Time (JIT) compiler for byte code. When the JIT compiler is a part of JVM, it compiles byte code into executable code in r eal time, on a piece-by- piece, demand basis. It is not possi ble to compile an entir e Java progr am into executable code all at once, because Java performs various run-time check s that can be done only at run time. The JIT compiles code, as it is needed, during execution.
21
Java Virtual Machine (JVM)
Beyond the language, ther e is the Java virtual machine. The Java virtual machine is an important element of the Java technology. The virtual machine can be em bedded within a web browser or an oper ating system. Once a piece of Java code is loaded onto a machine, it is verified. As part of the loading process, a class loader is invoked and does byte code verification makes sur e that the code that¶s has been gener ated by the compiler will not corrupt the machine that it¶s loaded on. Byte code verification takes place at the end of the compilation process to make sur e that is all accur ate and corr ect. So byte code verification is integr al to the compiling and executing of Java code.
Over all Description:
Java
.Class ( Pictur e showing the development process of JAVA Progr am)
Java progr amming uses to produce byte codes and executes them. The first box indicates that the Java sour ce code is located in a. Java file that is processed with a Java compiler called javac. The Java compiler produces a file called a. class file, which contains the byte code. The. Class file is then loaded across the networ k or loaded locally on your machine into the execution environment is the Java virtual machine, which interpr ets and executes the byte code. Java Architecture
Java ar chitectur e provides a portable, ro bust, high performing environment for development. Java provides portability by compiling the byte codes for the Java Virtual Machine, which is then interpr eted on each platform by the run-time environment. Java is a dynamic system, able to load code when needed from a machine in the same room or across the planet. Compilation of code
When you compile the code, the Java compiler cr eates machine code (called byte code) for a hy pothetical machine called Java Virtual Machine (JVM). The JVM is supposed to execute the byte code. The JVM is cr eated for over coming the issue of portability. The code is written and compiled for one machine and interpr eted on all machines. This machine is called Java Virtual Machine.
Compiling and interpr eting Java Sour ce Code
22
PC Compiler
Source Code «««.. «««..
Java Byte code
Macintosh Compiler
«««..
««««
Java Interpreter (PC)
(Platform Indepen dent)
SPARC
Java Interpreter (Macintosh)
Java Interpreter (Spare)
During run-time the Java interpr eter trick s the byte code file into think ing that it is running on a Java Virtual Machine. In r eality this could be a Intel Pentium Windows 95 or SunSARC station running Solaris or A pple Macintosh running system and all could r eceive code from any computer through Internet and run the A pplets.
Simple: Java was designed to be easy for the Prof essional progr ammer to learn and to use eff ectively. If you ar e an ex perienced C++ progr ammer, learning Java will be even easier. Because Java inherits the C/C++ syntax and many of the o b ject oriented f eatur es of C++. Most of the confusing conce pts from C++ ar e either left out of Java or implemented in a cleaner, mor e a pproachable manner. In Java ther e ar e a small num ber of clearly defined ways to accomplish a given task .
O b ject-Oriented: Java was not designed to be sour ce-code compati ble with any other language. This allowed the Java team the fr eedom to design with a blank slate. One outcome of this was a clean usable, pr agmatic a pproach to o b jects. The o b ject model in Java is simple and easy to extend, while simple ty pes, such as integers, ar e ke pt as high- performance nono b jects.
23
R o bust: The multi- platform environment of the Web places extr aor dinar y demands on a progr a m, because the progr am must execute r eliably in a variety of systems. The ability to cr eate ro bust progr ams was given a high priority in the design of Java. Java is strictly ty ped language; it check s your code at compile time and run time. Java virtually eliminates the pro blems of memor y management and deallocation, which is completely automatic. In a well-written Java progr am, all run time errors can ± and should ± be managed by your progr am.
SER VLETS: I ntroduction: The Java web server is JavaSoft's own web Server. The Java web server is just a part of a lar ger fr amewor k, intended to provide you not just with a web server, but also with tools. To build customized networ k servers for any Internet or Intr anet client/server system. Servlets ar e to a web server, how a pplets ar e to the browser.
About S ervlets: Servlets provide a Java-based solution used to addr ess the pro blems curr ently associated with doing server -side progr amming, including inextensi ble scripting solutions, platform-specific APIs, and incomplete interf aces. Servlets ar e o b jects that conform to a specific interf ace that can be plugged into a Java-based server. Servlets ar e to the server -side what a pplets ar e to the client-side - o b ject byte codes that can be dynamically loaded off the net. They diff er from a pplets in that they ar e f aceless o b jects (without gr a phics or a GUI component). They serve as platform inde pendent, dynamically loadable, plugable helper byte code o b jects on the server side that can be used to dynamically extend server - side functionality. For example, an HTTP Servlets can be used to gener ate dynamic HTML content. When you use Servlets to do dynamic content you get the following advantages:
They¶r e f aster and cleaner than CGI scripts
They use a standar d API (the Servlets API)
They provide all the advantages of Java (run on a variety of servers without needing to be r ewritten).
Attractiveness of S ervlets: Ther e ar e many f eatur es of Servlets that make them easy and attr active to use. These include:
Easily configur ed using the GUI-based Admin tool
Can be loaded and invoked from a local disk or r emotely across the networ k.
24
Can be linked together, or chained, so that one Servlets can call another Servlets, or sever al Servlets in sequence.
Can be called dynamically from within HTML pages, using server -side include tags.
Ar e secur e - even when downloading across the networ k, the Servlets security model and Servlets sandbox protect your system from unfriendly behavior.
Advantages of the Servlet API: One of the gr eat advantages of the Servlet API is protocol inde pendence. It assumes nothing about: The protocol being used to tr ansmit on the net How it is loaded The server environment it will be running in These qualities ar e important, because it allows the Servlet API to be em bedded in many diff er ent k inds of servers. Ther e ar e other advantages to the Servlet API as well. These include: It¶s extensi ble - you can inherit all your functionality from the base classes made available to you. It¶s simple, small, and easy to use.
Featur es of Servlets: Servlets ar e persistent. Servlet ar e loaded only by the web server and can maintain services between r equests. Servlets ar e f ast. Since Servlets only need to be loaded once, they off er much better performance over their CGI counterparts. Servlets ar e platform inde pendent. Servlets ar e extensi ble. Java is a ro bust, o b ject-oriented progr amming language, which easily can be extended to suit your needs Servlets ar e secur e. Servlets can be used with a variety of clients.
Loading Servlets: Servlets can be loaded from thr ee places
From a dir ector y that is on the CLASSPATH. The CLASSPATH of root/classes/ which is wher e the system classes r eside.
the JavaWebServer includes service
From the
From a r emote location. For this a code base like http: // nine.eng / classes / foo / is r equir ed in addition to the Servlets class name. Ref er to the admin GUI docs on Servlet section to see how to set this up.
Loading Remote Servlets: Remote Servlets can be loaded by:
1. Configuring the Admin Tool to setup automatic loading of r emote Servlets 2. Setting up server side include tags in. shtml files 3. Defining a filter chain configur ation
Invok ing Servlets: A Servlet invoker is a Servlet that invokes the "service" method on a named Servlet. If the Servlet is not loaded in the server, then the invoker first loads the Servlet (either from local disk or from the networ k) and the then invokes the "service" method. Also like a pplets, local Servlets in the server can be identified by just the class name. In other wor ds, if a Servlet name is not absolute, it is tr eated as local. A client can invoke Servlets in the following ways:
The client can ask for a document that is served by the Servlet. The client ( browser ) can invoke the Servlet dir ectly using a URL, once it has been ma pped using the Servlet Aliases section of the admin GUI. The Servlet can be invoked through server side include tags. The Servlet can be invoked by placing it in the Servlets/ dir ector y. The Servlet can be invoked by using it in a filter chain.
JavaScript: JavaScript is a script-based progr amming language that was developed by Netsca pe Communication Corpor ation. JavaScript was originally called Live Script and r enamed as JavaScript to indicate its r elationship with Java. JavaScript supports the development of both client and server components of Web-based a pplications. On the client side, it can be used to write progr ams that ar e executed by a Web browser within the context of a Web page. On the server side, it can be used to write Web server progr ams that can process information su bmitted by a Web browser and then updates the browser¶s display accor dingly Even though JavaScript supports both client and server Web progr amming, we pr ef er JavaScript at Client side progr amming since most of the browsers supports it. JavaScript is almost as easy to learn as 26
HTML, and JavaScript statements can be included in HTML documents by enclosing the statements between a pair of scripting tags <SCRIPTS>.. . <SCRIPT LANGUAGE = ³JavaScript´> JavaScript statements Her e ar e a f ew things we can do with JavaScript:
Validate the contents of a form and make calculations.
Add scrolling or changing messages to the Browser¶s status line.
Animate images or rotate images that change when we move the mouse over them.
Detect the browser in use and display diff er ent content for diff er ent browsers.
Detect installed plug-ins and notif y the user if a plug-in is r equir ed. We
can do much more with JavaScript, including creating entire application.
JavaScript JavaScript
Vs Java
and Java are entirely different languages. A few of the most glaring differences are:
Java a pplets ar e gener ally displayed in a box within the web document; JavaScript can aff ect any part of the Web document itself. While JavaScript is best suited to simple a pplications and adding inter active f eatur es to Web pages; Java can be used for incr edi bly complex a pplications. Ther e ar e many other diff er ences but the important thing to r emem ber is that JavaScript and Java ar e se par ate languages. They ar e both useful for diff er ent things; in f act they can be used together to com bine their advantages.
Advantages:
JavaScript can be used for Sever -side and Client-side scripting.
It is mor e flexi ble than VBScript.
JavaScript is the def ault scripting languages at Client-side since all the browsers supports it.
27
Hy per Text Mar ku p Language: Hy pertext Mar ku p Language (HTML), the languages of the World Wide Web (WWW), allows users to produces Web pages that include text, gr a phics and pointer to other Web pages (Hy perlink s). HTML is not a progr a mming language but it is an a pplication of ISO Standar d 8879, SGML (Standar d Gener alized Mar ku p Language), but specialized to hy pertext and ada pted to the Web. The idea behind Hy pertext is that instead of r eading text in rigid linear structur e, we can easily jump from one point to another point. We can navigate through the information based on our inter est and pr ef er ence. A mar ku p language is simply a series of elements, each delimited with special char acters that define how text or other items enclosed within the elements should be displayed. Hy perlink s ar e underlined or emphasized wor ks that load to other documents or some portions of the same document. HTML can be used to display any ty pe of document on the host computer, which can be geogr a phically at a diff er ent location. It is a versatile language and can be used on any platform or desk top. HTML provides tags (special codes) to make the document look attr active. HTML tags ar e not case-sensitive. Using gr a phics, fonts, diff er ent sizes, color, etc., can enhance the pr esentation of the document. Anything that is not a tag is part of the document itself.
Basic HTML Tags :
S pecifies comments
«««. Cr eates hy pertext link s Formats text as bold
«««. Formats text in lar ge font.
«««. Contains all tags and text in the HTML document
... Cr eates text Definition of a term
« ...
Cr eates definition list
« Formats text with a particular font Encloses a fill-out form
Defines a particular fr ame in a set of fr ames
...
« Cr eates headings of diff er ent levels
Contains tags that specif y information about a document
... Cr eates a horizontal rule Contains all other HTML tags « Provides meta-information about a document <SCRIPT>« Contains client-side or server -side script
Cr eates a table Indicates table data in a table
« | Designates a table row
«
« | Cr eates a heading in a table 28
Advantages:
A HTML document is small and hence easy to send over the net. It is small because it does not include formatted information.
HTML is platform inde pendent.
HTML tags ar e not case-sensitive. Java Database Connectivity: What
Is JDBC?
JDBC is a Java API for executing SQL statements. (As a point of inter est, JDBC is a tr ademar ked name and is not an acronym; nevertheless, JDBC is often thought of as standing for Java Database Connectivity. It consists of a set of classes and interf aces written in the Java progr amming language. JDBC provides a standar d API for tool/database developers and makes it possi ble to write database a pplications using a pur e Java API. Using JDBC, it is easy to send SQL statements to virtually any r elational database. One can write a single progr am using the JDBC API, and the progr am will be able to send SQL statements to the a ppropriate database. The com binations of Java and JDBC lets a progr ammer write it once and run it anywher e. What Does JDBC Do? Simply put, JDBC makes it possible to do three things:
Establish a connection with a database
Send SQL statements
Process the r esults.
JDBC versus ODBC and other APIs:
At this point, Microsoft's ODBC (Open Database Connectivity) API is that pro bably the most widely used progr amming interf ace for accessing r elational databases. It off ers the ability to connect to almost all databases on almost all platforms. So why not just use ODBC from Java? The answer is that you can use ODBC from Java, but this is best done with the help of JDBC in the form of the JDBC-ODBC Bridge, which we will cover shortly. The question now becomes "Why do you need JDBC?" Ther e ar e sever al answers to this question: 1. ODBC is not a ppropriate for dir ect use from Java because it uses a C interf ace. Calls from Java to native C code have a num ber of dr aw back s in the security, implementation, ro bustness, and automatic portability of a pplications. 29
2. A liter al tr anslation of the ODBC C API into a Java API would not be desir able. For example, Java has no pointers, and ODBC makes copious use of them, including the notoriously error - prone generic pointer "void *". You can think of JDBC as ODBC tr anslated into an o b ject-oriented interf ace that is natur al for Java progr ammers. 3. ODBC is har d to learn. It mixes simple and advanced f eatur es together, and it has complex options even for simple queries. JDBC, on the other hand, was designed to kee p simple things simple while allowing mor e advanced ca pabilities wher e r equir ed. . A Java API like JDBC is needed in or der to enable a "pur e Java" solution. When ODBC is used, the ODBC driver manager and drivers must be manually installed on ever y client machine. When the JDBC driver is written completely in Java, however, JDBC code is automatically installable, portable, and secur e on all Java platforms from networ k computers to mainfr ames. Two-tier and Thr ee-tier Models: The JDBC API supports both two-tier and thr ee-tier models for database access. In the two-tier model, a Java a pplet or a pplication talk s dir ectly to the database. This r equir es a JDBC driver that can communicate with the particular database management system being accessed. A user's SQL statements ar e deliver ed to the database, and the r esults of those statements ar e sent back to the user. The database may be located on another machine to which the user is connected via a networ k. This is r ef err ed to as a client/server configur ation, with the user's machine as the client, and the machine housing the database as the server. The networ k can be an Intr anet, which, for example, connects employees within a corpor ation, or it can be the Internet.
JAVA Application
JDBC
Client machine
DBMS-proprietary protocol
Database server
DBMS
30
Java applet or Html browser
Client machine (GUI) HTTP, RMI, or CORBA calls
Application Server (Java) JDBC
Server machine (business Logic) DBMS-proprietary protocol
Database server
DBMS
In the thr ee-tier model, commands ar e sent to a "middle tier" of services, which then send SQL statements to the database. The database processes the SQL statements and sends the r esults back to the middle tier, which then sends them to the user. MIS dir ectors find the thr ee-tier model ver y attr active because the middle tier makes it possi ble to maintain control over access and the k inds of updates that can be made to corpor ate data. Another advantage is that when ther e is a middle tier, the user can employ an easy-to-use higher - level API which is tr anslated by the middle tier into the a ppropriate low-level calls. Finally, in many cases the thr ee-tier ar chitectur e can provide performance advantages. Until now the middle tier has t y pically been written in languages such as C or C++, which off er f ast performance. However, with the introduction of optimizing compilers that tr anslate Java byte code into efficient machine-specific code, it is becoming pr actical to implement the middle tier in Java. This is a big plus, mak ing it possi ble to take advantage of Java's ro bustness, multithr eading, and security f eatur es. JDBC is important to allow database access from a Java middle tier. JDBC Driver Ty pes: The JDBC drivers that we ar e awar e of at this time fit into one of four categories:
JDBC-ODBC bridge plus ODBC driver
Native-API partly-Java driver
JDBC-Net pur e Java driver
Native- protocol pur e Java driver
JDBC-ODBC Bridge: If possi ble, use a Pur e Java JDBC driver instead of the Bridge and an ODBC driver. This completely eliminates the client configur ation r equir ed by ODBC. It also eliminates the potential that the Java VM could
31
be corrupted by an error in the native code brought in by the Bridge (that is, the Bridge native li br ar y, the ODBC driver manager li br ar y, the ODBC driver li br ar y, and the database client li br ar y). What
Is the JDBC- ODBC Bridge?
The JDBC-ODBC Bridge is a JDBC driver, which implements JDBC oper ations by tr anslating them into ODBC oper ations. To ODBC it a ppears as a normal a pplication progr am. The Bridge implements JDBC for any database for which an ODBC driver is available. The Bridge is implemented as the Sun.jdbc.odbc Java package and contains a native li br ar y used to access ODBC. The Bridge is a joint development of Innersole and Java Soft. Server Pages (JSP):
Java server Pages is a simple, yet powerful technology for creating and maintaining dynamiccontent web pages. Based on the Java programming language, Java Server Pages offers proven portability, open standards, and a mature re-usable component model .The Java Server Pages architecture enables the separation of content generation from content presentation. This separation not eases maintenance headaches; it also allows web team members to focus on their areas of expertise. Now, web page designer can concentrate on layout, and web application designers on programming, with minimal concern about impacting each others work.
Featur es of JSP: Portability:
Java Server Pages files can be run on any web server or web-enabled a pplication server that provides support for them. Du bbed the JSP engine, this support involves r ecognition, tr anslation, and management of the Java Server Page lif ecycle and its inter action components.
Components:
It was mentioned earlier that the Java Server Pages ar chitectur e can include r eusable Java components. The ar chitectur e also allows for the em bedding of a scripting language dir ectly into the Java Server Pages file. The components curr ent supported include Java Beans, and Servlets. Processing:
A Java Server Pages file is essentially an HTML document with JSP scripting or tags. The Java Server Pages file has a JSP extension to the server as a Java Server Pages file. Befor e the page is served, the Java Server Pages syntax is parsed and processed into a Servlet on the server side. The Servlet that is gener ated outputs r eal content in str aight HTML for r esponding to the client. 32
Access Models:
A Java Server Pages file may be accessed in at least two diff er ent ways. A client¶s r equest comes dir ectly into a Java Server Page. In this scenario, suppose the page accesses r eusable Java Bean components that perform particular well-defined computations like accessing a database. The r esult of the Beans computations, called r esult sets is stor ed within the Bean as properties. The page uses such Beans to gener ate dynamic content and pr esent it back to the client. In both of the above cases, the page could also contain any valid Java code. Java Server Pages ar chitectur e encour ages se par ation of content from pr esentation. Steps in the execution of a JSP Application:
1. The client sends a r equest to the web server for a JSP file by giving the name of the JSP file within the form tag of a HTML page. 2. This r equest is tr ansf err ed to the JavaWebServer. At the server side JavaWebServer r eceives the r equest and if it is a r equest for a jsp file server gives this r equest to the JSP engine. 3. JSP engine is progr am which can understands the tags of the jsp and then it converts those tags into a Servlet progr a m and it is stor ed at the server side. This Servlet is loaded in the memor y and then it is executed and the r esult is given back to the JavaWebServer and then it is tr ansf err ed back to the r esult is given back to the JavaWebServer and then it is tr ansf err ed back to the client. JDBC
connectivity
The JDBC provides database-inde pendent connectivity between the J2EE platform and a wide r ange of tabular data sour ces. JDBC technology allows an A pplication Component Provider to:
Perform connection and authentication to a database server Manager transactions Move SQL statements to a database engine for preprocessing and execution Execute stored procedures
Inspect and modify the results from Select statements Purpose.
The gener ated a pplication is the first version upon the system. The over all system is planned to be in the formal of distri buted ar chitectur e with homogeneous database platform. The ma jor o b jective of the over all system is to kee p the following components intact.
System consistency System integrity Over all security of data Data r eliability and Accur acy User friendly name both at administr ation and user levels Considering the f act of gener ality and clarity To cross check that the system over comes the hur dles of the version specific Standar ds 33
Back end tool: 9.2 Microsoft Access:
Microsoft Office Access is a r elational database management system from Microsoft that com bines the r elational ³Microsoft Jet Database Engine´ with a gr a phical user interf ace and softwar e-development tools. It is a mem ber of the ³Microsoft Office ³ suite of a pplications.
1. Microsoft Access is used to cr eate simple database solutions. Access tables support a variety of standar d field ty pes. Access also includes a quer y interf ace, forms to display and enter data.
2. Microsoft Access is ver y popular among non- progr ammers who can cr eate visually pleasing and r elatively advanced solutions on their own. It is also easy to place a database on a networ k and have multiple users shar e and update data without overwriting each other's wor k. Data is locked at the r ecor d level which is significantly diff er ent from Excel which lock s the entir e spr eadsheet.
3. Database solutions cr eated entir ely in Microsoft Access ar e well suited for individual and wor kgroup use across a networ k
Oper ating system Platform used: 9.3 Windows: INTR ODUCTIO N TO WINDOWS: Microsoft Corpor ation windows in Nov 1983 and was r eleased 2 years later in Nov 1985 its introduction. MS-windows has emer ged as the most popular GUI environment for MS-DOS. For the user, Windows provide a multitask ing, gr a phical based windowing environment that runs especially designed for windows. Windows have a consistent a ppear ance, command structur e, and ar e thus often easier to lean use than conventional MS-DOS progr am. Users can easily switch among diff er ent windows progr ams and exchange data between them. Windows also provide and exchange to use icon based progr am manager for running progr ams. Although windows exist primarily to run a pplications especially written for the environment, windows also can run many progr ams written for MS-DOS. For the progr am developer, Windows provide a 34
wealth of insult routines that allow the use of menus, dialog boxes, scroll bars and other components of friendly user interf ace. Windows also contains an extension gr a phics progr amming languages that includes the use of formatted text in a variety of fonts. FEATURES: The Graphic User Interface (GUI):
Windows is Gr a phical User Interf ace, sometimes also called as ³Visual Interf ace´ or ³ Gr a phical Windowing Environment´. All Gr a phical User Interf ace make use of gr a phics on a bitma pped video display. Gr a phical provides better utilization of scr een r eal estate a visually rich environment for conveying information, and the possi bility of WYSIWG video display of gr a phics and formatted text pr e par ed for a printed document. The Consistent User Interface: User no longer ex pects to spend long periods learning how to use the computer or mastering a new progr am. Windows helps because all windows progr ams have the same fundamental look and f eel. The progr a m occupies a window, a r ectangle ar ea on the scr een. A ca ptain bar identifies it. Most progr am functions ar e indicated through the progr a m menu.
The Multitasking Advantage: Under windows, ever y progr am in eff ect becomes RAM r esident pop-up. Sever al windows progr am can be displayed running at the same time. The user can move the windows around in the scr een, change their size, and switch between diff er ent progr ams, and tr ansf er data from one progr am to another. Memory Management: An Oper ating System cannot implement multitask ing without doing something about memor y management. As new progr a ms ar e started up and old ones terminate, memor y can be fr agmented. The system must be able to move the block s of code and data in memor y space. Windows can over coat memor y; a progr a m can contain mode code than can fit into memor y at any one time. A user can run sever al copies of progr am; all these instances shar e the same code in the memor y. Progr ams running in windows can shar e routines located in other.
Dynamic Linking: A windows progr am interf aces to windows through a process called ³Dynamic Link ing´. Like MSDOS progr ams, windows executable filename extension .EXE format called the new executable file format. Whenever a windows progr am calls a windows function, the ³C´ compiler gener ates assem bly language code for a f ar call. A table in the .EXE file identifies the function being called using a dynamic link li br ar y name and either a name or a num ber of the function.
35
10.SCREENS
This is the ³login´ page for the administrator/student.
36
When
the administrator will do login, the following page appears..
37
When
the administrator clicks the ³Add student´ link, the following form appears.
With
this form the administrator can add a new student¶s details.
When
the administrator wants to delete/update an existing student details, he click¶s the
³delete student´ or ³Update student´ link¶s respectively, then the following page appears.
38
The administrator needs to enter the Id no. of the student to delete/update that particular student details.
When
a student login, then the following page will appear..
39
When
the student clicks the ³profile´ button, the following page appears.
40
When
the student clicks the ³timetable´ button
41
42
A student can be informed about any mails he received when he/she is logged in. At that time the page appears as follows.
43
When
the student clicks the ³click here to read message´ link then this page will appear
When
the student clicks the ³click here to read message´ link or ³inbox´ link then this
page will appear
44
The student can read the contents of the messages.
When
the student want¶s to send a mail he can clicks the ³compose´ link which opens the
below page.
45
When
the student clicks the ³Attendance´ button
46
This helps him/her to know his/her updated attendance.
When
the student clicks the ³Attendance Summary´ link, he/she will be directed to the
following page.
47
When
the student clicks ³results´ button, the following page appears.
48
With
this he/she can know about his/her result.
When
the student clicks the ³timetable´ button, the following page appears. the complete
info regarding when and where classes corresponding to each subject will be conducted.
49
With
this a student can get the complete information regarding when and where classes
corresponding to each subject will be conducted.
When
the student clicks the ³Fee´ button, the following page appears that gives complete
fee details.
50
51
When
the student clicks the ³Library´ button, the following page appears. That gives
information about any new arrivals etc,.
52
A student on ³logging out´ will be directed to the following page.
11. TESTING 11.1 TESTING METHODOLOGY DESCRIPTIO N 53
1. Introduction:
Testing is one of the most important phases in the softwar e development activity. In softwar e development lif e cycle (SDLC), the main aim of testing process is the quality; the developed softwar e is tested against attaining the r equir ed functionality and performance. During the testing process the softwar e is wor ked with some particular test cases and the output of the test cases ar e analyzed whether the softwar e is wor k ing accor ding to the ex pectations or not. The success of the testing process in determining the errors is mostly de pends upon the test case criteria, for testing any softwar e we need to have a description of the ex pected behaviour of the system and method of determining whether the o bserved behaviour confirmed to the ex pected behaviour. 2. Levels of testing:
Since the errors in the softwar e can be injur ed at any stage. So, we have to carr y out the
testing
process at diff er ent levels during the development. The basic levels of testing ar e Unit, Integr ation, System and Acce ptance Testing. The Unit Testing is carried out on coding. Her e diff er ent modules ar e tested against the specifications produced during design for the modules. In case of integr ation testing diff er ent tested modules ar e com bined into su b systems and tested in case of the system testing the full softwar e is tested and in the next level of testing the system is tested with user r equir ement document pr e par ed during SRS. Ther e ar e two basic a pproaches for testing. They ar e Fuctional testing : In Functional Testing test cases ar e decided solely on the basis of r equir ements of the progr am or module and the internals of the progr am or modules ar e not consider ed for selection of test cases. This is also called Black Box Testing Structural Testing : In Structur al Testing test cases ar e gener ated on actual code of the progr am or module to be tested. This is called White Box Testing.
3. Testing Process A num ber of activities must be performed for testing softwar e. Testing starts with test plan. Test plan identifies all testing r elated activities that need to be performed along with the schedule and guide lines for testing. The plan also specifies the levels of testing that need to be done, by identif ying the diff er ent testing units. For each unit specified in the plan first the test cases and r e ports ar e
produced These r e ports ar e analyzed
.
Test plan:
54
Test plan is a gener al document for entir e project, which defines the scope, a pproach to be taken and the personal r esponsi ble for diff er ent activities of testing. The inputs for forming test plane ar e as follows. y
Project plan
y
Requir ements document
y
System design
TEST CASES Test case specification
Although ther e is one test plan for entir e project test cases have to be specified se par ately for each test case. Test case specification gives for each item to be tested. All test cases and outputs ex pected for those test cases
.
Test Case execution and Analysis
The ste ps to be performed for executing the test cases ar e specified in se par ate document called test procedur e specification. This document specif y any specif y r equir ements that exist for setting the test environment and descri bes the methods and formats for r e porting the r esults of testing.
Unit testing: Unit testing mainly focused first in the smallest and low level modules, proceeding one at a time. Bottom-up testing was performed on each module. As developing a driver progr am, that tests modules by developed or used. But for the purpose of testing, modules themselves wer e used as stu bs, to print verification of the actions performed. After the lower level modules wer e tested, the modules that in the next higher level those make use of the lower modules wer e tested. Each module was tested against r equir ed functionally and test cases wer e developed to test the boundar y values.
Integr ation testing Integr ation testing is a systematic technique for constructing the progr am structur e, while at the same time conducting tests to uncover errors associated with interf acing. As the system consists of the num ber of modules the interf ace to be tested wer e between the edges of the two modules. The softwar e tested under this was incr emental bottom-up a pproach. Bottom-up a pproach integr ation str ategy was implemented with the following ste ps. Low level modules wer e com bined into clusters that perform specific softwar e su b functions. The clusters wer e then tested. 55
System testing System testing is a series of diff er ent tests whose primar y purpose is to fully exer cise the computer - based system. It also tests to find discr e pancies between the system and its original o b jective , curr ent specifications
.
12.
Maintenance
MAINTENANCE
the last phase in the softwar e engineering process. As mor e progr ams ar e developed, a
distri buting tr end has emer ged the amount of effort and a r esour ce ex pended on softwar e maintenance is growing. In total project development maintenance takes 65% of effort. In softwar e maintenance ther e ar e four ty pes. They ar e 1. Adaptive Maintenance
56
2. Corrective Maintenance 3. Perfective Maintenance 4. Preventive Maintenance Adaptive Maintenance is a pplied when changes in the external environment pr ecipitate modifications to softwar e. It deals with ada pting the softwar e to new environments. Perfective Maintenance incorpor ates enhancements that ar e r equested by user community. It deals with updating the softwar e accor ding to changes in user r equir ements. Maintenance acts to corr ect errors that ar e uncover ed after the softwar e is in use. It deals with fixing bugs in the code. Corrective
Preventive Maintenance improves futur e maintainability and r eliability and provides a basis for futur e enhancement. It deals with updating documentation and mak ing the softwar e mor e maintainable. Task s performed during the softwar e engineering process define maintainability and have an important impact in the success of any maintenance a pproach. Reverse Engineering and Reengineering ar e the tools and techniques used to maintain the project.
Ther e ar e four ma jor pro blems that can slow down the maintenance process 1. Unstructured Code 2. Maintenance programmers having insufficient knowledge of the system 3. Documentation being absent 4. Out of Date, or at best insufficient The success of the maintenance phase r elies on these pro blems being fixed earlier in the lif e cycle
13. CO NCLUSIO N
The system provides an excellent support to the corpor ate client because they can dir ectly mail their pro blem online.
Computerized surveying system provides an easy, f ast access and support for the users.
The usage of softwar e incr eases the efficiency, decr eases the effort 57
It has been thoroughly tested and implemented.
14. REFERENCES 1. SOFTWARE ENGINEERING - R OGER .S.PRESMAN 2. SYSTEM ANALYSIS AND DESIGN - ELIAS.M.AWAD
58
3. THE COMPLETE REFERENCE-JAVA- SCHILDT 4. UNIFIED MODELLING LANGUAGE- GRADY BOOCH
SYNOPSIS O N ³INVENTORY MANAGEMENT SYSTEM´
SUBMITTED BY: - Dulley Mullo Mem bership no.:- SD-194756 DIPIETE (CS) 59