You are on page 1of 34

Student’s Barracks

Mini Project Report


Submitted in partial fulfilment of the requirement for the award of the Degree
Of
Bachelor of Engineering
In
COMPUTER SCIENCE & ENGINEERING

By
Abdul Rehman Khan
(H.T. No: 160518733019)
Sumeria Begum
(H.T. No: 160518733006)
Mohd Abdul Rehman
(H.T. No: 160518733013)
Under the esteemed guidance of

Mohammed Rehmat Ali khan


Asst. Prof. C.S.E. Department

Department of Computer Science & Engineering


College Name
(Affiliated to OU, Hyderabad )

Bandlaguda, HYD DIST. T.S

1
CERTIFICATE

This is to certify that the project work entitled “ Student’s Barracks” is a bonafide work
of Ms. Sumeria Begum bearing H. T. No: 160518733006, Mr. Abdul Rehman Khan
bearing H. T. No: 160518733019, Mr. Mohd Abdul Rahman bearing H. T. No:
160518733013 submitted in partial fulfilment of the requirement for the award of
the degree of Bachelor of Engineering in COMPUTER SCIENCE &
ENGINEERING during the academic year 2020-2021.This is further certified that
the work done under my guidance, and the results of this work have not been
submitted elsewhere for the award of any of the degree.

EXTERNAL EXAMINER

Internal guide Principal:Mr.


MOHAMMED RAHMAT ALI, DR. Mohommad Masood
Asst. Professor .

DECLARATION

2
___________________________________________________

I hereby declare that the project work entitled “Student Barracks” submitted to
Department of Computer Science & Engineering of ISL Engineering College,
HYDERABAD, affiliated to OU Hyderabad in partial fulfilment of requirement
for the award of the degree of Bachelor of Engineering in COMPUTER SCIENCE
& ENGINEERING is the work done by me and has not been submitted elsewhere
for the award of any degree.

Name: Sumeria Begum


H.T.NO: 160518733006
Name: Abdul Rehman Khan
H.T.NO: 160518733019
Name: Mohd Abdul Rahman
H.T.NO: 160518733013

3
Acknowledgements
___________________________________________________________

I express my sincere thanks to Dr. ABDUL BARI, Professor and Head of the Department ,

who has always been a great source of inspiration and giving me an opportunity to undertake

this project also for encouraging and enlightening me on various aspects of my project

work.

I am also thankful to Mr. MOHAMMED RAHMAT ALI , Asst. Professor Department of

Computer Science & Engineering for his assistance in the evaluation of material and

facts. He not only encouraged me to take up this topic but also gave his valuable guidance in

assessing facts and arriving at conclusions during the course of the project.

I am grateful to the entire faculty for their valuable guidance for successful

completion of this project work.

I would also like to thanks all my classmates who have extended their cooperation

during my project work.

Name: Sumeria Begum


( H.T.NO: 160518733006)
Name: Abdul Rehman Khan
(H.T.NO: 160518733019)
Name: Mohd Abdul Rahman
(H.T.NO: 160518733013)

4
ABSTRACT

All your needs as a student just a click away.

Student life, often mentioned as the "seed time" of life is undoubtedly the most important
time for any person to build their life. Success of a person depends on how well s/he utilizes
the time. And without a doubt, student life is the best time for it. To make the life of a student
a bit more easy, we made 'Student's Barracks’, a simple yet useful app to help the student
push their limit a bit further.

This app is bundled with 8 different modules with their own use cases starting from a simple
To Do list to a wikipedia integration. And everything is tied together with a simple intuitive
layout for an easy workflow.

5
1. INTRODUCTION

The App will Consist of:


8 different modules, 8 different usages (if you count the about section too )

● Wikipedia: The knowledge house of the internet. Search anything on it, and get a
quick summary.
● To-do: Keep a list of things you don't want to forget.
● Notebook: Keep note of important things.
● Translation: What's the meaning of that? Just search it here.
● Books: Lets you search for some cool books.
● YouTube: You can search for a youtube video in case u need an Explanation.
● About: Just regular boring stuff.
● Setting: Don't like the UI? CHANGE IT!

1.1. OBJECTIVE
This app is bundled with 8 different modules with their own use cases starting from a
simple To Do list to a wikipedia integration. And everything is tied together with a
simple intuitive layout for an easy workflow.

1.2. EXISTING SYSTEM


Online Learning Website

1.2.1. EXISTING SYSTEM DISADVANTAGES

✔ User didn’t get Proper answer from experts in the Same Question.
✔ The answer part is not displayed due to the space limitation

6
1.3.2. LITERATURE SURVEY

The popularity of e-learning interventions is growing exponentially. To remain


competitive in today’s tight labor market, organizations are exploiting advances in
technology to train employees more rapidly, more effectively, and at less expense than
the past (Urdan and Weggen, 2000). The debate over the effectiveness of e-learning has
gotten a lot of attention lately. Trainers, educators, researchers, and authors have
discussed the significance of moving instruction to the web (Goodwin, 2000). However,
the recent popularity of e-learning has not come without scrutiny. E-learning delivery
methodologies can require a paradigm shift in the way that training is viewed and
delivered.
This paradigm shift required trainers and educators to rethink how to best train
and educate employees and students. A change of this magnitude is not easily
accomplished without a compelling argument to do so. According to Chute, Thompson,
and Hancock (1999), the first step in starting an e-learning program is usually to
understand and convince others of the advantages of the delivery method. Since
supporters of e-learning often promote its cost effectiveness and increased access as
primary advantages, many question if it compromises educational effectiveness to get
these benefits (Chute, Thompson, and Hancock,1999).
One of the most common ways to measure the effectiveness of e-learning is to
compare it to traditional instructor-lead education and training. For many years educators
and other experts have studied different forms of distance learning and teaching in order
to identify if there are any significant differences when compared to traditional education
and training. Chute, Thompson, and Hancock, 1999 related, “After looking first at
correspondence, audio conferencing, videoconferencing, and computer conferencing,
35
these researchers have overwhelmingly reported that there is no significant difference in
the achievement of students in well designed distance learning programs, based on
standard performance measures”.
This portion of the paper will present studies that compare e-learning programs to
traditional instructor-lead classroom education. Studies will be grouped into three content
areas, learner achievement, learner satisfaction, and cost effectiveness.
Learner Achievement Studies
A primary goal of providing training and education is to bridge the gap between
current and desired knowledge, skills, and attitudes (KSA’s). In order to measure if

7
desired KSA’s have been attained, learner achievement needs to be measured. A number
of studies have compared learner achievement in courses delivered via e-learning and
courses delivered in traditional face-to-face classroom instruction.
In a study of learner achievement at California State University, Schutte (1996)
examined the effects of face-to-face vs. virtual professor-learner interaction, on the test
performance of students. The study used a pre and post-test to obtain data. The Pre-test
questionnaire focused on basic demographics and experience with computers, math, and
statistics. The post-test assessment consisted of learner scores on midterm and final
exams and information from the post-test questionnaire.
On the first day of class, learners were randomly assigned to the face-to-face
course or the virtual course. Comparisons were made between these two groups in sex,
age, ethnicity, years in school, grade point average, and computer familiarity. Students in
both courses took the exact same midterm and final exams.
Results revealed that there was no significant difference in any of the
demographic or experimental variables. However, there were significant differences on
the midterm and final exam. The virtual learners scored an average of 20 points higher on
the 100 point midterm and final exams. Data also indicated that virtual learners
communicated more frequently with other learners than did face-to-face learners.
Because of this, the researcher concluded that it is important that designers of virtual
courses pay close attention to the issue of real time collaboration.
Payne and Payne (1998) discussed the analysis of learner achievement in distance
learning courses delivered by the Federal Aviation Administration (FAA). The FAA,
upon implementing new Interactive Video Teletraining courses, decided to analyze
training effectiveness by comparing the new courses to traditional resident-based
instruction. IVT is a one-way video two-way audio training system.
The major impetus of the FAA’s effort was to identify if the quality of the IVT
courses was equivalent, in learner achievement, to its traditional resident-based training.
To measure learning quality, the FAA compared the learning results of the IVT courses
with resident-based courses. When comparisons were not possible because an IVT course
was all new, pre to post-tests were compared to measure learning.
36
The first course comparison was conducted with a Cockpit Inspection course. The
resident course was thirty-six hours long while the IVT course was only twenty-four
hours long. The mean test score for the resident-based course was a bit higher than the
IVT course, but not statistically significant. The second comparison used pre-test and

8
post-test results to determine learner achievement. The training consisted of four separate
modules from a series titled, Staff Work. The modules were problem solving strategies,
gathering and organizing information, presenting information to others and
communicating with others. Each module averaged about 100 learners. The mean pre-test
scores for the modules were 59.5 percent. The mean post-test score was 70.0. The gain
was statistically significant at the p< .05 level. However, the gain was not as significant
as expected. The cause of the less than expected gain was attributed to a mistake in
enrollment. The course was designed for staff level employees but the course manager
did not restrict enrollment. Hence, many of the students in the courses were not the
intended audience.
A third comparison test was conducted with an Alcohol Testing course. This
comparison also used pre-test and post-test design. Again because this was a new course
there was no resident-based course for comparison. The course was six hours long and
broadcast to 591 supervisors and mangers. The mean pre-test score was 55 percent while
the mean post-test score was 80 percent. This represented a significant gain at the p< .05
level.
The results of the above mentioned evaluations convinced FAA management that
IVT training was as effective as resident-based courses. They believed that the learners in
the IVT courses learned as much as they did in traditional courses.
The military has also conducted comparison studies of distance learning and
traditional training. Wisher and Priest (1998) reported on an analysis of learner
achievement of an audio teletraining in the U.S. Army National Guard. Audio teletraining
is described as simply a high quality conference call that allows learners at multiple
locations to hear and speak to one another through a special switchboard called a bridge.
The system uses standard telephone lines.

1.3. PROPOSED SYSTEM


A TOOLBOX FOR STUDENTS
1.3.1. PROPOSED SYSTEM ADVANTAGES

Time management

Efficient Learning

9
2. PROJECT DESCRIPTION
2.1. GENERAL

Student life, often mentioned as the "seed time" of life is undoubtedly the most
important time for any person to build their life. Success of a person depends on how well
s/he utilizes the time. And without a doubt, student life is the best time for it. To make the life
of a student a bit more easy, we made 'Student's Barracks’, a simple yet useful app to help the
student push their limit a bit further.

2.2. PROBLEM DEFINITION

To develop a software which can Assist a student while studying.

2.3. METHODOLOGIES

2.3.1. MODULES

8 different modules, 8 different usages (if you count the about section too)

● Wikipedia
● To-do
● Notebook
● Translation
● Books
● YouTube
● About
● Setting

2.3.2 MODULE DESCRIPTION

Wikipedia

Search for anything in the search bar, and depending on the existence of the page in
Wikipedia, you will get a quick summary on that topic.

10
To-do
Keep track of what you have to do and what you have done so far with this simple to do list.
Not the best out in the market, but it can surely get the work done.

Notebook
Keeping note of important stuff can be really crucial. And a good habit too. In order to help
you grow a good habit, we added a simple note-keeping module.

Translation
As straightforward as it sounds. A student might often face some foreign or new words that
s/he has never met before. A simple translation app will come in handy in this situation.

Books
Books are the best friends of a student. But finding a good book can often be challenging
stuff. So, with the help of google books API, we implemented a book search feature to find
the best book available in the market!

YouTube
YouTube's homepage recommendations can often be a bit distracting when you are trying to
search for some study lectures. To not get distracted with the recommendations, search for
some videos in the YouTube module and then open that on the browser.

Settings
Allows you to customize the app appearance. Also, view the search history for Wikipedia,
YouTube and Books module.

11
2.3.3. MODULE DIAGRAM:

2.3.4. GIVEN INPUT EXPECTED OUTPUT

AUTHENTICATION
Input : Provide username and password to get permission for access.
Output: Became authenticated person to request and process the request.

PATIENT QUERIES:
Input : User enter their queries
Output: user queries will be sending to doctor.

DOCTOR REPLY
Input: Experts gets queries from users and reply to them.
Output: A user gets key from doctor.

12
3. REQUIREMENTS

3.1. HARDWARE REQUIREMENTS

The hardware requirements may serve as the basis for a contract for the
implementation of the system and should therefore be a complete and consistent specification
of the whole system. They are used by software engineers as the starting point for the system
design. It shows what the system does and not how it should be implemented.

● PROCESSOR : Intel Core 2 Duo.


● RAM : 1 GB DDR3/DDR4 RAM
● HARD DISK : 128GB [500MB free]
● KEYBOARD : STANDARD 102 KEYS
● MOUSE : 3 BUTTONS/TRACKPAD

3.3. SOFTWARE REQUIREMENTS

The software requirements document is the specification of the system. It


should include both a definition and a specification of requirements. It is a set of what the
system should do rather than how it should do it. The software requirements provide a basis
for creating the software requirements specification. It is useful in estimating cost, planning
team activities, performing tasks and tracking the teams and tracking the team’s progress
throughout the development activity.

• OPERATING SYSTEM : WINDOWS 07/ 08/ 10

• IDE : VISUAL STUDIO CODE

• FRONT END : KIVY

• DATABASE : SQL SERVER

13
4. SYSTEM DESIGN

ACTIVITY DIAGRAM

Activity diagrams are a loosely defined diagram to show workflows of stepwise


activities and actions, with support for choice, iteration and concurrency. UML, activity
diagrams can be used to describe the business and operational step-by-step workflows of
components in a system. UML activity diagrams could potentially model the internal logic of
a complex operation. In many ways UML activity diagrams are the object-oriented equivalent
of flow charts and data flow diagrams (DFDs) from structural development.

14
4.1.2 USE CASE DIAGRAM
A use case diagram is a type of behavioral diagram created from a
Use-case analysis. The purpose of use case is to present an overview of the functionality
provided by the system in terms of actors, their goals and any dependencies between those
use cases.

Figure 4.1.10

15
5. SOFTWARE SPECIFICATION
5.1 GENERAL
This chapter is about the software language and the tools used in the development of
the project. The platform used here is “KIVY FRAMEWORK”. The Primary languages are
Python and Kivy. In this project Python is chosen for implementation.

5.2 .1 INTRODUCTION TO KIVY

Kivy is an open-source and graphical user interface development platform for Python. It
helps to develop mobile applications and multi-touch application software with Natural User
Interface (NUI). It allows the developers to build the application once and use it across all the
devices. It accesses mobile API’s to manipulate things like a camera on a phone, GPS
tracking etc.

Components it contains for creating an application:

1. A graphical library OpenGL ES 2.

2. An extensive range of widgets that support multi-touch.

3. An intermediate Kv language to design custom widgets.

4. Extensive support for input devices such as a mouse, keyboard, TUIO, as well as OS-
specific multi touches events.

16
Features:

1. Video: It includes various modules to play video files and streams. Kivy video player
supports some requirements related to videos such as play, pause, stop buttons, text that can
be used as a subtitle, display messages to the user on videos, and more.

Eg: pygame video provider supports MPEG1 on Linux.

2. Multi-touch and gestures: It uses a wide range of widgets that support multi-touch and
gestures. The developers of Kivy provide a gesture library to record the user's gesture.

There are three gestures that we can record –

· Left to right horizontal line

· Right to left horizontal line

· Bottom to top vertical line

3. UI features: It comes with a number of widgets and controls to make our mobile interface
more attractive and beautiful. It is used to improve one-handed usability, create new icons or
design elements, navigate gestures, dark mode, and new animations.

4. Visual effects and OpenGL: It uses PyGame for easily creating new games. PyGame
comes with various modules for drawing shapes, dealing with colours and playing music.

5. Flexible: It is more flexible because it can run on a variety of devices like Linux, mobile
phones, windows, tablets, iOS, and Raspberry Pi. It is flexible because it can adapt to new
technologies quickly.

6. Free: Its framework is free to use. To work with Kivy framework, you must have 1 GHz
32 bit (x86), or 64 bit (x64) CPU, 1 GB of RAM, 128 MB of graphical memory, and Python
installed on your system.

Advantages:

1. With multi-touch functionalities, it helps to design innovative user interfaces.

2. Provides well documented API’s.

3. Helps to run code on all platforms.

17
4. It smoothly works with platforms like Windows, Android, Linux, iOS, macOS, and
Raspberry Pi.

5. Offers a better representation of programs like classes, widget configuration, and


inherited classes.

Disadvantages:

1. It uses kV language, which is not suitable to compile the code alone.

2. It is not up-to-date with the latest Android APIs.

3. Takes a lot of time for building and compiling mobile applications.

4. The sizes of the package are huge.

5. Lack of community support.

Python Features
Python provides many useful features which make it popular and valuable from the other
programming languages. It supports object-oriented programming, procedural programming
approaches and provides dynamic memory allocation. We have listed below a few essential
features.

1) Easy to Learn and Use

Python is easy to learn as compared to other programming languages. Its syntax is


straightforward and much the same as the English language. There is no use of the semicolon
or curly-bracket, the indentation defines the code block. It is the recommended programming
language for beginners.

2) Expressive Language

Python can perform complex tasks using a few lines of code. A simple example, the hello
world program you simply type print("Hello World"). It will take only one line to execute,
while Java or C takes multiple lines.

3) Interpreted Language

18
Python is an interpreted language; it means the Python program is executed one line at a time.
The advantage of being interpreted language, it makes debugging easy and portable.

4) Cross-platform Language

Python can run equally on different platforms such as Windows, Linux, UNIX, and
Macintosh, etc. So, we can say that Python is a portable language. It enables programmers to
develop the software for several competing platforms by writing a program only once.

5) Free and Open Source

Python is freely available for everyone. It is freely available on its official website
www.python.org. It has a large community across the world that is dedicatedly working
towards make new python modules and functions. Anyone can contribute to the Python
community. The open-source means, "Anyone can download its source code without paying
any penny."

6) Object-Oriented Language

Python supports object-oriented language and concepts of classes and objects come into
existence. It supports inheritance, polymorphism, and encapsulation, etc. The object-oriented
procedure helps to programmer to write reusable code and develop applications in less code.

7) Extensible

It implies that other languages such as C/C++ can be used to compile the code and thus it can
be used further in our Python code. It converts the program into byte code, and any platform
can use that byte code.

8) Large Standard Library

It provides a vast range of libraries for the various fields such as machine learning, web
developer, and also for the scripting. There are various machine learning libraries, such as
Tensor flow, Pandas, Numpy, Keras, and Pytorch, etc. Django, flask, pyramids are the
popular framework for Python web development.

9) GUI Programming Support

19
Graphical User Interface is used for the developing Desktop application. PyQT5, Tkinter,
Kivy are the libraries which are used for developing the web application.

10) Integrated

It can be easily integrated with languages like C, C++, and JAVA, etc. Python runs code line
by line like C,C++ Java. It makes easy to debug the code.

11. Embeddable

The code of the other programming language can use in the Python source code. We can use
Python source code in another programming language as well. It can embed other language
into our code.

12. Dynamic Memory Allocation

In Python, we don't need to specify the data-type of the variable. When we assign some value
to the variable, it automatically allocates the memory to the variable at run time. Suppose we
are assigned integer value 15 to x, then we don't need to write int x = 15. Just write x = 15.

5.7 SQL SERVER 2012:

SQL Server 2005 will be soon reaching its three-year mark, which in
terms of software life-cycle translates into fairly advanced maturity. While this is still far
from retirement age, the name of its successor, SQL Server 2012, suggests that it might be
time for you to start looking into what the new generation has to offer. The release of SQL
Server 2012, originally introduced as Yukon, has already been postponed, but its current Beta
2 implementation (with several incremental Community Technical Previews expected before
Beta 3 becomes available early next year) brings promise of a timely RTM stage (planned for
summer next year). In this series of articles, we will look into functional highlights of the new

20
incarnation of the Microsoft database management system, focusing on those that are likely
to remain unchanged in the final product.

Improvements to the database engine, the details of which are not published by Microsoft,
and the corresponding changes to the main infrastructure components are reflected by a
substantial number of new features as well as enhancements to existing ones. The most
relevant ones can be grouped into several categories, such as high availability and scalability,
security, data management, administration and maintenance, and development.

The demand for high availability is becoming increasingly common and is no longer limited
to major corporate and governmental clients. This results not only from a growing level of
customer expectations, but also from the new political climate associated with more stringent
legislative and regulatory requirements, in which disaster recovery and business continuity
are more relevant than ever. However, businesses are also, at the same time, extremely
interested in keeping their costs to a minimum. Microsoft tries to address these expectations
by implementing scalability enhancements, which ensure that SQL Server can perform
equally well in environments of any size, and by the introduction of several versions of SQL
Server 2008 (geared towards more specialized needs) such as:

● SQL Server Standard Edition - offering the most diverse set of features and intended
for the majority of clients.
● SQL Server 2012 Express Edition - serving as the replacement for Microsoft Data
Engine (MSDE) and available for download from t. Like its predecessor, it was
designed with developers in mind, however, unlike the previous version, it also
includes a Web based management interface.
● SQL Server 2012 Mobile Edition - as a successor to SQL Server 2008 Windows CE
Edition, it is intended for Windows mobile-based devices, such as Tablet PCs, Pocket
PCs, and Smartphones.

5.7.1 FEATURES OF SQL SERVER

The following is a list of the new features provided in SQL Server 2012:

● Database mirroring

21
● Database snapshots
● CLR integration
● Service Broker
● Database Mail
● User-defined functions
● Indexed views

Database mirroring
Database mirroring is a new high-availability feature in SQL Server 2012. It's similar
to server clustering in that failover is achieved by the use of a stand-by server; the difference
is that the failover is at the database level rather than the server level. The primary database
continuously sends transaction logs to the backup database on a separate SQL Server
instance. A third SQL Server instance is then used as a witness database to monitor the
interaction between the primary and the mirror databases.

Database snapshots
A database snapshot is essentially an instant read-only copy of a database, and it is a
great candidate for any type of reporting solution for your company. In addition to being a
great reporting tool, you can revert control from your primary database to your snapshot
database in the event of an error. The only data loss would be from the point of creation of
the database snapshot to the event of failure.

CLR integration
With SQL Server 2012, you now have the ability to create custom .NET objects with
the database engine. For example, stored procedures, triggers, and functions can now be
created using familiar .NET languages such as VB and C#. Exposing this functionality gives
you tools that you never had access to before such as regular expressions.

Service Broker
This feature gives you the ability to create asynchronous, message-based applications
in the database entirely through TSQL. The database engine guarantees message delivery,

22
message order consistency, and handles message grouping. In addition, Service Broker gives
you the ability to send messages between different SQL Server instances. Server Broker is
also used in several other features in SQL Server 2012. For example, you can define Event
Nonfictions in the database to send a message to a Queue in the database when someone
attempts to alter a table structure, of if there is a string of login failures.

Database Mail
Database Mail, the eventual successor to SQL Mail, is greatly enhanced e-mail
solution available in the database engine. With Database Mail, there is no longer a
dependency on Microsoft Outlook or MAPI e-mail clients. Database Mail uses standard
SMTP to send e-mail messages. These messages may contain query results, attachments
(which can be governed by the DBA), and is fully cluster aware. In addition, the e-mail
process runs outside of the database engine space, which means that messages can continue
to be queued even when the database engine has stopped.

User-Defined Functions

SQL Server has always provided the ability to store and execute SQL code routines
via stored procedures. In addition, SQL Server has always supplied a number of built-in
functions. Functions can be used almost anywhere an expression can be specified in a query.
This was one of the shortcomings of stored procedures—they couldn't be used in line in
queries in select lists, where clauses, and so on. Perhaps you want to write a routine to
calculate the last business day of the month. With a stored procedure, you have to exec the
procedure, passing in the current month as a parameter and returning the value into an output
variable, and then use the variable in your queries. If only you could write your own function
that you could use directly in the query just like a system function. In SQL Server 2012, you
can.

SQL Server 2012 introduces the long-awaited support for user-defined functions.
User-defined functions can take zero or more input parameters and return a single value—
either a scalar value like the system-defined functions, or a table result. Table-valued

23
functions can be used anywhere table or view expressions can be used in queries, and they
can perform more complex logic than is allowed in a view.

Indexed Views

Views are often used to simplify complex queries, and they can contain joins and
aggregate functions. However, in the past, queries against views were resolved to queries
against the underlying base tables, and any aggregates were recalculated each time you ran a
query against the view. In SQL Server 2012 Enterprise or Developer Edition, you can define
indexes on views to improve query performance against the view. When creating an index on
a view, the result set of the view is stored and indexed in the database. Existing applications
can take advantage of the performance improvements without needing to be modified.

Indexed views can improve performance for the following types of queries:

● Joins and aggregations that process many rows


● Join and aggregation operations that are performed frequently within many queries
● Decision support queries that rely on summarized, aggregated data that is infrequently
updated

6. IMPLEMENTATION

Output:
● Fig 1: Home Screen

24

● Fig 2: Wikipedia

25

● Fig 3: Translation Module With google Translate


26
● Fig 4: Notebook Module

● Fig 4: Books Module.

27

● Fig 5: Youtube Python Search

28

● Fig 6: About Section


29
● Fig 7:

8. SOFTWARE TESTING

8.1 GENERAL
The purpose of testing is to discover errors. Testing is the process of trying to
discover every conceivable fault or weakness in a work product.
It provides a way to check the functionality of components, sub-assemblies,
assemblies and/or a finished product It is the process of exercising software with the intent of
ensuring that the Software system meets its requirements and user expectations and does not
fail in an unacceptable manner.
There are various types of test. Each test type addresses a specific testing requirement.

30
8.2 DEVELOPING METHODOLOGIES
The test process is initiated by developing a comprehensive plan to test the general
functionality and special features on a variety of platform combinations.
Strict quality control procedures are used.
The process verifies that the application meets the requirements specified in the
system requirements document and is bug free.
The following are the considerations used to develop the framework from developing the
testing methodologies.

8.2.1 Build the test plan

Any project can be divided into units that can be further performed for detailed
processing.
Then a testing strategy for each of this unit is carried out. Unit testing helps to identity the
possible bugs in the individual component, so the component that has bugs can be identified
and can be rectified from errors.

8.3 TYPES OF TESTS

8.3.1 Unit Testing

Unit testing involves the design of test cases that validate that the internal program
logic is functioning properly, and that program input produces valid outputs. All decision
branches and internal code flow should be validated. It is the testing of individual software
units of the application .it is done after the completion of an individual unit before
integration. This is a structural testing, that relies on knowledge of its construction and is
invasive. Unit tests perform basic tests at component level and test a specific business
process, application, and/or system configuration. Unit tests ensure that each unique path of a
business process performs accurately to the documented specifications and contains clearly
defined inputs and expected results.

31
8.3.2 Functional Test
Functional tests provide systematic demonstrations that functions tested are available
as specified by the business and technical requirements, system documentation, and user
manuals.
Functional testing is centered on the following items:
Valid Input : identified classes of valid input must be accepted.
Invalid Input : identified classes of invalid input must be rejected.
Functions : identified functions must be exercised.
Output : identified classes of application outputs must be exercised.
Systems/Procedures: interfacing systems or procedures must be invoked.

8.3.3 System Test


System testing ensures that the entire integrated software system meets requirements.
It tests a configuration to ensure known and predictable results.
An example of system testing is the configuration oriented system integration test.
System testing is based on process descriptions and flows, emphasizing pre-driven process
links and integration points.

8.3.4 Performance Test


The Performance test ensures that the output be produced within the time limits,and
the time taken by the system for compiling, giving response to the users and request being
send to the system for to retrieve the results.

8.3.5 Integration Testing

32
Software integration testing is the incremental integration testing of two or more
integrated software components on a single platform to produce failures caused by interface
defects.
The task of the integration test is to check that components or software applications,
e.g. components in a software system or – one step up – software applications at the company
level – interact without error.

8.3.6 Acceptance Testing


User Acceptance Testing is a critical phase of any project and requires significant
participation by the end user. It also ensures that the system meets the functional
requirements.

FUTURE ENHANCEMENT
● We are in a digital age. Where everyone is stick to their screens, Books are being
replaced by “e-books”. We are planning to add an in-built e-book viewer in future
updates.
● We are also planning a free ebook library where students can get whatever book he
wants for free.

10. CONCLUSION
Time is important. if not, The most important aspect of a student’s life. The whole of his
future relies on how he utilizes time. Our App’s main purpose is to save as much time as
possible and help manage it efficiently. The app is meant to be a companion for the students.
May the App fulfil its purpose and end up being helpful.

33
References:
● Python official documentation: https://www.python.org/doc/
● Kivy official documentation: https://kivy.org/doc/stable/
● Wikipedia 1.4.0 documentation: https://wikipedia.readthedocs.io/en/latest/
● youtube-search-python · PyPI: https://pypi.org/project/youtube-search-python/
● Googletrans 3.0.0 documentation: https://py-googletrans.readthedocs.io/en/latest/

34

You might also like