Online Notice Board: Dr. N.G.P. Arts and Science College

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 88

ONLINE NOTICE BOARD

A Dissertation submitted to the Bharathiar University, Coimbatore in partial fulfilment


of the requirements for the award of the Degree of

MASTER OF SCIENCE IN COMPUTER SCIENCE

Project Report Submitted by


Mr. MAHENDRAN.V
(Reg.No: 202CS011)

Under the Guidance of


Mrs.P.USHA M.Sc., M.Phil., (Ph.D.)
Assistant Professor

DEPARTMENT OF COMPUTER SCIENCE


Dr. N.G.P. ARTS AND SCIENCE COLLEGE
(An Autonomous Institution, Affiliated to Bharathiar University, Coimbatore)
Approved by Government of Tamil Nadu & Accredited by NAAC with ‘A’ Grade (2nd Cycle)
Dr. N.G.P.-Kalapatti Road, Coimbatore-641 048, Tamil Nadu, India.
Web: www.drngpasc.ac.in | Email: [email protected]. | Phone: +91-422-2369100

MAY - 2022
CERTIFICATE

This is to certify that the project entitled ONLINE NOTICE BOARD USING DJANGO

submitted to Dr. N.G.P. Arts and Science College in partial fulfillment for the award of

degree of Master of Science in Computer Science is a record of original project work done

by Mr. MAHENDRAN.V (Reg.No: 202CS011) during the period of his study (2020-2022)

in the Department of Computer Science, Dr. N.G.P. Arts and Science College,

Coimbatore-48 under my supervision and guidance, and that the project has not formed the

basis for the award of any Degree/ Diploma/ Associateship/ Fellowship or other similar title

to any candidate of any autonomous college.

(Mrs.P.Usha) (Dr.B.Rosiline Jeetha)

Guide HoD

Submitted to the viva-voce examination held on 27/05/2022 at Department of Computer

Science, Dr. N.G.P. Arts and Science College, Coimbatore-48.

Internal Examiner External Examiner


DECLARATION

I, Mr. MAHENDRAN.V (Reg.No: 202CS011) hereby declare that the project entitled

ONLINE NOTICCE BOARD USING DJANGO submitted to Dr. N.G.P. Arts and

Science College, in partial fulfillment for the award of degree of Bachelor of Science in

Computer Science is a record of original project work done by me during the period 2018-

21 under the supervision and guidance of Mrs.P.Usha M.Sc.,M.Phil.,(P.hD.) Assistant

Professor, Department of Computer Science, Dr. N.G.P. Arts and Science College,

Coimbatore-48, and that it has not formed the basis for the award of any Degree/ Diploma/

Associate ship/ Fellowship or other similar title to any candidate of any autonomous

college.

(Mr. MAHENDRAN.V)
Student
ACKNOWLEDGMENT

I would like to express my profound gratitude to Dr. Nalla G. Palaniswami, MD.,


AB (USA)., Chairman, Kovai Medical Centre and Hospital (KMCH), Coimbatore
and Dr. Thavamani D. Palaniswami, MD., AB (USA), Secretary, Dr. N.G.P. Arts and
Science College, Coimbatore for their encouragement.
I wish to express my sincere thanks to Prof. Dr. V. Rajendran, M.Sc., M.Phil.,
B.Ed., M.Tech. (Nanotech)., Ph.D., D.Sc., FlnstP (UK)., FASCh., Principal, Dr. N.G.P.
Arts and Science College, Coimbatore for his encouragement and support during the
course period.
I would like to express my heartfelt thanks to Dr.B.Rosiline Jeetha, Head of the
Department, and all the Teaching and Non-teaching Staff members, Department of
Computer Science, for their inspiration for the successful completion of this work.
I wish to express my deep sense of gratitude and thanks to my guide Mrs.P.Usha
M.Sc.,M.Phil.,(P.hD.) Assistant Professor, Department of Computer Science, Dr.
N.G.P. Arts and Science College, Coimbatore-48, for his excellent guidance and strong
support throughout the course of my study.
I express my sincere thanks to my family and friends for their encouragement love,
prayers, moral support, advice and sacrifice without which I would not have been able to
pursue the course of my study.

MAHENDRAN.V
ABSTRACT:

An online notice board is a place where people can leave any types of messages and
notifications, for example, to advertise things, announce events or provide any information.
So admin can leave and erase notification for other people to read and see. The main aim of
this free online notice board project is make information dissemination much easier in a
paperless community as the world tends to interact with the online notice board facility as an
project. Online notice board admin can send the notification to the particular students
regarding fee payments, results, any new activity happen in college campus or college fest
participation, libraries dues, hostel room payments, any workshop registrations, warnings and
reminders etc. for this work online notice board project is make all work much easier and
understandable to all.

This online notice board work generally intends to act as a support system for the all
users. By the help of free online notice board, users can access the notifications and articles
quickly not only in the particular premises, also wherever and whenever they need to know.
Online notice board usability is fully capable of passing relevant notices and announcements
and keeping the users update from time to time. The students are kept updated each time with
the online notice board for college is uploaded based on their preferences with respect to the
departments and categories through a notice board online. Online notice board is one of the
applications to improve the usage of a notice board of the college by making it available
online. In the online notice board project all the updates like, add, delete, view are done by
admin, so that user will get the updated current information through notice board online . In
this project we use frontend as HTML, CSS, Bootstrap and backend as Python.
INTRODUCTION:

Online Notice Board is an application which will automate a lot of activities in a school or
college or office etc depending upon the usage that is expected by different organizations. If
its a school they can use it for displaying info related to different extracurricular events and
winners info.

They can display info of all teachers in various departments, display timetable for students,
display results of students. They can display info related to any holidays or info related to any
fees collection scenarios or any common regulatories that are announced by management. In
the same way, it can be used by colleges also.

In this project, we will aim to provide a way to automate the way in which notice board
messages can be updated, deleted or removed. Provide access to students/ professors or
administrative etc officers to different features which will provide various information.

We will also provide roles and basing on it permissions will be granted to add or remove data
to notice board features.
S.NO TABLE CONTENT PAGE NO
SYNOPSIS
1 INTRODUCTION
1.1 OVERVIEW OF THE PROJECT
2 SYSTEM ANALYSIS
2.1 EXISTING SYSTEM
2.1.1 DRAWBACKS OF EXISTING SYSTEM
2.2 PROPOSED SYSTEM
2.2.1 ADVANTAGES OF PROPOSED SYSTEM
3 SYSTEM SPECIFICATION
3.1 HARDWARE SPECIFICATION
3.2 SOFTWARE SPECIFICATION
3.3 SOFTWARE FEATURES
4 SYSTEM DESIGN AND DEVELOPMENT
4.1 SYSTEM DEVELOPMENT
4.2 FLOW DIAGRAM
5 SYSTEM TESTING AND IMPLEMENTATION
5.1 SYSTEM TESTING
5.2 SYSTEM IMPLEMENTATION
6 CONCULATION
7 SCOPE FOR FUTURE ENHANCEMENT
8 BIBLIOGRAPHY
9 APPENDIX
A SAMPLE CODING
INTRODUCTION:

Online Notice Board is an application which will automate a lot of activities in a


school or college or office etc depending upon the usage that is expected by
different organizations. If it’s a school they can use it for displaying info related
to different extracurricular events and winner’s info.

They can display info of all teachers in various departments, display timetable
for students, display results of students. They can display info related to any
holidays or info related to any fees collection scenarios or any common
regulatories that are announced by management. In the same way, it can be used
by colleges also.

In this project, we will aim to provide a way to automate the way in which
notice board messages can be updated, deleted or removed. Provide access to
students/ professors or administrative etc officers to different features which
will provide various information.

We will also provide roles and basing on it permissions will be granted to add
or remove data to notice board features.
OBJECTIVES OF HE PROJECT:

The project titled “Online Notice Board” is designed using PYTHON


DJANGO and SQLLITE at the backend and CSS, HTML, JAVASCRIPT at the
frontend. It is a website which can be used for posting information. A teacher
can register, post information and discuss it with students with detail on the
discussion forum. It has 4 interfaces.

Teachers can easily distribute study materials using this portal

1. Admin:

Admin has all the rights to control the website and the people whoever
can access it.

Admin has the following rights.

• Delete a user permanently.

• Enable/disable a user.

• Delete user’s posts.

2. Students

Students can only put comments in teacher’s posts and they can see any
post form the admin

3. Teachers
A user can register using his/ her email id. Registered user has the right
to add posts and to reply on existing posts.

4. staff

Public View Any visitor who is unregistered can only see the posts and
comments. He can neither add posts nor add comments without registering.
2 SYSTEM ANALYSIS
2.1 EXISTING SYSTEM
The existing consists of paper based notice which has to be
carried by the human to every organization. Due to this, it has some

2.1.1 DRAWBAKES OF EXISTING SYSTEM


The paper may be torn or damaged due to bad weather
conditions.

The paper has to be stored in some sort of files and managing physical
files is tough. The searching is very difficult to view a particular paper.
2.2 PROPOSED SYSTEM:

We can provide SMS based integration for registration confirmation.


Email based confirmation to provide approval confirmation. Send results as an
email to registered students by an admin. Alerting module can be worked out in
future.

2.2.1 ADVANTAGES OF PROPOSED SYSTEM:

Online fees payment for registered students with payment gateway


integration.

We can develop a comprehensive timetable module which will automate


complete process of generating a time table online.
3 SYSTEM SPECIFICATION

It is divided into two specifications.


1. Hardware requirement.
2. Software requirement.

3.1 HARDWARE SPECIFICATION

Intel Core processor

RAM 4GB and Above

HDD 100 GB Hard Disk Space and Above

64-bit or 32-bit OS Windows 10 and above

3.2 SOFTWARE SPECIFICATION

Database: SQLLITE

Language: python

Framework: django

Front end: HTML, CSS, JavaScript


3.3 SOFTWARE FEATURES
PYTHON
Python is an interpreted, object-oriented, high-level programming language with
dynamic semantics. Its high-level built in data structures, combined with
dynamic typing and dynamic binding, make it very attractive for Rapid
Application Development, as well as for use as a scripting or glue language to
connect existing components together. Python's simple, easy to learn syntax
emphasizes readability and therefore reduces the cost of program maintenance.
Python supports modules and packages, which encourages program modularity
and code reuse. The Python interpreter and the extensive standard library are
available in source or binary form without charge for all major platforms, and
can be freely distributed.

PYTHON FEATURES:

Python has few keywords, simple structure, and a clearly defined syntax.
Python code is more clearly defined and visible to the eyes. Python's source
code is fairly easy-to-maintaining. Python's bulk of the library is very portable
and cross-platform compatible on UNIX, Windows, and Macintosh. Python has
support for an interactive mode which allows interactive testing and debugging
of snippets of code.

Portable Python can run on a wide variety of hardware platforms and has the
same interface on all platforms.

Extendable

It allows adding low-level modules to the Python interpreter. These modules


enable programmers to add to or customize their tools to be more efficient.
Databases

Python provides interfaces to all major commercial databases.

GUI Programming

Python supports GUI applications that can be created and ported to many
system calls, libraries and windows systems, such as Windows MFC,
Macintosh, and the X Window system of UNIX.

Scalable

Python provides a better structure and support for large programs than shell
scripting.

Object-Oriented Approach

One of the key aspects of Python is its object-oriented approach. This basically
means that Python recognizes the concept of class and object encapsulation thus
allowing programs to be efficient in the long run.

Highly Dynamic

Python is one of the most dynamic languages available in the industry today.
There is no need to specify the type of the variable during coding, thus saving
time and increasing efficiency.

Extensive Array of Libraries

Python comes inbuilt with many libraries that can be imported at any instance
and be used in a specific program.

Open Source and Free

Python is an open-source programming language which means that anyone can


create and contribute to its development. it is free to download and use in any
OS
DJango

Django is a back-end server side web framework. Django is free, open


source and written in Python. Django makes it easier to build web pages using
Python.

Django is a Python framework that makes it easier to create web sites


using Python. Django takes care of the difficult stuff so that you can concentrate
on building your web applications. Django emphasizes reusability of
components, also referred to as DRY (Don't Repeat Yourself), and comes with
ready-to-use features like login system, database connection and CRUD
operations (Create Read Update Delete).

Django follows the MVT design pattern (Model View Template).

Model - The data you want to present, usually data from a database.

View - A request handler that returns the relevant template and content - based
on the request from the user.

Template - A text file (like an HTML file) containing the layout of the web
page, with logic on how to display the data.

Model

The model provides data from the database. In Django, the data is
delivered as an Object Relational Mapping (ORM), which is a technique
designed to make it easier to work with databases. The most common way to
extract data from a database is SQL. One problem with SQL is that you have to
have a pretty good understanding of the database structure to be able to work
with it. Django, with ORM, makes it easier to communicate with the database,
without having to write complex SQL statements. The models are usually
located in a file called models.py.
View

A view is a function or method that takes http requests as arguments,


imports the relevant model(s), and finds out what data to send to the template,
and returns the final result. The views are usually located in a file called
views.py.

Template

A template is a file where you describe how the result should be


represented. Templates are often .html files, with HTML code describing the
layout of a web page, but it can also be in other file formats to present other
results, but we will concentrate on .html files.

URLs

Django also provide a way to navigate around the different pages


in a website. When a user requests a URL, Django decides which view it will
send it to. This is done in a file called urls.py.

Django History

Django was invented by Lawrence Journal-World in 2003, to


meet the short deadlines in the newspaper and at the same time meeting the
demands of experienced web developers. Initial release to the public was in July
2005. Latest version of Django is 4.0.3 (March 2022).
1.2.3 SQLLITE

SQLite History

Designed by D. Richard Hipp, SQLite was first released in August


2000. No administration was required for operating a program in SQLite. Being
a very lightweight database management system, it was named SQLite. Its size
was less than 500Kb.

SQL vs SQLite

SQLite SQL

Written in ANSI-C. Written in C language.

Embeddable Relational Database Structured Query Language used to query


Management System. a Relational Database System.

File-based. Does not have a separate server Standard. Specifies how a relational
process. schema is created and many more.

Supports many features of SQL. High


performance. Does not support stored It is not a database itself.
procedures.

Portable database resource. Structured Query Language.


SQLite Features

 Free to use.
 Open-source.
 No license required to work with SQLite.
 Doesn’t require a different server process or system to operate and is thus
Server less.
 Very flexible.
 Facilitates work on multiple databases on the same session at the same
time.
 No Configuration Required.
 Setup or administration not required.
 Can be used on various embedded operating systems.
 Facilitates an efficient way for data storage.
SQLite Advantages

Lightweight database management system:


 Easy to use as embedded software with various electronic devices.
Better Performance:
 Very flexible.
 Fast reading and writing operations.
 Loads only the required data and not the entire file.
 Only overwrite the edited parts of a file and not the entire file.
 Facilitates an efficient way for data storage.
 Variable column length of columns thus allows allocating only the spaces
that a field needs.
Installation not needed:
 Easy to learn.
 No need to install.
 No Configuration Required.
 Setup or administration not required.
Reliable:
 Contents are continuously updated.
 Less bug-prone than custom-written I/O code files.
 Smaller queries than equivalent procedural codes.
Portable:
 Portable across all 32-bit and 64-bit operating systems and big- and little-
endian architectures.
 Facilitates work on multiple databases on the same session at the same
time.
 Cross-platform DBMS.
 Available on both UNIX (Linux, Mac OS-X, Android, iOS) and
Windows (Win32, WinCE, WinRT).
 No compatibility issue with any programming languages.
 Facilitates API for a large range of programming languages.
 Facilitates simple and easy-to-use API.
Accessible:
 Accessible through a wide variety of third-party tools.
 More likely to be recoverable if data has been lost.
 Data in SQLite lives longer than code.
Reduce Cost and Complexity:
 Free to use.
 Open-source.
 No license required to work with SQLite.
 Doesn’t require a different server process or system to operate and is thus
Server less.
 No need for lengthy and error-prone procedural queries.
 Content can be accessed and updated using concise SQL queries.
 Can be easily extended in future releases.
 Preserves the backwards compatibility.
SQLite Commands

1. Data Definition Language (DDL):


It includes three commands:

CREATE:
To create a table, a view of a table or other object in the database.

ALTER:
To modify an existing database object like a table.

DROP:
To delete an entire table, a view of a table or other object in the database.

You might also like