0% found this document useful (0 votes)
25 views

582final1 (1)

Uploaded by

abhiramkolli6
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views

582final1 (1)

Uploaded by

abhiramkolli6
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 43

JAVA FULL STACK

A Summer Internship Report submitted in partial fulfillment of the


requirements for the award of a degree of

BACHELOR OF TECHNOLOGY
In
COMPUTER SCIENCE AND ENGINEERING

Submitted by:

K. N. V. S. Abhiram

21P31A05D4

Department of Computer Science And 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 Computer Science and Engineering

CERTIFICATE

This is to certify that the Internship report entitled “JAVA FULL STACK” is being
submitted by K.N.V.S.Abhiram (21P31A05D4). In partial fulfillment of the requirements
for award of the BTech degree in Computer Science and Engineering for the academic year
2024-2025.

Internship Guide Head of Department


DR. REGELLA VENKATA SATYA Dr.CHAKKA S.V.V.S.N MURTY
LALITHA Professor
Professor M.Tech,Ph.D
M.Tech, Ph.D

ii
DECLARATION

I hereby declare that the Internship entitled Java Full Stack 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.

K. N. V. S. ABHIRAM
21P31A05D4

iii
iv
v
vi
vii
INTERNSHIP COMPLETION CERTIFICATE
viii
ix
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.CHAKKA.S.V.V.S.N.Murty,M.Tech.Ph.D, Head of the


Department of Computer Science and Engineering for his valuable support.

I express my sincere gratitude to my internship guide, Dr.Regella Venkata Satya


Lalitha M.Tech,.(PhD.,);,Assistant Professor, Department of Computer Science and
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).

K.N.V.S. ABHIRAM
21P31A05D4

x
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.

xi
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

xii
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
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
Marks Statement 28

xiii
CHAPTER 1: Executive Summary

This report outlines my experience with full-stack Java development at BrainoVision. 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 BrainoVision 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


BrainoVision 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,
BrainoVision 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:
BrainoVision 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 BrainoVision 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, BrainoVision aims to enhance the
employability of students and enable professionals to advance in their careers.

Values:
BrainoVision’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.

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


BrainoVision places a high value on experiential learning, with a policy focused on
practical skill acquisition, active engagement, and project-based assignments for interns.
Interns are encouraged to take on real-world projects, apply their knowledge in a team

2
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.

4. Organizational Structure
BrainoVision 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 BrainoVision’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.

5. 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.

• Training Instructors: Delivered technical content, facilitated workshops,


and supported interns in understanding fundamental concepts of full-

3
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 BrainoVision, 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 BrainoVision. 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,

5
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
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


15-06-24 Overview of Full
Saturday Development
Stack concepts

Introduction to Java and its Basic Java


17-06-24 Monday
environment setup
1stWEEK

Variables, Data Types, and Java


18-06-24 Tuesday
Operators in Java fundamentals

Control Structures in Java (if, Basic control


19-06-24 Wednesday switch, loops) structures

Writing
20-06-24 Thursday Functions and Methods in Java methods in
Java

Understanding
Object-Oriented Programming OOP
21-06-24 Friday
(OOP) Concepts

6
3.1.2 WEEKLY REPORT 1

WEEK – 1 (From 15-06-24 to 21-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 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.

7
3.2.1 ACTIVITY LOG FOR THE SECOND WEEK

Date Day Brief Description of Daily Learning


Activity Outcomes

22-06-24 Saturday Classes and Objects in Implementin


Java g OOP with
classes
2nd WEEK

24-06-24 Monday Inheritance and OOP


Polymorphism in Java advanced
concepts

25-06-24 Tuesday Encapsulation and Data hiding


Abstraction and
abstraction

26-06-24 Wednesday Exception Handling in Error handling


Java techniques

8
27-06-24 Thursday File Handling in Java
Reading/Writ
ing files

28-06-24 Friday Basic collection


Introduction to Java
handling
Collections (List, Set,
Map)

3.2.2 WEEKLY REPORT 2

WEEK – 2 (From 22-06-24 to 28-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
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.

9
3.3.1 ACTIVITY LOG FOR THE THIRD WEEK

Brief Description of Learning


Date Day
Daily Activity Outcomes

Collections
Advanced Java
29-06-24 Saturday framework
Collections
3rdWEEK

usage

Introduction to Stream API


01-06-24 Monday
Java Streams basics

Lambda Functional
02-07-24 Tuesday Expressions in programming
Java in Java

10
Building a
Simple Java Project
03-07-24 Wednesday Console structuring
Application

Introduction to
Databases and Database
04-07-24 Thursday
SQL basics

Setting up
MySQL and Database
05-07-24 Friday connecting it connectivity
with Java

3.3.2 WEEKLY REPORT

WEEK – 3 (From 29-06-24 to 05-07-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.

11
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.

3.4.1 ACTIVITY LOG FOR THE FORTH WEEK

Date Day Brief Description of Learning


Daily Activity Outcomes
06-07-24 Saturday CRUD Operations Database
with Java and
4thWEEK

manipulation
MySQL

08-07-24 Monday JDBC (Java Java-DB


Database integration
Connectivity)
Basics

12
09-07-24 Tuesday JDBC with Secure DB
Prepared operations
Statements

10-07-24 Wednesday Introduction to Web basics


Web Development (HTML,
CSS)

11-07-24 Thursday Basic HTML and HTML/CSS


CSS for UI Design fundamentals

12-07-24 Friday
JavaScript Basics Client-side scripting

13
3.4.2 WEEKLY REPORT

WEEK – 4 (From 06-07-24to 12-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.

14
3.5.1 ACTIVITY LOG FOR THE FIFTH WEEK

Brief Description of Daily Learning


Date Day
Activity Outcomes

Advanced JavaScript
Interactive
13-07-24 Saturday and DOM
web pages
Manipulation

Introduction to
15-07-24 Monday Basics of server-side
Servlets Java

Java web
Building Servlets and
16-07-24 Tuesday application
JSP
basics
5thWEEK

JSP and MVC Understanding


17-07-24 Wednesday
Architecture MVC pattern

Building a Basic Web app


18-07-24 Thursday Java Web creation
Application

Forms and Session


19-07-24 Friday User data handling
Management in Java

15
3.5.2 WEEKLY REPORT

WEEK – 5 (From 13-07-24 to 19-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.

16
3.6.1 ACTIVITY LOG FOR THE SIXTH WEEK

Brief Description
Date Day Learning Outcomes
of Daily Activity

Introduction
20-07-24 Saturday to Spring Spring basics
Framework

Dependency
22-07-24 Monday Injection in DI concepts
Spring

Spring MVC Spring MVC


23-07-24 Tuesday overview
Architecture

Building
REST APIs REST API
24-07-24 Wednesday with Spring creation
Boot
6thWEEK

Database
Integration
25-07-24 Thursday ORM basics
with Spring
Data JPA

Securing
REST APIs
26-07-24 Friday with Spring Security concepts
Security

17
3.6.2 WEEKLY REPORT

WEEK – 6 (From 20-07-24 to 26-07-24)

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


Dependency Injection, REST API development, and Spring Security.
Detailed Report:
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.

18
3.7.1 ACTIVITY LOG FOR THE SEVENTH WEEK

Brief Description of Learning


Date Day
Daily Activity Outcomes

Testing REST APIs


27-07-24 Saturday API testing
with Postman

Frontend
Frameworks Understanding
29-07-24 Monday Overview (React React basics
basics)

Building React
30-07-24 Tuesda Components in component
React design
7thWEEK

React State and State


31-07-24 Wednesday Props management

Client-side
01-08-24 Thursday React Routing
navigation

Connecting React Full Stack


02-08-24 Friday with Java Backend integration

19
3.7.2 WEEKLY REPORT

WEEK – 7 (From 27-07-24 to 02-08-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.

20
3.8.1 ACTIVITY LOG FOR THE EIGHTH WEEK

Brief Description of Daily Learning


Date Day
Activity Outcomes

Deployment Introduction
05-08-24 Monday Basics to
deployment

Deploying Java Cloud


07-08-24 Wednesday Applications on deployment
AWS basics

Building and
10-08-24 Saturday Running Docker
Containerization
Containers

CI/CD Basics with


8thWEEK

CI/CD
12-08-24 Monday Jenkins pipeline

Final Project Work


(Frontend and Project
13-08-24 Tuesday Backend completion
Integration)

Project Presentation Feedback and


16-08-24 Friday
and Code Review improvements

21
3.8.2 WEEKLY REPORT

WEEK – 8 (From 05-08-24 to 16-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-
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.

22
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
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.

23
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,
React, Redux
• Database: MySQL
• API Testing Tool: Postman
• Version Control: GitHub

24
• 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.

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.

25
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.

26
Student Self-Evaluation of the Short-Term Internship

Student Name: K. N. V. S. ABHIRAM

Registration No:21P31A05D4

Duration of Internship:8 Weeks

From: 15-06-2024 To : 16-08-2024

Date of Evaluation:

Organization Name & Address: Braino Vision

27
Please rate your performance in the following areas:

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: K. N. V. S. ABHIRAM

Registration No: 21P31A05D4

Duration of Internship: 8 weeks

From: 15-06-2024 To : 16-08-2024

Date of Evaluation:

Organization Name & Address:

28
Name & Address of the Supervisor with Mobile Number

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

MARKS STATEMENT
(To be used by the Examiners)
ASSESSMENT STATEMENT

Name of the Student: K. N. V. S. ABHIRAM


Programme of Study : Bachelor Of Technology
Year of Study : 4 th
Group : Computer Science and Engineering
Register. No/H.T.No : 21P31A05D4
Name of the college : Aditya College Of Engineering and

29
Technology
University: JNTUK

Sl.No Evaluation Criterion Maximum Marks


Marks Awarded
1. Internship Evaluation (Documentation) 20
2. Oral Presentation (PPT) 30
GRAND TOTAL 50

Date:
Signature of Head of the
Department with seal

Signature of Internship Mentor:

Signature of External:

30

You might also like