Web Portal for Student Information System
Project Outline
Prepared By: AANCHAL CHA!HA"# P"$"NA %AIN
Contents 1.
Introduction ............................................................................................................. 3 1.1
Purpose............................................................................................................ 3
1.2
Intended Audience and Reading Suggestions ............Error! Bookmark not defned.
1.3
Product Scope....................................................................................................3
1.4
Defnitions, acronyms, and abbreviations......................................................3
1.5
Reerences................................................... Error!
Bookmark not defned.
2.
System Overview ......................................................................................................4
3.
Design Considerations ................................................................................................5 3.1
Assumptions and Dependencies..............................................................................5
3.2
Genera Constraints ............................................Error! Bookmark not defned.
3.2.1
Testing................................................... Error!
Bookmark not defned.
3.2.2
Perormance Requirements.................... Error!
Bookmark not defned.
3.2.3
ecurity Requirements........................... Error!
Bookmark not defned.
3.3 !.
5.
*.
Goas............................................................. Error! Bookmark not defned.
Deveopment "et#ods ................................................................................................! !.1
"icroso$t S%& Server ...........................................................................................!
4.2
"#$# 1.!.......................................................................................................... %
Arc#itectura Strategies ............................................................................................. 1& '.1
(a)e Structure .................................................................................................1&
5.2
'R(D)#*R#+.................................................................................................13
5.3
'R )-T'R#/'........................................................................................ 15
&ist o$ (a)e and +igures ........................................... Error! Bookmark not defned.
&'
Introduction
&'&
Purpose
(#is document descri)es t#e various $unctions o$ our pro,ect. (#e actua design o$ t#e various modues and components o$ Student Information System is descri)ed in t#is documentw#ic# taes care o$ various $unctionaities t#at our pro,ect aims to ac#ieve and $or determining t#e operating c#aracteristics o$ t#e system. .
&'(
Product Scope
Student In$ormation System /SIS0 is a we))ased appication $or students- $acutyacademic sta$$ and parents w#o want to get and retrieve students w#oe in$ormation instanty via internet. (#e ma,or )ene$it o$ t#is we) porta is to store t#e students in$ormation at one pace /ie SR4R0 and it can )e accessed via onine interaction. (#e SIS we) porta is to repace t#e od and traditiona $ie/paper wor0 storing process. Instead o$ tedious paper wor- students wi )e a)e to su)mit re5uired in$ormation eectronicay- and t#e departments wi )e a)e to evauate t#e su)missions wit# a muc# 5uicer turnaround.
1.3
Definitions, acronyms, and abbreviations
• • • • • • • • •
SIS6 Student In$ormation System SR4R6 Re$ers to t#e 7ost mac#ine C&I8(6 Re$ers to t#e user o$ SIS. S%&6 Structured %uery &anguage9 used to retrieve in$ormation $rom a data)ase. S%& Server6 A server used to store data in an organi:ed $ormat. ;OO&A86 A true<$ase notation =8I%= >?6 =sed to di$$erentiate entries in a data)ase. &A?R6 Represents a section o$ t#e pro,ect. DA(A S(ORAG &A?R6 t#e section o$ t#e assignment re$erring to w#ere a data is recorded.
2.
System O)er)ie*
Student In$ormation System /SIS0 is a we))ased appication t#at tracs current students academic in$ormation. It maintains academic in$ormation $or ready access )y o$$ice sta$$students- t#eir $acuty advisors- and committee mem)ers. Instead o$ tedious paper wor- students wi )e a)e to su)mit re5uired in$ormation eectronicay- and t#e departments wi )e a)e to evauate t#e su)missions wit# a muc# 5uicer turnaround. (#e Student In$ormation System #as )een moduari:ed into $oowing modues. LO+IN ,O!L$
(#e purpose o$ t#is modue is to provide entry to t#e system or we)site. ;ased on t#e type o$ ogin- t#e user is provided wit# various $aciities and $unctionaities. (#e main $unction o$ t#is modue is to aow t#e user to use SIS. (#is modue provides two types o$ ogin @Admin ogin and Student ogin. A!,INIS-"A-O" ,O!L$
In t#is modue w#en t#e administrator wi enter #is<#er user name and password- t#en #e
Student Addition. pdation . !eletion: In SIS eac# Student is added- updated or deeted according to its )ranc#.
•
Notice.Attendance."esult +eneration: In SIS in$ormation a)out noticeattendance and Interna resut is generated.
•
/ee !etail and Sc0edules: +ee in$ormation detai and sc#edue detai are managed.
S-!$N- ,O!L$
In t#is modue w#en a user enters #is student id and password- t#en #e can visit a t#e $oowing pages.
•
Profile 1ie*: #en t#e student cics on t#is in #e
•
Notice 1ie*: #en t#e student cics on t#is in- #e can see atest notices reeased )y t#e administrator.
•
Attendance 1ie* 6 #en t#e student cics on t#is one- t#e student can get #is overa attendance percentage /present and a)sent0.
•
Internal "esults 1ie*: #en t#e student cics on t#is- #e
•
/ee !etail 1ie*: #en t#e student cics t#is in #e
•
-0e Student Helpdes2:
(#is #epdes is sta$$ed )y $acuty w#o are t#ere to #ep you. ?ou may contact on /$acuty p#one no.0.
3.
!esi3n Considerations
(#e design consideration section s#ows t#e overa description o$ a tec#nica aspects w#ic# are reated to t#is pro,ect incuding #ardware and so$tware.
3.1
Assumptions and !ependencies
At#oug# )asic password aut#entication and roe )ased security mec#anisms wi )e used to protect SIS $rom unaut#ori:ed access9 $unctionaity suc# as inserting- deeting and updating are assumed to )e su$$icienty protected under t#e eisting security poicies appied )y t#e SIS deveoping team. It descri)es assumptions or dependencies regarding t#e so$tware and its use. (#ese may concern suc# issues as6
Reated so$tware6 o o o
"icroso$t S%& Server 2BB' to store t#e data)ase. A4A 1.*- SP- SR4&(- 7("& to deveop t#e product. 4irtua Server Apac#e (omcat *.B.1E and upward .
nduser c#aracteristics o o o
o
4.
very user must #ave )asic nowedge o$ ngis#. 7e s#oud )e a)e to wor wit# computer. A users must #ave #is<#er uni5ue ogin name and password $or ,oin we) porta. (#e user s#oud now t#e detais /meaning0 o$ t#e operation.
!e)elopment ,et0ods (#e $oowing met#ods and approac#es are used to deveop t#is pro,ect.
4.1
,icrosoft S4L Ser)er
A data)ase management- or D;"S- gives t#e user access to t#eir data and #eps t#em trans$orm t#e data into in$ormation. (#ese systems aow users to create- update and etract in$ormation $rom t#eir data)ase. A data)ase is a structured coection o$ data. Data re$ers to t#e c#aracteristics o$ peopet#ings and events. S%& Server stores eac# data item in its own $ieds. In S%& Server- t#e $ieds reating to a particuar person- t#ing or event are )unded toget#er to $orm a singe compete unit o$ data- caed a record /it can aso )e re$erred to as raw or an occurrence0. ac# record is made up o$ a num)er o$ $ieds. 8o two $ieds in a record can #ave t#e same $ied name. •
S4L Ser)er -ables
S%& Server stores records reating to eac# ot#er in a ta)e. Di$$erent ta)es are created $or t#e various groups o$ in$ormation. Reated ta)es are grouped toget#er to $orm a data)ase.
•
Primary 5ey
very ta)e in S%& Server #as a $ied or a com)ination o$ $ieds t#at uni5uey identi$ies eac# record in t#e ta)e. (#e =ni5ue identi$ier is caed t#e Primary >ey- or simpy t#e >ey. (#e primary ey provides t#e means to distinguis# one record $rom a ot#er in a ta)e. It aows t#e user and t#e data)ase system to identi$y- ocate and re$er to one particuar record in t#e data)ase.
•
/orei3n 5ey
#en a $ied is one ta)e matc#es t#e primary ey o$ anot#er $ied is re$erred to as a $oreign ey. A $oreign ey is a $ied or a group o$ $ieds in one ta)e w#ose vaues matc# t#ose o$ t#e primary ey o$ anot#er ta)e.
•
•
•
"eferential Inte3rity 8ot ony does S%& Server aow you to in mutipe ta)es- it aso maintains consistency )etween t#em. nsuring t#at t#e data among reated ta)es is correcty matc#ed is re$erred to as maintaining re$erentia integrity.
"elational !atabase Sometimes a t#e in$ormation o$ interest to a )usiness operation can )e stored in one ta)e. S%& Server maes it very easy to in t#e data in mutipe ta)es. "atc#ing an empoyee to t#e department in w#ic# t#ey wor is one eampe. (#is is w#at maes S%& Server a reationa data)ase management system- or RD;"S. It stores data in two or more ta)es and ena)es you to de$ine reations#ips )etween t#e ta)e and ena)es you to de$ine reations#ips )etween t#e ta)es. !ata Abstraction A ma,or purpose o$ a data)ase system is to provide users wit# an a)stract view o$ t#e data. (#is system #ides certain detais o$ #ow t#e data is stored and maintained. Data a)straction is divided into t#ree eves. o
o
o
P0ysical le)el: (#is is t#e owest eve o$ a)straction at w#ic# one descri)es #ow t#e data are actuay stored. Conceptual Le)el: At t#is eve o$ data)ase a)straction a t#e attri)uted and w#at data are actuay stored is descri)ed and entries and reations#ip among t#em. 1ie* le)el: (#is is t#e #ig#est eve o$ a)straction at w#ic# one descri)es ony part o$ t#e data)ase.
Ad)anta3es of "!B,S • • • • • • • •
Redundancy can )e avoided Inconsistency can )e eiminated Data can )e S#ared Standards can )e en$orced Security restrictions ca )e appied Integrity can )e maintained Con$icting re5uirements can )e )aanced Data independence can )e ac#ieved.
!isad)anta3es of "!B,S
A signi$icant disadvantage o$ t#e RD;"S system is cost. In addition to t#e cost o$ purc#asing o$ deveoping t#e so$tware- t#e #ardware #as to )e upgraded to aow $or t#e etensive programs and t#e worspace re5uired $or t#eir eecution and storage. #ie centrai:ation reduces dupication- t#e ac o$ dupication re5uires t#at t#e data)ase )e ade5uatey )aced up so t#at in case o$ $aiure t#e data can )e recovered.
4.2
JAVA 1.6
(#e most important c#aracteristic o$ ava is t#at it was designed $rom t#e outset to )e mac#ine independent. e can run ava programs unc#anged on any mac#ine and operating system com)ination t#at supports ava. ava programs are intrinsicay more porta)e t#an programs written in ot#er anguages. An appication written in ava wi ony re5uire a singe set o$ source code statements- regardess o$ t#e num)er o$ di$$erent computer pat$orms on w#ic# it is run- so it is very use$u $or internet appication. •
Pat$orm independence ava programs can )e run on many pat$orms wit#out modi$ication. (#is porta)iity is assured )y using a 4irtua mac#ine 1. #en a ava program is compied )yte code is created rat#er t#an a standard eecuta)e $ie. $$ectivey- t#is is mac#ine code $or a virtua mac#ine- w#ic# is t#en interpreted )y t#e ava interpreter. (#e )ytecode can )e run on any pat$orm w#ic# #as a suita)e interpreter.
•
Security since ava #as aways )een designed wit# distri)uted appications in mindsecurity #as )een incorporated rig#t $rom t#e start- and i$ anyt#ing t#is #as )een seen to )e too restrictive.
%a)a and t0e %!5
(#e ava Deveopment >it contains a t#e necessary toos $or t#e deveopment o$ ava appications and appets- incuding a compier- interpreter- cass i)raries- appet viewer and de)ugger. (#e current version o$ t#e D>- 1.!.2- is $reey avaia)e $rom SunFs we) s#e $or mac#ines running indows '- indows 8(- Soaris SPARC and Soaris E*- and a version $or t#e "acintos# is epected ater t#is year /version 1-B is currenty avaia)e0. Ports to ot#er mac#ines may aso )e avaia)e $rom ot#er sources. It s#oud )e noted t#at )rowsers may not yet support appets created using $eatures in t#e atest D>.
C0aracteristics of %a)a Simpe • Secure • Porta)e • O),ectoriented •
Ro)ust "utit#readed Arc#itectureneutra Interpreted 7ig# per$ormance Distri)uted Dynamic
• • • • • • •
%($$ (#e ava2 nterprise dition /2H0 provides a component)ased approac# to t#e design- deveopment- assem)y- and depoyment o$ enterprise appications. (#e 2 pat$orm o$$ers a mutitiered distri)uted appication mode- reusa)e components- a uni$ied security mode$ei)e transaction contro- and we) services support t#roug# integrated data interc#ange on tensi)e "arup &anguage /"&0)ased open standards and protocos. Components of %($$ •
S$"1L$ava servets are sma- pat$ormindependent ava programs t#at can )e used to etend t#e $unctionaity o$ a e) server in a variety o$ ways. Servets are to t#e server w#at appets are to t#e cient@sma ava programs compied to )ytecode t#at can )e oaded dynamicay and t#at etend t#e capa)iities o$ t#e #ost. It is a server side programming anguage.
•
%SP
ava Server Pages is t#e etension o$ servet to simpi$y t#e programming and coding o$ servet. It incudes 7("& tags to mae coding easy. =timatey it convert into t#e servet at t#e time o$ caing.
H-,L
it#out 7("&- t#e ord ide e) woudnt eist. 7("& aow t#e individua eements on t#e e) to )e )roug#t toget#er and assented as a coection. (et- imagesmutimedia- and ot#er $ies can )e paced toget#er using 7("&. (#is section epains t#e )asic principes )e#ind t#e interaction )etween 7("& and t#e ord ide e).
5.
Arc0itectural Strate3ies
6'&
-able Structure
7ere in )eow ta)es J is used $or denoting +oreign >ey and K $or Primary >ey. -able &:7 Lo3in /ield =serIDK Password
-ype 8c#ar 4arc#ar
Si8e9Bytes 1B 2B
Constraint 8ot 8u 8ot 8u
-able (:7 Personal Profile /ield CoegeLIDK StudLname +L8ame AnLInL$at#er DO; 8ationaity Gender Category "arrLstatus AreaLRL= PAddress City Dist Pincode State Country P#oneL8o1 mai &Address &LGLAddress P#oneL8o2 8earestLStation
-ype 8c#ar 4arc#ar 4arc#ar Decima Date(ime 4arc#ar C#ar C#ar C#ar C#ar 4arc#ar 4arc#ar 4arc#ar Decima 4arc#ar 4arc#ar Decima 4arc#ar 4arc#ar 4arc#ar Decima 4arc#ar
Si8e9In Byte 1B 'B 'B 1-B Std Si:e 'B 1 1B 1 1 1BB 'B 'B *-B 'B 'B 12-B 'B 1BB 1BB 12-B 'B
Constraint 8ot 8u 8ot 8u 8ot 8u 8ot Appied 8ot 8u 8ot Appied 8ot 8u 8ot 8u 8ot Appied 8ot Appied 8ot 8u 8ot 8u 8ot Appied 8ot Appied 8ot 8u 8ot 8u 8ot Appied 8ot Appied 8ot Appied 8ot Appied 8ot Appied 8ot Appied
-able ;:7 Academic Profile /ield CoegeLIDJ DO CurrentLsem JCourseLCode SecLper SrLsecLper ntranceLeam Ran
-ype 8c#ar Datetime Decima C#ar Decima Decima 4arc#ar Decima
Si8e9Bytes 1B Std Si:e 1-B ' /2-20 /2-20 1B '-B
Constraint 8ot 8u 8ot 8u 8ot Appied 8ot 8u 8ot 8u 8ot 8u 8ot 8u 8ot Appied
-ype C#ar 4arc#ar Decima
Si8e9Bytes ' 'B 1-B
Constraint 8ot 8u 8ot 8u 8ot 8u
-ype 8c#ar C#ar decima
Si8e9Bytes 1B ' 2-B
Constraint 8ot 8u 8ot 8u 8ot 8u
-able <:7 Course Code
/ield CourseLcodeK CourseLname Duration
-able 6:7 Attendance /ield CoageLIDJ Su)1 Att1
Su)2 Att2 Su)3 Att3 Su)! Att! Su)' Att' Su)* Att*
C#ar decima C#ar decima C#ar decima C#ar decima C#ar Decima
' 2-B ' 2-B ' 2-B ' 2-B ' 2-B
8ot 8u 8ot 8u 8ot 8u 8ot 8u 8ot 8u 8ot 8u 8ot 8u 8ot 8u 8ot 8u 8ot 8u
-able =:7 Internal ,ar2s /ield CoegeLIDJ Su)1 "ar1 Su)2 "ar2 Su)3 "ar3 Su)! "ar! Su)' "ar' Su)* "ar*
-ype 8c#ar C#ar decima C#ar decima C#ar decima C#ar decima C#ar Decima C#ar decima
Si8e9Bytes 1B ' 2-B ' 2-B ' 2-B ' 2-B ' 2-B ' 2-B
Constraint 8ot 8u 8ot 8u 8ot 8u 8ot 8u 8ot 8u 8ot 8u 8ot 8u 8ot 8u 8ot 8u 8ot 8u 8ot 8u 8ot 8u 8ot 8u
-ype 8c#ar decima Decima Datetime
Si8e9Bytes 1B '-B '-B Std Si:e
Constraint 8ot 8u 8ot 8u 8ot 8u 8ot 8u
-able >:7 /ee /ield CoegeLIDJ 7L+ee (L+ee 7LDate
(LDate
5.2 5.2.1
Datetime
Std Si:e
8ot 8u
Steps for creating Database Connections Introduction
(#e D;C / ava Data)ase Connectivity0 API de$ines inter$aces and casses $or writing data)ase appications in ava )y maing data)ase connections. =sing D;C you can send S%&- P&
Loading a database driver
In t#is step o$ t#e ,d)c connection process- we oad t#e driver cass )y caing Cass.$or8ame/0 wit# t#e Driver cass name as an argument. Once oaded- t#e Driver cass creates an instance o$ itse$. A cient can connect to Data)ase Server t#roug# D;C Driver. Since most o$ t#e Data)ase servers support OD;C driver t#ere$ore D;COD;C ;ridge driver is commony used.(#e return type o$ t#e Cass.$or8ame /String Cass8ame0 met#od is MCassN. Cass is a cass in,ava.ang pacage. try ? Class'forName9@sun'jdbc'odbc'%dbcOdbc!ri)er@ ..Or any ot0er dri)er catc09$ception ? System'out'println9 Dnable to load t0e dri)er classE@ 5.2.3
Creating a jdbc Connection
(#e D;C Driver"anager cass de$ines o),ects w#ic# can con nect ava appications to a D;C driver. Driver"anager is considered t#e )ac)one o$ D;C arc#itecture. Driver"anager cass manages t#e D;C drivers t#at are instaed on t#e system. Its getConnection/0 met#od is used to esta)is# a connection to a data)ase. It uses a username- password- and a ,d)c ur to esta)is# a connection to t#e data)ase and returns a connection o),ect. A ,d)c Connection represents a session
5.2.4
Creating a jdbc Statement object
Once a connection is o)tained we can interact wit# t#e data)ase. Connection inter$ace de$ines met#ods $or interacting wit# t#e data)ase via t#e esta)is#ed connection. (o eecute S%& statements- you need to instantiate a Statement o),ect $rom your connection o),ect )y using t#e createStatement/0 met#od. Statement statement d)Connection.createStatement/09 A statement o),ect is used to send and eecute S%& statements to a data)ase. (#ree inds o$ Statements Statement: ecute simpe s5 5ueries wit#out parameters.Statement createStatement/0Creates an S%& Statement o),ect. Prepared Statement: ecute precompied s5 5ueries wit# or wit#out parameters. PreparedStatement prepareStatement/String s50returns a new PreparedStatement o),ect. PreparedStatement o),ects are precompiedS%& statements. Callable Statement: ecute a ca to a data)ase stored procedure.Caa)eStatement prepareCa/String s50returns a new Caa)eStatement o),ect. Caa)eStatement o),ects are S%& stored procedure ca statements.
5.2.5 Executing a SQL statement with the Statement object, and returning a jdbc resultSet.
Statement inter$ace de$ines met#ods t#at are used to interact wit# data)ase via t#e eecution o$ S%& statements. (#e Statement cass #as t#ree met#ods $or eecuting statements6 eecute%uery/0- eecute=pdate/0- and eecute/0. +or a S&C( statement- t#e met#od to use is eecute%uery . +or statements t#at create or modi$y ta)es- t#e met#od to use is eecute=pdate. 8ote6 Statements t#at create a ta)e- ater a ta)e- or drop a ta)e are a eampes o$ DD& statements and are eecuted wit# t#e met#od eecute=pdate. eecute/0 eecutes an S%& statement t#at is written as String o),ect. "esultSet provides access to a ta)e o$ data generated )y eecuting a Statement. (#e ta)e rows are retrieved in se5uence. A ResutSet maintains a cursor pointing to its current row o$ data. (#e net/0 met#od is used to successivey step t#roug# t#e rows o$ t#e ta)uar resuts.
5.3
Table Creation
(a)e creation done in $oowing steps6
Statement: It is a inter$ace. Statement o),ect eecutes t#e S%& statement and returns t#e resut it produces. createStatement9: It is a met#od o$ Connection inter$ace. w#ic# returns Statement o),ect. (#is met#od wi compie again and again w#enever t#e program runs. C"$A-$ -ABL$ tableFname9fieldFname: An appropriate code used $or creating a ta)e wit# given $ied name. eecutepdate9Strin3 table: (#is met#od aso eecutes S%& statement t#at may )e I8SR(=PDA( OR D&( statement are used in t#e code. It taes string types parameters $or S%& statement. It returns int.
5.4
USER INTERFACES
+oowing are t#e re5uired inter$aces $or Student In$ormation System. &' Lo3in Screen
&ogin Screen wi aow Student
A$ter success$u &ogin- =ser wi come to 7ome Page. 7ome Page wi )e #aving $oowing options i0 C#ange Password ii0 +eed)ac iii0 8otices iv0 Pro$ie v0 &og Out
;' C0an3e Pass*ord Screen
A$ter ogin student can c#ange #is password )y seecting t#e c#ange password option in main menu o$ #ome page.
<' Profile Creation
On cicing t#e pro$ie )utton $irst c#oice is $or creating t#e pro$ie or $or updating t#e eisting pro$ie. In t#is $orm student upoad #is persona and academic in$ormation.
6' Profile 1ie*
(#is is t#e second c#oice o$ pro$ie )utton. (#is $orm s#ows t#e overa detais o$ student incuding persona and academic detais. A$ter $iing t#e a)ove $orm t#is $orm is generated. =' Attendance !etail Screen
On cicing t#e attendance )utton t#is $orm is viewed. (#is $orm s#ows t#e su),ect wise student attendance. >' Internal "esults 1ie*
#en t#e student cics on t#is- #e
#en t#e student cics t#is in #e