E0 internship doc

Download as pdf or txt
Download as pdf or txt
You are on page 1of 40

Full Stack Java

A Summer Internship Report submitted in partial fulfillment of the


requirements for the award of a degree of

BACHELOR OF TECHNOLOGY
In
ELECTRONICS AND COMMUNICATION ENGINEERING

Submitted by:

VOLETI HEMENDRA VARMA


22P31A0449

Electronics and Communication Engineering


ADITYA COLLEGE OF ENGINEERING & TECHNOLOGY (A)
Approved by AICTE, Permanently affiliated to JNTUK & Accredited by NAAC with ‘A+’ Grade

Recognized by UGC under the sections 2(f) and 12(B)of the UGC act 1956
Aditya Nagar, ADB Road –Surampalem 533437, E.G. Dist., A.P.,

2024-2025.

i
ADITYA COLLEGE OF ENGINEERING & TECHNOLOGY (A)
Approved by AICTE, Permanently Affiliated to JNTUK & Accredited by NAAC with ‘A+’ Grade
Recognized by UGC under the sections 2(f) and 12(B) of the UGC act 1956
Aditya Nagar, ADB Road - Surampalem – 533437, E.G.Dist., A.P.,

Department of Electronics and Communication Engineering

CERTIFICATE

This is to certify that the Internship report entitled “Full


Stack Java” is being
submitted by VOLETI HEMENDRA VARMA (22P31A0449). In partial fulfillment of
the requirements for award of the BTech degree in Electronics and Communication
Engineering for the academic year 2024-2025.

Internship Guide Head of the Department

Mr. K.JAYRAM Kumar, M. Tech, (Ph.D) Dr. R. V. V Krishna, MTech,Ph.D.


Sr.Assistant Professor Professor & HOD

ii
DECLARATION

I hereby declare that the Internship entitled Full Stack Java is a genuine report.
This work has been submitted to the ADITYA COLLEGE OF ENGINEERING &
TECHNOLOGY (A), Surampalem, permanently affiliated to JNTUK, KAKINADA in
partial fulfillment of the BTech degree.

I also hereby declare that this internship report is not submitted in full or partial
to any other university for any degree.

VOLETI HEMENDRA VARMA


22P31A0449

iii
iv
INTERNSHIP COMPLETION CERTIFICATE

v
ACKNOWLEDGEMENT

I offer my sincere thanks to the dynamic and beloved Principal, Dr. A. Ramesh, M.

Tech;Ph.D, Aditya College of Engineering & Technology (A) for his cooperation.My
sincere thanks to Dr. R V V Krishna, M.Tech., Ph.D. Head of the Department of Electronics
and Communication Engineering for his valuable support.I express my sincere gratitude
to my internship guide, .k. jayram kumar,M.Tech, (PhD) Sr.assistant Professor, Department of
Electronics and Communication Engineering, for his valuable guidance and
encouragement which has been helpful in the successful completion of this
internship.With immense pleasure, I would like to express my deep sense and heart full
thanks to the management of Aditya College of Engineering & Technology (A).

vi
Learning Objectives / Internship Objectives

1. Understand Industry Standards: Gain exposure to real-world engineering


practices and industry standards.
2. Enhance Technical Skills: Apply theoretical knowledge to practical scenarios,
focusing on key technical skills relevant to the field.
3. Develop Problem-Solving Abilities: Enhance critical thinking by solving
complex technical challenges under professional guidance.
4. Hands-On Experience: Operate advanced tools, technologies, and software used
in the industry.
5. Project Management Skills: Learn to plan, execute, and manage engineering
projects from start to finish.
6. Effective Communication: Develop professional communication skills for
reporting, presenting, and teamwork.
7. Team Collaboration: Work in multidisciplinary teams to understand the
dynamics of team-based projects.
8. Explore Emerging Technologies: Gain insights into cutting-edge technologies
and trends within the engineering field.
9. Implement Best Practices: Learn and apply best practices for safety, quality
assurance, and efficiency in technical work.
10. Research and Development Skills: Conduct research to innovate or improve
existing processes, systems, or products.
11. Time Management: Develop the ability to manage project timelines, prioritize
tasks, and meet deadlines effectively.
12. Gain Industry Insights: Understand the business and economic aspects of
engineering, including project costing and resource management.
13. Networking Opportunities: Build professional relationships and networks with
mentors, peers, and industry experts.
14. Documentation and Reporting: Learn the importance of maintaining proper
documentation, technical reports, and data analysis.
15. Career Preparation: Gain clarity on future career paths, identify potential
specializations, and prepare for job interviews or higher studies in the engineering
domain.

vii
INDEX
S.NO CONTENT PAGE
NO
1 Executive Summary 1
2 Overview of the Organization 2-4
3 Internship part 5
3.1.1 Activity log for the first week 6
3.1.2 Weekly report 1 7
3.2.1 Activity log for the second week 8
3.2.2 Weekly report 2 9
3.3.1 Activity log for the third week 10
3.3.2 Weekly report 3 11
3.4.1 Activity log for the fourth week 12
3.4.2 Weekly report 4 13
3.5.1 Activity log for the fifth week 14
3.5.2 Weekly report 5 15
3.6.1 Activity log for the sixth week 16
3.6.2 Weekly report 6 17
3.7.1 Activity log for the seventh week 18
3.7.2 Weekly report 7 19
3.8.1 Activity log for the eighth week 20
3.8.2 Weekly report 8 21
4 Outcomes description 22
4.1 Overview of the internship 22
4.2 Project details 22
4.2.1 Overview of the project 22
4.2.2 Project architecture 22
4.2.3 Resources used in the project 23
4.2.4 Technical flow of the project 23
4.2.5 Goals of the project 24
viii
4.2.6 Outcomes of the project 24
4.3 Key outcomes achieved 24-25
Student Self-Evaluation of the Short-Term Internship 26
Evaluation by the Supervisor of the Intern Organization 27

ix
CHAPTER 1: Executive Summary

This report outlines my experience with full-stack Java development at SkillDzire. The
internship focused on gaining hands-on experience in developing web applications using
Java, Spring Boot, and React. Key learning objectives achieved during the internship
include:

1. Java Development Foundations: Learned core Java, Object-Oriented


Programming (OOP) concepts, and Java libraries used in web development.

2. Back-End Development: Worked with Spring Boot for server-side development,


RESTful APIs, and database interactions using MySQL.

3. Front-End Development: Built responsive user interfaces with React and


JavaScript, managing state and handling API responses.

4. Project Development Lifecycle: Gained insight into the Agile methodology,


working through sprints and delivering functional components incrementally.

A significant portion of the internship emphasized security and project management.


Through Spring Security, I implemented basic authentication and data protection, gaining
essential skills in securing web applications. The project also adhered to Agile practices,
with tasks organized into sprints that allowed for iterative development, regular feedback,
and adjustments to meet project goals effectively.
The internship culminated in a capstone project, where I developed a complete,
functional CRUD application. This project demonstrated proficiency in full-stack
application development, including front-end and back-end integration, security, and user
interface responsiveness. My experience with SkillDzire has equipped me with valuable
skills for real-world application development, preparing me for a career in software
engineering and full-stack development.

1
CHAPTER 2: Overview of the Organization

1.Introduction of the Organization


SkillDzire is an established IT training and solutions provider that specializes in
delivering industry-relevant skills and practical knowledge across key domains,
including full-stack development, cloud computing, DevOps, and cybersecurity.
Focused on bridging the gap between academic learning and industry requirements,
SkillDzire aims to prepare students and professionals with in-demand technical skills.
The company collaborates with industry experts to ensure high-quality training,
thereby making graduates more competitive and job-ready.

2.Vision, Mission, and Values of the Organization

Vision:

SkillDzire envisions becoming a leader in technology training by providing hands-on


experience and skill development to empower students and professionals, preparing
them to excel in the rapidly evolving IT industry.

Mission:

The mission of SkillDzire is to bridge the IT skills gap through innovative, hands-on
training programs that focus on the latest technologies. By equipping learners with
practical and project-based knowledge, SkillDzire aims to enhance the employability
of students and enable professionals to advance in their careers.

Values:

SkillDzire’s core values are quality, innovation, integrity, and continuous learning
These values guide the organization’s commitment to delivering top-notch training,
fostering an inclusive learning environment, and adapting to the ever-evolving
technological landscape.

1. Policy of the Organization in Relation to the Intern Role


SkillDzire places a high value on experiential learning, with a policy focused on
practical skill acquisition, active engagement, and project-based assignments for

2
interns. Interns are encouraged to take on real-world projects, apply their knowledge in
a team environment, and develop a robust understanding of full-stack development
through structured mentorship. The organization ensures a safe and collaborative
learning environment where interns can practice problem-solving, critical thinking,
and hands-on coding under expert supervision. Regular feedback sessions are held to
ensure interns are meeting learning objectives and gaining valuable insights.

2. Organizational Structure
SkillDzire follows a structured organization model to ensure efficient training delivery
and business operations. Key departments include:

 Training Department: Led by experienced instructors and curriculum developers,


this department focuses on designing and delivering technology courses, hands-on
labs, and assessments to ensure skill mastery.

 Development Department: Responsible for creating and managing internal


software and resources used in training, this team also collaborates with the
training department for real-world project guidance.

 Sales and Marketing Department: This department manages outreach and client
engagement, promoting SkillDzire’s training offerings to a wider audience and
establishing partnerships with academic institutions and businesses.

 Support and Administration: Handles all logistics, administrative support, and


customer service to provide a seamless experience for both students and
instructors.

3. Roles and Responsibilities of the Employees in Which the Intern is Placed


As a Full-Stack Java intern, I worked closely with the development team
and training instructors. Key responsibilities of employees in this
department included:

 Full-Stack Developers: Designed and implemented web application


components, guided interns through hands-on projects, and provided
feedback on code quality and best practices in development.

3
 Training Instructors: Delivered technical content, facilitated workshops,
and supported interns in understanding fundamental concepts of full-
stack Java development, Spring Boot, and React.

 Project Mentors: Assigned to provide guidance, answer questions, and


evaluate progress, project mentors ensured interns received practical
exposure to industry-relevant projects, while also fostering a supportive
learning environment.

4
CHAPTER 3: Internship Part

During my internship at SkillDzire, I had the opportunity to immerse myself in a


professional and collaborative environment focused on full-stack Java development. The
organization fostered a dynamic work atmosphere that was both challenging and
supportive, allowing me to engage in hands-on learning and apply full-stack technologies
to real-world projects. This experience significantly enriched my understanding of Java-
based development and its applications in modern web technologies.

The company promoted a culture of continuous learning, where creativity and innovation
were highly encouraged. Regular interactions with seasoned developers, project managers,
and software architects provided me with invaluable insights into best practices in coding,
design, and industry standards. I had the opportunity to shadow experienced full-stack
developers, gaining exposure to not only technical skills but also approaches for
systematic problem-solving and code optimization. These interactions offered a
comprehensive view of the development lifecycle, from planning and designing to coding,
testing, and deployment.

I was able to work on independent projects as well as collaborative tasks, contributing to


the development of user interfaces, APIs, and back-end logic. The work environment
supported autonomy, allowing me to take the lead on small components within projects
while receiving guidance from my mentors. My mentors were always available to provide
feedback, address questions, and ensure steady progress on my assignments. This balance
between independence and mentorship helped me build both technical expertise and
professional confidence.

Open communication was a cornerstone of the work culture at SkillDzire. Weekly team
meetings were essential to the workflow, fostering a sense of shared responsibility and
transparency. During these meetings, we reviewed project milestones, discussed challenges,
shared insights, and set achievable goals for the upcoming week. I was encouraged to
actively participate, which allowed me to track my development, gain exposure to

5
collaborative work practices, and further enhance my communication and presentation
skills.

WEEKLY OVERVIEW OF INTERNSHIP ACTIVITIES

3.1.1 ACTIVITY LOG FOR THE FIRST WEEK

Brief Description of Daily Learning


Date Day
Activity Outcomes

Introduction to Full Stack


Development Overview of Full
27-05-24 Stack concepts
Monday

Introduction to Java and its Basic Java


28-05-24 Tuesday environment setup
1stWEEK

Variables, Data Types, and


Operators in Java
Java
29-05-24 Wednesday
fundamentals

Control Structures in Java (if,


switch, loops)
Basic control
30-05-24 Thursday
structures

Functions and Methods in Java

31-05-24 Friday Writing


methods in
Java

6
Object-Oriented Programming Understanding
(OOP) Concepts OOP
01-06-24 Saturday

3.1.2 WEEKLY REPORT 1

WEEK – 1 (From 07-06-24 to 13-06-24)

Objective of the Activity Done: Introduce learners to Full Stack Development and Java
fundamentals, focusing on foundational programming concepts and environment setup.

Detailed Report:
In the first week, the course introduced students to Full Stack Development and basic
Java programming. The week began with an overview of Full Stack development,
explaining the front-end, back-end, and database layers, and the importance of integrating
them for complete application development. After this introductory session, students set
up the Java Development Environment, familiarizing themselves with essential tools like
the JDK, IntelliJ IDEA, or Eclipse. Following this, students dove into core Java concepts,
starting with variables, data types, operators, control structures, and functions. This
foundational knowledge enabled them to write basic Java programs and understand
program flow control. Although the week was productive, a few students encountered
challenges with environment setup and control structures, but these were addressed

7
through guided practice. By the end of the week, students had built a solid understanding
of Java basics, setting the stage for object-oriented programming in the coming weeks.

3.2.1 ACTIVITY LOG FOR THE SECOND WEEK

Date Day Brief Description of Daily Learning


Activity Outcomes

03-06-24 Monday Classes and Objects in Implementin


Java g OOP with
2nd WEEK

classes

04-06-24 Tuesday Inheritance and OOP


Polymorphism in Java advanced
concepts

8
05-06-24 Wednesday Encapsulation and Data hiding and
Abstraction abstraction

06-06-24 Thursday Exception Handling in Error handling


Java techniques

07-06-24 Friday File Handling in Java

Reading/Writ
ing files

08-06-24 Saturday Introduction to Java


Collections (List, Set, Basic collection
Map) handling

3.2.2 WEEKLY REPORT 2

WEEK – 2 (From 14-06-24 to 20-06-24)

Objective of the Activity Done: Deepen understanding of Object-Oriented


Programming (OOP) principles in Java, covering classes, inheritance, polymorphism,
encapsulation, and exception handling.
Detailed Report:
The second week focused on teaching Object-Oriented Programming (OOP) principles in
Java, which is fundamental for building scalable and organized code. Students were

9
introduced to key OOP concepts, including classes, objects, inheritance, encapsulation,
and polymorphism. Practical exercises involved creating Java classes and using
inheritance to establish relationships between them, which reinforced the importance of
reusability in OOP. Exception handling was also covered to help students manage errors
effectively and maintain application stability. Additionally, students explored Java
collections like Lists, Sets, and Maps, essential for data storage and manipulation. While
most students adapted well, some needed additional guidance to distinguish between
inheritance and polymorphism, and extra practice sessions were arranged for working
with collections. This week laid a strong foundation in OOP, preparing students for more
advanced programming topics in the following weeks.

3.3.1 ACTIVITY LOG FOR THE THIRD WEEK


W

K
E
E
3

d
r

Brief Description of Daily Learning


Date Day
Activity Outcomes

10
Advanced Java Collections
10-06-24 Monday Collections framework
usage

Introduction to Java
Streams
Stream API
11-06-24 Tuesday
basics

Lambda
Expressions in Java
Functional
12-06-24 Wednesday programming
in Java

Building a Simple
Java Console
Application Project
13-06-24 Thursday structuring

Introduction to
Databases and SQL
Database
14-06-24 Friday
basics

11
Setting up MySQL
and connecting it
Database
with Java connectivity
15-06-24 Saturday

3.3.2 WEEKLY REPORT

WEEK – 3 (From 21-06-24 to 27-06-24)

Objective of the Activity Done: Introduce advanced Java collections, functional


programming concepts, and basic database interaction.
Detailed Report:
Week three expanded on Java collections by introducing advanced data manipulation
techniques using Streams and Lambda expressions, which are essential for functional
programming in Java. Students also worked on a simple console application project to
apply these new skills in a practical context. Towards the end of the week, database
basics were introduced, focusing on SQL and setting up MySQL. This provided students
with a comprehensive view of data storage, retrieval, and manipulation, a crucial
component of back-end development. Challenges included understanding Lambda
expressions and setting up database connectivity, which required additional
troubleshooting and support. With a growing understanding of collections and database
fundamentals, students are now prepared to handle CRUD operations with Java and
MySQL in the next phase of the course.

12
3.4.1 ACTIVITY LOG FOR THE FORTH WEEK

Date Day Brief Description of Daily Learning


Activity Outcomes
17-06-24 Monday CRUD Operations with
Java and MySQL
Database
manipulation

18-06-24 Tuesday JDBC (Java Database


Connectivity) Basics
Java-DB
4thWEEK

integration

19-06-24 JDBC with Prepared Secure DB


Wednesday Statements operations

13
20-06-24 Thursday Introduction to Web
Development
Web basics
(HTML,
CSS)

21-06-24 Friday Basic HTML and CSS


for UI Design
HTML/CSS
fundamentals

22-06-24 Saturday
JavaScript Basics Client-side scripting

14
3.4.2 WEEKLY REPORT

WEEK – 4 (From 28-06-24to 04-07-24

Objective of the Activity Done: Teach CRUD operations and Java Database
Connectivity (JDBC) and introduce front-end basics with HTML and CSS.
Detailed Report:
In the fourth week, students focused on mastering CRUD (Create, Read, Update, Delete)
operations using Java and MySQL, a critical skill for managing data in full stack
applications. They were introduced to JDBC (Java Database Connectivity) to facilitate
secure database connections, allowing them to perform CRUD operations effectively.
Additionally, students began exploring front-end development by learning HTML and
CSS, which form the backbone of web interface design. While most students adapted
well, some required additional help with complex SQL queries and front-end styling
basics. By the end of the week, students had a solid grasp of CRUD operations and were
ready to dive deeper into front-end scripting and server-side Java development in the
following week.

15
3.5.1 ACTIVITY LOG FOR THE FIFTH WEEK

Brief Description of Daily Learning


Date Day
Activity Outcomes

Advanced JavaScript
and DOM
Interactive
24-06-24 Monday Manipulation
web pages

Introduction to
Servlets
Basics of server-side
25-06-24 Tuesday Java

Building Servlets and


JSP Java web
26-06-24 Wednesday application
basics

JSP and MVC


Architecture
Understanding
27-06-24 Thursday
MVC pattern
5thWEEK

Web app
creation
Building a Basic Java
28-06-24 Friday
Web Application

Forms and Session


29-06-24 Saturday User data handling
Management in Java

16
3.5.2 WEEKLY REPORT

WEEK – 5 (From 05-07-24 to 11-07-24)

Objective of the Activity Done: Introduce client-side scripting with JavaScript and
server-side development with Servlets, JSP, and MVC architecture.

Detailed Report:
The fifth week centered on JavaScript for client-side scripting and introduced students to
server-side Java development using Servlets, JSP (JavaServer Pages), and MVC (Model-
View-Controller) architecture. Students practiced JavaScript and DOM manipulation to
create dynamic and interactive web pages. On the server side, they built and deployed
simple Java web applications, learning how to use Servlets and JSP for back-end
functionality and understanding the MVC pattern for structuring applications. While
students were enthusiastic about creating dynamic web applications, some needed
additional support to grasp MVC structure and manage sessions effectively. This week
provided a holistic view of front-end and back-end integration, preparing students for the
upcoming Spring Framework and REST API topics.

17
3.6.1 ACTIVITY LOG FOR THE SIXTH WEEK

Brief Description
Date Day Learning Outcomes
of Daily Activity

Introduction
to Spring
1-07-24 Monday Spring basics
Framework
6thWEEK

DI concepts
Dependency
2-07-24 Tuesday Injection in
Spring

Spring MVC
3-07-24 Wednesday overview
Spring MVC
Architecture

18
Building
REST APIs
with Spring REST API
4-07-24 Thursday Boot creation

Database
Integration ORM basics
5-07-24 Friday with Spring
Data JPA

Securing
REST APIs
with Spring Security concepts
6-07-24 Saturday Security

3.6.2 WEEKLY REPORT

WEEK – 6 (From 12-07-24 to 18-07-24)

Objective of the Activity Done: Introduce the Spring Framework, focusing on


Dependency Injection, REST API development, and Spring Security.
Detailed Report:

19
Week six introduced students to the Spring Framework, a critical component of
enterprise Java development. Topics included Dependency Injection, which enables more
modular and testable code, and Spring MVC for organizing application structure.
Students built RESTful APIs using Spring Boot, allowing for smooth client-server
communication, and explored Spring Security to add basic authentication to APIs. The
complexity of Spring Boot configuration posed challenges for some students, and
additional sessions were provided to address these issues. By the end of the week,
students were able to build and secure APIs with Spring, ready to integrate these skills
with front-end technologies like React in the following week.

3.7.1 ACTIVITY LOG FOR THE SEVENTH WEEK


W

K
E
E
7

h
t

Brief Description of Learning


Date Day
Daily Activity Outcomes

Testing REST APIs


08-07-24 Monday with Postman
API testing

20
Frontend
Frameworks
Overview (React Understanding
09-07-24 Tuesday basics) React basics

Building React
Components in component
React design
10-07-24 Wednesday

React State and


Props
State
11-07-24 Thursday
management

React Routing Client-side


navigation
12-07-24 Friday

Full Stack
Connecting React integration
with Java Backend
13-07-24 Saturday

21
3.7.2 WEEKLY REPORT

WEEK – 7 (From 19-07-24 to 25-07-24)

Objective of the Activity Done: Learn React basics, integrate React with Java backend,
and test APIs.

Detailed Report:
In the seventh week, students focused on front-end development with React and
integrating it with the Java backend they built. They learned to create React components,
manage state, handle client-side routing with React Router, and test APIs using Postman.
Students were able to connect their React front end with the Spring Boot backend,
creating full-stack applications. Some students found React’s state management
challenging, but additional exercises helped them understand key concepts. By the end of
the week, students were comfortable building and testing integrated applications, setting
the stage for deployment and containerization topics in the final week.

22
3.8.1 ACTIVITY LOG FOR THE EIGHTH WEEK

Brief Description of Learning


Date Day
Daily Activity Outcomes

Deployment
Basics
Introduction
15-07-24 Monday to
deployment

Deploying Java
Applications on
Cloud
AWS
16-7-24 Tuesday deployment
basics

Building and
8thWEEK

Running Docker
Containers
1707-24 Wednesday Containerization

CI/CD Basics with


18-07-24 Thusday Jenkins
CI/CD
pipeline

23
Final Project Work
(Frontend and
Backend Project
19-07-24 Friday Integration) completion

Feedback and
Project Presentation improvements
20-08-24 Saturday
and Code Review

3.8.2 WEEKLY REPORT

WEEK – 8 (From 26-07-24 to 01-08-24)

Objective of the Activity Done: Cover deployment basics on AWS, introduce Docker
for containerization, and set up a CI/CD pipeline with Jenkins.

Detailed Report:
The final week introduced students to the essential skills for deploying applications,
including AWS basics for cloud deployment, Docker for containerization, and Jenkins for
Continuous Integration/Continuous Deployment (CI/CD). Students deployed their full-

24
stack applications to AWS, containerized their applications with Docker, and set up
simple CI/CD pipelines with Jenkins. While some found cloud deployment and Docker
configurations complex, they were able to complete and present their final projects,
which integrated front-end and back-end systems. This last week provided a complete
picture of the deployment and maintenance of Full Stack applications, empowering
students to pursue further projects and roles in Full Stack Java Development.

CHAPTER 4: Outcomes Description

4.1 Overview of the Internship


The Full Stack Java Development internship provided hands-on experience in building,
deploying, and maintaining web applications using Java, Spring Boot, MySQL, and
React. The internship included a mix of theoretical knowledge, practical exercises, and
project-based learning. By the end, participants gained expertise in both front-end and
back-end development, database management, and cloud deployment, preparing them for
roles in full-stack or back-end development.

4.2 Project Details:


4.2.1 Overview
The Online Shopping System project involved developing a comprehensive e-commerce

25
platform where users could browse products, add items to a shopping cart, make
purchases, and track their orders. The application had multiple user roles, including
customers, admins, and suppliers, with unique functionalities for each. Customers could
register, log in, view product categories, and manage their cart, while admins managed
product listings, user accounts, and order fulfillment. The system aimed to provide a
smooth user experience with a responsive design and secure transactions.

Fig 4.1 project architecture


4.2.2 Project Architecture
The project architecture followed a multi-tiered approach, dividing the application into
distinct layers for improved scalability and maintainability:
 Presentation Layer (Front-end): Built with React to provide a responsive and
interactive user interface. The front end utilized components for modularity, React
Router for navigation, and Redux for state management.
 Application Layer (Back-end): Built using Spring Boot, featuring RESTful
APIs to handle CRUD operations for products, users, orders, and transactions.
 Data Layer (Database): Used MySQL for storing user data, product listings,
order details, and transaction records, integrated with the back end through Spring
Data JPA.
This architecture allowed clear separation of concerns between the UI, business logic,
and data management, making the application easier to debug, scale, and maintain.

4.2.3 Resources Used in the Project


 Development Environment: IntelliJ IDEA (Java), Visual Studio Code (React)
 Programming Languages: Java, JavaScript
 Frameworks and Libraries: Spring Boot, Spring Security, Spring Data JPA,
26
React, Redux
 Database: MySQL
 API Testing Tool: Postman
 Version Control: GitHub
 Deployment Platform: AWS EC2 (for hosting the application)
 Containerization: Docker (for containerizing the Spring Boot and React
applications)

4. 2.4 Technical Flow of the project


 User Authentication and Authorization: The system used Spring Security for
user authentication, implementing role-based access control to distinguish
between customers and admins.
 RESTful APIs: CRUD operations for product management, user registration, and
order processing were built using RESTful endpoints in Spring Boot. The APIs
allowed the front end to communicate with the back end and perform all required
operations seamlessly.
 Product Catalog and Cart Management: The front end retrieved product data
from the back-end APIs, allowing users to browse products by categories, search
for items, add them to a cart, and proceed with checkout.
 Order Processing and Transaction Management: The backend handled order
processing, calculating totals, applying taxes, and generating order confirmations.
Secure transaction management features were implemented for safe checkout.
 Deployment and Maintenance: The application was containerized with Docker
and deployed on AWS EC2 for cloud accessibility. A Jenkins CI/CD pipeline was
configured to automate the deployment process, enabling easy updates and
maintenance.
4.2.5 Goals of the Project
 Provide a seamless shopping experience for users, with an easy-to-navigate
product catalog and an efficient cart management system.
 Ensure secure and role-based access for customers, admins, and suppliers.
 Build a responsive and scalable system that can handle concurrent users and real-
time transactions.
 Develop a user-friendly admin dashboard for managing products, users, and
orders.
 Deploy the application in a cloud environment for accessibility, scalability, and
secure data handling.

27
4.2.6 Outcomes of the Project
The completed Online Shopping System project resulted in a fully functional e-
commerce platform with an intuitive UI, a secure, scalable backend, and efficient data
handling. The project demonstrated proficiency in full-stack development, covering both
front-end and back-end technologies, API development, database management, and cloud
deployment.

4.3 Key Outcomes Achieved


The internship's structured approach facilitated the achievement of several learning
outcomes:
1. Proficiency in Full Stack Development:
Participants gained hands-on experience with both front-end (React) and back-end
(Java Spring Boot) technologies, developing a complete, interactive web
application.
2. Enhanced Problem-Solving and Analytical Skills:
Working with real-time issues like product filtering, cart calculations, and
transaction handling helped participants enhance their problem-solving and
analytical skills.
3. Understanding of Project Architecture and Design Patterns:
By implementing a multi-tiered architecture and utilizing MVC principles,
participants learned best practices in application structure, making their codebase
more modular and scalable.
4. Database Management Expertise:
Participants gained experience in designing and managing a relational database
using MySQL, handling data for users, products, orders, and transactions.
5. Deployment and CI/CD Mastery:
Deploying the project on AWS EC2, containerizing with Docker, and automating
updates with a Jenkins CI/CD pipeline prepared participants for real-world
deployment processes.
6. API Development and Testing Proficiency:
By creating REST APIs with Spring Boot and testing them in Postman,
participants became adept at building and validating API functionality, a crucial
skill for back-end developers.
7. Project Management and Collaboration Skills:
Using GitHub for version control, participants practiced collaboration and project
management skills essential for working in a team-based environment.
8. Knowledge of Cloud Infrastructure and Containerization:
Through AWS deployment and Docker containerization, participants gained skills
in cloud infrastructure management and application containerization, equipping
them for work with cloud-based applications.

28
Student Self-Evaluation of the Short-Term Internship

Student Name:

Registration No:

Duration of Internship:

From: To :

Date of Evaluation:

Organization Name & Address:

Please rate your performance in the following areas:

29
Rating Scale: Letter grade of CGPA calculation to be provided

1 Oral communication 1 2 3 4 5
2 Written communication 1 2 3 4 5
3 Interaction ability with the community 1 2 3 4 5
4 Positive Attitude 1 2 3 4 5
5 Self-confidence 1 2 3 4 5
6 Ability to learn 1 2 3 4 5
7 Work Plan and Organization 1 2 3 4 5
8 Quality of work done 1 2 3 4 5
9 Time Management 1 2 3 4 5
10 Achievement of Desired Outcomes 1 2 3 4 5
OVERALL PERFORMANCE

Student Signature

Evaluation by the Supervisor of the Intern Organization

Student Name:

Registration No:

Duration of Internship:

From: To :

Date of Evaluation:

Organization Name & Address:

Name & Address of the Supervisor with Mobile Number

30
Please rate the student’s performance in the following areas:

Please note that your evaluation shall be done independent of the Student’s self-
evaluation

Rating Scale: 1 is the lowest and 5 is the highest rank

1 Oral communication 1 2 3 4 5
2 Written communication 1 2 3 4 5
3 Interaction ability with the community 1 2 3 4 5
4 Positive Attitude 1 2 3 4 5
5 Self-confidence 1 2 3 4 5
6 Ability to learn 1 2 3 4 5
7 Work Plan and Organization 1 2 3 4 5
8 Quality of work done 1 2 3 4 5
9 Time Management 1 2 3 4 5
10 Achievement of Desired Outcomes 1 2 3 4 5
OVERALL PERFORMANCE

31

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy