SIKKIM MANIPAL UNIVERSITY

PROJECT REPORT

ON

“COLLEGE MANAGEMENT SYSTEM”

Submitted in partial fulfillment of the requirements for qualifying

Master of Computer Application

SUBMITTED BY

NAME :

ENROLLMENT NO :

UNDER SUPERVISION OF:

Declaration

I here by declare that the project report entitled “(Title of the Project)”
Submitted in partial fulfillment and requirement for the degree of “(Course Name)” to Sikkim Manipal University, India is my original work and not submitted for the award of any other degree, diploma, fellowship, or any similar title of prizes.

Place :……………………. (Name of Student)

Date :……………………. Reg. No.

Course-Semester

Examiner’s Certificate

This is to certify that project report submitted by “(Name of Student)” entitled “(Name of Project)” is approved and is acceptable in quality and form.

Internal Examiner External Examiner

Name of Examiner
Designation
College / Organization

Ref. No:___________ Date:_____________

Certificate of Guide

This is to certify that project report entitled “(Name of Project)”, Submitted in partial fulfillment and requirement for the degree of “(Course Name)” to Sikkim Manipal University, India by “(Name of the Student)” has worked under my supervision and guidance and that no part of this report has been submitted for the award of any other degree, diploma, fellowship, or any similar titles or prizes and the work has not been published in any journal or magazine.

Certified By-

Name of the Project Guide
Designation
College / Organization

TITLE OF THE PROJECT

TABLE OF CONTENTS

Declaration 3

Title of the Project 4

1. Introduction and objectives

1.1. Introduction 8
1.2. Objective of the project 9
1.3. Project Category 10
1.4. Drawbacks of current manual system 14
1.5. Establish The need of new system 14
1.6. Proposed System 15

2. System Study
2.1. Preliminary Investigation 32
2.2. System Development Life Cycle 33
2.3. Feasibility Study 37
2.4. Economic Feasibility 39
2.5. Technical Feasibility 41
[[
3. System Analysis
3.1. Importance of Computerized System 44
3.2. Functional Requirements 47
3.3. Data Description 54

4. System Design 57
4.1. System Design 63
4.1.1. Design Methodology
4.1.2. Design Overview
4.1.3. Process modeling
4.2. ER-Diagram 65
4.3. Data Flow Diagram 66
4.4. Process logic for each module 71
4.5. Data Modeling 72
4.6. Scheduling 77

5. System Development
5.1 Source Code 80
5.2 Code Efficiency 164
5.3 Optimization of Code 164

6. Testing
6.1 Testing Phases 166
6.2 Levels of Testing 167
6.3 Test Cases 172
6.4 Verification and Validation 175

7. System Implementation
7.1 System Implementation Maintenance And Review 178
7.2 Hardware Evaluation Factors 178
7.3 Software Evaluation Factors 180
7.4 Security Measures 181
8. Cost estimation Of the project 182
9. Gantt & Pert Chart 183
10. Further Enhancement of the project 186
11. Conclusion 187
12. Bibliography 188

1.INTRODUCTION & OBJECTIVES OF THE PROJECT

1.1 INTRODUCTION

The project titled as “College Management System “is a web based application. It shows the main details about the college. The main aim in developing campus management system is to provide an easy way not only to automate all functionalities of a college, but also to provide full functional reports to top management of college with the finest of details about any aspect of college.
We are committed to bring the best way of management in the various forms of Campus management system. We understand that campus management system in not a product to be sold, it is a bridge between the College and Students.
So we can say the Core purpose of designing “College Management System” is to manage the task related to the college students/employees and to reduce time to searching of appropriate candidates in college view.
For security point of view the login window content password so that no body can access the records. As we are using Java as a front end language so there are no issues regarding security at every level

1.2 OBJECTIVES OF THE PROJECT

The deliverable product is named as “COLLEGE MANAGEMENT SYSTEM”. The scope of automation of COLLEGE MANAGEMENT SYSTEM is to provide record of all students, teachers, books in library, courses, fees, payrolls etc. At college about their training or courses at the click of a button rather than maintaining files of papers.

“COLLEGE MANAGEMENT SYSTEM” will automate the work of administrative staff which before this software was made was done manually. With the help of “COLLEGE MANAGEMENT SYSTEM” administrative people like receptionist or center manager can get record of students at the click of a button. Record of students contains their fee status, exam result status (optional) etc. parents can check the status of their wards, there fee status, feedbacks by the teachers, exam result without visiting the college. I have designed the given proposed Website in the JSP to automate the manual work of administrative department by maintaining records.

The complete set of rules & procedures related to educational administrative department day to day activities and generating report is called “College Management System”. My project gives a brief idea regarding automated educational department activities.

I have tried my best to make the complicated process of College Management System as simple as possible using Structured & Modular technique & Menu oriented interface. I have tried to design the software in such a way that user WHO ARE ONLINE may not have any difficulty in using this package & further expansion is possible without much effort. Even though I cannot claim that this work to be entirely exhaustive, the main purpose of my exercise is perform each ADMINISTRATIVE DEPARTMENT activity in computerized way rather than manually which is time consuming.

I am confident that this software package can be readily used by non-programming personal (online users as well as management of the educational department) avoiding human handled chance of error. This project can be successfully uploaded for educational and training operations.

1.3 PROJECT CATEGORY

The project ‘College Management System’ is based on the database, object oriented and networking techniques. As there are many areas where we keep the records in database for which we are using MS-ACCESS software which is one of the best and the easiest software to keep our information. This project uses JAVA as the front-end software which is an Object Oriented Programming and has connectivity with MS-ACCESS. It is a web based application in which number of clients can also access with a server.
What is J2EE?
The Java 2 Platform Enterprise Edition (J2EE) technology provides a component-based approach to the design, development, assembly, and deployment of enterprise applications. The J2EE platform provides the ability to reuse components in different applications. J2EE is made up of 13 different technologies including JavaServer Pages, Servlets, Enterprise JavaBeans, JavaMail, XML, and many more. The main technologies that we will be using are:
• JavaServer Pages (JSP).
• Servlets
• EJB

What are JavaServer Pages?
JavaServer Pages (JSP) is a technology based on the Java language and enables the development of dynamic web sites. JSP was developed by Sun Microsystems to allow server side development. JSP files are HTML files with special Tags containing Java source code that provide the dynamic content.

What are Servlets?
A Servlet is a Java class that provides special server side service. To display any information on a web page, HTML code is embedded in ?println? statements. JSP technology is an extension of Servlets. It is easier to generate GUI pages using JSP because a web page editor (such as DreamWeaver 4) can be used to create simple pages.

What are Enterprise JavaBeans?
Enterprise JavaBeans (EJB) provides a component specification for the development of scalable and secure middleware components. The EJB Server handles security and transaction management details so developers can focus on implementing the business logic.

Authentications

ADMIN

1. Student Entry / ID assignment
2. Teacher Entry / ID assignment
3. Course Entry
4. Show all teacher
5. Show all student by Course
6. Fee Report
7. Payroll Entry
8. Holiday Approval
9. Login
10. Change Password

STUDENT

1. Login
2. Upload Resume
3. Download Notes
4. Show Result
5. Holiday
6. Fee Payment Details
7. Change Password
8. Teacher feed back

TEACHER
1. Login
2. Upload Notes
3. Course Details
4. Show Result
5. Student feed back
6. Holiday Report
7. Change Password

FEATURES OF COLLEGE MANAGEMENT SYSTEM

• The system is secure in terms that other than authorized user, it cannot be accessed by any other person.
• User friendly interface of the software enables user to use this easily and conveniently, proper messages and guidelines have been provided as the user navigates through the forms.
• Automatically roll number, admission number is generated for the student being registered.
• Cases where one student can opt for more than one subject like in educational courses category, new and existing students case has been handle so that existing student need not register itself again else he/she registers to specific course only, also subject choice of the student is checked for whether that specific student is already enrolled to that course or not.
• Data retrieval has been done through search forms that is user has full authority to search records based on any of the prime fields that was entered as a part of insertion module.
• Teachers, Students and Administrator can login.
• User can delete and update records along with insertion and searching the records.
• All validations and checks have been deployed in the software to prevent entering wrong data by user by mistake. Also user can enter records by clicking the button or by pressing enter key of keyboard; similarly, esc key is used to exit from one page besides button.

1.4 DRAWBACKS OF CURRENT MANUAL- SYSTEM

1. The current manual system has a lot of paper work and it does not deal with exact
details.
2. To maintain the records such as fee records, attendance records etc. manually, is a time-consuming job.
3. With the increase in database, it will become a massive job to maintain the database.
4. Requires large quantities of file cabinets, which are huge and require quite a bit of space in the office, which can be used for storing records of previously registered student.
5. The retrieval of records of previously registered student will be a tedious job.
6. Lack of security for the records, anyone disarrange the records of your system.
7. If someone want to check the details of the available records for his satisfaction the
previous system does not provide any necessary detail of this type.

1.5 ESTABLISH THE NEED OF NEW SYSTEM

1. Problem of Reliability: Current system is not reliable. It seems to vary in quality from one month to the, next. Some times it gives good output, but some times the output is worst.

2. Problem of Accuracy: There are too many mistakes in reports.

3. Problem of timeliness: In the current system the reports and output produced is mostly late and in most of the cases it is useless because it is not on time.

4. Problem of Validity: The output and reports mostly contains misleading information. The customer’s information is sometimes not valid.

5. Problem of Economy: The current system is very costly. We have to spend lots of money to keep the system up and going, but still not get the desired results.

6. Problem of Capacity: The current system is suffering from problem of capacity also. The staff for organization is very less and the workload is too much. Few peoples cannot handle all the work.

1.6 PROPOSED SYSTEM

l. Details: The new proposed system stores and maintains all the students, teachers, results, fee details.

2. Calculations: The new proposed system calculates fees, dues etc automatically and it is very fast and accurate.

3. Registers: There is no need of keeping and maintaining records register manually. It remembers each and every record and we can get any report related to students at any time.

4. Speed: The new proposed system is very fast with 100% accuracy and saves time.

5. Manpower: The new proposed system needs less manpower. Less people can do the large work.

6. Efficiency: The new proposed systems complete the work of many person in less time.

8. Reduces redundancy: The most important benefit of this system is that it reduces the redundancy of data within the data.

9. Work load: Reduces the work load of the data store by helping in easy updates of the products and providing them with the necessary details together with financial transactions management.

10. Easy statements: Month-end and day-end statement easily taken out without getting headaches on browsing through the day end statements.

11. Security: Security has been provided to prevent unauthorized access.

SOFTWARE & HARDWARE REQUIREMENTS

HARDWARE & SOFTWARE CONFIGURATION

FRONT END : J2EE

BACK END : My SQL

SCRIPTING LANGUAGE : VBScript, HTML

WORD EDITORS : MS-WORD, NOTEPAD

GRAPHIC TOOLS : Paint, Flash

PLATFORM

• Operating System : Windows XP(or later)

• RAM : Min 256MB

• Hard Disk Space : 40GB

• Processor : Pentium 4(or higher) or

equivalent AMD

• Printer : Compatible

• Screen Resolution : 1024*768

“Client-Server approach with JSP, SERVLETS”

The need of today’s software development is competence in a GUI based front-end tool, which can connect to Relational Database engines. This gives the programmer the opportunity to develop client server based commercial applications.
INTRODUCTION TO JSP, SERVLETS

Adding dynamic content via expressions
As we saw in the previous section, any HTML file can be turned into a JSP file by changing its extension to .jsp. Of course, what makes JSP useful is the ability to embed Java. Put the following text in a file with .jsp extension (let us call it hello.jsp), place it in your JSP directory, and view it in a browser.

Hello! The time is now <%= new java.util.Date() %>

Notice that each time you reload the page in the browser, it comes up with the current time.
The character sequences <%= and %> enclose Java expressions, which are evaluated at run time.
This is what makes it possible to use JSP to generate dyamic HTML pages that change in response to user actions or vary from user to user.
Exercise: Write a JSP to output the values returned by System.getProperty for various system properties such as java.version, java.home, os.name, user.name, user.home, user.dir etc.
Scriptlets
We have already seen how to embed Java expressions in JSP pages by putting them between the <%= and %> character sequences.
But it is difficult to do much programming just by putting Java expressions inside HTML.
JSP also allows you to write blocks of Java code inside the JSP. You do this by placing your Java code between <% and %> characters (just like expressions, but without the = sign at the start of the sequence.)
This block of code is known as a “scriptlet”. By itself, a scriptlet doesn’t contribute any HTML (though it can, as we will see down below.) A scriptlet contains Java code that is executed every time the JSP is invoked.
Here is a modified version of our JSP from previous section, adding in a scriptlet.

<% // This is a scriptlet. Notice that the “date” // variable we declare here is available in the // embedded expression later on. System.out.println( “Evaluating date now” ); java.util.Date date = new java.util.Date(); %>
Hello! The time is now <%= date %>

If you run the above example, you will notice the output from the “System.out.println” on the server log. This is a convenient way to do simple debugging (some servers also have techniques of debugging the JSP in the IDE. See your server’s documentation to see if it offers such a technique.)
By itself a scriptlet does not generate HTML. If a scriptlet wants to generate HTML, it can use a variable called “out”. This variable does not need to be declared. It is already predefined for scriptlets, along with some other variables. The following example shows how the scriptlet can generate HTML output.

<% // This scriptlet declares and initializes “date” System.out.println( “Evaluating date now” ); java.util.Date date = new java.util.Date(); %>
Hello! The time is now
<% // This scriptlet generates HTML output out.println( String.valueOf( date )); %>

Here, instead of using an expression, we are generating the HTML directly by printing to the “out” variable. The “out” variable is of type javax.servlet.jsp.JspWriter.
Another very useful pre-defined variable is “request”. It is of type javax.servlet.http.HttpServletRequest
A “request” in server-side processing refers to the transaction between a browser and the server. When someone clicks or enters a URL, the browser sends a “request” to the server for that URL, and shows the data returned. As a part of this “request”, various data is available, including the file the browser wants from the server, and if the request is coming from pressing a SUBMIT button, the information the user has entered in the form fields.
The JSP “request” variable is used to obtain information from the request as sent by the browser. For instance, you can find out the name of the client’s host (if available, otherwise the IP address will be returned.) Let us modify the code as shown:

<% // This scriptlet declares and initializes “date” System.out.println( “Evaluating date now” ); java.util.Date date = new java.util.Date(); %>
Hello! The time is now
<%
out.println( date );
out.println( ”
Your machine’s address is ” );
out.println( request.getRemoteHost());
%>

A similar variable is “response”. This can be used to affect the response being sent to the browser. For instance, you can call response.sendRedirect( anotherUrl ); to send a response to the browser that it should load a different URL. This response will actualy go all the way to the browser. The browser will then send a different request, to “anotherUrl”. This is a little different from some other JSP mechanisms we will come across, for including another page or forwarding the browser to another page.
Exercise: Write a JSP to output the entire line, “Hello! The time is now …” but use a scriptlet for the complete string, including the HTML tags.

Mixing Scriptlets and HTML
We have already seen how to use the “out” variable to generate HTML output from within a scriptlet. For more complicated HTML, using the out variable all the time loses some of the advantages of JSP programming. It is simpler to mix scriptlets and HTML.
Suppose you have to generate a table in HTML. This is a common operation, and you may want to generate a table from a SQL table, or from the lines of a file. But to keep our example simple, we will generate a table containing the numbers from 1 to N. Not very useful, but it will show you the technique.
Here is the JSP fragment to do it:

<% for ( int i = 0; i < n; i++ ) { %><% } %>

Number <%= i+1 %>

You would have to supply an int variable “n” before it will work, and then it will output a simple table with “n” rows.
The important things to notice are how the %> and <% characters appear in the middle of the “for” loop, to let you drop back into HTML and then to come back to the scriptlet.
The concepts are simple here — as you can see, you can drop out of the scriptlets, write normal HTML, and get back into the scriptlet. Any control expressions such as a “while” or a “for” loop or an “if” expression will control the HTML also. If the HTML is inside a loop, it will be emitted once for each iteration of the loop.
Another example of mixing scriptlets and HTML is shown below — here it is assumed that there is a boolean variable named “hello” available. If you set it to true, you will see one output, if you set it to false, you will see another output.
<% if ( hello ) { %>

Hello, world
<% } else { %>

Goodbye, world
<% } %>
It is a little difficult to keep track of all open braces and scriptlet start and ends, but with a little practice and some good formatting discipline, you will acquire competence in doing it.
Exercise: Make the above examples work. Write a JSP to output all the values returned by System.getProperties with ”
” embedded after each property name and value. Do not output the ”
” using the “out” variable.

JSP Directives
We have been fully qualifying the java.util.Date in the examples in the previous sections. Perhaps you wondered why we don’t just import java.util.*;
It is possible to use “import” statements in JSPs, but the syntax is a little different from normal Java. Try the following example:
<%@ page import=”java.util.*” %>

<% System.out.println( “Evaluating date now” ); Date date = new Date(); %>
Hello! The time is now <%= date %>

The first line in the above example is called a “directive”. A JSP “directive” starts with <%@ characters.
This one is a “page directive”. The page directive can contain the list of all imported packages. To import more than one item, separate the package names by commas, e.g.
<%@ page import=”java.util.*,java.text.*” %>
There are a number of JSP directives, besides the page directive. Besides the page directives, the other most useful directives are include and taglib. We will be covering taglib separately.
The include directive is used to physically include the contents of another file. The included file can be HTML or JSP or anything else — the result is as if the original JSP file actually contained the included text. To see this directive in action, create a new JSP

Going to include hello.jsp…

<%@ include file=”hello.jsp” %>

View this JSP in your browser, and you will see your original hello.jsp get included in the new JSP.
Exercise: Modify all your earlier exercises to import the java.util packages.

JSP Declarations
The JSP you write turns into a class definition. All the scriptlets you write are placed inside a single method of this class.
You can also add variable and method declarations to this class. You can then use these variables and methods from your scriptlets and expressions.
To add a declaration, you must use the <%! and %> sequences to enclose your declarations, as shown below.
<%@ page import=”java.util.*” %>

<%! Date theDate = new Date(); Date getDate() { System.out.println( “In getDate() method” ); return theDate; } %>
Hello! The time is now <%= getDate() %>

The example has been created a little contrived, to show variable and method declarations.
Here we are declaring a Date variable theDate, and the method getDate. Both of these are available now in our scriptlets and expressions.
But this example no longer works! The date will be the same, no matter how often you reload the page. This is because these are declarations, and will only be evaluated once when the page is loaded! (Just as if you were creating a class and had variable initialization declared in it.)
Exercise: Modify the above example to add another function computeDate which re-initializes theDate. Add a scriptlet that calls computeDate each time.
Note: Now that you know how to do this — it is in general not a good idea to use variables as shown here. The JSP usually will run as multiple threads of one single instance. Different threads would interfere with variable access, because it will be the same variable for all of them. If you do have to use variables in JSP, you should use synchronized access, but that hurts the performance. In general, any data you need should go either in the session object or the request object (these are introduced a little later) if passing data between different JSP pages. Variables you declare inside scriptlets are fine, e.g. <% int i = 45; %> because these are declared inside the local scope and are not shared.

JSP Tags
Another important syntax element of JSP are tags. JSP tags do not use <%, but just the < character. A JSP tag is somewhat like an HTML tag. JSP tags can have a “start tag”, a “tag body” and an “end tag”. The start and end tag both use the tag name, enclosed in < and > characters. The end starts with a / character after the < character. The tag names have an embedded colon character : in them, the part before the colon describes the type of the tag. For instance:

body

If the tag does not require a body, the start and end can be conveniently merged together, as

Here by closing the start tag with a /> instead of > character, we are ending the tag immediately, and without a body. (This syntax convention is the the same as XML.)
Tags can be of two types: loaded from an external tag library, or predefined tags. Predefined tags start with jsp: characters. For instance, jsp:include is a predefined tag that is used to include other pages.
We have already seen the include directive. jsp:include is similar. But instead of loading the text of the included file in the original file, it actually calls the included target at run-time (the way a browser would call the included target. In practice, this is actually a simulated request rather than a full round-trip between the browser and the server). Following is an example of jsp:include usage

Going to include hello.jsp…

Try it and see what you get. Now change the “jsp:include” to “jsp:forward” and see what is the difference. These two predefined tags are frequently very useful.
Exercise: Write a JSP to do either a forward or an include, depending upon a boolean variable (hint: The concepts of mixing HTML and scriptlets work with JSP tags also!)

JSP Sessions
On a typical web site, a visitor might visit several pages and perform several interactions.
If you are programming the site, it is very helpful to be able to associate some data with each visitor. For this purpose, “session”s can be used in JSP.
A session is an object associated with a visitor. Data can be put in the session and retrieved from it, much like a Hashtable. A different set of data is kept for each visitor to the site.
Here is a set of pages that put a user’s name in the session, and display it elsewhere. Try out installing and using these.
First we have a form, let us call it GetName.html

What’s your name?

The target of the form is “SaveName.jsp”, which saves the user’s name in the session. Note the variable “session”. This is another variable that is normally made available in JSPs, just like out and request variables. (In the @page directive, you can indicate that you do not need sessions, in which case the “session” variable will not be made available.)
<% String name = request.getParameter( “username” ); session.setAttribute( “theName”, name ); %>

Continue

The SaveName.jsp saves the user’s name in the session, and puts a link to another page, NextPage.jsp.
NextPage.jsp shows how to retrieve the saved name.

Hello, <%= session.getAttribute( “theName” ) %>

If you bring up two different browsers (not different windows of the same browser), or run two browsers from two different machines, you can put one name in one browser and another name in another browser, and both names will be kept track of.
The session is kept around until a timeout period. Then it is assumed the user is no longer visiting the site, and the session is discarded.

My SQL
Introduction
My SQL is an application used to create computer databases for the Microsoft Windows family of server operating systems. It provides an environment used to generate databases that can be accessed from workstations, the web, or other media such as a personal digital assistant (PDA). MY SQL is probably the most accessible and the most documented enterprise database environment right now. This also means that you can learn it a little quicker than most other database environments on the market

To start, you must have a computer that runs an appropriate operating system like Microsoft Windows >= XP Home Edition: that includes Windows XP Home Edition, Windows XP Professional, Windows 2000 Professional, or any version of Windows Server 2003. In this case, you must install MY SQL Yog.

What is SQL Used for:

Using SQL one can create and maintain data manipulation objects such as table, views, sequence etc. These data manipulation objects will be created and stored on the server’s hard disk drive, in a tablespace, to which the user has been assigned.
Once these data manipulation objects are created, they are used extensively in commercial applications.
DML, DCL, DDL:

In addition to the creation of data manipulation objects, the actual manipulation of data within these objects is done using SQL.

The SQL sentences that are used to create these objects are called DDL’s or Data Definition Language. The SQL sentences used to manipulate data within these objects are called DML’s or Data Manipulation Language. The SQL sentences, which are used to control the behavior of these objects, are called DCL’s or Data Control Language.

Data Type
Built-in data types
In My Sql, each object (such as column, variable, or parameter) has a related data type, which is an attribute that specifies the type of data that the object can hold.
My SQL ships with 27 built-in (system) data types. They are:
Data Types Description
bigint Integer data from -2^63 through 2^63-1
int Integer data from -2^31 through 2^31 – 1
Smallint Integer data from -2^15 through 2^15 – 1
tinyint Integer data from 0 through 255
bit Integer data with either a 1 or 0 value
Decimal Fixed precision and scale numeric data from -10^38 +1 through 10^38 -1
numeric Fixed precision and scale numeric data from -10^38 +1 through 10^38 -1
money Monetary data values from -2^63 through 2^63 – 1
smallmoney Monetary data values from -214,748.3648 through +214,748.3647
float Floating precision number data from -1.79E + 308 through 1.79E + 308
real Floating precision number data from -3.40E + 38 through 3.40E + 38
datetime Date and time data from January 1, 1753, through December 31, 9999,
with an accuracy of 3.33 milliseconds
smalldatetime Date and time data from January 1, 1900, through June 6, 2079,
with an accuracy of one minute
char Fixed-length character data with a maximum length of 8,000 characters
varchar Variable-length data with a maximum of 8,000 characters
text Variable-length data with a maximum length of 2^31 – 1 characters
nchar Fixed-length Unicode data with a maximum length of 4,000 characters
nvarchar Variable-length Unicode data with a maximum length of 4,000 characters
Ntext Variable-length Unicode data with a maximum length of 2^30 – 1 characters
binary Fixed-length binary data with a maximum length of 8,000 bytes
varbinary Variable-length binary data with a maximum length of 8,000 bytes
image Variable-length binary data with a maximum length of 2^31 – 1 bytes
cursor A reference to a cursor
sql_variant A data type that stores values of various data types,
except text, ntext, timestamp, and sql_variant
Table A special data type used to store a result set for later processing
timestamp A database-wide unique number that gets updated every time
a row gets updated
uniqueidentifier A globally unique identifier
Some of these data types (bigint, sql_variant, and table) are only available in MY SQL 0, while some were supported under the previous My SQL r versions.
User-defined data types
My SQL supports user-defined data types too. User-defined data types provide a mechanism for applying a name to a data type that is more descriptive of the types of values to be held in the object. Using user-defined data type can make it easier for a programmer or database administrator to understand the intended use of any object defined with the data type. The user-defined data types are based on the system data types and can be used to predefine several attributes of a column, such as its data type, length, and whether it supports NULL values. To create a user-defined data type, you can use the sp_addtype system stored procedure or you could add one using the Enterprise Manager. When you create a user-defined data type, you should specify the following three properties:
• Data type’s name.
• Built-in data type upon which the new data type is based.
• Whether it can contain NULL values.
The following example creates a user-defined data type based on money data type named cursale that cannot be NULL:
EXEC sp_addtype cursale, money, ‘NOT NULL’
GO
Both system and user-defined data types are used to enforce data integrity. It is very important that we put forth a lot of effort while designing tables: the better you design
your tables, the more time you can work without any performance problems. In an ideal case, you never will update the structure of your tables.

ENVIRONMENT / OPERATING SYSTEM

The age of standalone computing is long gone and it is now a world of networks. In this context, it is imperative for users to understand issues involved in working in a multi-user environment. Windows NT today is the most sought after Multi-user Operating System in the world. This is a 32-bit, powerful, user friendly and robust network operating system from Microsoft.
Windows NT is a big step up from Windows 95 both in terms of price and in terms of capabilities. NT Server is a well-built, fully functional, multi-user, multitasking operating system.
The release of NT Server 4 adds the popular Windows 95 user interface, the Internet Information Server (IIS) – capable of running Web, FTP, and Gopher services – a search engine called Index Server, the FrontPage HTML authoring package, and the Internet Explorer, all of which make Windows NT server a tough act to beat as a robust, capable web server.
The suggested Operating System for the server computer is Windows NT Server and for client computer is Windows 95.

2.1 PRELIMINARY INVESTIGATION

System development, a process consisting of two major steps of system analysis and design, start when management or sometimes system development personnel feel that a new system or an improvement in the existing system is required. The system development life cycle is classically thought of as the set of activities that analysts, designers and users carry out to develop and implement an information system. The system development life cycle consists of the following activities:

 Preliminary investigation
 Determination of system requirements
 Design of system
 Development of software
 System testing
 Implementation, evaluation, and maintenance
A request to take assistance from information system can be made for many reasons, but in each case someone in the organisation initiates the request is made, the first system activity the preliminary investigation begins. This activity has three parts:
1) Request clarification
2) Feasibility study
3) Request approval

Request clarification: Many requests from employees and users in the organizations are not clearly defined, Therefore it becomes necessary that project request must be examined and clarified properly before considering systems investigation.

2.2 SYSTEM DEVELOPMENT LIFE CYCLE

Systems are created to solve problems. One can think of the systems approach as an organized way of dealing with a problem. In this dynamic world, The subject System Analysis and Design (SAD), mainly deals with the software development activities.

DEFINING A SYSTEM

A collection of components that work together to realize some objective forms a system. Basically there are three major components in every system, namely input, processing and output.

In a system the different components are connected with each other and they are interdependent. For example, human body represents a complete natural system. We are also bound by many national systems such as political system, economic system, educational system and so forth. The objective of the system demand that some output is produced as a result of processing the suitable inputs.

SYSTEM LIFE CYCLE

System life cycle is an organizational process of developing and maintaining systems. It helps in establishing a system project plan, because it gives overall list of processes and sub-processes required for developing a system.

System development life cycle means combination of various activities. In other words we can say that various activities put together are referred as system development life cycle. In the System Analysis and Design terminology, the system development life cycle means software development life cycle.
Following are the different phases of software development cycle:

• System study
• Feasibility study
• System analysis
• System design
• Coding
• Testing
• Implementation
• Maintenance

The Different Phases Of Software Development Life Cycle Are Shown Below.

A system analysis is a separation of a substance into parts for study and their implementation and detailed examination.

Before designing any system it is important that the nature of the business and the way it currently operates are clearly understood. The detailed examination provides the specific data required during designing in order to ensure that all the client’s requirements are fulfilled. The investigation or the study conducted during the analysis phase is largely based on the feasibility study. Rather it would not be wrong to say that the analysis and feasibility phases overlap. High-level analysis begins during the feasibility study. Though analysis is represented as one phase of the system development life cycle (SDLC), this is not true. Analysis begins with system initialization and continues until its maintenance. Even after successful implementation of the system, analysis may play its role for periodic maintenance and up gradation of the system.
One of the main causes of project failures is inadequate understanding, and one of the main causes of inadequate understanding of the requirements is the poor planning of system analysis.
Analysis requires us to recall the objectives of the project and consider following three questions:

• What type of information is required?

• What are the constraints on the investigation?
• What are the potential problems that may make the task
more difficult?

Keeping the above questions in mind and considering the survey conducted to determine the need of the system, the total system was deigned and can be described as under:
The three major parts of the system are:
 Providing Information:

The system is effectively used to provide large variety of information to the interested customer. The major purpose of the site is to easily provide access to records of various automobile such as car with quick update to latest modifications in the records. This thing is not at all possible in printed material, which are updated only once a few weeks. It also gives information about the general usage of the system for first time visitors. The system itself works as a information provider for automobile organization.

2.3 FEASIBILITY STUDY

The feasibility study proposes one or more conceptual solution to the problem set of the project. In fact, it is an evaluation of whether it is worthwhile to proceed with project or not.

Feasibility analysis usually considers a number of project alternatives, one that is chosen as the most satisfactory solution. These alternatives also need to be evaluated in a broad way without committing too many resources. Various steps involved in feasibility analysis are:

1. To propose a set of solution that can realize the project goal. These solutions are usually descriptions of what the new system should look like.

2. Evaluation of feasibility of such solutions. Such evaluation often indicates shortcomings in the initial goals. This step is repeated as the goals are adjusted and the alternative solutions are evaluated.

Steps in feasibility Analysis are:

1. Identify deficiency by pinpointing, missing functions, unsatisfactory performance,
Excessive cost of operations.

2. Set goals to remove these deficiencies.

3. Goals must be quantified, realizable within the constraints of an organization,broken
down into sub goals agreeable to all concerned.

4. Set goals not only to remove deficiencies but also to effectively meet competition.
For instance, goals must be based on what competitors do.

2.4 ECONOMIC FEASIBILITY
Economic analysis is the most frequently used technique for evaluating the effectiveness of a proposed system. More commonly known as cost / benefit analysis; in this procedure we determine the benefits and savings that are expected from a proposed system and compare them with costs. We found the benefits outweigh the costs; we take a decision to design and implement the new proposed system.
During the feasibility phase, broad alternatives solutions are examined. For each alternate solution the cost and benefits have to be examined before designing one of the alternative.
Broad solutions will consist of:

1. Specifications of information to be made available by the system.
2. Description of what will be done manually and what the computer will do.
3. Specification of new computing equipment needed or specification of
expansion of an existing computer.

COST AND BENEFIT ANALYSIS

Developing an IT application is an investment. Since after developing that application it provides the organization with profits. Profits can be monetary or in the form of an improved working environment. However, it carries risks, because in some cases an estimate can be wrong. And the project might not actually turn out to be beneficial.

Cost benefit analysis helps to give management a picture of the cost, benefits and risks. It usually involves comparing alternate investments.
Cost benefit determines the benefits and savings that are expected from the system and compares them with the expected costs.

In performing cost and benefit analysis it is important to identify cost and benefits factors. Cost and benefits can be categorized into the following categories:

1. Development Costs – Development costs is the costs that are incurred during the development of the system. It is one time investment.
2. Operating Costs – Operating Costs are the expenses required for the day to day running of the system. Examples of Operating Costs are Wages, Supplies and Overheads.
3. Hardware/Software Costs – It includes the cost of purchasing or leasing of computers and it’s peripherals. Software costs involves required S/W costs.
4. Personnel Costs – It is the money spent on the people involved in the development of the system.
5. Facility Costs – Expenses that are incurred during the preparation of the physical site where the system will be operational. These can be wiring, flooring, acoustics, lightning, and air-conditioning.
6. Supply Costs – These are variable costs that are very proportionately with the amount of use of paper, ribbons, disks, and the like.

 BENEFITS

We can define benefits as

Profit or Benefit = Income – Costs

Benefits can be accrued by:

 Increasing income, or
 Decreasing costs, or
 Both

2.5 TECHNICAL FEASIBILITY
Today, very little is technically impossible. Consequently, technical feasibility looks at what is practical and reasonable. Technical feasibility addresses three major issues:
1. Is the proposed technology or solution practical?
2. Do we currently possess the necessary technology?
3. Do we possess the necessary technical expertise, and is the schedule reasonable?

Is the Proposed Technology or Solution Practical?

The technology for any defined solution is normally available. The question whether that technology is mature enough to be easily applied to our problems. Some firms like to use state-of-the-are technology, but most firms prefer to use mature and proven technology. A mature technology has a larger customer base for obtaining advice concerning problems and improvements.
Do We Currently Possess the Necessary Technology?
Assuming the solution’s required technology is practical, we must next ask ourselves, is the technology available in our information systems shop? If the technology is available, we must ask if we have the capacity. For instance, will our current printer be able to handle the new reports and forms required of a new system?
If the answer to any of these questions is no, then we must ask ourselves, Can we get this technology? The technology may be practical and available, and, yes, we need it. But we simply may not be able to afford it at this time. Although this argument borders on economic feasibility, it is truly technical feasibility. If we can’t afford the technology, then the alternative that requires the technology is not practical and is technically infeasible!

3.1 IMPORTANCE OF COMPUTERIZED

There are several attributes in which the computer based information works. Broadly the working of computer system is divided into two main groups:

• Transaction System
• Decision Support System

Transaction System:

A transaction is a record of some well-defined single and usually small occurrence in a system. Transactions are input into the computer to update the database files. It checks the entering data for its accuracy. This means that numeric data appears in numeric field and character data in character field. Once all the checks are made, transaction is used to update the database. Transaction can be inputted in on-line mode or batch mode. In on-line mode, transactions are entered and updated into the database almost instantaneously. In batch mode, transactions are collected into batches, which may be held for a while and inputted later.

Decision Support System:

It assists the user to make analytical decision. It shows the various data in organized way called analysis. This analysis can be made to syrdy preferences and help in making decisions.

Computer system works out best with record maintenance. It will tell you which customer would get how much pending/reports statements. It will also help to search the information about a particular person by simply entering his telephone number. User can store information as per requirement, which can be used for comparison with other reports.

DEFINETION, ACRONYMS & ABBREVIATIONS

Log-In-Id: When user logs in to the “College Management System” then user is requested to fill in the login provided to him by he administrator. It acts as a security mechanism to prevent unauthorized access.

Password: When a user will try to login in to the site to access record, the user will be requested to fill in the password. This check the validity of the user.

USER CHARACTERISTICS:-

 Software uses graphical interface and also at every step user is guided well to avoid confusion if any.
 User authentication is tested through login and password facility
 It is the responsibility of the user to enter the records genuinely and correctly and with utmost accuracy as far as possible to avoid discrepancies.

ASSUMPTIONS & DEPENDENCIS:-

 The software uses vb.Net therefore the terminal it is to be run trust support Visual.Net studio 2003.
 It is assumed that the user is intelligent enough that he/she will not repeat information again & again.

SPECIFIC REQURIMENTS:-

New records are entered through the graphical user interface i.e the forms and at the click of a button they are entered into the database, so that they can be retrieved for future use or any enquiry.

[
EXTERNAL INTERFACE REQUIREMENTS:-

User Interface: “College Management System” provides complete graphical user interface which will make software more interactive & convenient to use.

Hardware Interface: “College Management System” will interact with almost all types of hardware available at college management.

Software Interface: Software uses JSP for forms designing and to provide good graphical user interface. My SQL is used at the backend to store data.

NON FUNCTIONAL REQUIREMENT:

Performance Requirement: Using JSP with My SQL enhances the performances of project as both are Microsoft products therefore front and backend have been chosen such that the performance increases.

Software Quality Attributes: “College Management System” with stands following quality attributes: correctness in terms of number of computational errors, Robustness.

3.2 FUNCTIONAL REQIREMENTS

Functional Module 1: To login and password facility has been provided to authenticate the user.
Input: password provided by administrator.
Process: designing the login form.

Functional Module 2: User enters the data through forms the database.
Purpose: Data is required for later use by the college also to keep records of student’s performance.
Input: student that come for courses or training in the college register themselves.
Process: designing the forms and entering data into database.

Functional Module3: To enter and maintain projects being made t college.
Input: Input for these forms is provided to user by the group leader and guide of the project.
Process: Designing the project record entry form.

Functional Module4: To enable user to edit data
Purpose: Data or information changes with time therefore records need to be updated.
Input: monthly assessment of each student
Process: Updating database with new records

Functional Module5: To delete records that is no more required
Purpose: Saving space and memory requirements and thus increasing accessibility and retrieval of data faster.
Input: Roll no of student or primary key of the table.
Process: updating database.

Functional Module6: Retrieval of data
Purpose: user needs for future planning or for studying a student’s performance graph.
Input: primary key of tables from which we want to extract data.
Process: generating reports.

Functional Module7: Fee Details
Purpose: Student, Parents needs to get their updated student’s Fee Details. Administrator add these details.
Input: primary key of tables from which we want to extract data.
Process: generating reports.

Functional Module8: Holiday Details
Purpose: Student, Parents, Teachers needs to get updated holidays approval list. Administrators add these details.
Process: generating reports.

Functional Module9: Uploading
Purpose: This module is for Students and Teachers. Teachers can upload notes and assignments that students can download, Students can upload there resumes that teachers can download.

Functional Module110: Feedback
Purpose: Students, Teachers and Parents can give their feedbacks.

DETAILED DECOMPOSITION

Module Description

MODULE 1: User Authentication Module

This module verifies whether the user is valid or not. Basically, purpose of this module is to distinguish between two types of users one i.e. those who can view and manipulate records that is the administrative staff members & the other who have no right to view this information.

Module 2: A New Records Being Entered

Purpose of this module is to edit/ update the records previously entered for example the monthly attendance record of the student needs to be updated, similarly fee record updating after the due fees has been deposited.

MODULE 3: Deleting the Records

Students who have completed their Industrial Training or course or students who have done their training submit their ID back to the college before leaving and correspondingly certificate is issued to them for their successful completion of course etc, these students records needs to be deleted as they are no more part of the organization.

MODULE 4 Retrieving Records

The user of the software is the administrative person of the organization therefore he/she needs to access the records as when required like enquiring the fee status, attendance status of a student, or it may be generating a notice for notice board enlisting students who are short of attendance etc.
PROCESS DECOMPOSITION
The main module of the project ’College Management System’ are as follows:-
1. Login
2. Forms
3. Reports
4. Window
Main Description of the module ‘Login’ are:-
For this the user should give the correct user name and password.
The different types of users are
1. Admin
2. Student
3. Employee

Main Description of the module ‘Forms’ are:-
This module consists of the following sub modules
1. Student Registration Form
2. Student Fee Form
3. Student Marks Form
4. Student ID Form
5. Employee Detail Form
6. Employee Salary Form
7. Employee ID Form
8. Course Detail Form
9. Library Form

The ‘Student Registration Form’ is designed for registering the new student details and course details.
The ‘Student Fee Form’ is used to enter the student’s fee details.
The ‘Student Marks Form’ is designed for submitting the semester or exam marks of the students for a particular course or an individual student.
The ‘Student Id Form’ is used to create the identity number for each student for different course.
The ‘Employee details Form’ is designed for entering the staff details and other relevant details.
The Employee Id used to create the identity number for each student for different course.
The ‘Salary Form’ is used to derive the salary for employees
The ‘Course details Form’ is designed for entering the different course available in the campus and other relevant details.
The ‘Library module’ is used for the data process of library and book accessing for students and staffs.

Main Description of the module ‘Reports’ are:-
All the above mentioned data are stored in the back end and can be retrieved as reports with filtering options.
The following are the reports can be taken from this system
1. Student Report
2. Employee Report
3. Course Detail Report
4. Book Detail Report
5. Issued Book Report
6. Fee Detail Report
7. Marks Detail Report
8. Generate Pay Slip

3.3 DATA DESCRIPTION

Data entity 1:

First thing is the login and the password facility, it has been provided to authenticate the user that is other than administrative staff like students etc should not have access to the records as they may try to change the records like fee and attendance status.

Data entity 2:

Second important information is registration form, fee record form, attendance form and lastly the accessories form. These forms appear again for different category of students at college that allows i.e. one, who come for industrial training/ project in their final semesters, secondly those who join college with purpose of doing the courses offered by it, in this case one student can opt for more than one course thus he has been categorized as new and existing.

Data Entity 3:

Third important entity is the data retrieval forms that take input as user parameters for the search and generate report for the same.

DEPENDENCY DESCRIPTION

Module Dependency:

All the modules are interrelated as editing; deletion and retrieval can be performed only after successful execution of the data entry module, same way unless and until login and password form is executed user cannot enter the options page.

Process Dependency:

Interdependence of validation process, entering records process, edit, delete and retrieval process & all its sub processes. All the processes are dependent upon the validation process as in if a user does not surpasses this process the user will not be able to move onto other processes.

Data Dependency:

String of characters entered as password, allows user to move to other page, & options are displayed. Thus, validation module, basically deals with data i.e. password. Registration form entries act as input to databases that keep record of new & existing students. Information like name of student, data of birth etc entered by user is entered in database all this data is the part of edit, delete & retrieve module of Web Based College .

Test Data:

The user at the time of login, if enters wrong password then appropriate message will be flashed & user stays on the same form.

E.g. Say password is “College Management System” & if user enters some other string then error will be displayed as invalid password. If wrong data is entered in text boxes during the filling of Registration form then as the user clicks “OK” button valid types will appear & invalid fields will be made to fill again.

4. SYSTEM DESIGN

The design document that we will develop during this phase is the blueprint of the software. It describes how the solution to the customer problem is to be built. Since solution to complex problems isn’t usually found in the first try, iterations are most likely required. This is true for software design as well. For this reason, any design strategy, design method, or design language must be flexible and must easily accommodate changes due to iterations in the design. Any technique or design needs to support and guide the partitioning process in such a way that the resulting sub-problems are as independent as possible from each other and can be combined easily for the solution to the overall problem. Sub-problem independence and easy combination of their solutions reduces the complexity of the problem. This is the objective of the partitioning process. Partitioning or decomposition during design involves three types of decisions: –
Define the boundaries along which to break;
Determine into how money pieces to break; and

Identify the proper level of detail when design should stop and implementation should start. Basic design principles that enable the software engineer to navigate the design process suggest a set of principles for software design, which have been adapted and extended in the following list:

Free from the suffer from “tunnel vision.” A good designer should consider alternative approaches, judging each based on the requirements of the problem, the resources available to do the job. The design should be traceable to the analysis model. Because a single element of the design model often traces to multiple requirements, it is necessary to have a means for tracking how requirements have been satisfied by the design model. The design should not repeat the same thing. Systems are constructed using a set of design patterns, many of which have likely been encountered before. These patterns should always be chosen as an alternative to reinvention. Time is short and resources are limited! Design time should be invested in representing truly new ideas and integrating those patterns that already exist.
The design should “minimize the intellectual distance” between the software and the problem as it exists in the real world. That is, the structure of the software design should (whenever possible) mimic the structure of the problem domain.

The design should exhibit uniformity and integration. A design is uniform if it appears that one person developed the entire thing. Rules of style and format should be defined for a design team before design work begins. A design is integrated if care is taken in defining interfaces between design components.

The design activity begins when the requirements document for the software to be developed is available. This may be the SRS for the complete system, as is the case if the waterfall model is being followed or the requirements for the next “iteration” if the iterative enhancement is being followed or the requirements for the prototype if the prototyping is being followed. While the requirements specification activity is entirely in the problem domain, design is the first step in moving from the problem domain toward the solution domain. Design is essentially the bridge between requirements specification and the final solution for satisfying the requirements.

The design of a system is essentially a blueprint or a plan for a solution for the system. We consider a system to be a set of components with clearly defined behavior that interacts with each other in a fixed defined manner to produce some behavior or services for its environment. A component of a system can be considered a system, with its own components. In a software system, a component is a software module.

The design process for software systems, often, has two levels. At the first level, the focus is on deciding which modules are needed for the system, the specifications of these modules, and how the modules should be interconnected. This is what is called the system design or top-level design. In the second level, the internal design of the modules, or how the specifications of the module can be satisfied, is decided. This design level is often called detailed design or logic design. Detailed design essentially expands the system design to contain a more detailed description of the processing logic and data structures so that the design is sufficiently complete for coding. Because the detailed design is an extension of system design, the system design controls the major structural characteristics of the system. The system design has a major impact on the testability and modifiability of a system, and it impacts its efficiency. Much of the design effort for designing software is spent creating the system design.

The input to the design phase is the specifications for the system to be designed. Hence, reasonable entry criteria can be that the specifications are stable and have been approved, hoping that the approval mechanism will ensure that the specifications are complete, consistent, unambiguous, etc. The output of the top-level design phase is the architectural design or the system design for the software system to be built. This can be produced with or without using a design methodology. A reasonable exit criteria for the phase could be that the design has been verified against the input specifications and has been evaluated and approved for quality.

A design can be object-oriented or function-oriented. In function-oriented design, the design consists of module definitions, with each module supporting a functional abstraction. In object-oriented design, the modules in the design represent data abstraction (these abstractions are discussed in more detail later). In the function-oriented methods for design and describe one particular methodology the structured design methodology in some detail. In a function- oriented design approach, a system is viewed as a transformation function, transforming the inputs to the desired outputs. The purpose of the design phase is to specify the components for this transformation function, so that each component is also a transformation function. Hence, the basic output of the system design phase, when a function oriented design approach is being followed, is the definition of all the major data structures in the system, all the major modules of the system, and how the modules interact with each other.

Once the designer is satisfied with the design he has produced, the design is to be precisely specified in the form of a document. To specify the design, specification languages are used. Producing the design specification is the ultimate objective of the design phase. The purpose of this design document is quite different from that of the design notation. Whereas a design represented using the design notation is largely to be used by the designer, a design specification has to be so precise and complete that it can be used as a basis of further development by other programmers. Generally, design specification uses textual structures, with design notation helping in understanding.

The final deliverable from system analysis is a document containing an unambiguous statement of the client’s requirements from the new system and what the development project will have to deliver in order to be considered a success.

The functional specification is the starting point for designing, which depends to a large extent on the accuracy and thoroughness with which the analysis has been carried out. Understanding of the business, appreciation of the client’s problems and documentation of requirements provide the foundation on which the designing is based. A key factor in this approach is the use of the structured techniques. Analysis ends with a description of what the new system must do to fulfill the requirements of the organization, while design specifies how this will be done by selecting one of the many ways of doing it.

The structured techniques used during the analysis which provide this logical view are:

• Data flow diagrams – representing the process, which manipulate the data as it passes through the system.

• Entity model – showing the relationship within the data items held within the system.

• A data dictionary – providing an overall consistent definition of the data used during the system development. This definition includes the content of the data stores, data flows and the process shown on the data flow diagrams, and the entities that make up the entity model.

DESIGN OBJECTIVES AND CONSTRAINTS:

Flexible –
The design would enable future requirements of the organization to be incorporated without much difficulty. Often the organizational needs and objectives change over time and hence such a design enables the system to reflect these changes.

• Maintainable –
A good design is easy to maintain and this reduces the client’s maintenance cost, which usually represents a proportion of the lifetime of the system.

• Portable –
A client for whom the software was developed may wish to change the hardware on which the system run. A good design is portable – in other words it is capable of being transferred from one machine environment to another with minimum amount of effort.

• Easy to use –
With increasing number of general users having exposure to computers and access to web sites, expectations of computer applications in term of their ease of use are also increasing. A good design will result in a system which is `user – friendly’ – easy to understand, not difficult to learn how to use and straightforward to operate.

• Reliable –
The system designed must be secure against human error, deliberate misuse or machine failure, and which the data will be stored without corruption.

4.1 PHYSICAL DESIGN

The design phase focuses on the detailed implementation of the system recommended in the feasibility. Emphasis is on translating performance specifications into design specifications. The design phase is a transition from user-oriented document to a programmer-oriented document.

4.1.1 Design Methodology:-

Design Methodology is a way to transform the “art” of system analysis and design into an “engineering – type” discipline. It explains the relationship amongst various modules and programs within the system. It standardizes the approach to analysis and design, simplifies design by segmentation, improves documentation and subsequent maintenance and enhancements.

The following structured diagram can appropriately represent the relationship between various modules.

4.1.2 Design Overview:-

In analyzing the present system a great deal of information was collected during the investigation and feasibility phases through list of problems and requirements, interview reports, questionnaires, onsite observations, manuals and determining potential solutions. It is important to record this information in an unambiguous, concise manner which will be clear and accessible to others, and which can be used by other analysts and designers involved in developing the system. Structured techniques help us to record the information in this way, using diagrams and minimum amount of the text.

Structured analysis is a set of techniques and graphical tools that allow the analyst to develop a new kind of system specification that are easily understandable to the user. The traditional approach of organizing data through flowcharts support future developments and simplify communication with the user but focus on the cost/benefit and feasibility analysis, project management, hardware and software selection, and personal considerations. In contrast, structured analysis considers new goals and structured tools for analysis, which provide the basis for design and implementation.

4.1.3 Process Modeling:-

System design goes through two phases of development: logical and physical. Logical implementation represented by Data Flow Diagram shows the logical flow of a system and defines the boundaries of the system it describes the input (source), outputs (destinations), data bases (data stores), and procedures (data flows) – all in the format that meets the user’s requirements. The logical implementation of the whole project can be represented as under through Data Flow Diagrams (DFD).

4.2 ER DIAGRAMS

4.3 DATA FLOW DIAGRAM

Data flow diagrams (DFD) are part of a structured model in the development of software. They are a graphical technique that depicts information flow and the transforms that are applied as data move from input to output. Basically, the function of DFDs is to show the user a graphical analysis of a software system. It is like a flowchart, except DFDs show the flow of data throughout the system.
 The rectangle represents an external entity. The external entity is a producer or consumer of information that resides outside the bounds of the system to be modeled.
 The circle (process) is a transformer of information that resides within the bounds of the system. The line with an arrow (data item) is a single item, or a collection of data items. The arrow head represents the directions of the data.
The Parallel line (data store) represents a repository of data that is to be stored for use by one or more processes; maybe as simple as a buffer or a queue or as sophisticated as a relational database.

DFD Context/0 Level diagram

DFD 1st Level diagram

DFD 2nd Level diagram

Verify Availability

DFD 2nd Level diagram

ENROLMENT OF STUDENT

4.4 PROCESS LOGIC FOR EACH MODULE

In the first module, validity of password is checked against a particular user.

In the second module, whenever a new entity is entered it should be checked for the duplicate data.

In the third and fourth module, just like the first module it should have the proper checks for every entity being modified or updated.

In the fifth and sixth module, again the validation checks are made and the different reports are generated to ease the business processes and decision making.

In the seventh to twelve modules are related to admin, payment, stock, order, invoice ,distributor etc.

4.5 DATA MODELING

Data Structure Requirements according to the modules:

 Identify The Various Tables Required.

 Fields for These Tables.

 The Various Key Fields (for example Primary key and foreign key).

 Identify The Various Constraints like Not Null, Unique etc.

Describing Data Elements:
Data modeling defines primary data objects, composition of each data object, and attributes of the object, relationships between each object and other objects and between objects and the processes.

List of Tables:
1. Login
2. Students
3. Courses
4. Fee
5. Books
6. Issue
7. Circular
8. Employee
9. Pay Slip
10. Marks Obtained
Tables

Login Table

Field Data Type Constraint Description
Username Char(30) Primary Key Username
Id Char(30) Not Null Student/Emp or admin ID
Email Char(50) Not Null Email
Password Char(30) Not Null Password

Student Table: To store students details

Field Data Type Constraint Description
Student_id Char(30) Primary Key Student Id
Student Nmae Char(30) Not Null Student Nmae
Address Char(50) Not Null Address
City Char(80) Not Null City
State Char(50) Not Null State
Phone Number(10) Not Null Phone No
Books_issue_id Number(1) Not Null Books Issued
Study Center Char(30) Not Null Study Center
Course Char(30) Not Null Course
Code Char(30) Not Null Course Code
Email Char(30) Not Null Email

Course Table: To store course Details
Field Data Type Constraint Description
Course_ID Char(30) Primary Key Course id
Course Char(30) Not Null Course name

Fee Table
Field Data Type Constraint Description
Student_id Char(30) Primary Key Student Id
Student_name Char(30) Not Null Student Nmae
Course_name Char(50) Not Null Address
Sem Char(80) Not Null Semeister
Amount Amount(5) Not Null Amount
Date Number(10) Not Null Date

Books Table: To store details of the books available in library.
Field Data Type Constraint Description
Books_id Char(30) Primary Key Books id
Books_name Char(30) Not Null Books name
Author Char(50) Not Null Author Name
Category Char(80) Not Null Category
Total_copies Char(30) Not Null Total_copies
Availability Char(30) Not Null Availibility

Issue table: To store details of the books issued.
Field Data Type Constraint Description
Books_id Char(30) Primary Key Books id
Student_id Char(30) Not Null Student ID
Issue_date Date Not Null Issue date
Ret_date Date Not Null Return Date
Fine Number(5) Not Null Fine amount

Circular Table: To store circular details
Field Data Type Constraint Description
Cir_no Char(30) Primary Key Circular Number
Date_of_cir Char(30) Not Null Date of circular
Comment Char(30) Not Null Comment

Emp Table: To store employee details
Field Data Type Constraint Description
Emp_id Char(30) Primary Key Employee id
Name Char(30) Not Null Employee name
Design Char(30) Not Null designation
Department Char(30) Not Null Department
Date_of_join Date Not Null Date of joining
Email Char(30) Not Null Email
Specialization Char(30) Not Null Specialization
Salary Number Not Null Salary
Phone Number Not Null Conatct No

Pay Slip
Field Data Type Constraint Description
Emp_id Char(30) Primary Key Employee id
Name Char(30) Not Null Employee name
Designation Char(30) Not Null designation
Department Char(30) Not Null Department
Basic Date Not Null Basic
Pf Number(5) Not Null Number
Da Number(5) Not Null Number

Marks

Field Data Type Constraint Description
Id Char(30) Not Null Student ID
Marks obt Char(30) Not Null Marks obtained
Total_marks Char(30) Not Null Total Marks
Status Char(30) Not Null Status
Descr Char(200) Not Null Description

4.6 SCHEDULING

Scheduling of a software project does not differ greatly from scheduling of any multi- task engineering effort. Therefore, generalized project scheduling tools and techniques can be applied with little modification to software projects.
Program evaluation and review technique (PERT) and critical path method (CPM) are two project scheduling methods that can be applied to software development. Both techniques are driven by information already developed in earlier project planning activities.

Estimates of Effort

 A decomposition of the product function.
 The selection of the appropriate process model and task set.
 Decomposition of tasks.
Interdependencies among tasks may be defined using a task network. Tasks, sometimes called the project Work Breakdown Structure (WBS) are defined for the product as a whole or for individual functions.
Both PERT and CPM provide quantitative tools that allow the software planner to (1) determine the critical path-the chain of tasks that determines the duration of the project; (2) establish “most likely” time estimates for individual tasks by applying statistical models; and (3) calculate “boundary times” that define a time window” for a particular task.
Boundary time calculations can be very useful in software project scheduling. Slippage in the design of one function, for example, can retard further development of other functions. It describes important boundary times that may be discerned from a PERT or CPM network: (I) the earliest time that a task can begin when preceding tasks are completed in the shortest possible time, (2) the latest time for task initiation before the minimum project completion time is delayed, (3) the earliest finish-the sum of the earliest start and the task duration, (4) the latest finish- the latest start time added to task duration, and (5) the total float-the amount of surplus time or leeway allowed in scheduling tasks so that the network critical path maintained on schedule. Boundary time calculations lead to a determination of critical path and provide the manager with a quantitative method for evaluating progress as tasks are completed.
Both PERT and CPM have been implemented in a wide variety of automated tools that are available for the personal computer. Such tools are easy to use and take the scheduling methods described previously available to every software project manager.

5.1 SOURCE CODE

Home.jsp

<%@ page language=”java” %>
<%@ page session=”true” %>

Welcome Page

 

<%@ include file=”header.jsp” %>
<%@ include file=”menu.jsp” %>

College Management System

The main aim in developing this web project is to provide an easy way not only to automate all functionalities of a college, but also to provide full functional reports to top management of college with the finest of details about any aspect of college.

We are committed to bring the best way of management in the various forms of Campus management system. We understand that campus management system in not a product to be sold, it is a bridge between the College and Students.

So we can say the Core purpose of designing “College Management System” is to manage the task related to the college students/employees and to reduce time to searching of appropriate candidates in college view.

For security point of view the login window content password so that no body can access the records. As we are using Java as a front end language so there are no issues regarding security at every level.

Admininstrator is an authorised person .He can

  • Add Student’s Details
  • Add Employee Details
  • Add Books Details
  • Fee Details
  • Marks Details
  • Creating Project Reports

 

 

About.jsp

<%@ page language=”java” %>
<%@ page session=”true” %>

About Us

 

<%@ include file=”header.jsp” %>
<%@ include file=”menu.jsp” %>

 

ABOUT US

We have designed the given proposed system in JSP to automate the SYSTEM.

The following steps that give the detailed information of the need of proposed system are:

Performance: During past several decades, the records are supposed to be manually handled for all activities. The manual handling of the record is time consuming and highly prone to error. To improve the performance of the   system, the computerized system is to be undertaken. The computerized project is fully computerized and user friendly even that any of the members can see the report and status of the company.

Efficiency: The basic need of this website is efficiency. The website should be efficient so that whenever a new user submit his/her details the website is updated automatically. This record will be useful for other users instantly.

Control: The complete control of the project is under the hands of authorized person who has the password to access this project and illegal access is not supposed to deal with. All the control is under the administrator and the other members have the rights to just see the records not to change any transaction or entry.

Security: Security is the main criteria for the proposed system. Since illegal access may corrupt the database. So security has to be given in this project.

 

 

 

 

 

Contactus.jsp

<%@ page language=”java” %>
<%@ page session=”true” %>

Mini Project Allocation System

 

<%@ include file=”header.jsp” %>
<%@ include file=”menu.jsp” %>

 

Contact Us

Main Najafgarh Road, Janakpuri

New Delhi – 110058

Email Id

[email protected]

Contact no. :

New Delhi-110058

 

 

Admin.jsp

<%@ page language=”java” %>
<%@ page session=”true” %>

Admin

 

<%@ include file=”header.jsp” %>
<%@ include file=”menu.jsp” %>

Login Form

Username
Email ID
Password
New User Sign Up

 

 

Naw.jsp
<%@ page contentType=”text/html; charset=iso-8859-1″ language=”java” import=”java.sql.*” errorPage=”” %>

Untitled Document
<% String str=request.getParameter(“textfield”); String str1=request.getParameter(“textfield4”); String email=request.getParameter(“textfield3”); Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”select * from login where usern='”+str+”‘ and email='”+email+”‘ and passw='”+str1+”‘”; ResultSet x = statement.executeQuery(query); if(x.next()==true) { response.sendRedirect(“admin menu.jsp”); } else { //out.println(“INM”); response.sendRedirect(“home.jsp”); } %>

 

Adminmenu.jsp

<%@ page language=”java” %>
<%@ page session=”true” %>

Admin Menu

 

<%@ include file=”header.jsp” %>
<%@ include file=”menu.jsp”%>

Administrator Menu

Reports
Books Details
Circular Details
Employee Details
Students Details
Marks Details

 

 

Student.jsp

<%@ page language=”java” import=”java.sql.*” %>
<%@ page session=”true” %>

Student Details

 

<%@ include file=”header.jsp” %>
<% Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”select * from student”; ResultSet rs = statement.executeQuery(query); int i=1; while(rs.next()) {i=i+1; } String ids=”0652009″+i; %>

STUDENTS DETAILS

STUDENTS DETAILS

Enrollment No. Name

Address City
State Phone
Books Issued
STUDY CENTER DETAILS
Study Center Code. Study Center Name
Paper Code Course
Email ID

 

 

Addstu.jsp
<%@ page contentType=”text/html; charset=iso-8859-1″ language=”java” import=”java.sql.*” errorPage=”” %>

Untitled Document
<% String eno=request.getParameter(“textfield”); String name=request.getParameter(“textfield2”); String address=request.getParameter(“textfield3”); String city=request.getParameter(“textfield4”); String state=request.getParameter(“textfield5”); String phone=request.getParameter(“textfield6”); String b=request.getParameter(“textfield7”); String scode=request.getParameter(“textfield8”); String sc=request.getParameter(“textfield9”); String course=request.getParameter(“textfield10”); String paper=request.getParameter(“textfield11”); String r=request.getParameter(“textfield12”); Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”insert into student values(‘”+eno+”‘,'”+name+”‘,'”+address+”‘,'”+city+”‘,'”+state+”‘,'”+phone+”‘,”+b+”,'”+scode+”‘,'”+sc+”‘,'”+course+”‘,'”+paper+”‘,'”+r+”‘)”; statement.executeUpdate(query); response.sendRedirect(“student.jsp”); %>

 

Empdetail.jsp

<%@ page language=”java” %>
<%@ page session=”true” %>

Employee Details

 

<%@ include file=”header.jsp” %>
<%@ include file=”menu.jsp”%>
Admin Menu

 

 

EMPLOYEE DETAIL

 

 

Emp Id.
Name
Designation
Department
Email
Date of Joining
Age
Salary
Phone No.
 

 

 

 

Addemp.jsp
<%@ page contentType=”text/html; charset=iso-8859-1″ language=”java” import=”java.sql.*” errorPage=”” %>

Untitled Document
<% String name=request.getParameter(“name”); String id=request.getParameter(“textfield”); String email=request.getParameter(“email”); String phone=request.getParameter(“phone”); String desig=request.getParameter(“desig”); String dep=request.getParameter(“dep”); String doj=request.getParameter(“doj”); String age=request.getParameter(“age”); String salary=request.getParameter(“salary”); Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”insert into emp values(‘”+name+”‘,'”+id+”‘,'”+desig+”‘,'”+dep+”‘,'”+email+”‘,'”+doj+”‘,'”+age+”‘,'”+salary+”‘,'”+phone+”‘)”; statement.executeUpdate(query); out.println(“inserted”); response.sendRedirect(“empdetail.jsp”); %>

 

Circular.jsp

<%@ page language=”java” %>
<%@ page session=”true” %>

Add Circular

 

<%@ include file=”header.jsp” %>
<%@ include file=”menu.jsp”%>
 

 

 

 

CIRCULAR

Admin Menu

Circular No.
Date of Circular
Comment
 

 

 

 

Addcicular.jsp
<%@ page contentType=”text/html; charset=iso-8859-1″ language=”java” import=”java.sql.*” errorPage=”” %>

Untitled Document
<% String clno=request.getParameter(“textfield”); String date=request.getParameter(“textfield2”); String com=request.getParameter(“textfield3”); Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”insert into circular values(‘”+clno+”‘,'”+date+”‘,'”+com+”‘)”; statement.executeUpdate(query); out.println(“inserted”); response.sendRedirect(“circular.jsp”); %>

 

Payslip1.jsp

<%@ page language=”java” %>
<%@ page session=”true” %>

Pay Slip

 

<%@ include file=”header.jsp” %>
<%@ include file=”menu.jsp”%>
 

 

 

 

Pay roll

Admin Menu

Emp ID
Name
Designation
Department
Basic
PF
Da

 

Addpay1.jsp
<%@ page contentType=”text/html; charset=iso-8859-1″ language=”java” import=”java.sql.*” errorPage=”” %>

Untitled Document
<% String id=request.getParameter(“textfield”); String app=request.getParameter(“textfield3”); String app1=request.getParameter(“textfield4”); String app2=request.getParameter(“textfield5”); String app3=request.getParameter(“textfield6”); String app4=request.getParameter(“textfield7”); String app5=request.getParameter(“textfield8”); Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/employee”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”insert into payslip values(‘”+id+”‘,'”+app+”‘,'”+app1+”‘,'”+app2+”‘,'”+app3+”‘,'”+app4+”‘,'”+app5+”‘)”; statement.executeUpdate(query); out.println(“inserted”); response.sendRedirect(“payslip1.jsp”); %>

 

Bookdetail.jsp
<%@ page language=”java” import=”java.sql.*”%>
<%@ page session=”true” %>

Books Details

 

<%@ include file=”header.jsp” %>
<%@ include file=”menu.jsp”%>
Admin Menu

Books Details

Book Id.<% Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”select * from books”; ResultSet rs = statement.executeQuery(query); int i=0; while(rs.next()) {i++; } int did=i+1; String id=”B0″+did; %>
Name
Author
Categories
No. of books available in Library
 

 

 

 

Addbook.jsp
<%@ page language=”java” import=”java.sql.*”%>
<%@ page session=”true” %>

Books Details

 

<%@ include file=”header.jsp” %>
<%@ include file=”menu.jsp”%>
Admin Menu

Books Details

Book Id.<% Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”select * from books”; ResultSet rs = statement.executeQuery(query); int i=0; while(rs.next()) {i++; } int did=i+1; String id=”B0″+did; %>
Name
Author
Categories
No. of books available in Library
 

 

 

 

Issue.jsp

<%@ page language=”java” import=”java.sql.*,java.util.Date,java.text.*”%>
<%@ page session=”true” %>

Issue Details

 

<%@ include file=”header.jsp” %>
<%@ include file=”menu.jsp”%>

 

ISSUE DETAILS

Book ID
Student ID
Issue Date
 

 

 

 

Addis.jsp
<%@ page contentType=”text/html; charset=iso-8859-1″ language=”java” import=”java.sql.*” errorPage=”” %>

Untitled Document
<% String id=request.getParameter(“select”); String sid=request.getParameter(“select2”); String idate=request.getParameter(“textfield”); String rdate=”Not Returned”; int fine=0; Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement st= connection.createStatement(); String query1=”select * from books where bookid='”+id+”‘”; ResultSet rs1=st.executeQuery(query1); int i=0; int n=0; String b=””; int f=0; int f1=0; int a=0; while(rs1.next()) { n=Integer.parseInt(rs1.getString(5)); a=Integer.parseInt(rs1.getString(6)); i++; } if (a>0)
{
f=1;
out.print(”
Book is available”);
out.print(”
No. of copies available : “+a);
}
else
{
out.print(”

Book is not available

“);
out.print(”

 

Can Not Be Issued

“);

}
String query2=”select * from student where id='”+sid+”‘”;
ResultSet rs2=st.executeQuery(query2);
int j=0;
int n1=0;
String bb=””;

while(rs2.next())
{

n1=Integer.parseInt(rs2.getString(7));
j++;
}
if (n1<3)
{
f1=1;
bb=”
No. of Books issued by the student :” + n1;
out.print(bb);
}
else
out.print(”

Already issued three books

“);

if(f==1 && f1==1)
{
a–;
out.print(”
book can “);
String query3=”insert into issue values(‘”+id+”‘,'”+sid+”‘,'”+idate+”‘,'”+rdate+”‘,”+fine+”)”;
st.executeUpdate(query3);

String query4=”update books set availbility=”+a+” where bookid='”+id+”‘”;
st.executeUpdate(query4);
n1++;
String query5=”update student set books_issued=”+n1+” where id='”+sid+”‘”;
st.executeUpdate(query5);

out.println(”

Book Issued…

“);}
// response.sendRedirect(“issue.jsp”);

%>

 

 

 

 

Abookdetails.jsp

<%@ page language=”java” import=”java.sql.*” %>
<%@ page session=”true” %>

Books Details

 

<%@ include file=”header.jsp” %>
Admin

Books Details

<% Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”select * from books”; ResultSet rs = statement.executeQuery(query); while(rs.next()) { %><%}%>

Book Id . Name Author Category No of copies available
<%=rs.getString(1)%> <%=rs.getString(2)%> <%=rs.getString(3)%> <%=rs.getString(4)%> <%=rs.getString(5)%>

Cirdetail.jsp

<%@ page language=”java” import=”java.sql.*” %>
<%@ page session=”true” %>

Circular Details

 

<%@ include file=”header.jsp” %>
<%@ include file=”menu.jsp”%>

 

 

Circular Details

<% Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”select * from circular”; ResultSet rs = statement.executeQuery(query); %>

<% while(rs.next()) { %><%}%>

CIRCULAR NO. DATE COMMENT
<%=rs.getString(1)%> <%=rs.getString(2)%> <%=rs.getString(3)%>

 

 

 

 

Empdetails.jsp

<%@ page language=”java” import=”java.sql.*” %>
<%@ page session=”true” %>

Employees Details

 

<%@ include file=”header.jsp” %>
<%@ include file=”menu.jsp”%>

 

 

Employee Details

<% Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”select * from emp”; ResultSet rs = statement.executeQuery(query); %>

<% while(rs.next()) { %><%}%>

Emp Id . Name Designation Department Joining date Phone no
<%=rs.getString(2)%> <%=rs.getString(1)%> <%=rs.getString(3)%> <%=rs.getString(4)%> <%=rs.getString(6)%> <%=rs.getString(9)%>

 

 

Student_detial.jsp

<%@ page language=”java” import=”java.sql.*” %>
<%@ page session=”true” %>

Mini Project Allocation System

 

<%@ include file=”header.jsp” %>
<%@ include file=”menu.jsp”%>

 

 

Student Details

 

<% Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”select * from Student”; ResultSet rs = statement.executeQuery(query); %>

<% while(rs.next()) { %><%}%>

Enrollment No. Name Address Phone Course Paper Code Regional Center
<%=rs.getString(1)%> <%=rs.getString(2)%> <%=rs.getString(3)%> <%=rs.getString(6)%> <%=rs.getString(11)%> <%=rs.getString(10)%> <%=rs.getString(12)%>

 

 

 

 

Aresult.jsp

<%@ page language=”java” import=”java.sql.*” %>
<%@ page session=”true” %>

Marks Details

 

<%@ include file=”header.jsp” %>

 

 

Marks Details

<% Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”select * from marks”; ResultSet rs = statement.executeQuery(query); %>

<% while(rs.next()) { %><%}%>

Student ID Marks Obtained Total Marks Status Description
<%=rs.getString(1)%> <%=rs.getString(2)%> <%=rs.getString(3)%> <%=rs.getString(4)%> <%=rs.getString(5)%>

 

 

 

 

Feedback.jsp

<%@ page language=”java” %>
<%@ page session=”true” %>

Feedbacks

 

<%@ include file=”header.jsp” %>

 

<%@ include file=”menu.jsp” %>

 

 

Feedback Form

 

Name
Email-ID
Phone No.
State
Comment
 

 

 

 

Feedbackins.jsp
<%@ page contentType=”text/html; charset=iso-8859-1″ language=”java” import=”java.sql.*” errorPage=”” %>

Untitled Document
<% String name=request.getParameter(“name”); String email=request.getParameter(“email”); String phone=request.getParameter(“phone”); String state=request.getParameter(“state”); String com=request.getParameter(“com”); Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”insert into feedback values(‘”+name+”‘,'”+email+”‘,”+phone+”,'”+state+”‘,'”+com+”‘)”; statement.executeUpdate(query); out.println(“inserted”); response.sendRedirect(“feedback.jsp”); %>

 

tlogin.jsp

<%@ page language=”java” %>
<%@ page session=”true” %>

Teacher Login Form

 

<%@ include file=”header.jsp” %>

 

 

 

Login Form

Username
Emp ID
Email ID
Password
New User Sign Up

 

 

Tnaw.jsp
<%@ page contentType=”text/html; charset=iso-8859-1″ language=”java” import=”java.sql.*” errorPage=”” %>

Untitled Document
<% String str=request.getParameter(“textfield”); String str1=request.getParameter(“textfield4”); String email=request.getParameter(“textfield3”); Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”select * from login where usern='”+str+”‘ and email='”+email+”‘ and passw='”+str1+”‘”; ResultSet x = statement.executeQuery(query); if(x.next()==true) { String s=x.getString(2); session.setAttribute(“tid”,s); response.sendRedirect(“tmenu.jsp”); } else { //out.println(“INM”); response.sendRedirect(“home.jsp”); } %>

 

Tmenu.jsp

<%@ page language=”java” %>
<%@ page session=”true” %>

Employees Panel

 

<%@ include file=”header.jsp” %>
<%@ include file=”menut.jsp”%>

Welcome <%=session.getAttribute(“tid”)%>

  • Teachers can upload notes.
  • Add marks Details
  • View their Payslip
  • View Circulars

 

 

Notes.jsp

<%@ page language=”java” import=”java.sql.*” %>
<%@ page session=”true” %>

Uploading

<%@ include file=”header.jsp” %>
<%@ include file=”menus.jsp”%>  

Upload
Subject
Uploaded By
Date
File

 

Notesin.jsp
<%@ page language=”java” import=”java.io.*,java.util.*,java.sql.*,org.apache.commons.fileupload.*,org.apache.commons.fileupload.servlet.ServletFileUpload,org.apache.commons.fileupload.disk.*” pageEncoding=”ISO-8859-1″%>

 

 

File has been Uploaded

 


<% String p1=””; String p2=””; String p3=””; String p4=””; %>
<% boolean isMultipart = ServletFileUpload.isMultipartContent(request); if (!isMultipart) { } else { FileItemFactory factory = new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload(factory); List items = null; try { items = upload.parseRequest(request); } catch (FileUploadException e) { e.printStackTrace(); } Iterator itr = items.iterator(); while (itr.hasNext()) { FileItem item = (FileItem) itr.next(); if (item.isFormField()) { String name = item.getFieldName(); String value = item.getString(); if(name.equals(“textfield2”)) { p1=value; } if(name.equals(“textfield3”)) { p2=value; } if(name.equals(“textfield4”)) { p3=value; } } else { try { String saveFile = item.getName(); saveFile = saveFile.substring(saveFile.lastIndexOf(“\\”)+1); File savedFile1 = new File(“c:\\program files\\Apache software foundation\\tomcat 5.5\\webapps\\college mgt\\notes\\”+saveFile); item.write(savedFile1); out.print(saveFile); %>


<%
// out.println(”
Picture ID :“+picid);

String s=”notes/”+saveFile;

Class.forName(“com.mysql.jdbc.Driver”);
Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″);
Statement statement = connection.createStatement();

String query=”insert into notes values(‘”+p1+”‘,'”+p2+”‘,'”+p3+”‘,'”+s+”‘)”;

statement.executeUpdate(query);

out.println(”

Record inserted”);

} catch (Exception e) {
out.print(e.getMessage());
}
}
}
}
%>

 

Download.jsp

<%@ page language=”java” import=”java.sql.*” %>
<%@ page session=”true” %>

Download Notes

 

<%@ include file=”header.jsp” %>
<%@ include file=”menus.jsp”%>

 

 

Feedback Details

Admin Menu

<% Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”select * from notes”; ResultSet rs = statement.executeQuery(query); %>

<% while(rs.next()) { %><%}%>

Subject Uploaded By Date of Uploading File
<%=rs.getString(1)%> <%=rs.getString(2)%> <%=rs.getString(3)%> Download

 

 

 

 

Sresult.jsp

<%@ page language=”java” import=”java.sql.*” %>
<%@ page session=”true” %>

Marks Details

 

<%@ include file=”header.jsp” %>
<%@ include file=”menus.jsp”%>

 

 

Marks Details

<% Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”select * from marks where id='”+session.getAttribute(“sid”)+”‘”; ResultSet rs = statement.executeQuery(query); %>

<% while(rs.next()) { %><%}%>

Student ID Marks Obtained Total Marks Status Description
<%=rs.getString(1)%> <%=rs.getString(2)%> <%=rs.getString(3)%> <%=rs.getString(4)%> <%=rs.getString(5)%>

 

 

 

 

Booksdetails.jsp

<%@ page language=”java” import=”java.sql.*” %>
<%@ page session=”true” %>

Books Details

 

<%@ include file=”header.jsp” %>
<%@ include file=”menus.jsp”%>

Books Details

<% Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”select * from books”; ResultSet rs = statement.executeQuery(query); while(rs.next()) { %><%}%>

Book Id . Name Author Category No of copies available
<%=rs.getString(1)%> <%=rs.getString(2)%> <%=rs.getString(3)%> <%=rs.getString(4)%> <%=rs.getString(5)%>

 

Stlogin.jsp

<%@ page language=”java” %>
<%@ page session=”true” %>

Student Login Form

 

<%@ include file=”header.jsp” %>

 

 

 

Login Form

Username
Student ID
Email ID
Password
New User Sign Up

 

 

Snaw.jsp
<%@ page contentType=”text/html; charset=iso-8859-1″ language=”java” import=”java.sql.*” errorPage=”” %>

Untitled Document
<% String str=request.getParameter(“textfield”); String str1=request.getParameter(“textfield4”); String email=request.getParameter(“textfield3”); Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”select * from login where usern='”+str+”‘ and email='”+email+”‘ and passw='”+str1+”‘”; ResultSet x = statement.executeQuery(query); if(x.next()==true) { String s=x.getString(2); session.setAttribute(“sid”,s); response.sendRedirect(“smenu.jsp”); } else { out.println(“Invalid username or password”); } %>

 

Smenu.jsp

<%@ page language=”java” %>
<%@ page session=”true” %>

Students Panel

 

<%@ include file=”header.jsp” %>
<%@ include file=”menus.jsp”%>

Welcome <%=session.getAttribute(“sid”)%>

Students can Download Notes
View thier result
Students can give their feedbacks
View Books Details
View their circular details

 

 

CIRdetails.jsp

<%@ page language=”java” import=”java.sql.*” %>
<%@ page session=”true” %>

Circular Details

 

<%@ include file=”header.jsp” %>
<%@ include file=”menu.jsp”%>

 

 

Circular Details

<% Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”select * from circular”; ResultSet rs = statement.executeQuery(query); %>

<% while(rs.next()) { %><%}%>

CIRCULAR NO. DATE COMMENT
<%=rs.getString(1)%> <%=rs.getString(2)%> <%=rs.getString(3)%>

 

 

 

 

Booksdetails.jsp

<%@ page language=”java” import=”java.sql.*” %>
<%@ page session=”true” %>

Books Details

 

<%@ include file=”header.jsp” %>
<%@ include file=”menus.jsp”%>

Books Details

<% Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”select * from books”; ResultSet rs = statement.executeQuery(query); while(rs.next()) { %><%}%>

Book Id . Name Author Category No of copies available
<%=rs.getString(1)%> <%=rs.getString(2)%> <%=rs.getString(3)%> <%=rs.getString(4)%> <%=rs.getString(5)%>

Userdetail.jsp

<%@ page language=”java” import=”java.sql.*” %>
<%@ page session=”true” %>

New User

 

<%@ include file=”header.jsp” %>
<%@ include file=”menu.jsp”%>
User Details
User Name
Emp ID
Email Id
Password

 

Adduser.jsp
<%@ page contentType=”text/html; charset=iso-8859-1″ language=”java” import=”java.sql.*” errorPage=”” %>

Untitled Document
<% String uname=request.getParameter(“textfield”); String s=request.getParameter(“textfield4”); String a=request.getParameter(“textfield5”); String email=request.getParameter(“textfield3”); String password=request.getParameter(“textfield2”); Class.forName(“com.mysql.jdbc.Driver”); Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/project”,”root”,”1234″); Statement statement = connection.createStatement(); String query=”insert into login values(‘”+uname+”‘,'”+password+”‘,'”+email+”‘,'”+s+”‘,'”+a+”‘)”; statement.executeUpdate(query); response.sendRedirect(“home.jsp”); %>

 

5.2 CODE EFFICIENCY

Reviewing of Code efficiency for a module is carried out after the module is successfully compiled and all the syntax errors eliminated. Code efficiency review is extremely cost-effective strategies for reduction in coding errors in order to produce high quality code. Normally, two types of efficiency are carried out on the code of a module – code optimization and code inspection. The procedure and final objective of these two efficiency techniques are very different as discussed below.

5.3 OPTIMIZATION OF CODE

Code optimization is an informal code analysis technique. In this technique, after a module has been coded, it is successfully compiled and all syntax errors are eliminated. Some members of the development team are given the code a few days before the optimization meeting to read and understand the code. Each member selects some test cases and simulates execution of the code by hand (i.e. trace execution through each statement and function execution). The main objectives of the optimization are to discover the algorithmic and logical errors in the code. The members note down their findings to discuss these in a optimization meeting where the coder of the module is also present.
Even though a code optimization is an informal analysis technique, several guidelines have evolved over the years for making this naïve technique more effective and useful. Of course, these guidelines are based on personal experience, common sense, and several subjective factors. Therefore are based on personal experience, common sense, and several subjective factors. Therefore, guidelines should be considered as examples rather than as rules to be applied dogmatically. Some of these guidelines are the following:
The team performing the code optimization should not be either too big or too small. Ideally, it should consist of three to seven members.

6.1 TESTING PHASE

One of the purposes of the testing is to validate and verify the system. Verification means checking the system to ensure that it is doing what the function is supposed to do and Validation means checking to ensure that system is doing what the user wants it to do.
No program or system design is perfect; communication between the user and the designer is not always complete or clear, and time is usually short. The result is errors and more errors. Theoretically, a newly designed system should have all the pieces in working order, but in reality, each piece works independently. Now is the time to put all the pieces into one system and test it to determine whether it meets the user’s requirements. This is the best chance to detect and correct errors before the system is implemented. The purpose of system testing is to consider all the likely variations to which it will be subjected and then push the system to its limits. If we implement the system without proper testing then it might cause the problems.

1. Communication between the user and the designer.
2. The programmer’s ability to generate a code that reflects exactly the system specification.
3. The time frame for the design.

Theoretically, a new designed system should have all the pieces in working order, but in reality, each piece works independently. Now is the time to put all the pieces into one system and test it to determine whether it meets the requirements of the user.

The process of system testing and the steps taken to validate and prepare a system for final implementation are:

6.2 LEVELS OF TESTING:
The different types of testing are as follows:

1. Unit Testing:
This is the smallest testable unit of a computer system and is normally tested using the white box testing. The author of the programs usually carries out unit tests.

2. Integration Testing:
In integration testing, the different units of the system are integrated together to form the complete system and this type of testing checks the system as whole to ensure that it is doing what is supposed to do. The testing of an integrated system can be carried out top-down, bottom-up, or big-bang. In this type of testing, some parts will be tested with white box testing and some with black box testing techniques. This type of testing plays very important role in increasing the systems productivity. We have checked our system by using the integration testing techniques.

3. System Testing:
A part from testing the system to validate the functionality of software against the requirements, it is also necessary to test the non-functional aspect of the system. Some examples of non-functional tools include tests to check performance, data security, usability/user friendliness, volume, load/stress that we have used in our project to test the various modules.

System testing consists of the following steps:

1. Program(s) testing.
2. String testing.
3. System testing.
4. System documentation.
5. User acceptance testing.

4. Field Testing:
This is a special type of testing that may be very important in some projects. Here the system is tested in the actual operational surroundings. The interfaces with other systems and
the real world are checked. This type of testing is very rarely used. So far our project is concerned, we haven’t tested our project using the field testing.

5. Acceptance Testing:
After the developer has completed all rounds of testing and he is satisfied with the system, then the user takes over and re-tests the system from his point of view to judge whether it is acceptable according to some previously identified criteria. This is almost always a tricky situation in the project because of the inherent conflict between the developer and the user. In this project, it is the job of the bookstores to check the system that whether the made system fulfills the goals or not.

Why System Testing?
Testing is vital to the success of the system. System testing makes a logical assumption that if all the parts of the system are correct, the goal will be successfully achieved. Inadequate testing results in two type of problems:

1. The time lag between the cause and the appearance of the problem.
2. The effect of system errors on the files and records within the system.
Activity Network for System Testing

The test plan entails the following activities:
1. Prepare test plan.
2. Specify conditions for user acceptance testing.
3. Prepare test data for program testing.
4. Prepare test data for transaction path testing.
5. Plan user training.
6. Compile/assemble programs.
7. Prepare job performance aids.
8. Prepare operational documents.

Prepare Test
A workable test plan must be prepared in accordance with established design specifications. It includes the following items:
• Outputs expected from the system.
• Criteria for evaluating outputs.
• A volume of test data.
• Procedure for using test data.
• Personnel and training requirements.

Specify Conditions for User Acceptance Testing
Planning for user acceptance testing calls for the analyst and the user to agree on conditions for the test.

Prepare Test Data for Program Testing
As each program is coded, test data are prepared and documented to ensure that all aspects of the program are properly tested.

Prepare Test Data for Transaction Path Testing
This activity develops the data required for testing every condition and transactions to be introduced into the system. The path of each transaction from origin to destination is carefully tested reliable results.

Compile / Assemble Programs
All programs have to be compiled / assembled for testing.

Systems testing
The computer department to ensure that the system functions as specified does this testing. This testing is important to ensure that a working system is handed over to the user for acceptance testing.

Acceptance testing
The user to ensure that the system functions, as the user actually wanted performs this testing. With prototyping techniques, this stage becomes very much a formality to check the accuracy and completeness of processing. The screen layouts and output should already have been tested during the prototyping phase.

An error in the program code can remain undetected indefinitely. To prevent this from happening the code was tested at various levels. To successfully test a system, each condition, and combinations of conditions had to be tested. Each program was tested and linked to other programs. This unit of program is tested and linked to other units and so on until the complete system has been tested.

The purpose of testing is to ensure that each program is fully tested. To do so a test plan had to be created. The test plan consists of a number of test runs such as the valid paths through the code, and the exception and error handling paths. For each test run there is a list of conditions tested, the test data used and the result expected. The test plan was then reviewed to check that each path through the code is tested correctly. It is the responsibility of the programmer to collect the data that will produce the required test condition.

6.3 TSET CASES
TEST DATA Specifications for user form1
Test Date 27-4-2010 Programmer name: self
Tested By: self Project ID:

Positive Test cases forYahoo registration form
PRE-CONDITION T.C DESCRIPTION T.C DATA EXPECTED ACTUAL RESULT
Newuser.jsp is

on Name Field Check the functionality of Name field Akhila Satish Will accept only letters, spaces, hyphens, and apostrophes.Length upto 32 characters.Both first and last name are required. Ok Pass
Newuser.jsp is

on Name Field Check the functionality of Name field A S Will accept only letters, spaces, hyphens, and apostrophes.Length upto 32 characters.Both first and last name are required. Ok Pass
Newuser.jsp is

on Name Field Check the functionality of Name field A Satish Will accept only letters, spaces, hyphens, and apostrophes.Length upto 32 characters.Both first and last name are required. Ok Pass
Newuser.jsp is

on Name Field Check the functionality of Name field Akhila S Will accept only letters, spaces, hyphens, and apostrophes.Length upto 32 characters.Both first and last name are required. ok pass

Newuser.jsp is
on Password Field Check the functionality of password text box avhjklhm Will accept 6 to 32 characters.Capitalisation matters. and don’t use your name or yahoo ID. ok pass
Newuser.jsp is

on Password Field Check the functionality of password text box 654321 Will accept 6 to 32 characters.Capitalisation matters. and don’t use your name or yahoo ID. ok pass
Newuser.jsp is

on Password Field Check the functionality of password text box Chinnu1312** Will accept 6 to 32 characters.Capitalisation matters. and don’t use your name or yahoo ID. ok pass
Newuser.jsp is

on Password Field Check the functionality of password text box 2207** Will accept 6 to 32 characters.Capitalisation matters. and don’t use your name or yahoo ID. ok pass

Newuser.jsp is

on Confirm Password Field Check the functionality of Confirm password text box Same as the password Will accept the same password as above. ok pass

Newuser.jsp is

on Athentication Dropdownlist Field Check the functionality of select 1DropDown List Parent Either select one from drop list or type one ok Pass

Newuser.jsp is

on Email Field Check the functionality of Yahoo ID of sign up option [email protected] Will accept only letters, numbers, underscores, and one dot (.) ok pass
Newuser.jsp is

on Email Field Check the functionality of Yahoo ID of sign up option [email protected] Will accept only letters, numbers, underscores, and one dot (.) ok pass
Newuser.jsp is

on Email Field Check the functionality of Yahoo ID of sign up option [email protected] Will accept only letters, numbers, underscores, and one dot (.) ok pass

Negative Test cases forYahoo registration form

PRE-CONDITION T.C DESCRIPTION T.C DATA EXPECTED ACTUAL RESULT

Newuser.jsp is

on Name Field Check the functionality of Name field A Will accept only letters, spaces, hyphens, and apostrophes.Length upto 32 characters.Both first and last name are required. Invalid Fail
Newuser.jsp is

on Name Field Check the functionality of Name field Akhila’s Will accept only letters, spaces, hyphens, and apostrophes.Length upto 32 characters.Both first and last name are required. Invalid Fail

Newuser.jsp is

on Password Field Check the functionality of password text box 2# Will accept 6 to 32 characters.Capitalisation matters. and don’t use your name or yahoo ID. Invalid Fail
Newuser.jsp is

on Password Field Check the functionality of password text box a123 Will accept 6 to 32 characters.Capitalisation matters. and don’t use your name or yahoo ID. Invalid Fail

Newuser.jsp is

on Confirm Password Field Check the functionality of Confirm password text box Different from the one in Password field Will accept the same password as above Invalid Fail

Newuser.jsp is

on Athentication Dropdownlist Field Check the functionality of select 1DropDown List Not other select Not accepted Invalid Fail

Newuser.jsp is

on Email Field Check the functionality of Yahoo ID of sign up option blank Will accept only letters, numbers, underscores, and one dot (.) .The ID must be available. Invalid Fail
Newuser.jsp is

on Email Field Check the functionality of Yahoo ID of sign up option add Will accept only letters, numbers, underscores, and one dot (.) .The ID must be available. Invalid Fail
Newuser.jsp is

on Email Field Check the functionality of Yahoo ID of sign up option #[email protected] Will accept only letters, numbers, underscores, and one dot (.) .The ID must be available. Invalid Fail

6.4 VERIFICATION AND VALIDATION (V&V)

The objectives of verification, validity activities are to assess and improve the quality of the work products generated during development and modification of the software. Quality depends upon the various attributes like correctness, completeness, consistency, reliability, usefulness, usability, efficiency and conformance to standards.
Verification activities include proving, testing, and reviews. Validation is the process of evaluating software at the end of the software development to ensure compliance with the software requirements. Testing is a common method of validation. Clearly, for high reliability we need to perform both activities. Together, they are often called V&V activities.
The major V&V activities for software development are inspection, reviews, and testing (both static and dynamic). The V&V plan identifies the different V&V tasks for the different phases and specifies how these tasks contribute to the project V&V goals. The methods to be used for performing these V&V activities, the responsibilities and milestones for each of these activities, inputs and outputs for each V&V task, and criteria for evaluating the outputs are also specified.
The two major V&V approaches are testing and inspections. Testing is an activity that can be generally performed only on code. It is an important activity and is discussed in detail in a later chapter. Inspection is a more general activity that can be applied to any work product, including code. Many of the V&V tasks are such that for them, an inspection type of activity is the only possible way to perform the tasks (e.g. trace ability and document evaluation). Due to this, inspections play a significant role in verification.

SYSTEM IMPLEMENTATION

7.1 SYSTEM IMPLEMENTATION MAINTENANCE AND REVIEW

As we know, creating software is one thing and the implementation of the created software is another. The process of implementing software is much difficult as compared to the task of creating the project. First we have to implement the software on a small scale for removing the bugs and other errors in the project and after removing them we can implement the software on a large scale.
Before we think in terms of implementing the Software on a large basis, we must consider the Hardware requirements.
Whenever we develop a software or project a certain hardware and software is being used by the programmer for developing the project. The hardware and software to be used by the programmer for developing the project should be such that it would result in the development of a project, which would satisfy all the basic needs for which the project has been created by the programmer. The Hardware should be such that cost constraints of the Client should also be taken into account without affecting the performance.

7.2 HARDWARE EVALUATION FACTORS

When we evaluate computer hardware, we should first investigate specific physical and performance characteristics for each hardware component to be acquired. These specific questions must be answered concerning many important factors. These hardware evaluation factors questions are summarized in the below figure.
Notice that there is much more to evaluating hardware than determining the fastest and cheapest computing device. For e.g. the question of possible obsolescence must be addressed by making a technology evaluation. The factor of ergonomics is also very important. Ergonomics is the science and technology that tries to ensure that computers and other technologies are “user-friendly”, that is safe, comfortable and easy to use. Connectivity is another important evaluation factor, since so many computer systems are now interconnected within wide area or local area telecommunications networks.

HARDWARE EVALUATION FACTORS
1) Performance
2)Cost
3) Reliability
4) Availability
5) Compatibility
6) Modularity
7) Technology
8) Ergonomics
9) Connectivity
10)Environmental requirements
11)Software
12)Support

7.3 SOFTWARE EVALUATION FACTORS

Software can be evaluated according to many factors similar to the hardware evaluation. Thus the factors of performance, cost, reliability, compatibility, modularity, technology, ergonomics, and support should be used to evaluate proposed software acquisitions. In addition, however, the software evaluation factors are summarized in below figure. For e.g. some software packages require too much memory capacity and are notoriously slow, hard to use, or poorly documented. They are not a good selection for most end users, even if offered at attractive prices.

SOFTWARE EVALUATION FACTORS

1) Efficiency: is the software a well-written system of computer instructions that does not use much memory capacity or CPU time?
2) Flexibility: can it handle its processing assignments easily without major modifications?
3) Security: does it provide control procedures for errors, malfunctions and improper use?
4) Language: do our computer programmers and users write it in a programming language that is used?
5) Documentation: is the s/w well documented? Does it include helpful user instructions?
6) Hardware: does existing hardware have the features required to best use this software?
7) Other characteristics of hardware such as its performance, what about the cost, how much is reliable and etc.

7.4 SECURITY MEASURES

User Name & Password security implemented so that non authorized person can handle any operation without username and Password.
 Only authorized person can log-on the system.
 Only authorized person can update the records.
 Only authorized person can handle the reservation.
 Only authorized person can print the report.

It has two kinds of users:

1. Administrator
2. User1

Administrator: He has complete authority (Read, Add, Modify) of operating the software. The User Name and Password provided to the Administrator in this project is:

User Id: Admin
Password: admin123

User1: When this user logs onto the system, he can only view information and other reports. He can generate different reports.
User Id: User1
Password: user123

8. COST ESTIMATION OF THE PROJECT

Cost in a project is due to the requirements for software, hardware, and human resources. Hardware resources are computer time, terminal time and memory required for the project. Software resources include the tools and compilers needed during development. The bulk of cost of software development is due to human resources needed. Cost estimates are determined in terms of person-months (PM).
Total No. Of Persons Involved In This Project:
1 Administrator
2 Senior Programmer
3 Junior Programmers
4.On line Users.
Since this Project will complete in 4 months

Cost Estimate: (Salary of Project Manager + Salary of Senior Programmer + 2 * Salary of Junior Programmer) * 2

9. GANTT & PERT CHART

GANT CHART

Gantt charts mainly used to allocate resources to activities. The resources allocated to activities include staff, hardware, and software. Gantt charts (named after its developer Henry Gantt) are useful for resource planning. A Gantt chart is special type of bar chart where each bar represents an activity. The bars are drawn along a timeline. The length of each bar is proportional to the duration of the time planned for the corresponding activity.
Gantt chart is a project scheduling technique. Progress can be represented easily in a Gantt chart, by coloring each milestone when completed. The project will start in the month of January and end after 4 months at the end of April.

GANTT CHART
Tasks Week 1 Week 2 Week3 Week 4
a) Requirement Analysis
b) Report Generation
Milestone

a) Input/Output Design
b) File Design
c) Processing Logic Design
d) Design of Control
Milestone

a) Coding
Milestone

a) Module Testing
b) System Testing
Milestone

Pert Chart
PERT (Project Evaluation and Review Technique) charts consist of a network of boxes and arrows. The boxes represent activities and the arrows represent task dependencies.

PERT chart represents the statistical variations in the project estimates assuming a normal distribution. Thus in a PERT chart instead of making a single estimate for each task, pessimistic, likely, and optimistic estimates are also made. The boxes of PERT charts are usually annotated with the pessimistic, likely, and optimistic estimates for every task. Since all possible completion times between the minimum and maximum durations for every task have to be considered, there are many critical paths, depending on the permutations of the estimates for each task. This makes critical path analysis in PERT charts very complex. A critical path in a PERT chart is shown by using thicker arrows. The PERT chart representation of the College Management System problem of Figure A. is shown in Figure B.
Task ES EF LS LF ST
Specification Part 0 15 0 15 0
Design Database Part 15 60 15 60 0
Design GUI Part 15 45 90 120 75
Code Database Part 60 165 60 165 0
Code GUI Part 45 90 120 165 75
Integrate and Test 165 285 165 285 0
Write User Manual 15 75 225 285 210

Figure A:Different Tasks for the College Management System shown in above table.

FIGURE B: PERT Chart representation of the College Management System.

PERT charts are a more sophisticated form of activity chart. In activity diagrams only the estimated task durations are represented. Since the actual durations might vary from the estimated durations, the utility of the activity diagrams is limited.

10. FURTHER ENHANCEMENT OF THE PROJECT

As this project is made using the most security programming language that is ‘JAVA’, there is no issue regarding security problems but every software that is designed and developed has some scope foe future applications, so the ‘College Management System’ also has some scope for future applications. In future we can able to add more modules in this project. In the proposed system, user is provided with choice of screens which are similar in formats with the source document. Data entry errors can be minimized using validity checks. So after this we are able to provide quality of IT Education at affordable cost for all.

11. CONCLUSIONS

This project has been a rewarding experience in more than one way. The entire project work has enlightened us in the following areas.

• We have gained an insight into the working of the Hospital. This represents a typical real world situation
• Our understanding of database design has been strengthened this is because in order to generate the final reports of database designing has to be properly followed.
• Scheduling a project and adhering to that schedule creates a strong sense of time management.
• Sense of teamwork has developed and confidence of handling real life project has increased to a great extent.
• Initially, there were problem with the validation but with discussions, we were to implement validations.

12. BIBLIOGRAPHY

AN INTRODUCTION TO DATABASE SYSTEM
AUTHOR- BIPIN C. DESAI
SOFTWARE ENGINEERING
AUTHOR- R. PRESSMAN
SYSTEM ANALYSIS AND DESIGNING (SAD)
IGNOU REFERENCE BOOKS
HTTP://WWW.GOOGLE.COM

J2EE PROGRAMMING

1. Core J2EE Patterns: Best Practices and Design Strategies (2nd Edition) by Deepak Alur

2. Expert One-on-One J2EE Design and Development (Programmer to Programmer) by Rod Johnson PhD