scholarship information system documentation

102
Scholarship Information System 1 INTRODUCTION

Upload: kasi-annapurna

Post on 15-Jul-2015

189 views

Category:

Education


6 download

TRANSCRIPT

Page 1: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

1

INTRODUCTION

Page 2: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

2

1. INTRODUCTION

This project is developed for scholarship departments of group of colleges. Though via

media systems are very popular, majority of students are not aware of various schemes of

scholarships applicable to them. To have a general awareness it will be more convenient if each and

every educational institution take active participation in the implementation of various scholarships

schemes under their supervision. At the time of giving application the scholarship officer can add

data with regards to the student’s parent’s income, caste, merit etc concerned with scholarships.

Institutions once can very well sort out eligible students for various types of scholarships. The

campus information system here developing will help to get up-to-date information of a student

regarding his both academic and non-academic activities. It will be an inducement to improve the

quality of study and thereby attaining high standards.

1.1. Purpose:

The project “Scholarship Information System” is a software package developed for

managing student’s scholarship details, branch details and college details. The software is very

helpful to find the eligible candidates from different colleges. The project finds the eligible

candidates from students list on the basis of marks, caste, sports and income.

1.2. Goals:

Goal or aim of our project is to automate the scholarship departments by assigning

scholarship officer to every college. Students can upload various scholarship related documents.

1.3. Features:

Through the system we can easily maintain the data without any loss or damage.

By using this system time consumption will be reduced.

By using this website students can easily know about the information of scholarship

details.

Scholarship Officer can easily check the eligible criteria of each and every student.

He can easily generate the record of students who are eligible for the scholarship.

Admin monitor group of colleges by assigning a scholarship officer to every college.

Scholarship Officer maintains the each and every student details.

Scholarship Officer sends mail to eligible students about the scholarship.

Page 3: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

3

SYSTEM ANALYSIS

Page 4: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

4

2. SYSTEM ANALYSIS

System analysis is an important activity that takes place when we attempt to build a new

system or when modifying existing ones. In this phase the problems in the existing system are

thoroughly studied and the new system is proposed which rectifies the errors persisted in the current

system. The problems are analyzed from different point of view.

Analysis is the final stage before starting the designing of a project and hence, all the required

modification should be done at this stage. Then the specification to meet the proposed system is to be

produced after the analysis stage that the project persons will use it for further proceedings.

System Analysis then is the process of gathering and interpreting facts, diagnosing problems

and using the information to recommend improvements to the system. Before development of any

project can be pursued, a system study is conducted to learn the details of the current business

situation. Information gathered through the study, forms the basis for creating alternative design

strategies. Management selects the strategy to pursue.

System Analysis is about understanding situations. Effective analysis includes investigation

and questioning to learn how a system currently operates and to identify the requirements for a new

or modified one. For the development of any good project proper analysis of the existing system is a

pre-requisite. The existing system is studied to know the extent of computerization required.

Therefore, a detailed analysis of the existing system should be conducted. For this purpose, system

should be broken down into various subsystems and these subsystems were analyzed closely to

identify the problem areas.

Page 5: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

5

2.1 EXISTING SYSTEM:

At present the college maintains manual records, in the form of registers, files, etc. to store the

scholarship details of the students. New scholarships to be issued, involves heavy paper work. It also

leads to data redundancy. The analysis part includes a detailed study of the existing system.

Limitations

Time delay

Redundancy

Accuracy

Information Retrieval

Storage Media

All these are rectified in the proposed system. Much emphasis is given upon the process of

customer servicing

2.2 PROPOSED SYSTEM:

The proposed computerization is developed using MySQL as back end and the most powerful

C# as front end for the student and college who want to know his student’s scholarship details.

The proposed system has two major benefits. Once the existing system is automated all the

drawbacks of the present system can be overcome. Many modifications can be made to make the

atmosphere and extractions of data for generating a variety of reports are the factors, which form the

basis of development of the proposed system.

In brief, the proposed system will be as follows:

The details about the scholarship information’s are showed.

A set of user screens will be provided for data entries and these data will be effectively stored

in back end tables.

Records can be retrieved when needed.

Relevant details pertaining to students and college willing to know his details can do so by

accessing by the user.

Page 6: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

6

2.3 SCOPE:

The scope of the project is that it can be used by any college to automate the scholarship

departments. Anyone having the access to the internet can access the application and can perform the

operations.

2.4 Over all description:

In our application we have three modules.

1. Masters/Admin

2. Scholarship Officer

3. Student

1. Masters/Admin: All scholarship departments are controlled by admin by assigning a scholarship

officer for every college.

Functionality:

College Details: This page stores the information about the various colleges. By this page the

admin can directly add/edit the college details.

Scholarship Officer: This page stores the information about all the colleges Scholarship

Officers. By this page the admin can directly add/block the Scholarship Officer and also

generates user name and password to every Scholarship Officer.

2. Scholarship Officer: This module stores all the types of scholarships, and the list of all the

students who have applied for scholarship. Scholarships are applied by the college on behalf of the

students, which are sanctioned by the Government and trusts. Each and every student scholarship

details are monitored by scholarship officer.

Functionality:

Student: This page stores the information about all the students like caste, marks, father

annual income, mail id and address etc.. By this page the Scholarship Officer can directly

add/block the students and also generates user name and password to every student.

Page 7: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

7

Scholarships: This page stores the information about all the types of scholarships. By this

page the Scholarship Officer can directly add the scholarships, edit the scholarships, send the

scholarships to eligible students,

Accept or reject scholarship for students and also view the eligible students list

Feedback: This page stores the feedback from all students. By this page the Scholarship

Officer can view feedback which is sent by the students and also send reply to those

feedbacks.

3. Student: This module deals with the issue of scholarship to the students. It stores all the

functionalities regarding the scholarship done by the student.

Functionality:

Scholarship: This page stores the information about the scholarship. . By this page the student

can view whether the scholarship is granted for him or not and it also gives the status of the

scholarship whether the scholarship is sanctioned or not.

Feedback: By this page student can send the feedback to scholarship officer and view the

reply which is sent by the scholarship officer.

Page 8: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

8

SYSTEM STUDY

Page 9: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

9

3. SYSTEM STUDY

3.1 FEASIBILITY STUDY

The main objective of feasibility study is to test the technical, social and economic feasibility

of developing a system. This is done before developing a system. This is done by investigating the

existing system in the area under investigation and generating ideas about the new system.

TECHNICAL FEASIBILITY

The system must be evaluated from the technical view point first. The assessment of this

feasibility must be based on an outline design of the system requirement in terms of input, output,

programs, procedure and staff. Having identified the outline of the system, the investigation must go

on to suggest the type of equipment, required method of developing the system, and the method of

running the system.

Technologies used: C#, SQL server

ECONOMIC FEASIBILITY

This developing system must be justified by cost and benefit criteria to ensure that effort is

concentrated on project which will give best return at the earliest. One of the factors which affect the

development of a new system is the cost it would require. Since the system is developed as a part of

our study, there is no manual cost to be spent for the proposed system.

OPERATIONAL FEASIBILITY

Proposed project would be beneficial only if they can be turned into information system

that’ll meet the organization operating requirements. One of the main problems faced during the

development of a new system is getting acceptance from user. Being general purpose software there

are no resistance from the users because this will be more beneficial to the users while surfing web

sites which contains thousands of pages.

Behavioral Feasibility

This project has been implement by using .NET and it satisfies all

conditions and norms of the organization and the users. This proposed system “Scholarship

Page 10: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

10

Information System" Application has much behavioral feasibility because of this the people get

relaxed.

Time Feasibility

Based on the client's time limitations, time feasibility is done. Time feasibility is done

to evaluate the time in which this application can be done. If the project takes much more time

then the dated time, then the time feasibility is not possible. Then future justification and

adjustments are to be made to complete the task before the date of completion. This also include

more than power, equipment ect., because if man power and equipment are adequate then will

take less time to be completed. This can be achieved in this system.

Manpower Feasibility

Based on the task and it's time to be completed, the man power is judged. If the required

man power is not required, then the manpower feasibility is not possible. If the task needs to be

completed in a short time and if it is more complex, then the manpower is required. This can be

achieved by employing more man power. This involves more investment and so this should be

judged during the economical feasibility itself.

Page 11: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

11

4. SYSTEM REQUIREMENTS

SPECIFICATIONS

Page 12: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

12

4. SYSTEM REQUIREMENTS SPECIFICATION

System requirement give an idea about what are the necessary things that are needed for

the proposed system, which plays a very important role in the development of any system. This

chapter deals with what are hardware components that are needed for the system, application,

software that is required for the development of the system and the functional requirement of the

system. Frontend tools helps to visualize the system, while backend helps in activities which are not

visible to the end user.

4.1 MODULES

This project consists of 3 modules

1. Masters/Admin

2. Scholarship Officer

3. Student

Admin module:

Functionalities:

Adding of college details.

Editing of college details.

Add Scholarship Officer Specific to college.

Set the user name and password to Scholarship Officer.

Block Scholarship Officer.

Scholarship Officer:

Functionalities:

Adding Student details.

Block students

Add Scholarship details and set the criteria for scholarship.

View all students who are fulfilling the scholarship requirement.

Send scholarship details or alerts to the eligible students.

Page 13: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

13

Accept or Reject scholarship for students.

View feedback and send response to the student.

Set the user name and password to Student.

Update Profile.

Student Module:

Functionalities:

The student details are given under this module.

View all scholarship details and eligibility criteria.

Upload scholarship documents.

View scholarship status.

Update profile

Send feedback

View response for feedback

Page 14: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

14

4.2 SOFTWARE REQUIREMENTS

OPERATING SYSTEM : Windows XP Professional

ENVIRONMENT : Visual Studio .NET 2008

.NET FRAMEWORK : Version 3.5

LANGUAGE : C#.NET

WEB TECHNOLOGY : ASP.NET,HTML

BACKEND : SQL SERVER 2005

4.3 HARDWARE REQUIREMENTS

PROCESSOR : Intel Pentium 4 or more

RAM : 1 GB or more

MONITOR : 15” COLOR

HARD DISK : 40 GB hard disk recommended for

Primary Partition

FLOPPY DRIVE : 1.44 MB

CD DRIVE : LG 52X

KEYBOARD : STANDARD 102 KEYS

MOUSE : 3 BUTTONS

Page 15: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

15

4.4 FUNCTIONAL REQUIRMENTS

4.4.1 Input/output:

First Admin login into the web application and add new scholarship officer into the

organization, he also block scholarship officer. Scholarship officer login with his id-password and

can add student details, scholarship details, edit scholarship details ,block students, send scholarship

details to eligible students and he can view and reply to students feedback. Student login with his id-

password and can view scholarship details, upload documents, send feedback to scholarship officer

and view response.

4.4.2 Storage Requirements:

All the details of Scholarship Officer, student, college details and scholarship details are

stored in the database and the updating of the data can be done through database (internet).

4.5 NON- FUNCTIONAL REQUIREMENTS

Usability: The system is designed with completely automated process. Hence there is no or less

intervention.

Reliability and Security: The system is more reliable because of the qualities that are inherited from

the chosen platform Dot net. And it provides secure access of confidential data with unique id and

password.

Supportability: The system is designed to be the cross platform supportable .The system is

supported on a wide range of hardware and software platform

Page 16: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

16

SYSTEM DESIGN

Page 17: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

17

5. SYSTEM DESIGN

5.1 INTRODUCTION:

Systems design is the process or art of defining the architecture, components, modules,

interfaces, and data for a system to satisfy specified requirements. One could see it as the application

of systems theory to product development. There is some overlap and synergy with the disciplines of

systems analysis, systems architecture and systems engineering.

INPUT DESIGN

The input design is the process of converting the user-oriented inputs in to the computer-

based format. The goal of designing input data is to make the automation as easy and free from

errors as possible. For providing a good input design for the application easy data input and selection

features are adopted. The input design requirements such as user friendliness, consistent format and

interactive dialogue for giving the right message and help for the user at right time are also

considered for the development of the project.

The following points should consider while designing the input;

What data to input?

What medium to use?

How the data should be arranged or coded?

The dialogue to guide users in providing input

Data items and transactions needing validation to detect errors

Methods for performing input validation and steps to follow when errors occur.

In this project all the text boxes are validated. If any field is not filled then it will display the

message “Enter the text box”. The dialogue boxes are used to guide the user while giving inputs. The

list boxes are used to reduce the user inputs.

He will select one of the items in list boxes. Radio buttons are used to select the options. The

following design guidelines will result in a friendly and efficient interface.

Minimize the number of input actions required from user. This can be accomplished by using

the mouse to select from predefined set of inputs. In application the user can select the options by

using the mouse. The user is allowed to choose priority, mode of transport using predefined set of

Page 18: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

18

values. Maintain consistency between information display and data input. The visual characteristics

of the display (e.g. text size, color etc) should be carried over to the input domain. In this project the

status information are represented by different colors.

Allow the user to customize input. An expert user might decide to create customer commands

or dispense with some types of warning messages and action verification.

OUTPUT DESIGN

When designing output, systems analyst must accomplish the following;

Determine what information to present

Decide whether to display, print the information and select the output medium

Arrange the presentation of information in an acceptable format

Decide how to distribute the output to intended recipient

Accomplishing the general activities listed above will require specific decisions, such as

whether to use preprinted forms when preparing reports and documents, how many line to plan on

printed page, or whether to user graphics and color. The output design is specified on layout forms,

sheets that describe the location characteristics (such as length and type), and format of the column

headings and pagination. As we indicated at the beginning of this discussion, these elements are

analogous to an architect blueprint that shows the location of each component.

5.1.1 SYSTEM ARCHITECTURE

Page 19: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

19

5.1.2 SOFTWARE ARCHITECTURE

5.1.3 PROCESS MODEL

Page 20: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

20

In this Process model we using Prototype Model

The Prototyping Model is a systems development method (SDM) in which a

Prototype (an early approximation of a final system or product) is built, tested, and then reworked as

necessary until an acceptable prototype is finally achieved from which the complete system or

product can now be developed. This model works best in scenarios where not all of the project

requirements are known in detail ahead of time. It is an iterative, trial-and-error process that takes

place between the developers and the users.

5.2 UML Design:

The Unified Modeling Language (UML) is a standard language for specifying, visualizing,

constructing, and documenting the artifacts of software systems, as well as for business modeling

and other non-software systems. The UML represents a collection of best engineering practices

that have proven successful in the modeling of large and complex systems. The UML is a very

important part of developing objects oriented software and the software development process.

The UML uses mostly graphical notations to express the design of software projects. Using the

UML helps project teams communicate, explore potential designs, and validate the architectural

design of the software.

Goals of UML

The primary goals in the design of the UML were:

Page 21: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

21

Provide users with a ready-to-use, expressive visual modeling language so they can

develop and exchange meaningful models.

Provide extensibility and specialization mechanisms to extend the core concepts.

Be independent of particular programming languages and development processes.

Provide a formal basis for understanding the modeling language.

Encourage the growth of the OO tools market.

Support higher-level development concepts such as collaborations, frameworks, patterns

and components.

Integrate best practices.

Why we use UML?

As the strategic value of software increases for many companies, the industry looks for techniques

to automate the production of software and to improve quality and reduce cost and time-to-

market. These techniques include component technology, visual programming, patterns and

frameworks. Businesses also seek techniques to manage the complexity of systems as they

increase in scope and scale. In particular, they recognize the need to solve recurring architectural

problems, such as physical distribution, concurrency, replication, security, load balancing and

fault tolerance. Additionally, the development for the World Wide Web, while making some

things simpler, has exacerbated these architectural problems. The Unified Modeling Language

(UML) was designed to respond to these needs.

UML Diagrams

The underlying premise of UML is that no one diagram can capture the different elements of a

system in its entirety. Hence, UML is made up of nine diagrams that can be used to model a

system at different points of time in the software life cycle of a system.

The nine UML diagrams are:

Use case diagram:

Page 22: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

22

The use case diagram is used to identify the primary elements and processes that form the

system. The primary elements are termed as "actors" and the processes are called "use cases."

The use case diagram shows which actors interact with each use case

Admin:

Scholarship Officer:

Login

Add college

Add scholarship

Block scholarship

Admin

Edit College

Page 23: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

23

Student:

View Feedback

Send alerts to Eligible Students

Block student

Add student

Send response

Check for eligible students

Scholarship

Officer

Add Scholarship

Page 24: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

24

Class diagram:

Upload documents

View status

Send Feedback

View response

Student

View scholarship details

Page 25: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

25

The class diagram is used to refine the use case diagram and define a detailed design of the

system. The class diagram classifies the actors defined in the use case diagram into a set of

interrelated classes. The relationship or association between the classes can be either an "is-a" or

"has-a" relationship. Each class in the class diagram may be capable of providing certain

functionalities. These functionalities provided by the class are termed "methods" of the class.

Apart from this, each class may have certain "attributes" that uniquely identify the class.

Object diagram:

Page 26: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

26

The object diagram is a special kind of class diagram. An object is an instance of a class. This

essentially means that an object represents the state of a class at a given point of time while the

system is running. The object diagram captures the state of different classes in the system and

their relationships or associations at a given point of time.

State diagram:

A state diagram, as the name suggests, represents the different states that objects in the system

undergo during their life cycle. Objects in the system change states in response to events. In

addition to this, a state diagram also captures the transition of the object's state from an initial

state to a final state in response to events affecting the system.

Admin:

Scholarship Officer:

Page 27: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

27

Student:

Activity diagram:

Login Student

home

Send feedback/view

responseupload documents/view

status

Logout

Validate

ScholarshipFeedback

Initial state

Login Scholarship Of f icer home

Send f eedback/v iew response Sendscholarship,

Add/Edit scholarship

Logout

Validate

Scholarship Feedback

Initial state

Add/Edit student details

Student

Logout

Page 28: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

28

The process flows in the system are captured in the activity diagram. Similar to a state diagram,

an activity diagram also consists of activities, actions, transitions, initial and final states, and

guard conditions.

Admin:

Scholarship Officer:

Login

Validate

Admin

home

Add college

details

Edit college

details

Add scholarship

officer

Block scholarship

officer

Logout

Initial state

IfNo

Yes

Final state

Page 29: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

29

Student:

Login

Validate

Scholarship

Officer home

View

feedbackAdd

student

Block

student

Add/Edit

studentsView

scholarship

Send

scholarship

View eligible

students

Send

response

IfNo

Yes

Logout

Intial state

Final state

Page 30: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

30

Sequence diagram:

Login

Validate

Student

home

View

status

Response

feedback

View

scholarshipSend

feedback

Logout

Initaial state

If

No

Yes

Final state

Page 31: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

31

A sequence diagram represents the interaction between different objects in the system. The important

aspect of a sequence diagram is that it is time-ordered. This means that the exact sequence of the

interactions between the objects is represented step by step. Different objects in the sequence

diagram interact with each other by passing "messages".

Admin:

Scholarship Officer:

Admin Application Database

Send Request

1:Request for login

verify request

If invalid user

Show message

If valid user

Show home page

Insert college details

Send college details

Insert data

Show message

Add so details

Send so details

Insert data

If success

Show message

Block so details

Send so details

Update data

If success

Show message

Logout

Logout

Page 32: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

32

Student:

Scholarship

Officer

Application Database

Request for login

Send request

If invalid user

Show message

Insert student details

Send student details

Insert data

If success

Show message

Block student details

Send details

Send data

Insert/Edit scholarship details

Send scholarship details

Insert data

Request for viewing scholarship

Send request

Send data

Send data

Display result

Request for eligible students

Send request

Send data

Send data

Display eligible students list

Request for feedback

Send request

Send data

Send data

View feedback

Send response

Send data

Insert data

Logout

Logout

Page 33: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

33

Collaboration diagram:

Student Application Database

Request login

Sent request

If valid user

Show message

If invalid user

Show Home page

Request for display scholar

Sent request

Sent data

Sent data

Show data

Insert documents

Send scholarship documents

Insert data

Required for view status

Send request

Send data

Sent required data

Shw status

Request for login

Sent request

Sent data

Sent data

Show conformation

Page 34: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

34

A collaboration diagram groups together the interactions between different objects. The

interactions are listed as numbered interactions that help to trace the sequence of the interactions.

The collaboration diagram helps to identify all the possible interactions that each object has with

other objects.

Component diagram:

The component diagram represents the high-level parts that make up the system. This diagram

depicts, at a high level, what components form part of the system and how they are interrelated. A

component diagram depicts the components culled after the system has undergone the

development or construction phase.

Deployment diagram:

User

interfaceSql

server

Ado.net

System.Data.SqlClient

System.Web.UI.HtmlControls

Page 35: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

35

The deployment diagram captures the configuration of the runtime elements of the application.

This diagram is by far most useful when a system is built and ready to be deployed.

Development tools Web hostingInternet

Web server(IIS)Application

InternetModem 1

User1

User2

User3

Modem2

User1

User2

User3

MOdem 3

User3

User2

User1

Now that we have an idea of the different UML diagrams, let us see if we can somehow group

together these diagrams to enable us to further understand how to use them.

Page 36: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

36

UML Diagram Classification—Static, Dynamic, and Implementation

A software system can be said to have two distinct characteristics: a structural, "static" part and a

behavioral, "dynamic" part. In addition to these two characteristics, an additional characteristic that a

software system possesses is related to implementation. Before we categorize UML diagrams into

each of these three characteristics, let us take a quick look at exactly what these characteristics are.

Static:

The static characteristic of a system is essentially the structural aspect of the system. The

static characteristics define what parts the system is made up of.

Dynamic:

The behavioral features of a system; for example, the ways a system behaves in response to

certain events or actions are the dynamic characteristics of a system.

Implementation:

The implementation characteristic of a system is an entirely new feature that describes the

different elements required for deploying a system.

The UML diagrams that fall under each of these categories are:

Static

Page 37: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

37

Use case diagram

Class diagram

Dynamic

Object diagram

State diagram

Activity diagram

Sequence diagram

Collaboration diagram

Implementation

Component diagram

Deployment diagram

Finally, let us take a look at the 4+1 view of UML diagrams.

Views of UML Diagrams

Considering that the UML diagrams can be used in different stages in the life cycle of a system, let

us take a look at the "4+1 view" of UML diagrams. The 4+1 view offers a different perspective to

classify and apply UML diagrams. The 4+1 view is essentially how a system can be viewed from a

software life cycle perspective. Each of these views represents how a system can be modeled. This

will enable us to understand where exactly the UML diagrams fit in and their applicability.

The different views are:

Design View:

The design view of a system is the structural view of the system. This gives an idea of what a

given system is made up of. Class diagrams and object diagrams form the design view of the

system.

Process View:

Page 38: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

38

The dynamic behavior of a system can be seen using the process view. The different diagrams

such as the state diagram, activity diagram, sequence diagram, and collaboration diagram are

used in this view.

Component View:

Component view shows the grouped modules of a given system modeled using the component

diagram.

Deployment View:

The deployment diagram of UML is used to identify the deployment modules for a given

system.

Use case View:

Finally, we have the use case view. Use case diagrams of UML are used to view a system from

this perspective as a set of discrete activities or transactions.

5.3 Database Design:

A database is a collection of interrelated data stored with minimum redundancy to serve

many users quickly and efficiently. The general objective of database design is to make the data

access easy, inexpensive and flexible to the user.

Database design is used to define and then specify the structure of business used in the

client/server system. A business object is nothing but information that is visible to the users of the

system. The database must be normalized one.

Database Design is one of the important part in developing software. It is a process of

developing the conceptual model of data. It minimizes the artificiality embedded in using separate

files. It is a definition of the entire information content of the organization and it specifies a

relationship between the data.

Page 39: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

39

Controlled Redundancy

Data independence

Accurate and integrating

More information at low cost

Recovery from failure

Privacy and security

Performance

Ease of learning and use

Normalization:

Normalization is the process of strutting relational database schema such that most

ambiguity is removed. The stage of normalization are referred to as forms and progress from the

least restrictive(first normal form)through the most restrictive(Fifth normal form), generally , most

database designers do not attempt to implement anything higher than normal form of Boyce code

Normal Form.

FIRST NORMAL FORM:

A relation is said to be in First normal form (INF) if and each attributed of the relation is

atomic. More simply, to be INF, each column must contain only a single value and each now contain

in the same column.

SECOND NORMAL FORM:

In the Second normal Form, a relation must first fulfill the requirement to be in first Normal

Form. Additional, each donkey attribute in the relation must be functionality dependent upon the

primary key.

THIRD NORMAL FORM:

A table is said to be in third normal form and every non key attribute is functionality

dependent only on the primary key. This normalization process is applied to this system and the

normalized tables are given in the above section.

ER DIAGRAM

Page 40: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

40

An ER model is an abstract way to describe a database. Describing a database usually starts

with a relational database, which stores data in tables. Some of the data in these tables point to data

in other tables - for instance, your entry in the database could point to several entries for each of the

phone numbers that are yours. The ER model would say that you are an entity, and each phone

number is an entity, and the relationship between you and the phone numbers is 'has a phone

number'. Diagrams created to design these entities and relationships are called entity–relationship

diagrams or ER diagrams.

Entity Relationships are three kinds:

1. One-One

2. One-Many

3. Many-Many

One-to-one:

One instance of an entity (A) is associated with one other instance of another entity (B). For

example, in a database of employees, each employee name (A) is associated with only one social

security number (B).

One-to-many:

One instance of an entity (A) is associated with zero, one or many instances of another entity

(B), but for one instance of entity B there is only one instance of entity A. For example, for a

company with all employees working in one building, the building name (A) is associated with many

different employees (B), but those employees all share the same singular association with entity A.

many-to-many:

One instance of an entity (A) is associated with one, zero or many instances of another entity

(B), and one instance of entity B is associated with one, zero or many instances of entity A. For

example, for a company in which all of its employees work on multiple projects, each instance of an

employee (A) is associated with many instances of a project (B), and at the same time, each instance

of a project (B) has multiple employees (A) associated with it.

Page 41: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

41

5.3.1 Data Dictionary:

tbl_branchBid

Bname

Did

tbl_college_SOsoid

sname

uname

clgName

pwd

clgId

mobileno

mailid

isActive

photo

msgid

tbl_collegedetailsclgId

clgName

city

address

contactno

principal

tbl_dept

Did

dname

tbl_feedbackmsgid

soid

sid

Did

Bid

yrid

fbk

response

responsests

tbl_scholarship_confirmationscn

soid

sid

schid

amountissued

dop

dor

receive

isActive

tbl_scholarship_detailsschid

stitle

college

minsscmarksSC_ST

minintermarksSC_ST

minBtechmarksSC_ST

minsscmarksBC

minintermarksBC

minbtechmarksBC

minsscmarksOC

minintermarksOC

minbtechmarksOC

casteSC_ST

casteBC

casteOC

amountSC_ST

amountBC

amountOC

dateofpost

soa

eoa

dr

MaxScholarships

MaxAmount

MaxBackLogs

FatherAnnualIncome

PhysicallyChallenged

caste

tbl_student_docssdid

schid

sid

sscdoc

interdoc

btechdoc

incomedoc

castdoc

upld

tbl_studentDetailssid

soid

schid

srollno

sname

uname

pwd

Did

Bid

yrid

gender

mobileno

mailid

isActive

SSCmarks

intermarks

B_techmarks

BackLogs

city

fname

mname

city1

address

fmobileno

fmailid

PhysicallyChallenged

FatherAnnualIncome

photo

caste

amount

eligible

tbl_yearsyrid

year

Bid

Did

Page 42: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

42

Table No::1 Table Name:: tbl_branch

Table No::2 Table Name:: tbl_college_SO

Table No::3 Table Name:: tbl_collegedetails

Table No::4 Table Name:: tbl_dept

Page 43: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

43

Table No::5 Table Name:: tbl_feedback

Table No::6 Table Name:: tbl_scholarship_confirmation

Page 44: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

44

Table No::7 Table Name:: tbl_student_docs

Page 45: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

45

Table No::8 Table Name:: tbl_scholarship_details

Page 46: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

46

Table No::9 Table Name:: tbl_studentDetails

Page 47: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

47

Table No::10 Table Name:: tbl_years

Page 48: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

48

SYSTEM

IMPLEMENTATION

Page 49: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

49

6. SYSTEM IMPLEMENTATION

INTRODUCTION

To provide flexibility to the users, the interfaces have been developed that are

accessible through a browser. The GUI’S at the top level have been categorized as

1. Administrative user interface

2. The operational or generic user interface

The ‘administrative user interface’ concentrates on the consistent information that is

practically, part of the organizational activities and which needs proper authentication for the data

collection. These interfaces help the administrators with all the transactional states like Data

insertion, Data deletion and Data updating along with the extensive data search capabilities.

The ‘operational or generic user interface’ helps the end users of the system in

transactions through the existing data and required services. The operational user interface also helps

the ordinary users in managing their own information in a customized manner as per the included

flexibilities

CODING FOR WEB APPLICATION:

LOGIN.ASPX

using System;

using System.Collections;

using System.Configuration;

using System.Data;

using System.Linq;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.HtmlControls;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Xml.Linq;

using System.Data.SqlClient;

using ClassLibrary1;

public partial class Login : System.Web.UI.Page

{

SqlConnection con = new SqlConnection("Data

Source=IBM014\\SQLEXPRESS;database=scholar;Integrated Security=true");

protected void Page_Load(object sender, EventArgs e)

{

Page 50: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

50

}

protected void Button1_Click(object sender, EventArgs e)

{

Label1.Visible = true;

if (DropDownList1.SelectedItem.Text == "admin")

{

if (TextBox1.Text == "admin" && TextBox2.Text == "admin")

{

Response.Redirect("adminprofile.aspx");

}

else

{

Label1.Text = "invalid user";

}

}

if (DropDownList1.SelectedItem.Text == "so")

{

string pwd= ClassLibrary1.Class1.AESenc(TextBox2.Text);

SqlDataAdapter sda1 = new SqlDataAdapter("select *from tbl_college_SO

Where uname='" + TextBox1.Text + "' And pwd='" + pwd + "'", con);

DataSet ds1 = new DataSet();

sda1.Fill(ds1);

if (ds1.Tables[0].Rows.Count > 0)

{

Session["uname2"] = TextBox1.Text;

Response.Redirect("sohome.aspx");

}

else

{

Label1.Text = "invalid user";

}

}

if (DropDownList1.SelectedItem.Text == "student")

{

string pwd = ClassLibrary1.Class1.AESenc(TextBox2.Text);

SqlDataAdapter sda2 = new SqlDataAdapter("select *from

tbl_studentDetails where uname='" + TextBox1.Text + "' And pwd='" + pwd + "'",

con);

DataSet ds2 = new DataSet();

sda2.Fill(ds2);

if (ds2.Tables[0].Rows.Count > 0)

{

Session["uname1"] = TextBox1.Text;

Response.Redirect("stddetailsstd.aspx");

}

else

{

Label1.Text = "invalid user";

}

}

}

protected void Button2_Click(object sender, EventArgs e)

{

Page 51: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

51

TextBox1.Text = String.Empty;

TextBox2.Text = String.Empty;

}

}

SENDSCSO.ASPX using System;

using System.Collections;

using System.Configuration;

using System.Data;

using System.Linq;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.HtmlControls;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Xml.Linq;

using System.Data.SqlClient;

public partial class sendscso : System.Web.UI.Page

{

SqlConnection con = new SqlConnection("Data

Source=IBM014\\SQLEXPRESS;database=scholar;Integrated Security=true");

SqlCommand cmd = new SqlCommand();

SqlCommand cmd1 = new SqlCommand();

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

if (!IsPostBack)

{

filldata();

}

}

}

public void filldata()

{

SqlDataAdapter sda = new SqlDataAdapter("select Did,dname from tbl_dept

ORDER BY Did ", con);

DataSet ds = new DataSet();

sda.Fill(ds);

DropDownList1.DataSource = ds;

DropDownList1.DataTextField = "dname";

DropDownList1.DataValueField = "Did";

DropDownList1.DataBind();

DropDownList1.Items.Insert(0, "--Select--");

}

public void filldata1()

{

SqlDataAdapter sda = new SqlDataAdapter("select

tbl_branch.Bid,tbl_branch.Bname,tbl_dept.Did from tbl_branch inner join tbl_dept

on tbl_branch.Did=tbl_dept.Did where tbl_dept.Did=" +

DropDownList1.SelectedItem.Value + " ORDER BY Bid", con);

Page 52: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

52

DataSet ds = new DataSet();

sda.Fill(ds);

DropDownList2.DataSource = ds;

DropDownList2.DataTextField = "Bname";

DropDownList2.DataValueField = "Bid";

DropDownList2.DataBind();

DropDownList2.Items.Insert(0, "--Select--");

}

public void filldata2()

{

SqlDataAdapter sda = new SqlDataAdapter("select schid,stitle from

tbl_scholarship_details ORDER BY schid", con);

DataSet ds = new DataSet();

sda.Fill(ds);

DropDownList3.DataSource = ds;

DropDownList3.DataTextField = "stitle";

DropDownList3.DataValueField = "schid";

DropDownList3.DataBind();

DropDownList3.Items.Insert(0, "--Select--");

}

protected void Button1_Click(object sender, EventArgs e)

{

int totalamount = 30000;

int staticfatheramount = Convert.ToInt32("30000");

SqlDataAdapter sda = new SqlDataAdapter("SELECT *from

tbl_scholarship_details where schid='" + DropDownList3.SelectedItem.Value + "'",

con);

DataSet ds = new DataSet();

sda.Fill(ds);

if (ds.Tables[0].Rows.Count > 0)

{

int minsscscst =

Convert.ToInt32(ds.Tables[0].Rows[0]["minsscmarksSC_ST"]);

int mininterscst =

Convert.ToInt32(ds.Tables[0].Rows[0]["minintermarksSC_ST"]);

int minbtechscst =

Convert.ToInt32(ds.Tables[0].Rows[0]["minBtechmarksSC_ST"]);

int minsscbc =

Convert.ToInt32(ds.Tables[0].Rows[0]["minsscmarksBC"]);

int mininterbc =

Convert.ToInt32(ds.Tables[0].Rows[0]["minintermarksBC"]);

int minbtechbc =

Convert.ToInt32(ds.Tables[0].Rows[0]["minbtechmarksBC"]);

int minsscoc =

Convert.ToInt32(ds.Tables[0].Rows[0]["minsscmarksOC"]);

int mininteroc =

Convert.ToInt32(ds.Tables[0].Rows[0]["minintermarksOC"]);

int minbtechoc =

Convert.ToInt32(ds.Tables[0].Rows[0]["minbtechmarksOC"]);

int maxbl = Convert.ToInt32(ds.Tables[0].Rows[0]["MaxBackLogs"]);

int amt = Convert.ToInt32(ds.Tables[0].Rows[0]["MaxAmount"]);

SqlDataAdapter sda1 = new SqlDataAdapter("select

dbo.tbl_studentDetails.sid,dbo.tbl_studentDetails.amount,dbo.tbl_studentDetails.S

Page 53: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

53

SCmarks,dbo.tbl_studentDetails.intermarks,dbo.tbl_studentDetails.B_techmarks,dbo.

tbl_studentDetails.caste,dbo.tbl_studentDetails.PhysicallyChallenged,dbo.tbl_stud

entDetails.FatherAnnualIncome,dbo.tbl_studentDetails.sid,dbo.tbl_studentDetails.B

ackLogs,dbo.tbl_branch.Bname,dbo.tbl_dept.dname from dbo.tbl_studentDetails inner

join dbo.tbl_dept on dbo.tbl_studentDetails.Did=dbo.tbl_dept.Did inner join

dbo.tbl_branch on dbo.tbl_branch.Bid=dbo.tbl_studentDetails.Bid where schid='" +

DropDownList3.SelectedItem.Value + "'", con);

DataSet ds1 = new DataSet();

sda1.Fill(ds1);

int count = ds.Tables[0].Rows.Count;

for (int startno = 0; startno <count; startno++)

{

int SID = Convert.ToInt32(ds1.Tables[0].Rows[0]["sid"]);

int amount1=Convert.ToInt32(ds1.Tables[0].Rows[0]["amount"]);

int SSSCM = Convert.ToInt32(ds1.Tables[0].Rows[0]["SSCmarks"]);

int SINTERM =

Convert.ToInt32(ds1.Tables[0].Rows[0]["intermarks"]);

int SBTECHM =

Convert.ToInt32(ds1.Tables[0].Rows[0]["B_techmarks"]);

String SCASTE = Convert.ToString(ds1.Tables[0].Rows[0]["caste"]);

bool SPHYC =

Convert.ToBoolean(ds1.Tables[0].Rows[0]["PhysicallyChallenged"]);

int SFATHERAI =

Convert.ToInt32(ds1.Tables[0].Rows[0]["FatherAnnualIncome"]);

int STDID = Convert.ToInt32(ds1.Tables[0].Rows[0]["sid"]);

//int SCHDID = Convert.ToInt32(ds.Tables[0].Rows[0]["sid"]);

int SBCKL = Convert.ToInt32(ds1.Tables[0].Rows[0]["BackLogs"]);

//int startamount = 0;

cmd.CommandType = CommandType.Text;

cmd.Connection = con;

cmd1.CommandType = CommandType.Text;

cmd1.Connection = con;

if (con.State == ConnectionState.Open)

con.Close();

con.Open();

cmd.CommandText = "select sum(amount) from tbl_studentDetails

where sid=" + SID + "";

int stdrecamt = Convert.ToInt32(cmd.ExecuteScalar());

if (stdrecamt > 0)

{

if (stdrecamt > totalamount)

{

Label4.Visible = true;

Label4.Text = "Can Not get Scholarship";

}

else

{

Label4.Visible = true;

if (SPHYC==true)

{

cmd1.CommandText = "update tbl_studentDetails set

eligible='true',isActive='true' where sid=" + SID + "";

cmd.CommandText = "insert into

tbl_scholarship_confirmation(sid,schid,dop,dor,isActive,receive,amountissued)valu

es(" + STDID + ",'" + DropDownList3.SelectedItem.Value + "','" +

DateTime.Now.ToShortDateString() + "','" + String.Empty + "','true','false'," +

amount1 + ")";

cmd1.ExecuteNonQuery();

cmd.ExecuteNonQuery();

Page 54: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

54

Label4.Text = "Posted Successfully";

}

else if (SFATHERAI <= staticfatheramount)

{

cmd1.CommandText = "update tbl_studentDetails set

eligible='true',isActive='true' where sid=" + SID + "";

cmd1.ExecuteNonQuery();

cmd.CommandText = "insert into

tbl_scholarship_confirmation(sid,schid,dop,dor,isActive,receive,amountissued)valu

es(" + STDID + ",'" + DropDownList3.SelectedItem.Value + "','" +

DateTime.Now.ToShortDateString()+ "','" + String.Empty + "','true','false'," +

amount1 + ")";

cmd.ExecuteNonQuery();

Label4.Text = "Posted Successfully";

}

else if (SCASTE == "SC" || SCASTE == "ST")

{

if (SSSCM ==minsscscst && SINTERM ==mininterscst &&

SBTECHM == minbtechscst)

{

cmd1.CommandText = "update tbl_studentDetails set

eligible='true',isActive='true' where sid=" + SID + "";

cmd1.ExecuteNonQuery();

cmd.CommandText = "insert into

tbl_scholarship_confirmation(sid,schid,dop,dor,isActive,receive,amountissued)valu

es(" + STDID + ",'" + DropDownList3.SelectedItem.Value + "','" +

DateTime.Now.ToShortDateString() + "','" + String.Empty + "','true','false'," +

amount1 + ")";

cmd.ExecuteNonQuery();

Label4.Text = "Posted Successfully";

}

}

else if (SCASTE == "BC")

{

if (SSSCM == minsscbc && SINTERM == mininterbc &&

SBTECHM == minbtechbc)

{

cmd1.CommandText = "update tbl_studentDetails set

eligible='true',isActive='true' where sid=" + SID + "";

cmd1.ExecuteNonQuery();

cmd.CommandText = "insert into

tbl_scholarship_confirmation(sid,schid,dop,dor,isActive,receive,amountissued)valu

es(" + STDID + ",'" + DropDownList3.SelectedItem.Value + "','" +

DateTime.Now.ToShortDateString() + "','" + String.Empty + "','true','false'," +

amount1 + ")";

cmd.ExecuteNonQuery();

Label4.Text = "Posted Successfully";

}

}

else if (SCASTE == "OC")

{

if (SSSCM == minsscoc && SINTERM == mininteroc &&

SBTECHM == minbtechoc)

{

cmd1.CommandText = "update tbl_studentDetails set

eligible='true',isActive='true' where sid=" + SID + "";

cmd1.ExecuteNonQuery();

cmd.CommandText = "insert into

tbl_scholarship_confirmation(sid,schid,dop,dor,isActive,receive,amountissued)valu

es(" + STDID + ",'" + DropDownList3.SelectedItem.Value + "','" +

Page 55: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

55

DateTime.Now.ToShortDateString() + "','" + String.Empty + "','true','false'," +

amount1 + ")";

cmd.ExecuteNonQuery();

Label4.Text = "Posted Successfully";

}

}

}

}

}

}

}

protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)

{

filldata1();

}

protected void DropDownList2_SelectedIndexChanged(object sender, EventArgs e)

{

filldata2();

}

}

Page 56: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

56

SCREEN SHOTS

Page 57: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

57

7. SCREEN SHOTS

Before Login

This is the main login page where all the users can login to their respected home pages.

The main 3 users are

1. Admin

2. SO(Scholarship Officer)

3. Student

Page 58: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

58

Admin:

1) This is admin home pages.

2) Admin can add/edit college details.

Page 59: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

59

3) Admin can add/block scholarship officer details.

Page 60: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

60

Scholarship Officer:

1) This is scholarship officer home pages.

2) Scholarship officer can add/block student details.

Page 61: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

61

3) Scholarship officer can add/edit scholarship details.

Page 62: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

62

4) Scholarship officer can view scholarship details.

Page 63: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

63

5) Scholarship officer can send scholarship to eligible students.

6) Scholarship officer can view eligible students.

Page 64: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

64

6) Scholarship officer can send feedback response.

Page 65: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

65

Student:

1) This is student home pages.

2) Student can view scholarship and upload documents.

Page 66: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

66

3) Student can view scholarship Status:

Page 67: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

67

4) Student can Confirm scholarship .

5) Student can send and view feedback.

Page 68: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

68

View feedback:

Page 69: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

69

SYSTEM TESTING

Page 70: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

70

8. System Testing

8.1 Introduction

Software testing is a critical element of software quality assurance and

represents the ultimate review of specification, design and coding. The increasing visibility of

software as a system element and attendant costs associated with a software failure are

motivating factors for we planned, through testing. Testing is the process of executing a

program with the intent of finding an error. The design of tests for software and other

engineered products can be as challenging as the initial design of the product itself.

There of basically two types of testing approaches.

One is Black-Box testing – the specified function that a product has been

designed to perform, tests can be conducted that demonstrate each function is fully

operated.

The other is White-Box testing – knowing the internal workings of the

product ,tests can be conducted to ensure that the internal operation of the product

performs according to specifications and all internal components have been adequately

exercised.

White box and Black box testing methods have been used to test this

package. All the loop constructs have been tested for their boundary and

intermediate conditions. The test data was designed with a view to check for all

the conditions and logical decisions. Error handling has been taken care of by the use

of exception handlers.

Testing Strategies:

Testing is a set of activities that can be planned in advanced and conducted

systematically. A strategy for software testing must accommodation low-level tests that are

necessary to verify that a small source code segment has been correctly implemented as well

as high- level tests that validate major system functions against customer requirements.

Software testing is one element of verification and validation. Verification refers to

the set of activities that ensure that software correctly implements as specific function.

Validation refers to a different set of activities that ensure that the software that has been built

is traceable to customer requirements.

Page 71: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

71

The objective of software testing to uncover errors. To fulfill this objective, a series

of test steps unit, integration, validation and system tests are planned and executed. Each test

step is accomplished through a series of systematic test technique that assist in the design of

test cases. With each testing step, the level of abstraction with which software is considered

is broadened.

8.2 Testing Methods

Unit Testing:

Unit testing focuses verification effort on the smallest unit of software design – the

module. The unit test is always white box oriented. The tests that occur as part of unit

testing are testing the module interface, examining the local data structures, testing the

boundary conditions, executing all the independent paths and testing error-handling paths.

Integration Testing:

Integration testing is a systematic technique for constructing the program structure

while at the same time conducting tests to uncover errors associated with interfacing. Scope

of testing summarizes the specific functional, performance, and internal design characteristics

that are to be tested. It employs top-down testing and bottom-up testing methods for this

case.

White Box Testing:

The purpose of any security testing method is to ensure the robustness of a system in the face

of malicious attacks or regular software failures. White box testing is performed based on the

knowledge of how the system is implemented. White box testing includes analyzing data

flow, control flow, information flow, coding practices, and exception and error handling

within the system, to test the intended and unintended software behavior. White box testing

can be performed to validate whether code implementation follows intended design, to

validate implemented security functionality, and to uncover exploitable vulnerabilities.

White box testing requires access to the source code. Though white box testing can be

performed any time in the life cycle after the code is developed, it is a good practice to

perform white box testing during the unit testing phase.

White box testing requires knowing what makes software secure or insecure, how to think

like an attacker, and how to use different testing tools and techniques. The first step in white

box testing is to comprehend and analyze source code, so knowing what makes software

Page 72: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

72

secure is a fundamental requirement. Second, to create tests that exploit software, a tester

must think like an attacker. Third, to perform testing effectively, testers need to know the

different tools and techniques available for white box testing. The three requirements do not

work in isolation, but together.

Black Box Testing:

Also known as functional testing. A software testing technique whereby the internal workings of the

item being tested are not known by the tester. For example, in a black box test on software design the

tester only knows the inputs and what the expected outcomes should be and not how the program

arrives at those outputs. The tester does not ever examine the programming code and does not need

any further knowledge of the program other than its specifications.

The advantages of this type of testing include:

The test is unbiased because the designer and the tester are independent of each other.

The tester does not need knowledge of any specific programming languages.

The test is done from the point of view of the user, not the designer.

Test cases can be designed as soon as the specifications are complete.

System Testing:

System testing validates software once it has been incorporated into a larger system.

Software is incorporated with other system elements and a series of system integration and

validation tests are conducted. System testing is actually a series of different test whose

primary purpose is to fully exercise the computer- based system.

Once the system has been developed it has to be tested. In the present system we

have to take care of valid property and assessment numbers i.e. there should not exist any

duplicate number in each case. Care should be taken that the appropriate data is retrieved in

response to the queries.

Page 73: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

73

8.3 Test Cases

1. Test case for Login:

Test Case 1: Login

Priority(H.L):High

Test Objective: Verifying Login details

Test Description: In this Login page , when the Admin/Scholarship Officer/Student enters his/her user

name and passwords in the Login form and when he/she clicks the Login button, if the data is correct

the Admin/Scholarship Officer/Student redirected to their home pages. If the Admin/Scholarship

Officer/Student enters any invalid data and responds like invalid user.

Requirement Verified: yes

Test Environment: System connected with internet, connected with the database.

Test Set Up/Pre Conditions: Network connection established and User Agent should be running.

Actions Expected Results

1.when the Admin/Scholarship Officer/Student

enters his/her login details in the login form and

when he clicks the login button, and if the details

are valid then it shows a message

2.By leaving all/some of fields as blank and

on click Log-in button then it shows a message

3. .By Entering Wrong details and on click

Log-in button then it shows a message

1. Login success. Redirected to their home pages.

2. Enter Missing field.

3. Invalid user.

Pass: Yes Condition Pass: No Fail: No

Problems/Issues: None

Notes: Successfully Tested And Executed

Page 74: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

74

2. Test case for Adding Scholarship Officer Details:

3. Test case for Adding College Details:

Page 75: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

75

4. Test case for Sending Feedback by Student:

5. Test case for Add Scholarship Details:

Page 76: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

76

6. Test case for Received Scholarship:

Page 77: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

77

CONCLUSION

Page 78: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

78

9. CONCLUSION

Apart from these facilities it also provides ease of data entry for the user. After successfully

user testing it has been found that the new system has overcome most of the limitations of the

existing system and works according to the design specification given. The developed systems

dispense the problems and the meets the need by providing reliable and comprehensive information.

All the requirements projected by the user have been met by the system.

The newly developed system consumes less processing time and all the details are updated

and processed immediately. Since the screen provides real time help messages and is very user

friendly, any user can get familiarized.

9.1 Future Enhancements:

Every application has its own merits and demerits. The project has covered almost all the

requirements. Further requirements and improvements can easily be done since the coding is mainly

structured or modular in nature. Changing the existing modules or adding new modules can append

improvements. Further enhancements can be made to the application, so that the web site functions

very attractive and useful manner than the present one.

9.2 Limitations:

It works only under proper internet connectivity.

Page 79: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

79

BIBLIOGRAPHY

Page 80: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

80

10. BIBLIOGRAPHY

10.1 Textbook References:

ASP.NET 2.0 with C#-Stephen Walther

XML - XML complete reference by Aaron Skonnard & Martin Gudgin

HTML - Steven Holzner

AJAX - JavaScript and Ajax for the web, Sixth Edition(Visual Quick Start Guide)

Modern Web Design Using JavaScript and DOM by Stuart Landgridge

10.2 Websites:

www.google.com

www.asp.net

www.ajaxprojects.com

www.w3schools.com/aspnet/default.asp

www.programmingtutorials.com/aspnet.aspx

Page 81: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

81

APPENDIX

Page 82: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

82

11. Appendix

11.1. Microsoft.NET Framework

The .NET Framework is a new computing platform that simplifies application development in the

highly distributed environment of the Internet.

Native code:

Page 83: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

83

Background process:

The .NET Framework is designed to fulfill the following objectives:

To provide a consistent object-oriented programming environment whether object code is

stored and executed locally, executed locally but Internet-distributed, or executed remotely.

To provide a code-execution environment that minimizes software deployment and

versioning conflicts.

To provide a code-execution environment that guarantees safe execution of code, including

code created by an unknown or semi-trusted third party.

To provide a code-execution environment that eliminates the performance problems of

scripted or interpreted environments.

To make the developer experience consistent across widely varying types of applications,

such as Windows-based applications and Web-based applications.

To build all communication on industry standards to ensure that code based on the .NET

Framework can integrate with any other code.

The .NET Framework has two main components: the common language runtime and the .NET

Framework class library. The common language runtime is the foundation of the .NET Framework.

You can think of the runtime as an agent that manages code at execution time, providing core

services such as memory management, thread management, and remoting, while also enforcing strict

type safety and other forms of code accuracy that ensure security and robustness. In fact, the concept

of code management is a fundamental principle of the runtime. Code that targets the runtime is

known as managed code, while code that does not target the runtime is known as unmanaged code.

The class library, the other main component of the .NET Framework, is a comprehensive, object-

oriented collection of reusable types that you can use to develop applications ranging from traditional

Page 84: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

84

command-line or graphical user interface (GUI) applications to applications based on the latest

innovations provided by ASP.NET, such as Web Forms and XML Web services.

The .NET Framework can be hosted by unmanaged components that load the common language

runtime into their processes and initiate the execution of managed code, thereby creating a software

environment that can exploit both managed and unmanaged features. The .NET Framework not only

provides several runtime hosts, but also supports the development of third-party runtime hosts.

For example, ASP.NET hosts the runtime to provide a scalable, server-side environment for

managed code. ASP.NET works directly with the runtime to enable Web Forms applications and

XML Web services, both of which are discussed later in this topic.

Internet Explorer is an example of an unmanaged application that hosts the runtime (in the form of a

MIME type extension). Using Internet Explorer to host the runtime enables you to embed managed

components or Windows Forms controls in HTML documents. Hosting the runtime in this way

makes managed mobile code (similar to Microsoft® ActiveX® controls) possible, but with

significant improvements that only managed code can offer, such as semi-trusted execution and

secure isolated file storage.

The following illustration shows the relationship of the common language runtime and the class

library to your applications and to the overall system. The illustration also shows how managed code

operates within a larger architecture.

Features of the Common Language Runtime

The common language runtime manages memory, thread execution, code execution, code safety

verification, compilation, and other system services. These features are intrinsic to the managed code

that runs on the common language runtime.

With regards to security, managed components are awarded varying degrees of trust, depending on a

number of factors that include their origin (such as the Internet, enterprise network, or local

computer). This means that a managed component might or might not be able to perform file-access

operations, registry-access operations, or other sensitive functions, even if it is being used in the

same active application.

Page 85: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

85

The runtime enforces code access security. For example, users can trust that an executable embedded

in a Web page can play an animation on screen or sing a song, but cannot access their personal data,

file system, or network. The security features of the runtime thus enable legitimate Internet-deployed

software to be exceptionally feature rich.

The runtime also enforces code robustness by implementing a strict type- and code-verification

infrastructure called the common type system (CTS). The CTS ensures that all managed code is self-

describing. The various Microsoft and third-party language compilers generate managed code that

conforms to the CTS. This means that managed code can consume other managed types and

instances, while strictly enforcing type fidelity and type safety.

In addition, the managed environment of the runtime eliminates many common software issues. For

example, the runtime automatically handles object layout and manages references to objects,

releasing them when they are no longer being used. This automatic memory management resolves

the two most common application errors, memory leaks and invalid memory references.

The runtime also accelerates developer productivity. For example, programmers can write

applications in their development language of choice, yet take full advantage of the runtime, the class

library, and components written in other languages by other developers. Any compiler vendor who

chooses to target the runtime can do so. Language compilers that target the .NET Framework make

the features of the .NET Framework available to existing code written in that language, greatly

easing the migration process for existing applications.

While the runtime is designed for the software of the future, it also supports software of today and

yesterday. Interoperability between managed and unmanaged code enables developers to continue to

use necessary COM components and DLLs.

The runtime is designed to enhance performance. Although the common language runtime provides

many standard runtime services, managed code is never interpreted. A feature called just-in-time

(JIT) compiling enables all managed code to run in the native machine language of the system on

which it is executing. Meanwhile, the memory manager removes the possibilities of fragmented

memory and increases memory locality-of-reference to further increase performance.

Finally, the runtime can be hosted by high-performance, server-side applications, such as Microsoft®

SQL Server™ and Internet Information Services (IIS). This infrastructure enables you to use

Page 86: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

86

managed code to write your business logic, while still enjoying the superior performance of the

industry's best enterprise servers that support runtime hosting.

11.2 .NET Framework Class Library

The .NET Framework class library is a collection of reusable types that tightly integrate with the

common language runtime. The class library is object oriented, providing types from which your

own managed code can derive functionality. This not only makes the .NET Framework types easy to

use, but also reduces the time associated with learning new features of the .NET Framework. In

addition, third-party components can integrate seamlessly with classes in the .NET Framework.

For example, the .NET Framework collection classes implement a set of interfaces that you can use

to develop your own collection classes. Your collection classes will blend seamlessly with the

classes in the .NET Framework.

As you would expect from an object-oriented class library, the .NET Framework types enable you to

accomplish a range of common programming tasks, including tasks such as string management, data

collection, database connectivity, and file access. In addition to these common tasks, the class library

includes types that support a variety of specialized development scenarios. For example, you can use

the .NET Framework to develop the following types of applications and services:

Console applications.

Scripted or hosted applications.

Windows GUI applications (Windows Forms).

ASP.NET applications.

XML Web services.

Windows services.

For example, the Windows Forms classes are a comprehensive set of reusable types that vastly

simplify Windows GUI development. If you write an ASP.NET Web Form application, you can use

the Web Forms classes.

11.3 Client Application Development

Client applications are the closest to a traditional style of application in Windows-based

programming. These are the types of applications that display windows or forms on the desktop,

Page 87: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

87

enabling a user to perform a task. Client applications include applications such as word processors

and spreadsheets, as well as custom business applications such as data-entry tools, reporting tools,

and so on. Client applications usually employ windows, menus, buttons, and other GUI elements,

and they likely access local resources such as the file system and peripherals such as printers.

Another kind of client application is the traditional ActiveX control (now replaced by the managed

Windows Forms control) deployed over the Internet as a Web page. This application is much like

other client applications: it is executed natively, has access to local resources, and includes graphical

elements.

In the past, developers created such applications using C/C++ in conjunction with the Microsoft

Foundation Classes (MFC) or with a rapid application development (RAD) environment such as

Microsoft® Visual Basic®. The .NET Framework incorporates aspects of these existing products

into a single, consistent development environment that drastically simplifies the development of

client applications.

The Windows Forms classes contained in the .NET Framework are designed to be used for GUI

development. You can easily create command windows, buttons, menus, toolbars, and other screen

elements with the flexibility necessary to accommodate shifting business needs.

For example, the .NET Framework provides simple properties to adjust visual attributes associated

with forms. In some cases the underlying operating system does not support changing these attributes

directly, and in these cases the .NET Framework automatically recreates the forms. This is one of

many ways in which the .NET Framework integrates the developer interface, making coding simpler

and more consistent.

Unlike ActiveX controls, Windows Forms controls have semi-trusted access to a user's computer.

This means that binary or natively executing code can access some of the resources on the user's

system (such as GUI elements and limited file access) without being able to access or compromise

other resources. Because of code access security, many applications that once needed to be installed

on a user's system can now be safely deployed through the Web. Your applications can implement

the features of a local application while being deployed like a Web page.

Page 88: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

88

11.4 Server Application Development

Server-side applications in the managed world are implemented through runtime hosts. Unmanaged

applications host the common language runtime, which allows your custom managed code to control

the behavior of the server. This model provides you with all the features of the common language

runtime and class library while gaining the performance and scalability of the host server.

The following illustration shows a basic network schema with managed code running in different

server environments. Servers such as IIS and SQL Server can perform standard operations while

your application logic executes through the managed code.

11.5 Server-side managed code

ASP.NET is the hosting environment that enables developers to use the .NET Framework to target

Web-based applications. However, ASP.NET is more than just a runtime host; it is a complete

architecture for developing Web sites and Internet-distributed objects using managed code. Both

Web Forms and XML Web services use IIS and ASP.NET as the publishing mechanism for

applications, and both have a collection of supporting classes in the .NET Framework.

XML Web services, an important evolution in Web-based technology, are distributed, server-side

application components similar to common Web sites. However, unlike Web-based applications,

XML Web services components have no UI and are not targeted for browsers such as Internet

Explorer and Netscape Navigator. Instead, XML Web services consist of reusable software

components designed to be consumed by other applications, such as traditional client applications,

Web-based applications, or even other XML Web services. As a result, XML Web services

technology is rapidly moving application development and deployment into the highly distributed

environment of the Internet.

If you have used earlier versions of ASP technology, you will immediately notice the improvements

that ASP.NET and Web Forms offers. For example, you can develop Web Forms pages in any

language that supports the .NET Framework. In addition, your code no longer needs to share the

same file with your HTTP text (although it can continue to do so if you prefer). Web Forms pages

execute in native machine language because, like any other managed application, they take full

advantage of the runtime. In contrast, unmanaged ASP pages are always scripted and interpreted.

Page 89: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

89

ASP.NET pages are faster, more functional, and easier to develop than unmanaged ASP pages

because they interact with the runtime like any managed application.

The .NET Framework also provides a collection of classes and tools to aid in development and

consumption of XML Web services applications. XML Web services are built on standards such as

SOAP (a remote procedure-call protocol), XML (an extensible data format), and WSDL ( the Web

Services Description Language). The .NET Framework is built on these standards to promote

interoperability with non-Microsoft solutions.

For example, the Web Services Description Language tool included with the .NET Framework SDK

can query an XML Web service published on the Web, parse its WSDL description, and produce C#

or Visual Basic source code that your application can use to become a client of the XML Web

service. The source code can create classes derived from classes in the class library that handle all

the underlying communication using SOAP and XML parsing. Although you can use the class

library to consume XML Web services directly, the Web Services Description Language tool and the

other tools contained in the SDK facilitate your development efforts with the .NET Framework.

If you develop and publish your own XML Web service, the .NET Framework provides a set of

classes that conform to all the underlying communication standards, such as SOAP, WSDL, and

XML. Using those classes enables you to focus on the logic of your service, without concerning

yourself with the communications infrastructure required by distributed software development.

Finally, like Web Forms pages in the managed environment, your XML Web service will run with

the speed of native machine language using the scalable communication of IIS.

11.6 Active Server Pages.NET

ASP.NET is a programming framework built on the common language runtime that can be

used on a server to build powerful Web applications. ASP.NET offers several important

advantages over previous Web development models:

Enhanced Performance. ASP.NET is compiled common language runtime code

running on the server. Unlike its interpreted predecessors, ASP.NET can take

advantage of early binding, just-in-time compilation, native optimization, and caching

services right out of the box. This amounts to dramatically better performance before

you ever write a line of code.

Page 90: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

90

World-Class Tool Support. The ASP.NET framework is complemented by a rich

toolbox and designer in the Visual Studio integrated development environment.

WYSIWYG editing, drag-and-drop server controls, and automatic deployment are

just a few of the features this powerful tool provides.

Power and Flexibility. Because ASP.NET is based on the common language

runtime, the power and flexibility of that entire platform is available to Web

application developers. The .NET Framework class library, Messaging, and Data

Access solutions are all seamlessly accessible from the Web. ASP.NET is also

language-independent, so you can choose the language that best applies to your

application or partition your application across many languages. Further, common

language runtime interoperability guarantees that your existing investment in COM-

based development is preserved when migrating to ASP.NET.

Simplicity. ASP.NET makes it easy to perform common tasks, from simple form

submission and client authentication to deployment and site configuration. For

example, the ASP.NET page framework allows you to build user interfaces that

cleanly separate application logic from presentation code and to handle events in a

simple, Visual Basic - like forms processing model. Additionally, the common

language runtime simplifies development, with managed code services such as

automatic reference counting and garbage collection.

Manageability. ASP.NET employs a text-based, hierarchical configuration system,

which simplifies applying settings to your server environment and Web applications.

Because configuration information is stored as plain text, new settings may be applied

without the aid of local administration tools. This "zero local administration"

philosophy extends to deploying ASP.NET Framework applications as well. An

ASP.NET Framework application is deployed to a server simply by copying the

necessary files to the server. No server restart is required, even to deploy or replace

running compiled code.

Scalability and Availability. ASP.NET has been designed with scalability in mind,

with features specifically tailored to improve performance in clustered and

multiprocessor environments. Further, processes are closely monitored and managed

by the ASP.NET runtime, so that if one misbehaves (leaks, deadlocks), a new process

Page 91: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

91

can be created in its place, which helps keep your application constantly available to

handle requests.

Customizability and Extensibility. ASP.NET delivers a well-factored architecture

that allows developers to "plug-in" their code at the appropriate level. In fact, it is

possible to extend or replace any subcomponent of the ASP.NET runtime with your

own custom-written component. Implementing custom authentication or state services

has never been easier.

Security. With built in Windows authentication and per-application configuration,

you can be assured that your applications are secure.

Language Support:The Microsoft .NET Platform currently offers built-in support for

three languages: C#, Visual Basic, and JScript.

11.7 What is ASP.NET Web Forms?

The ASP.NET Web Forms page framework is a scalable common language runtime

programming model that can be used on the server to dynamically generate Web pages.

Intended as a logical evolution of ASP (ASP.NET provides syntax compatibility with

existing pages), the ASP.NET Web Forms framework has been specifically designed to

address a number of key deficiencies in the previous model. In particular, it provides:

The ability to create and use reusable UI controls that can encapsulate common

functionality and thus reduce the amount of code that a page developer has to write.

The ability for developers to cleanly structure their page logic in an orderly fashion

(not "spaghetti code").

The ability for development tools to provide strong WYSIWYG design support for

pages (existing ASP code is opaque to tools).

ASP.NET Web Forms pages are text files with an .aspx file name extension. They can be

deployed throughout an IIS virtual root directory tree. When a browser client requests .aspx

resources, the ASP.NET runtime parses and compiles the target file into a .NET Framework

class. This class can then be used to dynamically process incoming requests. (Note that the

Page 92: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

92

.aspx file is compiled only the first time it is accessed; the compiled type instance is then

reused across multiple requests).

An ASP.NET page can be created simply by taking an existing HTML file and changing its

file name extension to .aspx (no modification of code is required). For example, the following

sample demonstrates a simple HTML page that collects a user's name and category

preference and then performs a form postback to the originating page when a button is

clicked:

ASP.NET provides syntax compatibility with existing ASP pages. This includes support for

<% %> code render blocks that can be intermixed with HTML content within an .aspx file.

These code blocks execute in a top-down manner at page render time.

Code-Behind Web Forms

ASP.NET supports two methods of authoring dynamic pages. The first is the method shown

in the preceding samples, where the page code is physically declared within the originating

.aspx file. An alternative approach--known as the code-behind method--enables the page code

to be more cleanly separated from the HTML content into an entirely separate file.

Introduction to ASP.NET Server Controls

In addition to (or instead of) using <% %> code blocks to program dynamic content,

ASP.NET page developers can use ASP.NET server controls to program Web pages. Server

controls are declared within an .aspx file using custom tags or intrinsic HTML tags that

contain a runat="server" attribute value. Intrinsic HTML tags are handled by one of the

controls in the System.Web.UI.HtmlControls namespace. Any tag that doesn't explicitly

map to one of the controls is assigned the type of

System.Web.UI.HtmlControls.HtmlGenericControl.

Server controls automatically maintain any client-entered values between round trips to the

server. This control state is not stored on the server (it is instead stored within an <input

type="hidden"> form field that is round-tripped between requests). Note also that no client-

side script is required.

Page 93: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

93

In addition to supporting standard HTML input controls, ASP.NET enables developers to

utilize richer custom controls on their pages. For example, the following sample demonstrates

how the <asp:adrotator> control can be used to dynamically display rotating ads on a page.

1. ASP.NET Web Forms provide an easy and powerful way to build dynamic Web

UI.

2. ASP.NET Web Forms pages can target any browser client (there are no script

library or cookie requirements).

3. ASP.NET Web Forms pages provide syntax compatibility with existing ASP pages.

4. ASP.NET server controls provide an easy way to encapsulate common

functionality.

5. ASP.NET ships with 45 built-in server controls. Developers can also use controls

built by third parties.

6. ASP.NET server controls can automatically project both uplevel and down level

HTML.

7. ASP.NET templates provide an easy way to customize the look and feel of list

server controls.

8. ASP.NET validation controls provide an easy way to do declarative client or server

data validation.

11.8 ACTIVE X DATA OBJECTS.NET

ADO.NET Overview

ADO.NET is an evolution of the ADO data access model that directly addresses user requirements

for developing scalable applications. It was designed specifically for the web with scalability,

statelessness, and XML in mind.

Page 94: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

94

ADO.NET uses some ADO objects, such as the Connection and Command objects, and also

introduces new objects. Key new ADO.NET objects include the DataSet, DataReader, and

DataAdapter.

The important distinction between this evolved stage of ADO.NET and previous data architectures is

that there exists an object -- the DataSet -- that is separate and distinct from any data stores. Because

of that, the DataSet functions as a standalone entity. You can think of the DataSet as an always

disconnected recordset that knows nothing about the source or destination of the data it contains.

Inside a DataSet, much like in a database, there are tables, columns, relationships, constraints,

views, and so forth.

A DataAdapter is the object that connects to the database to fill the DataSet. Then, it connects back

to the database to update the data there, based on operations performed while the DataSet held the

data. In the past, data processing has been primarily connection-based. Now, in an effort to make

multi-tiered apps more efficient, data processing is turning to a message-based approach that

Page 95: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

95

revolves around chunks of information. At the center of this approach is the DataAdapter, which

provides a bridge to retrieve and save data between a DataSet and its source data store. It

accomplishes this by means of requests to the appropriate SQL commands made against the data

store.

The XML-based DataSet object provides a consistent programming model that works with all

models of data storage: flat, relational, and hierarchical. It does this by having no 'knowledge' of the

source of its data, and by representing the data that it holds as collections and data types. No matter

what the source of the data within the DataSet is, it is manipulated through the same set of standard

APIs exposed through the DataSet and its subordinate objects.

While the DataSet has no knowledge of the source of its data, the managed provider has detailed and

specific information. The role of the managed provider is to connect, fill, and persist the DataSet to

and from data stores. The OLE DB and SQL Server .NET Data Providers (System.Data.OleDb and

System.Data.SqlClient) that are part of the .Net Framework provide four basic objects: the

Command, Connection, DataReader and DataAdapter. In the remaining sections of this

document, we'll walk through each part of the DataSet and the OLE DB/SQL Server .NET Data

Providers explaining what they are, and how to program against them.

The following sections will introduce you to some objects that have evolved, and some that are new.

These objects are:

Connections. For connection to and managing transactions against a database.

Commands. For issuing SQL commands against a database.

DataReaders. For reading a forward-only stream of data records from a SQL Server data

source.

DataSets. For storing, remoting and programming against flat data, XML data and

relational data.

DataAdapters. For pushing data into a DataSet, and reconciling data against a database.

When dealing with connections to a database, there are two different options: SQL Server .NET

Data Provider (System.Data.SqlClient) and OLE DB .NET Data Provider (System.Data.OleDb). In

these samples we will use the SQL Server .NET Data Provider. These are written to talk directly to

Microsoft SQL Server. The OLE DB .NET Data Provider is used to talk to any OLE DB provider (as

it uses OLE DB underneath).

Page 96: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

96

Connections

Connections are used to 'talk to' databases, and are respresented by provider-specific classes such as

SQLConnection. Commands travel over connections and resultsets are returned in the form of

streams which can be read by a DataReader object, or pushed into a DataSet object.

Commands

Commands contain the information that is submitted to a database, and are represented by provider-

specific classes such as SQLCommand. A command can be a stored procedure call, an UPDATE

statement, or a statement that returns results. You can also use input and output parameters, and

return values as part of your command syntax. The example below shows how to issue an INSERT

statement against the Northwind database.

DataReaders

The DataReader object is somewhat synonymous with a read-only/forward-only cursor over data.

The DataReader API supports flat as well as hierarchical data. A DataReader object is returned

after executing a command against a database. The format of the returned DataReader object is

different from a recordset. For example, you might use the DataReader to show the results of a

search list in a web page.

DataSets and DataAdapters

DataSets

The DataSet object is similar to the ADO Recordset object, but more powerful, and with one other

important distinction: the DataSet is always disconnected. The DataSet object represents a cache of

data, with database-like structures such as tables, columns, relationships, and constraints. However,

though a DataSet can and does behave much like a database, it is important to remember that

DataSet objects do not interact directly with databases, or other source data. This allows the

developer to work with a programming model that is always consistent, regardless of where the

source data resides. Data coming from a database, an XML file, from code, or user input can all be

placed into DataSet objects. Then, as changes are made to the DataSet they can be tracked and

verified before updating the source data. The GetChanges method of the DataSet object actually

creates a second DatSet that contains only the changes to the data. This DataSet is then used by a

DataAdapter (or other objects) to update the original data source.

Page 97: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

97

The DataSet has many XML characteristics, including the ability to produce and consume XML

data and XML schemas. XML schemas can be used to describe schemas interchanged via

WebServices. In fact, a DataSet with a schema can actually be compiled for type safety and

statement completion.

DataAdapters (OLEDB/SQL)

The DataAdapter object works as a bridge between the DataSet and the source data. Using the

provider-specific SqlDataAdapter (along with its associated SqlCommand and SqlConnection)

can increase overall performance when working with a Microsoft SQL Server databases. For other

OLE DB-supported databases, you would use the OleDbDataAdapter object and its associated

OleDbCommand and OleDbConnection objects.

The DataAdapter object uses commands to update the data source after changes have been made to

the DataSet. Using the Fill method of the DataAdapter calls the SELECT command; using the

Update method calls the INSERT, UPDATE or DELETE command for each changed row. You can

explicitly set these commands in order to control the statements used at runtime to resolve changes,

including the use of stored procedures. For ad-hoc scenarios, a CommandBuilder object can

generate these at run-time based upon a select statement. However, this run-time generation requires

an extra round-trip to the server in order to gather required metadata, so explicitly providing the

INSERT, UPDATE, and DELETE commands at design time will result in better run-time

performance.

1. ADO.NET is the next evolution of ADO for the .Net Framework.

2. ADO.NET was created with n-Tier, statelessness and XML in the forefront. Two new

objects, the DataSet and DataAdapter, are provided for these scenarios.

3. ADO.NET can be used to get data from a stream, or to store data in a cache for updates.

4. There is a lot more information about ADO.NET in the documentation.

5. Remember, you can execute a command directly against the database in order to do inserts,

updates, and deletes. You don't need to first put data into a DataSet in order to insert,

update, or delete it.

6. Also, you can use a DataSet to bind to the data, move through the data, and navigate data

relationships.

Page 98: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

98

External Interface Requirements:

User Constraints

Users are main constraints for telecom connections. The user interface is a GUI window where the

command names reflect the function they perform. The information of Applying telephone

connection, viewing bill, Compliments etc. are some examples.

About Microsoft SQL Server

Microsoft SQL Server is a Structured Query Language (SQL) based, client/server relational

database. Each of these terms describes a fundamental part of the architecture of SQL Server.

Database

A database is similar to a data file in that it is a storage place for data. Like a data file, a database

does not present information directly to a user; the user runs an application that accesses data from

the database and presents it to the user in an understandable format.

A database typically has two components: the files holding the physical database and the database

management system (DBMS) software that applications use to access data. The DBMS is responsible

for enforcing the database structure, including:

Maintaining the relationships between data in the database.

Ensuring that data is stored correctly and that the rules defining data relationships are not

violated.

Recovering all data to a point of known consistency in case of system failures.

Page 99: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

99

Client/Server

In a client/server system, the server is a relatively large computer in a central location that manages a

resource used by many people. When individuals need to use the resource, they connect over the

network from their computers, or clients, to the server.

Examples of servers are: In a client/server database architecture, the database files and DBMS

software reside on a server. A communications component is provided so applications can run on

separate clients and communicate to the database server over a network. The SQL Server

communication component also allows communication between an application running on the server

and SQL Server.

Server applications are usually capable of working with several clients at the same time. SQL Server

can work with thousands of client applications simultaneously. The server has features to prevent the

logical problems that occur if a user tries to read or modify data currently being used by others.

While SQL Server is designed to work as a server in a client/server network, it is also capable of

working as a stand-alone database directly on the client. The scalability and ease-of-use features of

SQL Server allow it to work efficiently on a client without consuming too many resources.

11.9 Structured Query Language (SQL)

To work with data in a database, you must use a set of commands and statements (language) defined

by the DBMS software. There are several different languages that can be used with relational

databases; the most common is SQL. Both the American National Standards Institute (ANSI) and the

International Standards Organization (ISO) have defined standards for SQL. Most modern DBMS

products support the Entry Level of SQL-92, the latest SQL standard (published in 1992).

Page 100: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

100

SQL Server Features

Microsoft SQL Server supports a set of features that result in the following benefits:

Ease of installation, deployment, and use

SQL Server includes a set of administrative and development tools that improve your ability to

install, deploy, manage, and use SQL Server across several sites.

Scalability

The same database engine can be used across platforms ranging from laptop computers running

Microsoft Windows® 95/98 to large, multiprocessor servers running Microsoft Windows NT®,

Enterprise Edition.

Data warehousing

SQL Server includes tools for extracting and analyzing summary data for online analytical

processing (OLAP). SQL Server also includes tools for visually designing databases and analyzing

data using English-based questions.

System integration with other server software

SQL Server integrates with e-mail, the Internet, and Windows.

Databases

A database in Microsoft SQL Server consists of a collection of tables that contain data, and other

objects, such as views, indexes, stored procedures, and triggers, defined to support activities

performed with the data. The data stored in a database is usually related to a particular subject or

process, such as inventory information for a manufacturing warehouse.

SQL Server can support many databases, and each database can store either interrelated data or data

unrelated to that in the other databases. For example, a server can have one database that stores

personnel data and another that stores product-related data. Alternatively, one database can store

current customer order data, and another; related database can store historical customer orders that

are used for yearly reporting. Before you create a database, it is important to understand the parts of a

Page 101: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

101

database and how to design these parts to ensure that the database performs well after it is

implemented.

Entity Integrity Constraint:

Entity Integrity Constraints are of two types:

Unique Constraints

Primary Key Constraints

The unique constraints designate a column or a group of columns as a unique key.

The constraint allows only unique values to be stored in the column Sql Server rejects

duplication of records when the unique key constraint is used.

The primary key constraint is similar to the unique key constraint. The primary

key constraint just like the former avoids duplication of values. Its needs it best felt when

a relation has to be set between tables, because in addition to prevent in duplication it also

does not allow null values.

Referential Integrity Constraint:

The Referential Integrity Constraint enforces relationship between tables. It

designates a column or a combination of columns as a foreign key. The foreign key

establishes a relationship with a specified primary or unique key in another table, called

the referenced key. In this relationship, the table containing the foreign key is called a

child table and the table containing the referenced key is called the parent table.

Page 102: Scholarship Information System documentation

Sch

ola

rsh

ip I

nfo

rma

tio

n S

yst

em

102