100% found this document useful (1 vote)
145 views37 pages

Java Software Development: Dr. Santosh Kumar Dwivedi

The document is a summer training report submitted by Vaibhav for the partial fulfillment of the Bachelor of Computer Application degree. It discusses a project titled "Faculty Feedback System for Students" developed using technologies like Java, NetBeans, MySQL, and SQLyog. The project aims to build a management system for educational institutions to collect feedback from students on faculty members and automatically generate reports for administrators. It includes sections on the technologies used, introduction, system development life cycle, use case diagram, entity relationship diagram, and screenshots of the developed system.

Uploaded by

Vaibhav Gautam
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
145 views37 pages

Java Software Development: Dr. Santosh Kumar Dwivedi

The document is a summer training report submitted by Vaibhav for the partial fulfillment of the Bachelor of Computer Application degree. It discusses a project titled "Faculty Feedback System for Students" developed using technologies like Java, NetBeans, MySQL, and SQLyog. The project aims to build a management system for educational institutions to collect feedback from students on faculty members and automatically generate reports for administrators. It includes sections on the technologies used, introduction, system development life cycle, use case diagram, entity relationship diagram, and screenshots of the developed system.

Uploaded by

Vaibhav Gautam
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 37

Summer Training Report

On

JAVA SOFTWARE DEVELOPMENT


(Subject Code : BCA-508P)
Submitted in partial fulfillment of the
requirement for the award of the degree
of
BACHELOR OF COMPUTER APPLICATION
Submitted By

VAIBHAV
Under the guidance of

Dr. Santosh Kumar Dwivedi


DEPARTMENT OF COMPUTER APPLICATION
SHRI RAMSWAROOP MEMORIAL COLLEGE OF MANAGEMENT,LUCKNOW

Affiliated to
LUCKNOW UNIVERSITY,LUCKNOW
August - 2022

i
CIRTIFICATE

ii
TABLE OF CONTENT
 COVER PAGE I
 CERTIFICATE II
 ABSTARCT III
 ACKNOWLEDGEMENT IV
 DECLARATION- V
 TABLE OF CONTENTS VI
1.TECHNOLOGY USED 1-4
2. INTRODUCTION 5-6
3. SDLC 7-8
4. SDLC ACTIVITIES 9
5. DATA FLOW DIAGRAM 10-11
6. USE CASE DIAGRAM 12-13
7. E-R DIAGRAM 14
8. ACTIVITY DIAGRAM 15-16
9. TESTING PROCESS 17-18
10. WATERFALL MODEL 19
11. SCREENSHOTS 20-27
12. FUTURE SCOPE 28
13. CONCLUSION 29
14. REFERENCES 30

iii
ABSTRACT

INTRODUCTION
The Faculty Feedback System for Students is a management information system for education
establishments to get feedback from the students for the Faculty of the department. Faculty Feedback
Systems provides capabilities for sort out particular Faculty for feedback and provide the report automatically in
the college. A Faculty Feedback System is an automatic feedback generation system that stores the sorted
feedback for the Admin as per the categories.

METHODOLOGY
In the Faculty Feedback System for Student, a student needs to login through his/her own id in order to provide
a feedback for the respective Faculty member. This provides a much faster, safer, and ecological mode of
feedback among those which are present out there. Students can now Access and Provide there feedback even
from there home and at any time posible. The Admin Module is also provided in this Project as it is important
for the proper working and management of the system as the Admin module is important to add new Faculty
members and also to view the feedback of the students.

RESULT
The Above Project will assist us to improve the numerous types skills like designing a module, providing it’s
backend code(Java), use of Database, Testing of the Project and other skills. The students will be get introduced
to new technologies which circulated in today’s time. This might consequence in improvement and introduction
of new and useful skills which would Benefit the studends in the future of Software Engineering.

iv
ACKNOWLEDEMENT

I want to grab this occasion to exhibit our sincere gratitude to everyone who guided us at every step of this
project and mold this report for the Project Titled Faculty Feedback System For Student. The execution of all
the task is not only the award for us, but also to everyone involved in the motivating, guiding and helping us. I
would like to persue the opportunity to thank everyone who have helped us in completion of the project, which
would be a massive task to complete alone. Still the project couldn’t be possible without the care and support
of many peoples.

I would like to exhibit my immense pleasure and gratitude towards our Summer Training Coordinator, Dr.
Santosh Kr. Dwivedi, honorable HEAD OF DEPARTMENT of Department of Bachelor’s in Computer Application
(SRMCM) and the faculties of the Analyze Infotech. I am extremely beholden to them for guiding and providing
support in development of the project to this stage, which would be much difficult for the project report to
without the help and support. I am also grateful to my parents and God without whose grace nothing is
possible.

Thanking You.

Vaibhav

BCA(202040040054)

Shri Ram Swaroop Memorial College of Management

v
DECLARATION

I the undersigned solemnly declare that the project report is predicated on my own work carried out during our
study under the supervision of our summer training coordinator respected H.O.D. of BCA Department, Dr.
Santosh Kumar Dwivedi. I assert the statements made and conclusions drawn are an outcome of my research
work. I further certify that:
I. The work contained within the report is original and has been done by me under the general supervision of
my supervisor.
II. The work has not been submitted to the other Institution for any other: degree/diploma/certificate in this
university or any other University of India or abroad.
III. we've followed the guidelines provided by the university in writing the report.
IV. Whenever we've used materials (data, theoretical analysis, and text) from other sources, we've given due
credit to them in the text of the report and giving their details in the references.

Signature of Students
(Vaibhav)

vi
TECHNOLOGIES USED

FRONT-END
JAVA: - JAVA is a popular general-purpose programming language and computing platform. It is fast, reliable,
and secure. According to Oracle, the company that owns Java, Java runs on 3 billion devices worldwide.
Considering the number of Java developers, devices running Java, and companies adapting it, it's safe to say
that Java will be around for many years to come. This guide will provide everything you need to know about
Java programming language before you learn it. More specifically, you will learn about features of Java
programming, its applications, reasons to learn it, and how you can learn it the right way. Java is one among the
most popular and widely used programming languages.
o Java has been one among the most popular programming languages for many years.

o Java is Object Oriented. However, it's not considered as pure object-oriented as it provides
support for primitive data types (like int, char, etc)

o The Java codes are first compiled into byte code (machine-independent code). Then the byte code
runs on Java Virtual Machine (JVM) no matter the underlying architecture.

o Java syntax is analogous to C/C++. But Java doesn't provide low-level programming
functionalities like pointers. Also, Java codes are always written within the form of classes and
objects.

o Java is employed in all kinds of applications like Mobile Applications (Android is Java-based),
desktop applications, web applications, client-server applications, enterprise applications, and lots
of more.

1
APACHE NETBEANS: -

NetBeans IDE is a free and open source integrated development environment for application
development on Windows, Mac, Linux, and Solaris operating systems. The IDE simplifies the
development of web, enterprise, desktop, and mobile applications that use the Java and HTML5
platforms. NetBeans has a very good GUI designer for Swing and JavaFX but that's not for
beginners.

2
BACK-END

MySQL may be a fast, easy-to-use RDBMS used for many small and big businesses. MySQL is developed,
marketed and supported by MySQL, which may be a Swedish company. MySQL is becoming so popular due to
many good reasons −

• MySQL is released under an open-source license. So, you've got nothing to pay to use it.

• MySQL may be a very powerful program in its own right. It handles an outsized subset of the
functionality of the most expensive and powerful database packages.

• MySQL uses a typical form of the well-known SQL data language.

• MySQL works on many operating systems and with many languages including PHP, PERL, C, C++,
JAVA, etc.

• MySQL works very quickly and works well even with large data sets.

• MySQL is extremely friendly to PHP, the foremost appreciated language for web development.

• MySQL supports large databases, up to 50 million rows or more during a table. The default file size
limit for a table is 4GB, but you'll increase this (if your operating system can handle it) to a theoretical
limit of 8 million terabytes (TB).

3
SQLyog:

provides you with powerful means to manage your MySQL databases.

• Runs on all Windows version from Vista/2008 and better as well as "Windows Server"
systems of same generations (Windows Server 2008 and higher).

• Works with MySQL servers from 4.1 and better and all MariaDB servers.

• Create/Drop/Alter Tables, Stored Procedures, Functions, Views, Triggers and Events.

• HTTP and SSH Tunneling - smartly manage your MySQL server whether the MySQL port is
blocked or remote access to MySQL is disallowed!

• Protect your data with SSL encryption.

• Smart AutoComplete.

4
INTRODUCTION
BACKGROUND
In the fast-growing world, information technology and knowledge management systems are visiting play an
important role. We sleep in the digital world during past some year. The computer has gaining popularity.
Computer revolution found its way into almost every aspect of human life and living. A computer is admirably
suited to handle any information and hence is an information processor that’s, it can receive data, perform some
basic operations thereon data and produces results consistent with a predetermined program.
This Software is used mainly for faculty feedback to maintain the details of faculty such as feedback given by the
student.
The “FACULTY FEEDBACK MANAGEMENT SYSTEM FOR STUDENTS” could also be a method of
gathering anonymous feedback from students about what is helping them learn evaluation of teachers (time
management, subject command, communication skill, class control, guidance).

OBJECTIVES

Today’s world is computer as assisted because most of the labor is done with the assistance of computer. Behind
this dependency on computer there are few reasons. We cannot easily manage to store massive amount of data

5
and information single handle. If we'll be needing some of the information or data in urgency, then we can’t
manage to manually get these data which would be much difficult if we cannot use computer.

This project aims to live the overall performance of faculty. This project contains a feedback form which is to be
duly filled by a student after login using his/her username and password.

It is a MIS application thus, suitable to satisfy today’s requirement of completing a task with minimum possible
time and with ease.

System Objective

This project may be a software for the Faculty Feedback System for Students in record keeping of the
functioning of faculty of an institute.

It is a MIS application thus, suitable to satisfy today’s requirement of completing a task with minimum possible
time and with ease.

System Context

This section clearly depicts the environment and limits of the Faculty Feedback System and the entities with
which it interacts. It helps us see how the system fits into the prevailing scheme of things. What the system will
treat itself.

Functional Requirement
This Software must request Username and Password to provide the access to users, only authentication will allow
access to the system. The Software must allow input of products data from administrator and secured access.

Non-Functional Requirement
In this Software Input error will be returned in red with appropriate message box. System should automatically
update after every transaction.

6
SYSTEM DEVELOPMENT LIFE CYCLE
The System development life cycle (SDLC), or Software development processing systems engineering,
information systems and software engineering, may be a process of creating or altering information systems, and
therefore the models and methodologies that people use to develop these systems. In software engineering, the
SDLC concept underpins many sorts of software development methodologies. These methodologies form the
framework for planning and controlling the creation of an data system the software development process.

Broadly, following are the various activities to be considered while defining the system development life cycle
for the said project:

Planning and requirement analysis


Requirement Analysis is the most important and necessary stage in SDLC. The senior members of the team
perform it with inputs from all the stakeholders and domain experts or SMEs in the industry. Planning for the
quality assurance requirements and identifications of the risks associated with the projects is also done at this
stage. Business analyst and Project organizer set up a meeting with the client to gather all the data like what the
customer wants to build, who will be the end user, what is the objective of the product. Before creating a product,
a core understanding, or knowledge of the product is very necessary.

7
Defining Requirements:
Once the requirement analysis is done, the next stage is to certainly represent and document the software
requirements and get them accepted from the project stakeholders.

This is accomplished through "SRS"- Software Requirement Specification document which contains all the
product requirements to be constructed and developed during the project life cycle.

Designing Architecture:
The next phase is about to bring down all the knowledge of requirements, analysis, and design of the software
project. This phase is the product of the last two, like inputs from the customer and requirement gathering.

Developing Product:
In this phase of SDLC, the actual development begins, and the programming is built. The implementation of
design begins concerning writing code. Developers have to follow the coding guidelines described by their
management and programming tools like compilers, interpreters, debuggers, etc. are used to develop and
implement the code.

Product Testing and Integration:


After the code is generated, it is tested against the requirements to make sure that the products are solving the
needs addressed and gathered during the requirements stage.

During this stage, unit testing, integration testing, system testing, acceptance testing is done.

Deployment and Maintenance of Product:


After testing, the overall design for the software will come together. Different modules or designs will be
integrated into the primary source code through developer efforts, usually by leveraging training environments to
detect further errors or defects.

Maintenance:
Once when the client starts using the developed systems, then the real issues come up and requirements to be
solved from time to time. This procedure where the care is taken for the developed product is known as
maintenance.

8
SDLC ACTIVITIES

SDLC provides a series of steps to be followed to design and develop a software product efficiently
SDLC framework includes the following steps

Communication:
This is the first step where the user initiates the request for a desired software product. He contacts the service
provider and tries to negotiate the terms. He submits his request to the service providing organization in writing.

Requirement Gathering:

This step onwards the software development team works to carry on the project. The team holds discussions with
various stakeholders from problem domain and tries to bring out as much information as possible on their
requirements. The requirements are contemplated and segregate. into user requirements, system requirements and
functional requirements. The requirements are collected using a number of practices as given
Studying the existing or obsolete system and software,
Conducting interviews of users and developers,
Referring to the database or collecting answers from the questionnaire.

9
DATA FLOW DIAGRAM
Context Level Data Flow Diagram
This level shows the overall context of the system and its operating environment and shows the whole
system as just one process. Online book store is shown as one process in the context diagram; which is also
known as zero level DFD, shown below. The context diagram plays important role in understanding the
system and determining the boundaries. The main process can be broken into sub-processes and system can
be studied with more detail; this is where 1st level DFD comes into play.

STUDENT

Request FACULTY FEEDBACK SYSTEM


FACULTY

10 ADMIN
Zero Level Data Flow Diagram

First Level DFD


This level (level 1) shows all processes at the first level of numbering, data stores, external entities and the data
flows between them. The purpose of this level is to show the major high-level processes of the system and their
interrelation. A process model will have one, and only one, level-1 diagram. A level-1 diagram must be balanced
with its parent context level diagram, i.e. there must be the same external entities and the same data flows, these
can be broken down to more detail in the level 1.

Add Faculty Subject


ADMIN

Add Subject Faculty Information


STUDENT
Login

Subject Allotment Faculty Feedback

11
View report
Student
Login
Information

One level data flow diagram

USE CASE DIAGRAM


In UML, use-case diagrams model the behavior of a system and help to capture the wants of the system. Use-
case diagrams describe the high-level functions and scope of a system. These diagrams also identify the
interactions between the system and its actors. the utilization cases and actors in use-case diagrams describe what
the system does and how the actors use it, but not how the system operates internally. Use-case diagrams
illustrate and define the context and requirements of either a whole system or the important parts of the system.
you'll model a complex system with a single use-case diagram or create many use-case diagrams to model the
components of the system. you'd typically develop use-case diagrams in the early phases of a project and refer to
them throughout the development process.
Use-case diagrams are helpful within the following situations:
Before starting a project, you'll create use-case diagrams to model a business so that all participants in the project
share an understanding of the workers, customers, and activities of the business.
While gathering requirements, you'll create use-case diagrams to capture the system requirements and to present
to others what the system should do.
During the analysis and style phases, you'll use the use cases and actors from your use-case diagrams to identify
the classes that the system requires.
During the testing phase, you'll use use-case diagrams to identify tests for the system

12
Update File Record

Insert Student and Staff Record

View, Search, Insert, Update and


Delete Records

Admin Faculty
View Feedback Results

Give Feedback
13
View Feedback Result of Own Subject

Feedback Result of Department

Student HOD
Feedback Result of Department

ENTITY RELATION DIAGRAMS


The Entity Relation Model or Entity Relation Diagram (ERD) is a data model or diagram for high-level
description of conceptual data model, and it provides a graphical notation for representing such data models in
the form of entity relationship diagrams. Such models are typically used in the first stage of Management
information system design; they are used for example, to describe information needs and/ or the type of
information that is to be stored in the Database during the requirement analysis. The data modelling technique,
however, can be used to describe any ontology (i.e. an overview and classification of used term and their
relationships) for a certain universe of discourse (i.e. area of interest).

In the case of design, a Management Information System that is based on a database, the conceptual data model
is, a later stage (usually called logical design), mapped to a logical data model such as, relational data model; this
is turn in mapped to a physical model during physical design. Note that sometimes, both phases are referred a
“physical design”. There are number of conventions for entity-relation diagrams (ERDs). The classical notation
is described in the remainder of this article, and mainly related to the conceptual modelling. There is a range of
notation more typically employed in physical and logical database design.

PSWD
COURSE
SUB_ID

has SUBJECT_REGIST
LOGIN

TYPE
SUB_NAME
SUB_ID

has
has 14
FACULTY_ID

feedback

DEPARTMENT
FACULTY_NAM
E

COURSE

ACTIVITY DIAGRAM
Activity diagram is another important diagram in UML to describe the dynamic aspects of the system.
Activity diagram is basically a flowchart to represent the flow from one activity to another activity. The activity
can be described as an operation of the system.
The control flow is drawn from one operation to another. This flow can be sequential, branched, or concurrent.
Activity diagrams deal with all type of flow control by using different elements such as fork, join, etc
The basic purposes of activity diagrams is similar to other four diagrams. It captures the dynamic behaviour of
the system. Other four diagrams are used to show the message flow from one object to another, but activity
diagram is used to show message flow from one activity to another.
Activity is a particular operation of the system. Activity diagrams are not only used for visualizing the dynamic
nature of a system, but they are also used to construct the executable system by using forward and reverse
engineering techniques. The only missing thing in the activity diagram is the message part.
It does not show any message flow from one activity to another. Activity diagram is sometimes considered as the
flowchart. Although the diagrams look like a flowchart, they are not. It shows different flows such as parallel,
branched, concurrent, and single.
The purpose of an activity diagram can be described as −
 Draw the activity flow of a system.
 Describe the sequence from one activity to another.
 Describe the parallel, branched and concurrent flow of the system.

15
Login for Feedback System

Start

Check User Level Permission

Check Check Check Check


Permission Permission Permission Permission

16
Manage Manage Manage Manage
Student Feedback Faculty Subject

Logout from System END


TESTING
System Testing: -
Black box testing method was used for system testing. The black box testing usually demonstrates
that software functions are operational; that the input is properly accepted, and the output is correctly produced;
and that integrity of external information (databases) is maintained.

Testing Principles

 To discover as yet undiscovered errors.


 All tests should be traceable to customer’s requirement.
 Tests should be planned long before the testing actually begins.
 Testing should begin “in the small” & progress towards “testing in the large”.
 Exhaustive Testing is not possible.
 To be most effective training should be conducted by an Independent Third Party

Testing Objectives

 Testing is a process of executing a program with the intent of finding errors.


 A good test case is one that has a high probability of finding an as yet undiscovered error.

 A successful test is one that uncovers a yet undiscovered error.


Kinds of Testing:

17
Black Box Testing- Not based on any knowledge of internal designs or code. Tests are based on
requirements and functionality.

White Box Testing- Based on the knowledge of the internal logic of an application’s code. Tests are based
on coverage of code statements, branches, paths and statements.

Unit Testing- The most ‘micro’ scale of testing; to test functions and code modules. Typically done by the
programmer and not by the testers, as it requires detailed knowledge of the internal program design and code.
Not always easily done unless the application has a well-designed architecture with tight code; may require
developing test driver modules or test harnesses.

Integration Testing- Testing of combined parts of an application to determine if they function together
correctly. The ‘parts’ can be code modules, individual applications, client and server applications on a network,
etc. This type of testing is especially relevant to client/ server and distributed systems.

Functional Testing- Black-box type testing geared to functional requirements of an application; testers
should do this type of testing. This doesn’t mean that the programmers shouldn’t check that their code works
before releasing it.

Regression Testing- Re-testing after fixes or modifications of the software or its environment. It is difficult
to determine how much re testing is needed, especially near the end of the development cycle. Automated testing
tools can be especially useful for this type of testing.

Acceptance Testing- Final testing based on the specifications of the end user or customer or based on use by
end-users/ customers over some limited period of time.

User Acceptance Testing- Determining if software is satisfactory to an end user customer

Testing Technique Used:

We will continuously test our project to ensure that it is fully functional. In order to perform testing test cases are
designed with the intent of finding the errors in the project and help in removing those errors. Testing begins at
the module level and is conducted systematically. It is generally conducted by independent test groups or third
party.
Testing is done in our project Faculty Feedback System with help of black box testing that exercise all the
functional requirement of the project test cases are designed using this approach by providing set of input
conditions to get the expected output.

18
WATERFALL MODEL
Waterfall Model - Design
Waterfall approach was first SDLC Model to be used widely in Software Engineering to ensure success of the
project. In "The Waterfall" approach, the whole process of software development is divided into separate phases.
In this Waterfall model, typically, the outcome of one phase acts as the input for the next phase sequentially.
The following illustration is a representation of the different phases of the Waterfall Model.

The sequential phases in Waterfall model are −


 Requirement Gathering and analysis − All possible requirements of the system to be developed are
captured in this phase and documented in a requirement specification document.
19
 System Design − The requirement specifications from first phase are studied in this phase and the system
design is prepared. This system design helps in specifying hardware and system requirements and helps in
defining the overall system architecture.
 Implementation − With inputs from the system design, the system is first developed in small programs
called units, which are integrated in the next phase. Each unit is developed and tested for its functionality,
which is referred to as Unit Testing.
 Integration and Testing − All the units developed in the implementation phase are integrated into a
system after testing of each unit. Post integration the entire system is tested for any faults and failures.
 Deployment of system − Once the functional and non-functional testing is done; the product is deployed
in the customer environment or released into the market.
 Maintenance − There are some issues which come up in the client environment. To fix those issues,
patches are released. Also, to enhance the product some better versions are released. Maintenance is done
to deliver these changes in the customer environment.
SCREENSHOTS
Login window:

Main window :

20
Faculty reistration :

21
Faculty details :

Subject registration:

22
Subject allotment :

Update subject allotment :

23
Student panel :

24
Main window as a student :

Faculty feedback :

TABLE SCREENSHOTS
Login Table: -

25
Subject Allotment: -

Faculty Information: -

26
Feedback Information: -

Feedback Questions: -

27
SCOPE
28
It can be summarized that the future scope of the project circle around maintaining information
regarding :

 We can add printer in future.


 We can give more advance software for college feedback system including more facilities.
 We will host the platform on online server to make it assessable worldwide.
 Implemented the backup mechanism for taking backup of codebase and databases on regular basis on
different server.

The above-mentioned points are the enhancement which can be done to increase the applicability and
usage of this project. Here we can maintain the records of college and feedback. Also, as now a day the
players are versatilities. so there is a scope for introducing a method to maintain the college feedback
system. Enhancement can be done to maintain all the college, faculty, student, feedback, principle,
college, teacher.

We have left all the option so that there are any other future requirements in the system by the
user for the enhancement of the system then it is possible to implement them. In the last we would like to
thanks all the persons involved in the development of the system directly or indirectly.

CONCLUSION

29
The software will be developed by implementing the concept of modularity which in turn reduces the complexity
involved in maintaining it. The administrator should have a sound technical knowledge about maintaining the
software and further enhancements will be undertaken by the developer.
The application is portable which ensure its adaptability for use on different computer terminals with different
operating system and standards.
The factors guarantee the software’s availability includes proper termination and correct input details. Also, the
resources used for the project development are Microsoft certified which speaks of its high-quality standards.
Hence, we may conclude that the application system being developed helps a great deal in modifying the
computerized Alumni Management System.

Goal achieved: The System is able provide the interface to the user so that he can replicate his desired data.

User friendliness: Though the most part of the system is supposed to act in the background, efforts have been
made to make the foreground interaction with user as smooth as possible. Also, the integration of the system with
Alumni Management project has been kept in mind throughout the development phase.

REFRENCES
Reference websites

https://www.javatpoint.com/software-engineering-tutorial

30
https://www.w3schools.com/java/java_intro.asp

https://www.w3schools.com/java/java_oop.asp

https://www.guru99.com/software-testing

Reference Books

Head First Java, 2nd Edition

Fundamentals of Software Engineering, Rajib Mall


Software engineering: Ronald J. Leach, "Introduction to Software Engineering", (Second Edition), Howard
University Washington, DC, USA, 2016.
Roger S. Pressman, Software Engineering, 3rd edition by McGraw Hill International, April 2002

31

You might also like