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

Sourabh Internship-Report

Uploaded by

adityabhinge2
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
52 views

Sourabh Internship-Report

Uploaded by

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

INTERNSHIP REPORT

IN PARTIAL FULFILLMENT OF THE


ACADEMIC REQUIREMENT OF THE YEAR 2023-2024
AS PRESCRIBED BY THE UNIVERSITY OF PUNE

Submitted By

Aditya Milind Bhinge

OF FIRST YEAR IN MASTER OF SCIENCE IN COMPUTER SCIENCE


UNDER THE GUIDANCE OF

Creative Educational Foundation's (Estd. 2003)


Swaraj College of Commerce
Affiliated to Savitribai Phule Pune University, Recognised by Government of Maharashtra

iv
ACKNOWLEDGEMENT

First I would like to thank Wipro Pune for giving me the opportunity to
do an internship within the organization.

I also would like all the people that worked along with me at Wipro pune
with their patience and openness they created an enjoyable working
environment.

It is indeed with a great sense of pleasure and immense sense of


gratitude that I acknowledge the help of these individuals.

I am highly indebted to Director Prof. Gopal Khandare and Principal Prof.


Prachi Khandare, for the facilities provided to accomplish this internship.

I am extremely great full to my department staff members and friends


who helped me in successful completion of this internship.

ADITYA MILIND BHINGE

(FY MSc Computer Science)

v
ABSTRACT

DevOps is a set of practices, tools, and cultural philosophies that integrates and automates the
work of software development (Dev) and IT operations (Ops) as a means for improving and
shortening the systems development life cycle. It aims to enhance collaboration between
these traditionally separate teams, enabling continuous delivery of high-quality software. Key
principles of DevOps include automation, continuous integration, continuous delivery,
infrastructure as code, and a culture of shared responsibility.

Organization Information:
Wipro Limited, established in 1945 in Bangalore, India, initially began as a vegetable oil
manufacturer. Under the leadership of Azim Premji, the company transitioned into IT
services in the 1980s, becoming a global leader in IT, consulting, and business process
services. Wipro operates in over 50 countries, providing services in digital transformation,
application development, consulting, and engineering. The company is known for its
innovation and commitment to sustainability and corporate social responsibility. Wipro is
publicly traded on the BSE, NSE, and NYSE, with a significant global client base across various
industries. Currently, Wipro is led by Chairman Rishad Premji and CEO Thierry Delaporte,
generating billions in annual revenue and continuing to drive digital transformation
worldwide.

Programs and opportunities:

Wipro's career development programs, notably the Wipro Academy of Software Excellence
(WASE), Talent Transformation offers continuous learning via e-platforms, technical training,
and soft skills development. Leadership programs like the Global 100 Leadership
Development Program nurture future leaders. Wipro Digital Academy focuses on digital
strategy and innovation. Project Readiness Programs and domain-specific training ensure
employees are equipped for client projects. Mentorship, coaching, job rotation, and internal
job postings foster internal mobility. Recognition and rewards programs acknowledge
outstanding contributions and long-term service, promoting career growth.

vi
Methodologies:
Wipro employs various methodologies for project management, software development, and
service delivery. Agile methodologies like Scrum and Kanban enable iterative and flexible
development, while DevOps ensures seamless integration and continuous delivery. Quality
management methodologies such as Six Sigma and TQM ensure high standards. Industry-
specific approaches cater to sectors like healthcare and finance. Custom methodologies are
tailored to meet specific client needs, ensuring successful project outcomes and client
satisfaction.

Key parts of the report:


Under each division we further provide specific industry solutions on focused domains with
cutting edge technologies.

Benefits of the Company/Institution through our report:

Under each division we further provide specific industry solution on focused domains with
cutting edge technologies. We emphasize on building relationships with our clients by
delivering projects on time and within budget.

vii
INDEX

S.no CONTENTS Page no


1. Introduction........................................................................................................14

2. Software requirements specifications...................................................................17

3. Technology............................................................................................................ 18

3.1 AWS................................................................................................................. 18

3.2 Gitlab.................................................................................................................20

3.3 Jenkins...............................................................................................................21

4. Screenshots................................................................................................................ 22

5. Conclusion................................................................................................................... 24

viii
Learning Objectives/Internship Objectives

 Internships are generally thought of to be reserved for college students looking to


gain experience in a particular field. However, a wide array of people can benefit
from Training Internships in order to receive real world experience and develop their
skills.

 An objective for this position should emphasize the skills you already possess in the
area and your interest in learning more

 Internships are utilized in a number of different career fields, including architecture,


engineering, healthcare, economics, advertising and many more.

 Some internship is used to allow individuals to perform scientific research while


others are specifically designed to allow people to gain first-hand experience
working.

 Utilizing internships is a great way to build your resume and develop skills that can be
emphasized in your resume for future jobs. When you are applying for a Training
Internship, make sure to highlight any special skills or talents that can make you
stand apart from the rest of the applicants so that you have an improved chance of
landing the position.

ix
Week Task Assigned Activities Performed Key Learning's Additional
Remark
1st week 11/12/2023 Formation of Project How to adapt to
Group new teams and
working
environment
12/12/2023 to Project Topic Selection Outlining and
14/12/2023 choosing the
next venture for
a team
18/12/2023 to Feasibility Assessment Feasibility Study
20/12/2023
2nd week 21/12/2023 to Technology Training & Technology Study
26/12/2023 High Level Overview
3rd & 4th 02/01/2024 to Assigned Module Making Code
week 15/01/2024 Development/Coding
5th week 17/01/2024 to Designed test cases for Manual Testing
23/01/2024 our
module
6th week 29/01/2024 to Worked on user interface. Graphical User
02/02/2024 Interface
Implementation
7th week 05/02/2024 to Integration of all modules. Front End and Back
and 8th 17/02/2024 End Integration
week
9th and 26/02/2024 to Final Report and Report & PPT
10th week 11/03/2024 Presentation Submission
Internship Activity Log:

Signature of Industry Supervisor

x
Attendance Sheet

Name and address of the Company/Institute/Organization

Name of Student
Roll/Seat No
Name of Course
Date of Commencement of Training
Date of Completion of Training

Weeks & Days

Week Monday Tuesday Wednesda Thursday Friday Saturday


y
1
2
3
4
5
6
7
8
9
10

*Holiday should be marked in Red Ink in Attendance Column, Absent Should be marked as ‘A’ in Red Ink

Name and Signature with date of OJT Supervisor


SUPERVISOR EVALUATION
xi
Student’s Name
Name of the Supervisor
Internship Duration From: To:

*Please Evaluate intern by indicating the frequency with which you observed the following
parameters:

Parameters Needs Satisfactory Good Excellent


Improvement
Behaviour
Performs in a
dependable manner
Cooperates with co-
workers and
supervisors
Shows interest in
work
Learns Quickly
Shows initiative
Produces high quality
work
Accepts responsibility
Accepts Criticism
Demonstrates
Organizational skills
Uses Technical
knowledge
Shows good
judgement
Demonstrates
creativity/ Originality
Analyses Problems
effectively
Is self-reliant
Communicates well
Writes effectively
Has a professional
attitude

xii
Gives a professional
appearance
Is Punctual
Uses time effectively

Overall performance of student intern (Circle one):

(Needs improvement/Satisfactory/ Good/ Excellent)

Signature of industry supervisor’s/ Institutional Head: ………………………………………

xiii
INTRODUCTION

DevOps is a transformative approach that bridges the gap between software development
(Dev) and IT operations (Ops) to streamline and accelerate the delivery of high-quality
software. It emphasizes a culture of collaboration and shared responsibility, encouraging
teams to work together throughout the entire software development lifecycle, from
planning and development to testing, deployment, and maintenance.

Central to DevOps are practices like Continuous Integration (CI) and Continuous Delivery
(CD). CI involves frequently integrating code changes into a shared repository, where
automated tests validate these changes to catch issues early. CD extends this by
automatically deploying code changes to testing or production environments, ensuring that
software can be reliably released at any time.

Automation is a cornerstone of DevOps, reducing manual tasks and the risk of human error.
Tools for automated testing, deployment, and infrastructure management (such as
Infrastructure as Code, or IaC) allow for more consistent and scalable operations. IaC
enables infrastructure to be managed and provisioned through code, enhancing
reproducibility and efficiency.

Monitoring and logging are critical in DevOps, providing continuous feedback on system
performance and enabling quick detection and resolution of issues. This proactive approach
helps maintain high availability and performance of applications.

DevOps also embraces microservices architecture, breaking down applications into smaller,
independent services that can be developed, deployed, and scaled individually. This
modularity simplifies maintenance and accelerates the release of new features.

Security is integrated into the DevOps process through DevSecOps, ensuring that security
practices are embedded at every stage of the development lifecycle.

14
Why DevOps?

DevOps accelerates software delivery by fostering collaboration between


development and operations, emphasizing automation, and promoting
continuous integration (CI) and continuous delivery (CD). It enhances quality
through automated testing and monitoring, ensuring reliable and stable
releases. Practices like Infrastructure as Code (IaC) and microservices enable
scalable and flexible infrastructure management. DevOps breaks down silos,
improves communication, and encourages continuous improvement, allowing
organizations to adapt quickly to changing requirements. By streamlining
processes and reducing manual tasks, DevOps helps deliver software faster,
with higher quality, ultimately providing greater value to customers.

Scope of the projec:


The scope of a DevOps project involves several key components:

1. **Assessment and Planning**: Evaluate existing processes, identify improvement areas,


and set objectives.
2. **Toolchain Selection**: Choose CI/CD, configuration management, monitoring, and
collaboration tools (e.g., Jenkins, Git, Docker, Kubernetes).
3. **Infrastructure Setup**: Implement Infrastructure as Code (IaC) for scalable
infrastructure management, setting up cloud or on-premises environments.
4. **Pipeline Development**: Develop CI/CD pipelines to automate build, test, and
deployment processes, integrating automated testing frameworks.
5. **Configuration Management**: Automate server and environment configurations using
tools like Ansible or Chef.
6. **Monitoring and Logging**: Implement continuous monitoring and logging for
performance and health insights using tools like Prometheus and ELK stack.
7. **Security Integration**: Embed security practices in the CI/CD pipeline (DevSecOps).
8. **Microservices and Containerization**: Break down applications into microservices,
containerize with Docker, and orchestrate with Kubernetes.
9. **Continuous Feedback and Improvement**: Set up feedback mechanisms and regularly
refine processes.
10. **Training and Documentation**: Provide training and create comprehensive
documentation for tools and processes

15
16
SOFTWARE REQUIREMENTS SPECIFICATIONS

System configurations
The software requirement specification can produce at the
culmination of the analysis task. The function and performance
allocated to software as part of system engineering are refined by
established a complete information description, a detailed
functional description, a representation of system behavior, and
indication of performance and design constrain, appropriate
validate criteria, and other information pertinent to
requirements.

Software Requirements:

• Operating system : Windows 10/11.


• Coding Language : MVC 4 Razor
• Front-End : Visual Studio 2015 Professional.
• Data Base : SQL Server 2012.

Hardware Requirement:
• System : Minimum Core i3.

• Hard Disk : 1TB.


• Ram : 8GB.

17
TECHNOLOGY

AWS
Amazon Web Services (AWS) is a comprehensive and widely adopted cloud
platform, offering over 200 fully featured services from data centers globally.
AWS provides a broad set of tools and services to help organizations move
faster, lower IT costs, and scale applications.

1. **Compute Services**: AWS offers various computing services such as


Amazon EC2 (Elastic Compute Cloud), which provides scalable virtual servers,
and AWS Lambda, a serverless computing service that lets you run code
without provisioning or managing servers.

2. **Storage Services**: AWS provides multiple storage options like Amazon


S3 (Simple Storage Service) for scalable object storage, Amazon EBS (Elastic
Block Store) for block storage, and Amazon Glacier for long-term archival
storage.

3. **Database Services**: AWS offers managed database services such as


Amazon RDS (Relational Database Service) for SQL databases, Amazon
DynamoDB for NoSQL databases, and Amazon Redshift for data
warehousing.

4. **Networking**: AWS networking services include Amazon VPC (Virtual


Private Cloud) for provisioning a logically isolated section of the AWS cloud,
AWS Direct Connect for establishing a dedicated network connection to
AWS, and Amazon Route 53 for scalable DNS and domain name
management.

5. **Security and Identity**: AWS provides robust security features,


including AWS IAM (Identity and Access Management) for managing user
permissions and access control, AWS KMS (Key Management Service) for

18
encryption key management, and AWS Shield for DDoS protection.

6. **Machine Learning and AI**: AWS offers a suite of machine learning and
AI services, such as Amazon SageMaker for building and training machine
learning models, and AWS Rekognition for image and video analysis.

7. **Management Tools**: AWS provides tools for monitoring and managing


cloud resources, like AWS CloudWatch for performance monitoring, AWS
CloudFormation for infrastructure as code, and AWS Config for resource
configuration tracking.

AWS's global infrastructure, extensive range of services, and commitment to


security and compliance make it a leading choice for organizations of all sizes
to build and scale their applications.

19
Gitlab
GitLab is a comprehensive DevOps platform that provides a unified interface for the
entire software development and operations lifecycle. Initially started as a source code
management (SCM) and version control tool using Git, GitLab has evolved to include a
wide array of features that support the complete DevOps process.

1. **Source Code Management**: GitLab offers robust version control features,


allowing teams to manage code repositories, track changes, and collaborate through
merge requests and code reviews.

2. **Continuous Integration/Continuous Deployment (CI/CD)**: GitLab CI/CD


automates the build, test, and deployment process. Users can define pipelines in a
YAML file, integrating various stages to ensure code is continuously tested and
deployed.

3. **DevSecOps**: GitLab integrates security into the development process, offering


tools for static and dynamic application security testing (SAST and DAST), dependency
scanning, and container scanning, enabling teams to identify and fix vulnerabilities
early.

4. **Project Management**: GitLab includes features for agile project management,


such as issue tracking, project planning boards, and milestone tracking, facilitating
collaboration and transparency.

5. **Container Registry**: GitLab provides a built-in container registry for storing and
managing Docker images, streamlining the deployment of containerized applications.

6. **Monitoring and Analytics**: GitLab offers monitoring tools to track the


performance of applications and pipelines. It integrates with Prometheus for
performance metrics and provides insights into code quality and usage statistics.

By consolidating multiple tools into a single platform, GitLab streamlines the


development process, improves collaboration, and enhances the efficiency and security
of software delivery.

20
Jenkins
Jenkins is an open-source automation server widely used for
continuous integration (CI) and continuous delivery (CD) pipelines. It helps
automate various stages of the software development lifecycle, from
building, testing, and deploying applications to production environments.

1. **CI/CD Pipelines**: Jenkins allows users to define pipelines as


code using a domain-specific language (DSL) or through a visual interface.
These pipelines orchestrate the steps needed to build, test, and deploy
software automatically, ensuring rapid feedback and high-quality releases.

2. **Extensibility**: Jenkins supports a vast ecosystem of plugins


that extend its functionality. These plugins integrate Jenkins with various
tools and services, enabling seamless interaction with source code
repositories (e.g., Git, SVN), build tools (e.g., Maven, Gradle), testing
frameworks, and deployment platforms (e.g., Kubernetes, AWS).

3. **Distributed Builds**: Jenkins can distribute build tasks across


multiple machines, allowing parallel execution of jobs to speed up build
times and optimize resource utilization.

4. **Monitoring and Notifications**: Jenkins provides real-time


monitoring of build statuses, test results, and deployment activities. It can
send notifications via email, chat services (e.g., Slack), or integrate with
monitoring systems for comprehensive visibility into the CI/CD process.

5. **Security**: Jenkins offers robust security features, including


role-based access control (RBAC), LDAP integration, and support for HTTPS.
This ensures that only authorized users and processes can access and
manipulate Jenkins resources.

6. **Community and Support**: Being open-source, Jenkins


benefits from a vibrant community that contributes plugins, extensions, and
best practices. It also has extensive documentation and community support
forums, making it accessible for users to troubleshoot issues and share
knowledge.

21
22
SCREENSHOTS

Implementing SOCI In AWS

23
AWS Lambda Function For Assigning Tags to CloudWatch

Lambda Function for Deleting S3 Versions

24
CONCLUSION

In conclusion, the development and implementation of the point of sale


software for this internship have provided invaluable insights into the
intersection of technology and business operations. Through this project, I
have gained practical experience in software design, user interface
development, and the importance of aligning technological solutions with
business needs. This internship has not only enhanced my technical skills but
also deepened my understanding of the critical role software systems play in
enhancing efficiency and customer experience within retail environments.

25

You might also like