Online Counseling System
Online Counseling System
PROJECT REPORT ON
1. INTRODUCTION.....................................................................................................
2. ABOUT PROJECT....................................................................................................
4. PROPOSED SYSTEM..............................................................................................
4.1 INTRODUCTION...................................................................................................
4.2 FEATURES OF THE PROPOSED SYSTEM.................................................................
7. SYSTEM ANALYSIS................................................................................................
7.1 INTRODUCTION.....................................................................................................
7.2 REQUIREMENT ANALYSIS.....................................................................................
7.3 S/w & H/w REQUIREMENT SPECIFICATION...........................................................
7.4 FEASIBILITY STUDY..............................................................................................
7.5 SOFTWARE ENGINEERING PARADIGM...................................................................
8. SYSTEM DESIGN.....................................................................................................
8.1 INTRODUCTION.....................................................................................................
8.2 MODULE DESCRIPTION........................................................................................
10. TESTING....................................................................................................................
11.1 IMPLEMENTATION.................................................................................................
11.2 MAINTENANCE.....................................................................................................
11.3 COST ESTIMATION................................................................................................
12. CONCLUSIONS........................................................................................................
13. BIBLIOGRAPHY......................................................................................................
1. INTRODUCTION
We Understand you perfectly we know that you are young; you wish to
gain experience and to make a smooth transition between the bohemian college life
and the real world. Or that you possess valuable knowledge/experiences in various
fields that are unrelated to programming, such as: marketing, philology or consumer
psychology. This is why we are supporting your growth with trainings and other
methods.
Our Expectations: -
Service overview: -
- Quality
- Reliability
- Responsibility
- Honesty
- Flexibility
- Elegance
2. ABOUT PROJECT
4. PROPOSED SYSTEM
4.1 Introduction: -
In proposed system at first reduce the problem, which is faced in
Existing System. So In the proposed system, “Online Counseling System” will
provide the on line facility for reporting/registration or access any type of
information about the college/university and globally maintain all the information by
the university and this project consist fallowing
modules are- :-
(1) Institute Record: -
Provide the fallowing types of facilities using different options: -
Insert:- This part allow any new institute, if we want to participate in counseling then
enter its details regarding the institute - Institute Code ,Name of the institute, Name
of the city, Category wise total number of seats i.e. General Seats, OBC Seats, SC/ST
seats.
Delete: - If any institute Withdraw from counseling then this part will help in deleting
that institute record.
Display: - It will help in displaying complete information about institute code name,
city, and total seats according to category.
Delete: - This will allow to deleting record of any student after counseling. The
deletion can be on the basis of Roll no, Name.
(3) Counseling: -
This is the third and important module .It is divided into category wise
counseling. So there are three modes of counseling.
b) OBC counseling:-
This system is applicable for any other university /Institute, which is work as
an online .The package will require data to be entered in user-friendly forms.
This system provide the scope of online working using the internet such as -
Student reporting ,counseling ,Institute registration for counseling , searching the
information of counseling procedure and total Seats of college etc.
There are fallowing modules and forms are used-
(3) Counseling.
7. SYSTEM ANALYSIS
7.1 Introduction: -
System Analysis is a detailed study of the various operations performed by
a system and their relationship within and outside the system .It is a systematic
technique that defines goals and objectives the goal of the development is to deliver
the system in the line with the user’s requirements, and analysis is this process.
System study has been conducted with the following objectives in mind: -
Hardware Requirements: -
Software Requirements: -
History Of Java: -
Java development began at Sun Microsystems in 1991, the same year
the World Wide Web was conceived. Java’s creator, James Gosling did not design
java for the Internet. His Objective was to create a common development environment
for consumer electronic devices which was easily portable from one device to
another. This effort evolved into a language, code named Oak and later renamed Java
that retains much of the syntax and power of c++, but is simpler and more platforms
independent.
Java Features: -
Some of the important features of Java are as follows: -
Simplicity
Object oriented
Platform Independence
Security
Robust
High Performance
Multi Threading
Dynamic linking.
Garbage Collection.
One of the most important features of Java is Platform Independence which makes it
famous and suitable language for World Wide Web.
When the user runs a Java program, it is unto the JVM to load,
possibly verify, and then execute it. The JVM can perform this function from within a
browser or any other container program or directly on top of the operating system.
When a browser invokes the JVM to run a Java program, the JVM
does a number of things: -
1. It validates the requested byte-codes, verifying that they pass various formatting and
security checks.
It allocates memory for the in coming java class files and guarantees that the security
of JVM is not violated. This is known as the class loader.
2. It interprets the byte code instructions found in the class files to execute the program.
Servlets / JSP are middleware technologies which are used in web
based projects because they use:-
1. HTTP Protocol to handle Request and Response.
2. They are invoked through Browser.
3. They give out put in HTML format.
4. They need Browser Support.
We have designed web based forms using Servlets and JSP in which we
have defined business logic.
About HTML: -
Hypertext Markup Language (HTML) is a language for describing
how pages of text, graphics, and other information are organized. Hypertext means
text stored in electronic form with cross-reference links between pages. An HTML
page contains HTML tags, which are embedded commands that supply information
about the page’s structure, appearance, and contents. Web browsers use this
information to determine how to display the page.
High Availability: -
At some sets Oracle works 24 Hours per day with no downtime or
limit database throughput. Normal system operation such as database backup &
partial completion system failure don’t interrupt database use.
Controlled Availability: -
Manageable Security: -
Portability: -
Oracle software is compatible to work under different operating system
& same on all system. Application developed on Oracle can be used on virtually any
system with little or no more modification.
Compatibility: -
Connectivity: -
DEFICIENCES IN
USER CURRENT SYSTEM
STATED
REQUIREMENTS ANALYZE TO FIND DEFINE AND
DEFICIENCES QUANTIFY GOALS
CONSTRAINTS ON RESOURCES
Technical feasibility determines whether the work for the project can
be done with the existing equipment, software technology and available personnel.
Technical feasibility is concerned with specifying equipment and software that will
satisfy the user requirement.
The technologies used are matured enough so that they can be applied
to our problems. The practicality of the solution we have developed is proved with the
use of the technologies we have chosen. The technologies such as JAVA (JSP,
Servlet), JavaScript and the compatible H/Ws are so familiar with the today’s
knowledge based industry that anyone can easily be compatible to the proposed
environment.
We first make sure that whether the required technologies are available
to us or nor. If they are available then 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?
Payback analysis
Return on Investment:
Net Present value
(a) Is the problem worth solving or will the solution to the problem work?
P (Performance): -
The online Counseling System provides adequate throughput and response time.
I (Information): -
The online Counseling System provides Student and Staff with tamely, pertinent,
accurate, and usefully formatted information.
E (Economy): -
The online Counseling System of reduce the cost of the Counseling or Student
reporting (selection).
C (Control): -
The online Counseling System offer globally controls to protect against fraud and to
guarantee the accuracy and security of the data and information.
E (Efficiency): -
The online Counseling System makes maximum use of available resources and
minimum processing delays.
S (Services): -
The online Counseling System provides desirable and reliable service to those who
need it. The online Counseling System is flexible and expandable.
(b) How do the students and staff feel about the problem (Solution)?
The Online Counseling System has made the role of Student easiest one. The
Student /Staff feel comfortable and upgraded with this system.
Solution
Integration
(Figure - 2) Problem Solving Loop
There are various software paradigms, but we used Waterfall model (the
linear sequential model), which states that the phases are organized in a linear order.
The Waterfall model suggests a systematic, sequential approach to s/w development
that begins at the system level and progresses through analysis, design, coding,
testing, and maintenance and support as shown in below fig.3.
System
Analysis
Operations
and
Support
Installation
Report
1. The waterfall model assumes that the requirements of a system can be baseline before
the design begins. This is possible for system designed to automate an existing
manual system. For our system, (Online Counseling System) this is a new system,
determining the requirement is difficult, as the user does not even know the
requirements.
2. Freezing the requirements usually requires choosing the hardware.
3. The waterfall model stipulates that the requirements be completely specified before
the rest of the development can proceed.
4. It is a document driven process that requires formal documents at the end of each
phase. This approach tends to make the process documentation-heavy and is not
suitable for many applications (interactive applications).
The waterfall model is the most widely used process model.
8. SYSTEM DESIGN
8.1. Introduction: -
The objective of the system design is to deliver the requirements as
specified in the feasibility report. System design involves first logical design (logical
design) and then physical construction (detailed design) of the system. The logical
design describes the structure and characteristics of features, such as the outputs,
inputs, files, databases, and procedures. The physical construction produces actual
program software, files, and a working system.
System design goes through two phases of development: -
1. Logical Design
2. Physical Design
Logical Design:-
We know that a data flow diagram shows the logical flow of a system
and defines the boundaries of the system. Logical design specifies the user need at a
level of details that virtually determine the information flow into and out of the
system and the required data resources. Logical design describes the inputs, outputs,
database and procedures .All in a format that meets the user’s requirements.
Physical Design:-
It provides the working system by defining the design specification that
tells programmers exactly what that candidate system must do. In short it can state
that physical design is the implementation of the logical design.
Physical system design consists of the following-
1) Design the physical system
i. Specify input, output media
ii. Design the database and specify backup procedures.
iii. Design physical information flow through the system and a
physical design walkthrough.
2) Plan system implementation
C_
C_ code adds
C_ name
Input Design: -
The input design is a crucial part of any system errors. Inaccurate
input data are the most common cause of the errors in the processing. Data entry
errors can be controlled by input design. Input design is the process of converting
user-oriented inputs to computer –based formats .the goal of designing input data is to
make data entry as easy, logical and free from errors as possible.
Output Design: -
Computer output is the most important and direct source of
information to the users. Efficient intelligible output design should improve the
system’s relationship with the user and help in decision making. A major form of
output is a hard copy from the printer. In the system under consideration, the output is
in two forms, hard copy from the printer and output to the CRT screen in predefined
format.
Input-Output Forms: -
9. Code Design
Code design for the system follows the following pattern. The java programs for the
accessing the database server consists of functions that retrieve data and return that
data in the required format. These java functions are put into classes. These classes
are identified by the module which they service. The classes are all part of a package.
This package is used in the JSP scripting to declare objects of a particular class. Once
the objects have been declared, the functions of that object can be easily accessed by a
normal “objectName.functionName” kind of call to it. The function performs the
necessary tasks and then returns the data to the JSP script. The web server then
processes these data and prepares an HTML file to be displayed to the user. This
process is depicted in the figure.
DATABASE SERVER
Table 10.1 outlines the tests that were performed on the system to ensure correctness
and unearth errors which were subsequently debugged.
Unit The various functions within each program and the program
Testing blocks are tested for proper working.
Unit Testing will be done to test field validations, navigation, functionality of the
programs and its blocks. These tests are applied on various functions within each
program and other critical program blocks. Table 10.2 and 10.3 outline two sample
test cases for Unit Testing performed on the system
Expected Outputs
An alert window was shown whenever the user gave some erroneous
data, such as entering numbers in the name field, entering characters in numeric
fields.
Confirmation of Insertion of details was displayed on submission to the
add function, implying that the function was called properly.
Table 10.3:- Unit Testing – Test Case 2: -
Expected Outputs
The java function should return the Student Withdraw Message with
correct Rank and Roll-on of student.
Actual Test Results
This test case deals with the module creation in the Counseling module.
Expected Inputs
Expected Outputs
Expected Outputs
Integration testing is done to test the functionality and interfacing between the
modules. The system is built up of various modules which work together to automate
the activities. These modules should work together in a seamless way to achieve the
desired results. Integration testing will test for this property of the modules. The
modules display a cause and effect relationship, if data in one module is changed, then
it affects the data to change in some other module also. Integration testing needs to
check if the modifications do not adversely affect some other modules.
Table 10.6:- Integration Testing – Test Case 1: -
Expected Outputs
Once the details are registered Student and on seeing the details in the
Counseling module, the student record details are displayed.
Acceptance testing was done after the implementation of the system. The acceptance
testing will check if the system works correctly in the user environment and if all the
user specified functionalities are present. It also tests if the system adheres to the
company policies and quality standard. The On-Line Counseling system was tested
and accepted by Gnix Infosoft after the acceptance testing.
11. IMPLEMENTATION AND MAINTENANCE
11.1 Implementation:-
Implementation uses the design document to produce code. Demonstration
that the program satisfies its specifications validates the code. Typically, sample runs
of the program demonstrating the behavior for expected data values and boundary
values are required. Small programs are written using the model: -
Write/Compile/ Test
It may take several iterations of the model to produce a working program. As
programs get more complicated, testing and debugging alone may not be enough to
produce reliable code. Instead, we have to write programs in a manner that will help
insure that errors are caught or avoided.
Top-Down Implementation: -
Top down implementation begins with the user-invoked module and works
toward the modules that do not call any other modules. The implementation may
precede depth-first or breadth-first.
Bottom-Up Implementation: -
Implementation begins with modules that do not call any other modules and
works toward the main program. Test harness (see below) is used to test individual
modules. The main module constitutes the final test harness.
Stub Programming: -
Stub programming is the implementation analogue of top-down and
stepwise refinement. It supports incremental program development by allowing for
error and improvement. A stub program is a stripped-down, skeleton version of a final
program. It doesn't implement details of the algorithm or fulfill all the job
requirements. However, it does contain rough versions of all subprograms and their
parameter lists. Furthermore, it can be compiled and run. Extensive use of procedures
and parameter are the difference between stub programs and prototypes. Quick and
dirty prototypes should be improved--they should be rewritten. A stub program helps
demonstrates that a program's structure is plausible. Its procedures and functions are
unsophisticated versions of their final forms, but they allow limited use of the entire
program. In particular, it may work for a limited data set. Often the high-level
procedures are ready to call lower-level code, even if the more detailed subprograms
haven't even been written. Such sections of code are commented out. The comment
brackets can be moved, call-by-call, as the underlying procedures are actually written.
The cost of correcting errors of different phases is not the same and depends on when
the error is detected and corrected. The relative cost of correcting requirement errors
as a function of where they are detected is shown below figure-.
1000
100
50
10
One can perform cost estimation at any point in the software life cycle. As
the cost of the project depends on the nature and characteristics of the project, at any
point, the accuracy of the estimate will depend on the amount of reliable information
we have about the final product. The figure depicted below shows the accuracy of the
cost estimation.
On Size estimation of Schedule and Cost of the Project: this approach implies
that size is the primary factor for cost; other factors have lesser effect. Here we will
discuss one such model called the Constructive Cost Model (COCOMO) developed by
Boehm. This model also estimates the total effort in terms of person-months of the
technical project staff. The basic steps of this model are as follows: -
Obtain the initial estimate of the development effort from the estimate
of thousands of delivered lines of source code (KDLOC).
Determine a set of multiplying factors from different attributes of the
project.
Adjust the effort estimate by multiplying the initial estimate with all the
multiplying factors.
The initial estimate also called nominal estimate is determined by an
equation of the form used in the static single-variable models, using KDLOC as the
measure of size. To determine the initial effort Ei in person-months the equation used
is of the type
Ei = a*(KDLOC)b
In COCOMO model the values of constants a and b are different with
different type of projects. As our project is Organic type the values of a and b are 3.2
and 1.05 respectively. The total thousand delivered code (KDLOC) of our system has
been estimated as around 2.
In order to determine the multiplying factors commonly known as cost
driver attributes we have taken rating of these attributes according to our requirements.
From these, the effort adjustment factor (EAF) of our project has been estimated as
1.16.
The following books were used extensively for the project development and
implementation.
1. Chuck Musciano and Bill Kennedy (1998) “HTML: The Definitive Guide”
O’Reilly & Associates Ltd
2. George Koch and Kevin Loney. (1997) “Oracle 8, The Complete Reference”
Oracle Press Edition.
3. Herbert Schildt (2001) “The Complete Java Reference” Tata McGraw-Hill
Publishing Company Limited.
4. Marty Hall (2000) “Core Servlets and JavaServer Pages” Sun MicroSystem
Press.
5. Matthew Siple. (1998) “The Complete Guide to Java Database Programming”
Tata McGraw-Hill Publishing Company Limited.
6. Roger S. Pressman (1997) “Software Engineering, A Practitioner’s Approach”
Tata McGraw-Hill Publishing Company Limited.
7. Professional JSP, Wrox Publications.
The following Links were searched and exploited extensively for the project
development and implementation.
1. http://java.sun.com/products/jsp
2. http://www.aw.com/cseng/
3. http://jakarta.apache.org