Nikita Jain Internship Report

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

509 Army Base Workshop Internship Report

BACHELOR OF TECHNOLOGY
IN
COMPUTER SCIENCE

Submitted by
Nikita Jain (2000290310115)

Session 2022-23

DEPARTMENT OF COMPUTER SCIENCE


KIET GROUP OF INSTITUTIONS, GHAZIABAD
(Affiliated to Dr. A. P. J. Abdul Kalam Technical University, Lucknow, U.P., India)
1
CERTIFICATE

This is to certify that the “Internship report” submitted by Nikita Jain is work done by her and
submitted during 2023 – 2024 academic year, in partial fulfilment of the requirements for the award of
the degree of BACHELOR OF TECHNOLOGY in COMPUTER SCIENCE, at GHAZIABAD.

College Internship Coordinator: Mr Rahul


Department Internship Coordinator: Mr Harshvardhan
Head of the Department of CS: Dr Ajay Kumar Shrivastava

2
3
ACKNOWLEDGEMENT
First, I would like to thank Lt. Col. RD Mathur Sir, of 509 Army Base Workshop, Agra for giving
me the opportunity to do an internship within the organization.
I also would like all the people that worked along with me 509 Army Base Workshop, Agra 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 Dr. Amik Garg, for the facilities provided to accomplish this
internship.
I would like to thank my Head of the Department Dr. Ajay Srivastava for his constructive criticism
throughout my internship.
I would like to thank Mr. Harsh Vardhan internship coordinator Department of CS for their
support and advice to get and complete internship in above said organization.
I am extremely great full to my department staff members and friends who helped me in successful
completion of this internship.

Nikita Jain
(2000290310115)

4
ABSTRACT

This internship report documents my experience and insights gained during my tenure as a
Technical Trainee Intern at 509 Army Base Workshop from July 2023 to Aug 2023. The report
provides an overview of the projects I worked on, the skills I acquired, and the challenges I
encountered while contributing to the development of web-based software.
Throughout the internship, I actively participated in various phases of the software development
life cycle, including requirements analysis, design, implementation, testing, and deployment. I
collaborated closely with cross-functional teams, including designers, backend developers, and
product managers, to deliver responsive and user-friendly web solutions.

Organisation Information:

Name: 509 Army Base Workshop Agra

Establishment date: 1st May 1993

Défense Organization

Department: Technical Training Cell

509 ABW is responsible for repair and overhaul of communication systems, radars and other
electronic equipment including diesel generators. User units directly deposit their equipment due
for overhaul and collect the same after overhaul from the ABW.

Methodologies:

We follow a structured methodology for our projects which starts from designing the solution to
the implementation phase. Well planned Project reduces the time to deliver the project and any
additional ad-hoc costs to our clients, hence we dedicate the majority of our time understanding
our clients business and gathering requirements. This ground up approach helps us deliver not only
the solution to our clients but also add value to your investments.

5
INDEX

S.no CONTENTS Page no


1. Introduction……………………………………………………………………....1

1.1 Modules…………………………………………………………………….…….2

2. Analysis…………………………………………………………………….…....3

3. Software requirements specifications ………………………………….……….4

4. Technology……………………………………………………………….………5

4.1 Django…………………………………………………………………………….5

4.2 SQL ……………………………………………………………………….……....6

4.3 MySQL Data Base………………………………………...……………………….7

5. Flow Chart……………………………………………….……………………….10

6. Screenshots...............................................................................................................11

7. Conclusion…………………………………………………...…………………….15

8. Bibliography……………………………………………………………………….16

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

7
WEEKLY OVERVIEW OF INTERNSHIP ACTIVITIES

8
9
1. INTRODUCTION
In today's fast-paced digital age, efficient management of documents and communications is
essential for organizations to maintain productivity and effectiveness. The Letter Management
System is a web-based application that addresses the challenges of handling letters in a modern
workplace. By leveraging the power of HTML, CSS, and the Django web framework, the system
offers an innovative solution to streamline the creation, storage, categorization, and retrieval of
letters within an organization.
Traditional paper-based letter management processes are often time-consuming, cumbersome,
and prone to errors. The Letter Management System aims to replace these outdated practices with
a user-friendly, secure, and eco-friendly digital platform. It caters to the needs of diverse users,
including administrators, staff, and employees, ensuring seamless collaboration and
communication across the 509 Army Base Workshop organization.
With a focus on user experience, the frontend of the system is designed using HTML and CSS to
provide an intuitive and visually appealing interface. Users can compose new letters, edit existing
ones, and categorize them for easy organization. Powerful search functionality enables quick
access to specific letters based on keywords or filters, saving valuable time and effort.
Security is a top priority in the system's design, implementing robust authentication and
authorization mechanisms to safeguard sensitive information. The Letter Management System's
database management is efficiently handled through Django's ORM, ensuring reliable data
storage and retrieval.
In this brief report, we will explore the key features, benefits, and functionalities of the Letter
Management System. By understanding the system's architecture, frontend and backend
implementation, and security measures, readers will gain valuable insights into the potential
advantages of adopting this digital solution for letter management.
The Letter Management System offers a strategic and practical approach to optimize document
handling, enhance productivity, and maintain data security. By embracing this innovative
solution, organizations can simplify letter management processes, reduce operational costs, and
contribute to a more sustainable and efficient work environment.

1
1.1 Module Description:

Admin Module
======
1) Add the letters.
2) Edit the letters and delete the letters.
3) Create the users.
4) Can Activate and Deactivate the user account.

User Module
=======
1) Can Only see the letter under his/her department
2) Can edit the specific fields in the letter

2
2. SYSTEM ANALYSIS

2.1 Requirement Analysis Existing

System:

The analysis of the existing letter management system unveiled significant drawbacks in the current
approach. The prevailing system primarily relied on paper-based processes, resulting in a series of
operational challenges. These challenges included notable time consumption, a heightened risk of errors,
restricted accessibility, and the substantial physical storage requirements for documents. Furthermore, the
absence of defined user roles and permissions presented hurdles for maintaining data integrity and
enforcing security.
Existing System Assessment:
Paper-Based Processes:
The prevalent use of physical documents led to time-intensive procedures and heightened the potential for
errors, detracting from operational efficiency.
Limited Accessibility:
Access to critical information was constrained by geographical and logistical factors, hindering
communication and collaboration across military departments.
Data Security and Control:
Without user roles and permissions, ensuring the security of sensitive data and maintaining data integrity
was challenging, presenting compliance and security risks.
Proposed System
The proposed "Army Letter Hub" solution offers a digital platform to streamline letter management within
the military. It replaces paper-based processes with efficient digital workflows, reducing errors and paper
usage. Robust security features, including user roles and permissions, safeguard sensitive data, while
remote accessibility promotes interdepartmental collaboration. Customization options cater to diverse
departmental needs, and user-friendly design ensures ease of adoption. Administrators gain control over
user accounts, enhancing security. The system's scalability and future-proofing ensure adaptability to
evolving military requirements, making it a valuable tool for modernizing communication and information
management within the military.

3
3. SOFTWARE REQUIREMENTS SPECIFICATIONS

3.1 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 behaviour, and indication of performance and design constrain, appropriate validate
criteria, and other information pertinent to requirements.

3.2 Hardware Requirements

• RAM: 4GB
• Storage: 512 GB
• CPU: 2 GHz or faster
• Processor: Pentium(III) or higher
• Architecture: 32-bit or 64-bit
3.3 Software Requirements

• Technology: Python Django


• IDE: PyCharm / VS Code
• Client-Side Technologies: HTML, CSS, JavaScript, Bootstrap
• Server-Side Technologies: Python
• Database Server: SQLite, MySQL
• Operating System: Microsoft Windows/Linux

4
4. TECHNOLOGY

4.1 Django

Django is a high-level, open-source web framework written in Python. It was created to simplify
and accelerate the development of web applications by providing a robust and pragmatic set of
tools and conventions. Django follows the "batteries-included" philosophy, meaning it includes
a wide range of built-in features and libraries for common web development tasks.
Here are some key aspects of Django:
1. Model-View-Controller (MVC) Architecture:
● Django follows the Model-View-Controller (MVC) architectural pattern, but it uses
slightly different terminology: Model-View-Template (MVT).
● Models define the data structure and interact with the database.
● Views handle the logic for processing requests and rendering responses.
● Templates define the presentation layer, allowing developers to separate HTML from
Python code.
2. Object-Relational Mapping (ORM):
● Django provides an ORM that allows developers to define database models using Python
classes. These models are then translated into database tables and queries automatically.
● The ORM supports various database backends, including PostgreSQL, MySQL, SQLite,
and Oracle.
3. Admin Interface:
● Django includes an admin interface that can be used out of the box to manage application
data. Developers can easily create custom admin interfaces for their models.
4. URL Routing:
● Django's URL routing system allows developers to define URL patterns and associate
them with specific views.
● URL patterns can include dynamic parts that capture values from the URL and pass them
to view functions.
5. Security Features:
● Django includes built-in security features to protect against common web vulnerabilities,
such as cross-site scripting (XSS), cross-site request forgery (CSRF), and SQL injection.
● It also provides tools for user authentication and authorization.
6. Form Handling:
● Django simplifies form handling with its form library. Developers can define form
structures, validate user input, and handle form submissions easily.
7. Middleware:
● Middleware components can be used to process requests and responses globally. For
example, middleware can handle authentication, compression, and more.
8. Template Engine:

5
● Django's template engine allows developers to create HTML templates with placeholders
for dynamic content. These templates are then rendered with data from the views.
9. Internationalization and Localization:
● Django supports internationalization and localization, making it possible to create
applications that work in multiple languages and regions.
10. Testing Framework:
● Django provides a comprehensive testing framework for writing unit tests, integration
tests, and functional tests.
11. Third-Party Packages:
● The Django ecosystem includes a vast array of third-party packages and extensions that
can be easily integrated to extend its functionality.
12. Scalability:
● While Django is well-suited for building small to medium-sized applications, it can also
scale to handle large and complex projects with proper architecture and optimization.

Django is widely used in web development because of its efficiency, security, and flexibility. It's
particularly popular for building content management systems (CMS), e-commerce platforms,
social networks, and other data-driven web applications. Django's extensive documentation and
strong community support make it an excellent choice for both beginners and experienced
developers.

4.2 SQL

SQL, or Structured Query Language, is a domain-specific programming language used for


managing and manipulating relational databases. SQL is essential for working with databases, as
it allows you to perform various operations such as creating, querying, updating, and deleting
data. Here are some fundamental aspects of SQL:
1. Database Management Systems (DBMS):
● SQL is used in conjunction with Database Management Systems like MySQL,
PostgreSQL, Oracle, Microsoft SQL Server, SQLite, and many others.
● Each DBMS may have its own dialect of SQL, but the core concepts are largely
consistent.
2. Data Manipulation:
● SQL provides a set of commands for performing operations on data stored in a relational
database. These operations include:
● SELECT: Retrieving data from one or more tables.
● INSERT: Adding new records to a table.
● UPDATE: Modifying existing records in a table.
● DELETE: Removing records from a table.
3. Data Definition:
● SQL allows you to define the structure of your database, including:
● CREATE TABLE: Defining tables and their columns.

6
● ALTER TABLE: Modifying the structure of existing tables.
● DROP TABLE: Deleting tables.
● CREATE INDEX: Creating indexes for faster data retrieval.
4. Data Querying:
● SQL is commonly used to query databases to retrieve specific data. Queries can be simple
or complex and can involve filtering, sorting, grouping, and joining multiple tables.
5. Data Constraints:
● SQL enables you to impose constraints on data integrity, such as:
● PRIMARY KEY: Ensuring unique values in a column.
● FOREIGN KEY: Establishing relationships between tables.
● UNIQUE: Enforcing uniqueness across table rows.
● CHECK: Specifying conditions that data must meet.
6. Aggregation and Grouping:
● SQL provides functions like COUNT, SUM, AVG, MIN, and MAX for aggregating and
summarizing data.
● You can use GROUP BY to group data by one or more columns.
7. Joins:
● SQL allows you to combine data from multiple tables using JOIN operations. Common
types of joins include INNER JOIN, LEFT JOIN, RIGHT JOIN, and FULL JOIN.
8. Transactions:
● SQL supports transactions, which are sequences of one or more SQL statements treated
as a single unit. Transactions ensure data consistency by allowing either all the statements
in a transaction to succeed or none at all.
9. Views:
● SQL allows you to create views, which are virtual tables based on the result of a query.
Views simplify complex queries and provide an abstracted layer of data access.
10. Stored Procedures and Functions: - SQL lets you define stored procedures and functions,
which are reusable blocks of code that can be called to perform specific tasks or calculations.
SQL is a fundamental skill for database administrators, data analysts, and software developers
who work with relational databases. It's a powerful tool for managing and extracting insights
from data, making it an essential part of the data-driven world of modern software development
and data management.

4.3 MySQL Data Base

MySQL is an open-source relational database management system (RDBMS) that is widely


used for managing and storing structured data. It is one of the most popular database systems
globally and is known for its performance, reliability, and ease of use. Here are some key aspects
of MySQL:
1. Relational Database Management System (RDBMS):
● MySQL follows the principles of a relational database, where data is organized into tables
with rows and columns.

7
● It allows you to establish relationships between tables, enforce data integrity, and perform
complex queries using Structured Query Language (SQL).
2. Open Source:
● MySQL is released under an open-source license, which means it is freely available for
use, modification, and distribution.
● It is actively developed and maintained by the open-source community.
3. Cross-Platform:
● MySQL is available on various operating systems, including Windows, Linux, macOS,
and more.
● It can be used with a wide range of programming languages and development
environments.
4. Data Types:
● MySQL supports a variety of data types, including integers, floating-point numbers,
strings, dates, and more.
● It also allows users to define custom data types and storage engines.
5. SQL Support:
● MySQL fully supports SQL, which is used to create, retrieve, update, and delete data in
the database.
● It also supports advanced SQL features like subqueries, joins, views, and stored
procedures.
6. Performance and Scalability:
● MySQL is known for its excellent performance and can handle high traffic and large
datasets efficiently.
● It offers features like indexing, caching, and replication to optimize performance and
scalability.
7. Security:
● MySQL provides robust security features, including user authentication, access control,
and data encryption.
● It supports various authentication methods, including password-based and certificate-
based authentication.
8. High Availability and Replication:
● MySQL supports features like replication and clustering to ensure high availability and
data redundancy.
● Replication allows you to create multiple copies (replicas) of a database to distribute the
workload and ensure fault tolerance.
9. Storage Engines:
● MySQL supports multiple storage engines, including InnoDB (the default), MyISAM,
and others. Each engine has unique characteristics and is suited to different use cases.
10. Community and Enterprise Editions: - MySQL is available in two editions: the community
edition (free and open-source) and the enterprise edition (commercial with additional features
and support).

8
11. Tools and Ecosystem: - MySQL has a rich ecosystem of tools and software that complement
its functionality, including graphical user interfaces (GUIs), connectors for various programming
languages, and monitoring tools.
MySQL is widely used in web applications, content management systems (CMS), e-commerce
platforms, and various other software applications that require robust and efficient data storage
and retrieval. Its combination of performance, reliability, and cost-effectiveness has made it a
popular choice for both small-scale projects and large-scale enterprise applications.

9
6. Flow Cart

10
7. SCREENSHOTS

Home

ADMIN Module

11
12
13
USER Module

14
8. CONCLUSION

In conclusion, the "Army Letter Hub" project represents a groundbreaking advancement in military
letter management. Its core objective was to transition away from paper-based processes and
enhance efficiency. The introduction of a sophisticated digital portal achieved this goal,
significantly reducing paperwork and streamlining letter creation and management. This
transformation not only expedited processes but also contributed to environmental sustainability.

The project's robust security measures and user role management ensured data integrity and access
control. It facilitated secure backups and improved accessibility, allowing personnel to access the
portal from anywhere, promoting interdepartmental collaboration.

Customization for different departments simplified user experience and data organization, and
administrators gained powerful user management tools to enhance security and data integrity. The
user-friendly interface ensured easy adoption across various ranks.

Moreover, the project's scalability and future-proofing measures ensure adaptability to the
military's evolving needs and contribute to cost savings. In summary, the "Army Letter Hub"
project is a significant leap forward, delivering efficiency, security, cost reduction, environmental
benefits, and compliance. It stands as a crucial tool for modernizing military communication and
information management, empowering military organizations to fulfill their missions more
effectively in the digital age.

15
9. BIBLOGRAPHY
WEBLINKS:

1. https://www.geeksforgeeks.org/how-to-integrate-mysql-database-with-django/
2. https://www.digitalocean.com/community/tutorials/how-to-authenticate-django-
apps-using-django-allauth
3. https://www.mysql.com/
4. https://www.scaler.com/topics/django/mysql-with-django/
5. https://www.djangoproject.com/

16

You might also like