Yash Comp Ip

You might also like

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

JAIGOPAL GARODIA

VIVEKANANDA VIDYALAYA
AVADI,CHENNAI-600 054

COMPUTER SCIENCE
INVESTIGATORY REPORT

1
STUDENT’S PROFILE

NAME: YASHIKA.R.S

CLASS: XII-A

ROLL NO: 12121

SUBJECT:COMPUTER INVESTIGATORY REPORT.

TOPIC: ID CARD GENERATOR

SUBMITTED TO: Tr. REVATHI

ACADEMIC YEAR: 2023-2024


CERTIFICATE

This is to certify that the computer Investigatory Project titled 'ID card
generator' has been successfully completed by YASHIKA.R.S of class XII
under the supervision and guidance of computer teacher Mrs Revathi miss in
partial fulfilment of curriculum of Central Board of Secondary Education
(CBSE) leading to the award of annual examination of the year 2023-24.

All the works related to the project is original and genuine and has been
completed solely, sincerely and satisfactorily by the candidate to investigate
about the subject matter.

Signature of Principal

Signature of Signature of
Internal Examiner External examiner

3
ACKNOWLEDGEMENT

I would like to thank my computer teacher Mrs. Revathi for guiding me


throughout this project work.

A special acknowledgement goes to our principal mam Mrs. Sylasree


Vasunath and Senior secondary principal mam Mrs. Sreeja who gave me the
golden opportunity of this wonderful project, which also helped me in doing a
lot of research and I came to know about so many new things.

I wish to thank my parents as well for their support and encouragement without
which I could not have completed this project in the limited time frame.

In the end, I want to thank my friends who displayed appreciation for my work
and motivated me to continue my work.

And last but not the least I thank the almighty for everything that I have
achieved till now.
INDEX

CHAPTER NO TITLE NAME PAGE NO

ABSTRACT 5
LIST OF FIGURES 7

1. INTRODUCTION
1.BACKGROUND
2. OUTLINE OF THE PROJECT
3. ORGANIZATION OF THE REPORT

2. AIM
1. AIM

2. PROBLEM STATEMENT
3. LITERATURE REVIEW
4. SCOPE

3. ALGORITHMS AND METHODS


1. GENERAL
2. ALGORITHM
3. PROJECT DESCRIPTION

4. SYSTEM IMPLEMENTATION
1. REQUIREMENTS

5. RESULTS AND DISCUSSION

5.1 CONCLUSION
5.2REFERENCE
5.3 APPENDIX

5
CHAPTER 1

INTRODUCTION

1. BACKGROUND

Now-a-days with rapid growth of population, people need to be identified and


it is now a must for every organization from a company to a large country to have the Identity
card (ID) for the every people. The entire project is easily understood by a normal person
who knows simple English and python. The language used in this project is python. For a
better view of the final ID card, the best image viewer can be used. Finally, it is a user-
friendly application for the company as well as the user.

2. OUTLINE OF THE PROJECT

This project is about creating Identity Card for companies which has large
number of users/employees. By generating a unique QR code, this project creates
individual and secured ID cards for employees. This QR code is created by using the
company name and the unique ID number that is given to the users/employees. The ID
card generator will ask for the user’s information like Name, Company name, DOB, Blood
group and adds this information to the image. This image adds all the information using the
co-ordinate values. All these image activities are done by using the pillow module which is
known as PIL. Thus, at the end of the project an Identity Card will be generated for the
user.

3. ORGANIZATION OF THE REPORT

Chapter 2 deals with Aim, Problem Statement, Literature Review and Scope
of the present investigation. Chapter 3 deals with General, Algorithm, Project
description. Chapter 4 deals with Requirement, Role of Python and Results And
Discussion. Chapter 5 deals with Conclusion and Future work.
CHAPTER 2

AIM & SCOPE

1. AIM

The main objective of this project is to generate a unique ID card for all the
users. When it comes to uniqueness, generating QR code for each user is the best way.
This QR code is created by using the company name and the ID number that is given to
the users individually. Thus, the user can use the QR code for other purpose also.

2. PROBLEM STATEMENT

The job is to create an ID card for the users in a large company. When there
are more employees in a company, generating an ID card individually is a bit tough task.
So, by using this ID card generator, the task is made easier for the users.

3. LITERATURE REVIEW

In this project, an individual ID card will be generated for every user. The QR
code given to the user is unique and highly secured. The QR code is made up with the
company name and the individual ID number. First the code generates the QR code
separately and saves it as a BMP file. Once the QR code is generated, it can be added
with the existing details and saved as a PNG file. The modules used are, PIL – This is
also known as pillow module. Pillow is the friendly PIL fork by Alex Clark and Contributors.
PIL is the Python Imaging Library by Fredrik Lundh and Contributors.

Python Imaging Library (abbreviated as PIL) (in newer versions known as


Pillow) is a free library for the Python programming language that adds support for opening,
manipulating, and saving many different image file formats. qrcode - This module is a QR
code generator that is simple to use and written in

7
2
pure python. The module can automate most of the building process for creating QR
codes. Most codes can be created using only two lines of code. This module creates
the QR code by using the user info and creates it with ‘.BMI’ extension. Thus, the
secured digital ID card can be easily generated.

2.4 SCOPE

Python is one of the most prevalent coding languages. Alongside with being
a high-level and general-purpose programming language, Python is also an object oriented
and open source. Thus, the ID card can be easily generated within seconds. When we add
image here, the scope can be incremented. Thus, generating the secured ID card with
python is easily implemented here.
CHAPTER 3

ALGORITHMS AND METHODS

1. GENERAL

In this project, an individual ID card will be generated for every user. The QR
code given to the user is unique and highly secured. The QR code is made up with the company
name and the individual ID number. First the code generates the QR code separately and saves it
as a BMP file. Once the QR code is generated, it can be added with the existing details and
saved as a PNG file. The modules used are,

PIL – This is also known as pillow module. Pillow is the friendly PIL fork by Alex Clark and
Contributors. PIL is the Python Imaging Library by Fredrik Lundh and Contributors. Python
Imaging Library (abbreviated as PIL) (in newer versions known as Pillow) is a free library for
the Python programming language that adds support for opening, manipulating, and saving
many different image file formats.
qrcode - This module is a QR code generator that is simple to use and written in pure python.
The module can automate most of the building process for creating QR codes. Most codes can
be created using only two lines of code. This module creates the QR code by using the user info
and creates it with .BMI extension. Thus, the secured digital ID card can be easily generated.

2. ALGORITHM

1. Install the modules PILLOW and QRCODE which are needed to generate Image and qrcode.
2. Get inputs from the user for Company name, Name, Gender, DOB, Blood Group and address.
3. Assign color values for the obtained values and save it in the perfect Coordination. Example:
(50,60).

4. Save the image with ‘.png’ extension and by using the name value of the
User.
5. Generate the QRCODE using the company name and the unique ID card Number.

6. Paste the QR code that is generated in the image created and save the file.

7. Exit from ID card generator


3. PROJECT DESCRIPTION

PYTHON is the language used here to make ID card generator. When we run the project, the user will
be asked for the company name, his name, gender, DOB and address. Whenever the user enters value for
each field, it’ll be drawn in the coordination points. Such that, all the values are drawn in the correct place.
Once all the values are collected, the QRCODE is generated based on the company name and ID number.
It will be saved as a separate file with ‘.bmi’ extension. Once the QRCODE is generated, it will be pasted in
the generated ID card. The generated ID card will have the ‘.jpg’ extension. The name of the file will be the
name of the employee name. Thus, the ID card is generated and stored in the file location.

GENERAL DESCRIPTION
Requirement Modelling approaches are:
i) Scenario-Based modeling
ii) Use Case Diagram
iii) Data modeling
iv) ER Diagram
v) Class based modeling
vi) Class diagrams
vii) Behavioral modeling

i) Scenario-Based modeling
Scenario based modeling represents requirements from the point of view of various system ‘actors’.
Requirement modeling begins with the creation of scenarios in the form of use case diagrams.

ii) User Case Diagram

Use cases help to determine the functionality and features of the software from user’s perspective. A use
case describes how a user interacts with the system by defining the steps required to accomplish a
specific goal. Variations in the sequence of steps describe various scenarios. In the diagram the stick
figure represents an actor that is associated with one category of user. In the use-case diagram the use
cases are displayed as ovals.

Fig.1. Usercase Diagram


Fig.2. User Case Diagram

iii) Data Modelling

If software requirements include the need to create, extend, or interface with a database, the software
team may choose to create a data model as part of overall requirements modeling. It defines all data
objects that are processed within the system, the relationship between the data objects, and other
information that is pertinent to the relationships. The entity –relationship diagram (ERD) addresses these
issues and represents all data objects that are entered, stored, transformed, and produced within an
application. Data modeling tools provide a software engineer with the ability to represent data object,
their characteristics, and their relationships. Used primarily for large database applications and other
information systems projects, data modeling tools provide an automated means for creating
comprehensive entity relation diagrams, data object dictionaries, and related models.

iv) ER Diagram
An E-R diagram may also indicate the cardinality of a relationship. Cardinality is the number of instances
of one entity that can, or must, be associated with each instance of another entity. In general, we may
speak of one-to-one, one to-many, or many-to-many relationships.
Fig.3

USER INTERFACE DESIGN

The interface describes how the software communicates with itself. The user
interface is the link between the users and the employers. A well-designed user
interface makes it very easy for users to learn software. The user interface
portion of software is responsible for all interaction with the user. Development of
good user interface usually takes a significant portion of the total system
development effort. GUI can be defined as a program interface that takes
advantages of the computer’s graphic capabilities to make the program easier to
use.
The “ONLINE ID CARD MANAGEMENT SYSTEM” is a web based one. Web
application
use client/server architecture. The web application resides on a server and
responds to request from multiple clients over the Internet on the client side, a
browser, such as Internet Explorer, Netscape Navigator, hosts the Web
application. The application’s user interface takes the form of HTML pages that
are interpreted and displayed by the client’s browser. On the server side, the Web
application runs under Microsoft Internet Information Services (IIS). IIS manages
the application, passes requests from clients to the application, and returns the
application’s response to the client.

ARCHITECTURAL DESIGN

It is tied to the goals established for a web App, the content to be presented, the
user who will visit and the navigation philosophy that has been established. As an
architectural designer, you must identify content architecture and WebApp
Architecture. Content architecture focuses on the manner in which content
objects are structured for presentation and navigation. WebApp Architecture
addresses the manner in which the application is structured to manage user
interaction, handle internal processing tasks, effect navigation and present
content. Architectural design - creates a blueprint for the design with the
necessary specifications for the hardware, software, people and data resources.
In this project n-Tier architecture is used for development. It can use objects for
handling business rules and data access. It has multiple servers handling
business services.
Fig.4
COMPONENT LEVEL DESIGN

Modern Webapp deliver increasingly sophisticated processing functions that,


(1) Perform localized processing to generate content and navigation capability in a dynamic
fashion.
(2) Provide computation or data processing capability that is appropriate for the Webapp’s
business domain,
(3) Provide sophisticated database query and access,(4) Establish data interface with external
cooperate system.

CONTENT DESIGN

Content design focuses on two different design tasks, each addressed by


individuals with different skill test sets. First, a design representation for
content objects and the mechanisms required to establish their relationship to
one another is developed.
In addition, the information within a specific content object is created. The
latter task may be conducted by copywriters, graphic designers, and others
who generate the content to be used within a Web app.
In the “ONLINE ID CARD MANAGEMENT SYSTEM” admin has the total
control to the website. Admin will manage all registration and report
generation. Admin enters student details and generate ID card based on these
details. Admin can choose different types of ID card templates. All the
information of students is stored in the database. Therefore, we can print again
the ID card when it is missed.

DATABASE DESIGN

The most important aspect of building an application is the design of


database. The data they store must be organized according to the user
requirement. A well-designed database is essential for the good performance
of the system. A database table known as a relation provides information
related to specific entity.
The basic functions involved in a database system related to the information
required by the user are:
~Defining the data
~Input the data
~Locating the data
~Communicating the data
Fig.5

The above diagram represents the case diagram for QR code used for generating
student ID card. The following diagram shows that the admin is accessing the following
information which we need for generating an company ID card the following are the
information accessed by the Admin are providing info, manipulating etc..Thus, after
collecting all kind of information the admin generates an ID card.
TESTING:

CONTENT TESTTING

Fig.6

Content testing checks that users can easily understand all items that appear on a
site and, importantly, that they are able to correctly interpret the information they read.
Accordingly, it identifies any problem areas that may require simplification or rewriting.
The overall purpose of testing a content concept is to figure out what content strategy you
should follow throughout the project. This system was tested for successful acceptance
and was found to be working properly. Content should be logical and easy to understand.
Check for spelling errors. Use of dark colors annoys users and should not be used in site
theme. “ONLINE ID CARD MANAGEMENT SYSTEM” follows some standards that are
used for web page and content building. These are common accepted standards like
mentioned above about annoying colors, fonts, frames, etc. Content should be meaningful.
All the anchor text links should be working properly. Images should be placed properly with
proper sizes. These are some basic standards that are followed in “ONLINE ID CARD
MANAGEMENT SYSTEM.

USER INTERFACE TESTING

This tests the whole end to end scenario (which simulates exactly what the user would be
doing). This (for the most part) goes through all the mouse clicks and keyboard presses
the user goes through to get an action done.
If we extend the previous example this would be invoking the same action except that this
time instead of using any test hooks it would be using the keyboard shortcut and instead
verify the actual displayed results on the application.
User Interface testing is a process to test “ONLINE ID CARD MANAGEMENT SYSTEM”
user interface and to detect if application is functionally correct. User Interface testing
involves carrying set of tasks and comparing the result of same with the expected output
and ability to repeat same set of tasks multiple times with different data input and same
level of accuracy

Fig.7

User Interface Testing includes how the “ONLINE ID CARD MANAGEMENT SYSTEM” handles
keyboard and mouse events, how different GUI components like menu bars, toolbars, dialogs, buttons,
edit fields, list controls, images etc. reacts to user input and whether or not it performs in the desired
manner.
Implementing User Interface testing for your application early in the software development cycle
speeds up development, improves quality and reduces risks towards the end of the cycle.
User Interface Testing can be performed both manually with a human tester or could be performed
automatically with use of a software program.
COMPONENT LEVEL TESTING

Component level testing similar to unit testing but with a higher level of integration. The big difference
here is that the testing is done in the context of the application instead of just directly testing the method
in question. While testing at the component level you would have the application open and the document
displayed but you would be testing the method and evaluating its result.(without taking into account the
shortcut or what get displayed on the application afterwards).
In “ONLINE ID CARD MANAGEMENT SYSTEM”, the system consists of several modules. All modules
are tested and were found to be working properly.

FIG.8

NAVIGATION TESTING

Navigation testing confirms that all internal and external links of “ONLINE ID CARD MANAGEMENT
SYSTEM” are working properly. There is no any broken link or orphan page in application.
Once the first layers of the Software have been examined, it is time to perform simple tests to probe
the quality of the global Software navigation. Good Software will provide consistent, well-executed
navigation and should provide alternative navigation schemes, such as Software maps, indexes, and
search engines.
First, look to make sure that placement of navigation is consistent from page to page. Subtle shifting
may occur, so try browsing the site extremely fast and notice whether the menu items bounce or jump
position slightly from page to page. Even this minor variation can break the perceived stability of a site.
Next, look to see how robust the navigation is and whether multiple forms of Software navigation are
supported. Numerous navigation execution questions should be asked during this
phase. The current location clearly indicated with labels or link path indicators. The Software has text
links at the bottoms of pages. Alternative text used for graphical navigation buttons. The Software
requires excessive scrolling.
CONFIGURATION TESTING

FIG.9
The process of testing a system with each of the configuration of software and hardware that are
supported. Configuration testing is another variation on traditional performance testing .
Rather than testing for performance from the perspective of load you are testing the effects of
configuration changes in the application landscape on application performance and behavior.
“ONLINE ID CARD MANAGEMENT SYSTEM” was tested for successful acceptance and was found
to be working properly .

SECURITY TESTING

FIG.10
Security testing is the process to determine that an information system protects data and maintain
functionality as intended. During security testing, the tester plays roles of the individual who desires to
penetrate the system. The tester may attempt to acquire passwords through external clerical means;
may attack the system with custom software designed to breakdown any defenses that have been
constructed; may overwhelm the system, thereby denying service to others; may cause system errors,
hoping to find the key to system entry.

FIG.11

“ONLINE ID CARD MANAGEMENT SYSTEM” was tested for successful acceptance i.e., she/he have to
enter username or password to enter to the system. If the username and password is not correct the
message invalid username or password is displayed. So unauthorized user cannot access the system.
PERFORMANCE TESTING

FIG.12

Performance testing is designed to test the run time performance of software within the context of an
integrated system. Performance testing occurs throughout all steps in the testing process.
Even at the unit level, performance of individual module may be assessed as white box tests are
conducted, it is not until all system elements are fully integrated that true performance of a system
can be ascertained. This system was tested for successful acceptance and was found to be working
properly.
CHAPTER 4

SYSTEM IMPLEMENTATION

4.1 REQUIREMENTS

I. HARDWARE REQUIREMENTS

➢ A system with minimum 2GB of RAM.


➢ Keyboard. ➢ Monitor.

II. SOFTWARE REQUIREMENTS

➢ Python 3.6 version installed in the system.

➢ Pillow & qrcode module using ‘pip’ command. ➢ Any one image
viewer.

4.2 ROLE OF PYTHON

Python is a popular, general-purpose programming language with an emphasis


on being readable and allowing programmers to use fewer lines of code to accomplish
tasks than in older languages. Libraries such as NumPy, SciPy and Matplotlib make it
useful for scientific computing. In our project, python is the programming language that is
used for creating ID card generator. Here, using python the lines of code is reduced and
the inputs are easily pasted in the image. We can also get the date and time using the
‘datetime’ module. Python is also used in film industries. Using the image, imagedraw
and imagefont functions the image can be easily generated. Thus, python plays a major
role in all the fields today.
4.3 RESULTS AND DISCUSSION

The result of the project is the ID card with the unique QRCODE. The values
for company name, employee name, DOB, gender, blood group, address and phone
number are perfectly added as per the co-ordinate values. The generated QRCODE is
pasted and the final ID card is created as the end of the project.
CHAPTER 5

CONCLUSION AND FUTURE WORK

5.1 CONCLUSION

This application is very simple. It is easily understood to the users who has
knowledge in python and English. This project will be useful for the company for creating
ID cards when there are more employees joined at a time. As we added QRCODE in that,
the ID card is more secured and can be accessed for other purposes too.
REFERENCES

1 PYTHON - https://www.w3schools.com/python/

2 PYTHON – Sololearn application

3 Introduction to programming using python – Y.DANIEL LIANG

4 Github – www.github.com/id-card-generator/
APPENDICES

SOURCE CODE

You might also like