INTERNSHIP REPORT
Submi ed By
PAVITHRAN PA
Reg. No: 211008040
An Internship report submi ed in par al ful llment of the award of the
B.E. Degree in Computer Science and Engineering
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING,
FACULTY OF ENGINEERING AND TECHNOLOGY, ANNAMALAI UNIVERSITY,
tt
tt
ti
fi
ANNAMALAI NAGAR – 608 002, TAMIL NADU, INDIA.
2024
FACULTY OF ENGINEERING AND TECHNOLOGY
Department of Computer Science and Engineering
This is to certify that Mr. PAVITHRAN PA (Reg. No: 211008040)
VII Semester, B.E Computer Science and Engineering, has completed the
Internship entitled ‘FULL-STACK DEVELOPMENT’ during the period
(June/2024 – August/2024) at SHIASH INFO SOLUTIONS PRIVATE LIMITED
and the report has been submitted to Annamalai University.
Dr. AN. SIGAPPI Head of the Department
PROFESSOR Dept of Computer Science and Engineering
Dept of Computer Science & Engineering Faculty of Engineering and Technology
Annamalai University
Annamalai University
Place: Annamalai Nagar
Date:
Internal Examiner External
Examiner
INTERNSHIP OFFER LETTER
INTERNSHIP COMPLETION CERTIFICATE
[4]
WEEKLY OVERVIEW OF THE INTERNSHIP ACTIVITIES
Date Day Name of the Module /
Topic Completed
01/06/2024 Saturday Basics of Java, History of Java
04/06/2024 Tuesday Features of Java, OOPs
Features, Variables and Methods
First Week 06/06/2024 Thursday JDK, JRE, JVM, Identifiers, Keywords,
DataTypes
08/06/2024 Saturday Main Method, Eclipse
Introduction, Syntax of Creating Class
11/06/2024 Tuesday Assessment-I
13/06/2024 Thursday Introduction to String
15/06/2024 Saturday Methods of String
Date Day Name of the Module /
Topic Completed
18/06/2024 Tuesday Exception Handling
20/06/2024 Thursday Statements in Java
Second 22/06/2024 Saturday Looping Statement
Week
25/06/2024 Tuesday Assessment-II
27/06/2024 Thursday Array and its Types
29/06/2024 Saturday Variables and its types
02/07/2024 Tuesday OOPs Concepts
[5]
Date Day Name of the Module /
Topic Completed
04/07/2024 Thursday Abstraction and Inheritance
06/07/2024 Saturday Encapsulation and Polymorphism
Third 09/07/2024 Tuesday Assessment-III
Week
11/07/2024 Thursday Intruduction to collection Framework
13/07/2024 Saturday Arraylist and Linkedlist
16/07/2024 Tuesday Treemap and Hashmap
18/07/2024 Thursday HTML and CSS
Date Day Name of the Module /
Topic Completed
20/07/2024 Saturday SQL
23/07/2024 Tuesday Assessment-IV
25/07/2024 Thursday SpringBoot Introduction
Fourth
Week 01/08/2024 Thursday Concept of SpringBoot
03/08/2024 Saturday Angular Framework
08/08/2024 Thursday Concept of Angular Framework
10/08/2024 Saturday Overview of FullStack
[6]
Department of Computer Science and Engineering
VISION
To provide a congenial ambience for individuals to develop and blossom
as academically superior, socially conscious and nationally responsible citizens.
MISSION
M1: Impart high quality computer knowledge to the students through a
dynamic scholastic environment wherein they learn to develop technical,
communication and leadership skills to bloom as a versatile professional.
M2: Develop life-long learning ability that allows them to be adaptive and
responsive to the changes in career, society, technology, and
environment.
M3: Build student community with high ethical standards to undertake
innovative research and development in thrust areas of national and
international needs.
M4: Expose the students to the emerging technological advancements for
meeting the demands of the industry.
[7]
ACKNOWLEDGEMENT
First, I would like to thank Mr. K. Pratheeban, Team Leader of SHIASH INFO
SOLUTIONS PRIVATE LIMITED for allowing me to do an internship within the
organization. I also wish to give special thanks to the resource person Mrs.Ashwini
Kanniyappan, HR of SHIASH INFO SOLUTIONS Private Limited for giving me the
opportunity to carry out the internship programme.
I am highly indebted to The Registrar for giving me permission to undergo the
internship training programme.
I would like to render my heartfelt thanks to the Dr. C. KARTHIKEYAN, Dean, Faculty
of Engineering and Technology, Annamalai University, Dr. R. BHAVANI, Head &
Professor, Department of Computer Science and Engineering, Annamalai University,
Annamalai Nagar, for their positive encouragements, patient guidance in carrying out the
internship programme and support in all aspects which had made me to complete the thesis
work successfully.
I am thankful to Dr.AN. SIGAPPI, Professor and My Mentor, Department of Computer
Science and Engineering, Annamalai University, Annamalai Nagar, who provided me
guidance, support and the resources necessary for completion of the thesis work.
I would like to thank all my Department Faculty, Staff Members and Friends who had
helped me in the successful completion of the internship.
PAVITHRAN PA
Reg No: 211008040
[8]
ABSTRACT
Summary
The abstract discusses the need for secure sharing of medical test results
between patients and healthcare providers. Currently, results are often shared
through paper or digital methods that can be vulnerable to tampering, data loss,
and unauthorized access. Steganography, a technique for hiding information within
texts, is proposed as a solution to protect patient data from misuse. Text
steganography specifically enables sensitive health information to be concealed
and securely transferred, reducing risks of cyber-attacks, unauthorized sharing, and
potential misuse of personal health data. This approach aims to safeguard patient
privacy and maintain data integrity in healthcare.
Organization Information
Shiash Info Solutions is an IT services, Digital and Business solutions
company based in Chennai (India) providing Customized Software Development,
Web Application Development, Mobile Application Development and IT
Consulting Services. We have earned the pride of being one of the leading desktop
& web based software solution provider in India, we develop software solution
that helps our customers to outperform the competition and stay ahead in today’s
competitive business environment. We firmly believe that business needs can be
only met when technology is in sync with business process.
[9]
Methodologies
The training was conducted entirely based on the lecture system. Lectures
are conducted on 3 days on week basis, however, different lectures were given on
various aspects related to Java Full-stack. Presentations, slides and case studies
had been the prime material provided within the sessions and such material have
been used for providing security concepts.
Important points of the Report
The report is going to talk about the basics of the Java Full-Stack during the
intern period.
Important points are:
• Medical Data Security and Privacy
• Text Steganography Techniques
• Data Integrity and Access Control
• Encryption and Data Transmission
• Compliance with Healthcare Data Standards
Benefits to the Company/Organization
This program offers a comprehensive experience in the IT environment,
providing insights beyond daily tasks and allowing for hands-on project work to apply
your skills in a real-world setting. You’ll learn directly from industry leaders about the
software development cycle and gain valuable mentorship from a team lead who will
guide your professional growth. Training workshops will enhance your knowledge
and skills, while personality development activities blend work with personal growth,
preparing you for a smooth transition into your career after graduation.
[10]
TABLE OF CONTENTS
S. No. Content Page No
1 Introduction 1
1.1 About Company 1
1.2 Objective of the Internship 2
1.3 Contribution of the Internship 3
1.4 Outline of the Thesis Report 4
2 Problem Formulation/Analysis 5
3 Requirements and Specifications 7
4 Recent Technologies 8
5 Merit of the Project 12
6 Screenshots Related to the Project 14
7 Overview of Training Content 17
8 Overview of Internship Experience 18
9 Conclusion 19
10 References 20
[11]
1. INTRODUCTION
1.1.About Company
Shiash Info Solutions, based in Chennai, India, is a leading IT services and
digital solutions company specializing in customized software development, web
and mobile application development, and IT consulting. Known for delivering
high-quality desktop and web-based solutions, we empower our clients to
outperform competitors and stay ahead in today’s dynamic business landscape.
Our philosophy is rooted in the belief that business objectives are best achieved
when technology aligns seamlessly with business processes.
At Shiash Info Solutions, we provide a wide range of multi-dimensional IT
services, from internet strategy to software development and design, tailored to
meet the unique needs of corporate clients worldwide. Our diverse product and
service offerings are crafted to suit the varying demands of our extensive client
base. With a commitment to excellence, our planning and quality control teams
ensure that every project is meticulously planned, designed, and delivered on time,
consistently exceeding client expectations for quality.
Our approach emphasizes innovation and continuous improvement. By
rapidly transforming ideas and concepts into new products and applications, we
enhance application performance and reduce operational complexities. This, in
turn, boosts efficiency and accelerates business outcomes, helping our clients
achieve streamlined operations and increased productivity.
[1]
1.2.Objective of the Internship
The main focus of this internship was to familiarize participants with core
concepts of Java Full-Stack development through a structured online course. My
role involved observing and listening to sessions led by industry experts, which
covered essential topics such as front-end and back-end development, database
management, RESTful APIs, and software development life cycle (SDLC)
principles.
Each session introduced new concepts that built on previous topics,
allowing for cumulative learning and a deeper understanding of the development
process. By exploring various frameworks, such as Spring Boot and Angular, I
gained insight into the importance of integrating multiple technologies to create
seamless, end-to-end solutions. Although my participation was not hands-on, the
theoretical foundation provided will be valuable for practical applications in future
Java development roles.
The course placed significant emphasis on backend structures, database
interactions, and RESTful API integration, all crucial for modern full-stack
development. Additionally, discussions on project management and best practices
within the SDLC highlighted the importance of structured coding, testing, and
deployment in building scalable, secure applications.
[2]
1.3.Contribution of the Internship
The internship signi cantly enhanced my understanding of Java Full-Stack
development fundamentals, providing a solid theoretical foundation, even without
hands-on practice. The following outcomes were achieved through the program:
• Gained knowledge of essential concepts and terminology related to full-stack
development.
• Developed an understanding of front-end technologies such as HTML, CSS, and
JavaScript, as well as back-end frameworks like Spring Boot.
• Learned about database management systems, including SQL and NoSQL, and how
to interact with them effectively.
• Explored the principles of RESTful APIs and their role in enabling communication
between front-end and back-end components.
• Became familiar with best practices for software development, including version
control, testing methodologies, and deployment strategies.
These outcomes will serve as a strong foundation for pursuing hands-on roles in Java
Full-Stack development, equipping me with the necessary skills and knowledge to
build robust, scalable applications.
[3]
fi
1.4.Outline of the Thesis Report
The report is structured through the following subheadings for the reader to
have a holistic view of the training undertaken:
Introduction:
This section includes the company background, outlines the objectives of the
internship, and provides an overview of the training program.
Problem Formulation/Analysis:
This part discusses the theoretical issues and key concepts related to Java
Full-Stack development, establishing the context for the learning experience.
Requirements and Specifications:
Here, the technical resources and specifications are outlined, aiding in the
understanding of fundamental principles of full-stack development.
Recent Technologies:
This section explains the latest tools and techniques in Java Full-Stack
development, providing insight into the current landscape of the field.
Benefits of the Project:
This part highlights the advantages of the internship for participants and the
broader software development industry.
Screenshots and Training Content:
Included are screenshots from the training materials along with detailed
descriptions of the content covered in the program.
[4]
Conclusion:
The report concludes by summarizing the key points and important insights
gained regarding Java Full-Stack development in a professional context.
[5]
2. PROBLEM FORMULATION/ANALYSIS
Java Full-Stack development encompasses the processes and methodologies
required to build and maintain complex web applications. As the digital landscape
expands, the need for robust, scalable applications increases, driving the demand for
skilled developers who can navigate both front-end and back-end technologies. During
our internship, we delved into the fundamental challenges and strategic approaches used
to address these complexities.
1. Foundational Problems in Java Full-Stack Development
The main challenges in Java Full-Stack development include managing intricate,
interconnected systems comprising various components that may introduce potential points
of failure. Developers must continuously adapt to rapidly changing technologies and
frameworks, while effectively identifying and resolving integration issues. The fast pace of
technological advancement, including shifts in programming languages, libraries, and tools,
complicates the development process, making it crucial to stay updated with industry best
practices.
Vulnerability Management
In the context of full-stack development, identifying and mitigating
vulnerabilities in both front-end and back-end code is essential. Issues such as outdated
libraries, improper con gurations, and coding errors can expose applications to security
risks, making vulnerability management a critical focus for developers.
2. Key Focus Areas
Java Full-Stack development addresses the challenges of building robust web
applications through several key areas, all of which were explored during the
internship:
[6]
fi
Front-End Development:
This area involves creating user interfaces using technologies such as
HTML, CSS, and JavaScript frameworks (like React or Angular). Emphasizing
user experience, front-end development ensures that applications are visually
appealing, responsive, and accessible across devices.
Back-End Development:
Back-end development focuses on server-side programming, primarily
using Java and frameworks like Spring Boot. This involves handling business
logic, database interactions, and API integration to manage data flow and
application functionality effectively.
Database Management:
Understanding how to work with both SQL (e.g., MySQL, PostgreSQL)
and NoSQL (e.g., MongoDB) databases is crucial. This area encompasses data
modeling, query optimization, and ensuring data integrity, providing the
foundation for efficient data storage and retrieval in applications.
Version Control and Collaboration:
Using version control systems like Git is vital for managing code
changes and collaborating effectively within development teams. Understanding
branching, merging, and pull requests helps streamline the development process
and maintain code quality.
[7]
3. REQUIREMENTS AND SPECIFICATIONS
The requirements and specifications for this internship were straightforward, given
its online and theoretical nature. The main requirements included:
Stable Internet Connection:
Since all sessions were conducted online, a reliable internet connection was
essential for accessing live lectures and engaging with the course materials
effectively.
Presentation Materials:
Slides, code examples, and case studies were utilized to explain various
concepts in Java Full-Stack development. Accessing these materials was crucial
for understanding the course content and building upon foundational knowledge.
Knowledge of Networking and Computers:
A basic understanding of programming concepts, web development
principles, and familiarity with Java and related technologies (such as HTML,
CSS, and JavaScript) were beneficial for grasping the content of the internship.
All sessions were accessible online and recorded for future reference. While the
internship emphasized theoretical learning, it did not require additional software or tools,
focusing instead on building a solid understanding of full-stack development concepts,
including front-end frameworks, back-end architecture, and API integration.
[8]
4. RECENT TECHNOLOGIES
Modern Development Frameworks:
In the realm of Java Full-Stack development, frameworks like Spring Boot
and JavaServer Faces (JSF) play crucial roles in enhancing productivity and
functionality. Spring Boot, for instance, simplifies the setup of new applications
by providing a streamlined way to configure dependencies and manage project
structure. Discuss how these frameworks differ from traditional Java EE
applications in terms of ease of use, rapid development capabilities, and
integration with modern tools.Intrusion Detection and Prevention:
Front-End Technologies:
Highlight the advancements in front-end technologies that complement
Java back-end development, such as React and Angular. These frameworks offer
powerful tools for building dynamic user interfaces and single-page applications
(SPAs), emphasizing component-based architecture and reactive programming.
Explain the importance of responsive design and user experience in modern web
applications.
API Development and RESTful Services:
Discuss the significance of RESTful API design in full-stack development.
Explain how APIs facilitate communication between front-end and back-end
components, enabling seamless data exchange. Highlight tools like Postman for
testing APIs and Swagger for documenting them, which help in maintaining clear
and effective communication within development teams.
[9]
Microservices Architecture:
Explore the shift towards microservices architecture, where applications are
developed as a suite of small, independent services. Discuss how Java, combined
with Spring Cloud, supports this architecture by providing tools for service
discovery, configuration management, and fault tolerance. Highlight the benefits of
scalability and maintainability that microservices offer.
Database Technologies:
Examine the use of modern database technologies, including both SQL (like
PostgreSQL) and NoSQL (such as MongoDB) databases. Discuss how the choice of
database impacts application performance, scalability, and data integrity, and explain
how Object-Relational Mapping (ORM) tools like Hibernate streamline database
interactions.
DevOps and Continuous Integration/Continuous Deployment (CI/CD):
Explain the role of DevOps practices in Java Full-Stack development,
emphasizing the importance of CI/CD pipelines. Discuss tools like Jenkins and
GitHub Actions that automate testing and deployment processes, enabling faster
delivery of high-quality applications while reducing the risk of errors.
Cloud Computing and Deployment:
Discuss the impact of cloud platforms (e.g., AWS, Azure) on full-stack
development. Explain how these platforms provide scalable resources and services
for hosting applications, as well as database management and security features.
Highlight the significance of containerization technologies like Docker and
orchestration tools like Kubernetes in facilitating smooth deployment and
scalability of applications.
[10]
Arti cial Intelligence in Development:
Explore the incorporation of AI in Java Full-Stack development, such as
using machine learning algorithms to enhance user experiences or optimize
database queries. Discuss tools and libraries (like TensorFlow and Weka) that can
be integrated into Java applications to provide predictive analytics and intelligent
features.
Emerging Trends:
Finally, look into emerging trends such as serverless architectures, where
developers can deploy applications without managing server infrastructure, and the
increasing use of Progressive Web Applications (PWAs) that offer native app-like
experiences on the web.
[11]
fi
5. MERIT OF THE PROJECT
The Java Full-Stack development internship, while primarily lecture-based,
provided a significant introduction to essential development principles and current
trends, establishing a strong foundation for future projects.
Core Development Topics
The program covered fundamental topics such as Java programming, front-end
frameworks (like React and Angular), and back-end technologies (such as Spring Boot).
Through Java, I learned the basics of object-oriented programming and how to build
robust applications that manage data effectively. The sessions on front-end frameworks
highlighted the importance of user interface design and user experience, providing
insights into tools and techniques for creating interactive web applications. Together,
these topics offered a comprehensive framework, which is invaluable for anyone starting
out in this field.
Awareness of Development Challenges
Understanding common development challenges, such as version control, code
quality, and integration issues, gave me a clearer picture of the obstacles developers face
today. Learning about version control systems like Git emphasized the importance of
collaboration and maintaining code integrity in team environments. Discussions on code
quality and testing reinforced the need for best practices in software development,
including the use of automated testing frameworks. This overview of challenges
highlighted the importance of proactive measures and continuous learning in the
development lifecycle.
[12]
Development Strategies
A key aspect of the program was the introduction to effective development
strategies, including the use of Agile methodologies and Continuous Integration/
Continuous Deployment (CI/CD) practices. These sessions emphasized the importance of
iterative development, allowing for regular feedback and adjustments throughout the
project lifecycle. Understanding how CI/CD tools like Jenkins and GitHub Actions
automate testing and deployment processes clarified the need for efficiency and
reliability in delivering high-quality applications. This exposure to development
strategies underscored the importance of adopting modern practices for better project
outcomes.
Industry Trends
Finally, the program introduced me to recent technologies, such as cloud
computing, microservices architecture, and containerization with Docker. Cloud
platforms offer scalable resources for hosting applications, while microservices provide a
modular approach to application design. Learning about containerization emphasized the
benefits of developing and deploying applications in isolated environments. These
advancements highlighted the rapidly evolving landscape of software development,
reinforcing the need to stay updated on emerging tools and trends. This understanding of
industry trends is especially valuable as it prepares me to adapt and innovate in response
to technological advancements.
[13]
6. SCREENSHOTS RELATED TO THE PROJECT
[14]
7. OVERVIEW OF TRAINING CONTENT
The training provided during the internship was organized weekly, focusing on
key Java Full Stack development topics. Below is a summary of the content covered:
Week 1: Basics of Java
Participants learned the fundamentals of Java, including its history, the roles of the
Java Development Kit (JDK) and Java Runtime Environment (JRE), and key concepts of
Object-Oriented Programming (OOP). String manipulation techniques were also
introduced.
Week 2: Core Java Concepts
This week covered exception handling, looping statements, and arrays, along with
a deeper dive into variable types and scope. The foundational concepts of OOP were
further explored to enhance understanding of Java’s object-oriented nature.
Week 3: Advanced OOP and Data Structures
Participants focused on advanced OOP principles such as abstraction, inheritance,
and encapsulation. The week also included an introduction to Java frameworks and
covered data structures like ArrayList, LinkedList, TreeMap, and HashMap, emphasizing
their practical applications.
Week 4: Databases and Frameworks
The final week introduced SQL for database management, followed by an
exploration of the Spring Boot framework for building Java applications. Participants
also learned about the Angular framework, essential for developing dynamic web
applications.
Overall, the training provided a solid foundation in Java Full Stack development concepts
and practical applications.
[15]
8. OVERVIEW OF INTERNSHIP EXPERIENCE
During my experience with Shiash Info Solutions Private Limited, I gained a
deeper understanding of the core principles in Java Full Stack development. Although the
program did not involve extensive hands-on labs, the structured lectures and
comprehensive content provided me with a strong theoretical foundation in both front-
end and back-end technologies.
Particularly valuable were the sessions on frameworks like Spring Boot and
Angular, which highlighted the practical importance of building dynamic and responsive
applications. While the lack of interactivity presented some challenges, the experience
underscored the necessity of staying updated with industry knowledge and trends, which
is essential in the ever-evolving field of software development.
Additionally, the internship emphasized the critical role of collaboration in
software projects. Understanding how different teams work together to develop and
integrate various components of an application reinforced the importance of
communication and coordination in creating effective software solutions. This insight has
inspired me to seek roles that foster teamwork and collaboration in addressing
development challenges.
[16]
9. CONCLUSION
The internship provided me with a solid theoretical background in Java Full
Stack development principles. Topics such as front-end technologies, back-end
frameworks, and database management were covered comprehensively, laying a strong
foundation for future study and practical application. Although my participation was
primarily lecture-based, I gained valuable insights into emerging development tools and
practices, such as Spring Boot and Angular.
This experience has reinforced my interest in software development and prepared
me for more advanced roles in the field. I now understand the importance of continuous
learning and staying updated on industry trends, motivating me to seek further
opportunities to enhance my expertise and contribute effectively to development projects.
[17]
10. REFERENCES
10.1.JOURNALS
1. IEEE Transactions on Software Engineering
2. Journal of Systems and Software
3. ACM Transactions on the Web
4. Software: Practice and Experience
10.2.CONFERENCE PUBLICATIONS
1. IEEE International Conference n Software Engineering (ICSE)
2. ACM SIGPLAN Conference n Programming Language Design and
Implementation
3. International Conference on Web Engineering (ICWE)
4. International Conference on Software Architecture (ICSA)
[18]