Professional Documents
Culture Documents
Bjkabsckjbasc
Bjkabsckjbasc
(MCA 170)
TO
Technology
Supervisor: Submitted by
03211104420
1
Certificate
I, Mr. Kuldeep Verma, Roll No. 03211104420 certify that the Project Report/Dissertation
(MCA-170) entitled “ONLINE BLOGGING” is done by me and it is an authentic work
carried out by me at Banarsidas Chandiwala Institute of Information Technology. The matter
embodied in this project work has not been submitted earlier for the award of any degree or
diploma to the best of my knowledge and belief.
Date:
2
Certificate
Certified that the Project Report/Dissertation (MCA-170) entitled “Online Blogging” done by Mr.
Kuldeep Verma, Roll no. 03211104420, is completed under my guidance.
Date:
Countersigned
Institute of Information
Delhi-110019
Director / HOD
3
ACKNOWLEDGEMENT
Sincere thanks to all my family members, friends for their support throughout the
project work.
Kuldeep Verma
03211104420
4
CONTENTS
S No Topic Page
1 Certificate(s) II
2 Acknowledgement III
3 Preface IV
4 Synopsis V
5 Chapter-1: Introduction
1.1: Introduction of Project
5
4.2: Data Flow Diagram
6
LIST OF FIGURES
1 Data diagram
2 ER diagram
3 Use case diagram
4 Class diagram
5 Blogging execution1
6 Blogging execution2
7 Blogging execution3
7
SYNOPSIS
Problem Definition
A blog is a frequently updated online personal journal or diary. It is a place to express yourself
to the world. A place to share your thoughts and your passions. It’s anything we want it to be.
For our purposes we’ll say that a blog is your own website that you are going to update on an
ongoing basis. Blog is a short form for the word weblog and the two words are used
interchangeably. Blogs range from the personal to the political, and can focus on one narrow
subject or a whole range of subjects. It can also play an important role in student’s life. It can
help in the promotion of critical and analytical thinking, increased access and exposure to
quality content and a combination of solitary and social interactions with peers. Currently
students in schools or colleges are unable to express their ideas, their talent or anything that
can expressed for some benefits for everyone. The reason is, schools or colleges don’t have
any proper medium to accomplish it. But proposed online blogging system can help in
accomplish these things and even much more.
Internet has become reality and usage of internet become very much popular and there is
tremendous increase of internet in all over the world for educational purpose. The Online
Blogging System is easy to use, full-featured and much more It is a discussion or informational
website published on the World Wide Web consisting of discrete, often informal diary-style
text entries. Posts are typically displayed in reverse chronological order, so that the most recent
post appears first, at the top of the web page.
At a basic level, Django has projects and applications. For now, just think of a project as a
website, and an application as a specific part of a website. For example, we may want to have
a website that has a blog and a forum. Our website would be the project, and the blog and
forum would be separate applications. Django is loosely inspired by the
Model/View/Controller (MVC) design pattern. This influences how Django expects you to
organize your code.
8
Scope
• To identify how users publish the writings, videos, images or audios if he/she should
have credentials to login.
• To identify how users see the uploaded media items.
• To identify who, when and what has been commented.
Platforms/Tools Used
1. Hardware Platform:
Processor: i3 or above
Processor speed: 2.00GHz CPU
RAM: 4GB or above
Hard Disk: 50GB or above
2. Software Platform:
IDE: VS Code
Technology: Python Django
Operating System: Windows or any equivalent
9
CHAPTER-1
INTRODUCTION
10
Introduction
Blogging refers to writing, photography, and other media that's self-published online. Blogging
started as an opportunity for individuals to write diary-style entries, but it has since been
incorporated into websites for many businesses. The hallmarks of blogging include frequent
updates, informal language, and opportunities for readers to engage and start a conversation.
The word blog is actually a shortened form of its original name, "weblog." These weblogs
allowed early internet users to "log" the details of their day in diary-style entries. Blogs often
allow readers to comment, so as they became more common, communities sprung up around
popular blogs.
The content of blogs varies significantly. For example, travel blogs may feature many pictures
with few written passages, while political blogs may weigh in with wordy takes on the news of
the day. The popularity of YouTube and similar sites also gave rise to video blogging, or
"vlogging."
Like most internet-based innovations, many entrepreneurs saw marketing potential in having a
blog, and the adoption of blogging among the business community helped further increase the
popularity of the medium. Not only can a blog be used for marketing a business, but it can also
become a home business in and of itself.
Blogging is as simple as obtaining a website and publishing original content on it. Tech-savvy
bloggers can buy a domain name and build the website themselves. Those with less HTML
knowledge can create an account with sites like WordPress that simplify the web design and
publishing process.
Blogs are usually simple websites. Older pieces may be archived in separate sections of the
site, and there may be a separate page with contact info or a bio, but the blog itself is usually
just a single page that can be scrolled through—similar to the news feed on social media sites
like Facebook. As with a Facebook news feed, a blog displays the newest content at the top of
the page.
11
All of the posts on a blog are usually created by a single author. However, when a company or
organization maintains a blog, it may pay for blog content—either by hiring a team of writers
or buying content to post.
Another unique feature of blogging is interlinking. This occurs when a blogger links to another
person's blog within their own blog post. For example, if a music teacher maintains a blog, and
they write a blog post about how to form a chord, they might link to a musician's blog to show
an example of the chords in action. A political blogger may link to another politics blog and
then discuss how they agree or disagree with a post on that blog. Interlinking, along with the
comment section, fosters the sense of community that makes blogs unique.
Some people are confused over what constitutes a blog over a website. Part of the confusion
stems from the fact that many businesses use both, usually by adding a blog section to the
company website. However, there are two features of a blog that set it apart from a traditional
website.
First, blogs are updated frequently. Whether it's a mommy blog in which a woman shares
adventures in parenting, a food blog sharing new recipes, or a business providing updates to its
services, blogs have new content added several times a week. Websites might occasionally
have new information, but for the most part, they offer static information that rarely changes.
Secondly, blogs allow for reader engagement. Blogs and social media accounts often go hand-
in-hand because they serve a similar purpose of connecting an audience with each other and
the content creator. Some websites may incorporate features that allow for conversation, but
generally speaking, a blog allows for more conversation and interaction than a traditional
website does.
Pros
12
• Generate alternate income
Cons
• Time-consuming
• Constantly requires fresh ideas
• Payoff is delayed
• Blogging in and of itself won't generate income
Pros Explained
5 Blogging is flexible and portable, making it a great option for people who want to be
a lifestyle entrepreneur.
13
Cons Explained
1. Time-consuming:
The success of blogging comes from having people return, and they only return when
there's new stuff to read. That means bloggers need to generate content at least several
times a week to be effective at engaging readers and increasing SEO.
3. Payoff is delayed:
One of the biggest frustrations with blogging is that it's time-consuming with little
payoff in the beginning. It takes time to build up a readership and momentum.
For starting or adding a blog to our existing site is relativity easy and affordable. All we have
to do is follow these four steps.
There are free blog options such as WordPress and Blogger, but to retain control and a
professional image, consider investing in a domain name and a hosting service. You can
14
install WordPress or another content management system on your host if you don't want to
create the whole site from scratch.
Add Content
Once your blog is up and running, you need to keep it active with new content to grow your
business. Develop a set schedule for writing and posting blog articles. Create a content
calendar so you always know what you're going to post.
Market
Like all other business ideas, your success comes from marketing and getting your message in
front of your target market. Great ways to reach your market are through social
media apps, email lists, and by reaching out to other bloggers, podcasters, and media outlets
for publicity. Repurpose your blog content to promote your business across platforms, such as
by using quotes on your Twitter or Instagram profiles, or by creating a video of your article to
share on YouTube.
While your blog can complement an existing business, it's also a great way to add additional
income streams to your home business. You can promote other companies' products and
services in affiliate marketing. You can advertise or feed ad networks, such as AdSense, on to
your blog. If you have a service business you're promoting with your blog, you can create your
own information products to complement it. Or, if you have your own product, you can offer a
service.
Key Takeaways
15
• Blogs are different than traditional websites because they're frequently updated, and
they make it easier for the audience to engage with each other and the content creator.
OBJECTIVES
• To Create the blog post model so we can write articles and store their info in the database
• To increase motivation for reading and writing.
• To improve the writing and digital literacy of user.
• Work is permanently stored, easily accessed and valuable comparisons can be made over
time for assessment and evaluation purpose.
16
CHAPTER-2
17
System Analysis:
System analysis is a process_ of gathering and interpreting facts, diagnosing problems and the
information about the Online Blogging System to recommend improvements on the system. It
is a problem solving activity that requires intensive communication between the system users
and system developers. System analysis or study is an important phase of any system
development process. The system is studied to the minutest detail and analyzed. The system
analyst plays the role of the interrogator and dwells deep into the working of the present system.
The system is viewed as a whole and the input to the system are identified. The outputs from
the organizations are traced to the various processes. System analysis is concerned with
becoming aware of the problem, identifying the relevant and decisional variables, analyzing
and synthesizing the various factors and determining an optimal or at least a satisfactory
solution or program of action. A detailed study of the process must be made by various
techniques like interviews, questionnaires etc. The data collected by these sources must be
scrutinized to arrive to a conclusion. The conclusion is an understanding of how the system
functions. This system is called the existing system. Now the existing system is subjected to
close study and problem areas are identified. The designer now functions as a problem solver
and tries to sort out the difflculties that The designer now functions as a problem solver and
tries to sort out the difflculties that the enterprise faces. The solutions are given as proposals.
The proposal is then weighed with the existing system analytically and the best one is selected.
The proposal is presented to the user for an endorsement by the user. The proposal is reviewed
on user request and suitable changes are made. This is loop that ends as soon as the user is
satisfied with proposal. Preliminary study is the process of gathering and interpreting facts,
using the information for further studies on the system. Preliminary study is problem solving
activity that requires intensive communication between the system users and system
developers. It does various feasibility studies. In these studies a rough figure of the system
activities can be obtained, from which the decision about the strategies to be followed for
effective system study and analysis can be taken.
In the existing system the exams are done only manually but in proposed system we have to
computerize the exams using this application.
18
• Lack of security of data.
• More man power.
• Time consuming.
• Consumes large volume of pare work.
• Needs manual calculations.
• No direct role for the higher officials
The aim of proposed system is to develop a system of improved facilities. The proposed system
can overcome all the limitations of the existing system. The system provides proper security
and reduces the manual work.
• Security of data.
• Ensure data accuracy.
• Proper control of the higher officials.
• Minimize manual data entry.
• Minimum time needed for the various processing
• Greater efflciency.
• Better service.
• User friendliness and interactive.
• Minimum time required.
Data Dictionary:
This is normally represented as the data about data. It is also termed as metadata some times
which gives the data about the data stored in the database. It defines each data term encountered
during the analysis and design of a new system. Data elements can describe files or the
processes.
I = equivalent to
I + and
19
I [] eitherf or
I () Optional entry
Following are some rules, which defines the construction of data dictionaryentries:
• Words should be defined to understand for what they need and not the variable need by
which they may be described in the program .
• Each word must be unique. We cannot have two definition of the same client.
• Aliases or synonyms are allowed when two or more enters shows the same meaning.
For example a vendor number may also be called as customer number.
• A self-defining word should not be decomposed. It means that the reduction of any
information in to subpart should be done only if it is really required that is it is not easy
to understand directly.
Data dictionary includes information such as the number of records in file, the
frequency a process will run, security factor like pass word which user must enter
2.3Feasibility Study:
After doing the project Online Blogging System, study and analyzing all the existing or
required functionalities of the system, the next task is to do the feasibility study for the project.
All projects are feasible - given unlimited resources and infinite time.
Feasibility study includes consideration of all the possible ways to provide a solution to the
given problem. The proposed solution should satisfy all the user requirements and should be
flexible enough so that future changes can be easily done based on the future upcoming
requirements.
A. Economical Feasibility
This is a very important aspect to be considered while developing a project. We decided the
technology based on minimum possible cost factor.
20
• Overall we have estimated that the benefits the organization is going to receive from
the proposed system will surely overcome the initial costs and the later on running cost
for system.
B. Technical Feasibility
This included the study of function, performance and constraints that may affect the ability to
achieve an acceptable system. For this feasibility study, we studied complete functionality to
be provided in the system, as described in the System Requirement Specification (SRS), and
checked if everything was possible using different type of frontend and backend platforms.
C. Operational Feasibility
No doubt the proposed system is fully GUI based that is very user friendly and all inputs to be
taken all self-explanatory even to a layman. Besides, a proper training has been conducted to
let know the essence of the system to the users so that they feel comfortable with new system.
As far our study is concerned the clients are comfortable and happy as the system has cut down
their loads and doing.
21
CHAPTER-3:
22
3.1: Requirement Analysis
Purpose
The main objective of the Project on Online Blogging System is to manage the details of Blogs,
Comment, New Category, New Blog, Technology Blog. lt manages all the information about
Blogs, Comment, Technology Blog, Blogs. The project is totally built at administrative end
and thus only the administrator is guaranteed the access. The purpose of the project is to build
an application program to reduce the manual work for managing the Blogs, Comment,
Comment, New Category. It tracks all the details about the New Category, New Blog,
Technology Blog.
Document Conventions
In this document, the main topic heading are written in bold with the font style Times and a
font size of 32. The sub headings and sub-subheadings are also written with the same font and
font size of 18 and 14 respectively. The abbreviations and some technical definitions are written
in bold and included in the glossary.
It is for end users who are interested in reading. This document is best for those who like to
read blogs and comment their thoughts in related to blogs.
Overall Description
Product Perspective
We create and publish a blog post, it's one more indexed page on your website, which means
one more opportunity for you to show up on the search engine results page (SERP) and drive
traffic to our website in organic search.
23
Product Features
A blog is a discussion or informational website published on the World Wide Web consisting of discrete,
often informal diary-style text entries. Posts are typically displayed in reverse chronological order, so that
the most recent post appears first, at the top of the web page. Some of the main functions are
No technical experience of any sort is required. Any user who has the knowledge of traversing
can easily access the features of this chatbot.
Operating Environment
User Documentation
The documentation would be made available to the users by selecting the help option. It is a
manual or set of instructions that guide the users to perform the operations.
24
Assumptions and Dependencies
It is assumed that the user has a basic knowledge of blogging websites so that the user could
use this with utmost ease.
User Interface
Django builds user interface by rendering a template. The idea behind rendering is that
dynamic data is combined with a static template file to produce a final output.
Hardware Interfaces
Processor: i3 or above
Software Interfaces
Communication Interfaces
• LAN
• Internet
System Features
25
Recent Posts
Keeping up with the posts being made to your blog is essential. This is especially true for
companies that manage many blogs and upload hundreds of posts per month … as wading
through this massive amount of content can become exhausting over time. A great intranet
blogging platform needs a feature that allows you to view the most recent posts … as this is
one of the only ways to ensure that you’re not posting duplicate content to your blog.
WYSIWYG Editor
It would be great if everyone in your business knew how to write HTML code, but chances
are they don’t. HTML can be extremely useful when properly written, but tasking those
unfamiliar with coding to handle HTML is never a good idea. It’s essential, then, that
your business blogging platform have an editing system that is easily approachable for
laymen … and there’s no better option than a WYSIWYG editor.
When your staff is regularly posting content to your blog, the ability for both users and admins
to manage posts becomes extremely important. After all, there’s nothing worse than letting
content enter your blog that might misrepresent your organization, especially if it is heavily-
read. A business blogging platform without a robust admin and user management
system should be avoided.
Commenting System
If you truly want to get the most out of writing blog posts, you need a platform that includes a
commenting system. Comments can make or break a blog, and the best posts elicit comments
26
from readers, which can often be the beginning of an entirely new conversation. New ideas and
solutions can result, and everyone involved ends up benefitting.
Performance Requirements
Both the developer and the web application may not be able to elicit the complete functionality
that blog software can provide as well as the impact of including the functionality in a web
application in terms of performance overhead.
Security Requirements
Reliabilty: The aim is to identify the author of anonymous blog posts for online security and
to recognize authors who participate in different blog sites with different identities. An object
oriented development model has been created for the same.
Availability: Our software can work even without internet and is completely independent of
Security: The connection between the Web API and the programs will use HTTPS, for security
reasons.
Maintainability: The system is designed in such a way that the algorithms for the main units
will be able to be easily swapped out. In case any module is not functioning properly or causing
27
CHAPTER-4:
SYSTEM DESIGN
28
4.1 Work flow diagram
Activity diagram is another important diagram in UML to describe the dynamic aspects of the
system. Activity diagram is basically a flowchart to represent the flow from one activity to
another activity. The activity can be described as an operation of the system. The control flow
is drawn from one operation to another. This flow can be sequential, branched, or concurrent.
Activity diagrams deal with all type of flow control by using different elements such as fork,
etc Activity diagram is basically a flowchart to represent the flow from one activity to another
activity. The activity can be described as an operation of the system. The control flow is drawn
from one operation to another. This flow can be sequential, branched, or concurrent. Activity
diagrams deal with all type of flow control by using different elements such as fork, join, etc
The basic purposes of activity diagrams is similar to other four diagrams. It captures the
dynamic behaviour of the system. Other four diagrams are used to show the message flow from
one object to another but activity diagram is used to show message flow from one activity to
another. Activity is a particular operation of the system. Activity diagrams are not only used
for visualizing the dynamic nature of a system, but they are also used to construct the
executables by using forward and reverse engineering techniques. The only missing thing in
the activity diagram is the message part. It does not show any message flow from one activity
to another. Activity diagram is sometimes considered as the flowchart. Although the diagrams
look like a flowchart, they are not. It shows different flows such as parallel, branched,
concurrent, and single. The purpose of an activity diagram can be described as –
29
Blog Management
Online
Blogging
System
System User
Create Blog
Management
Management
An Entity–relationship model (ER model) describes the structure of a database with the help
of a diagram, which is known as Entity Relationship Diagram (ER Diagram). An ER model is
a design or blueprint of a database that can later be implemented as a database. The main
components of E-R model are: entity set and relationship set. An ER diagram shows the
relationship among entity sets. An entity set is a group of similar entities and these entities can
have attributes. In terms of DBMS, an entity is a table or attribute of a table in database, so by
showing relationship among tables and their attributes,
Here are the geometric shapes and their meaning in an E-R Diagram.
30
Ellipses: Attributes
Lines: They link attributes to Entity Sets and Entity sets to Relationship Set
• Entity
• Attribute
• Relationship.
Entity:
Attribute:
• Key attribute
• Composite attribute
• Multi valued attribute
• Derived attribute
• One to one
• One to many
• Many to one
• Many to many
31
User_id Role_id
Role_name
User_name
User_email
Per_id
Permission
Per_role_id
Per_module
Per_name
id
type Manage
Comm_user_id
Blog
title
Comment Comm_user_name
content
desc Comm_desc
User_id
Comm_type
Comm_title
Blog category
type
title
content
id
32
4.4 Use case diagram:
To model a system, the most important aspect is to capture the dynamic behaviour. Dynamic
behaviour means the behaviour of the system when it is running/operating. Only static
behaviour is not sufficient to model a system rather dynamic behaviour is more important than
static behaviour. There should be some internal or external factors for making the interaction.
These internal and external agents are known as actors. Use case diagrams consists of actors,
use cases and their relationships. The diagram is used to model the system/subsystem of an
application. A single use case diagram captures a particular functionality of a system. A use
case is a methodology used in system analysis to identify, clarify, and organize system
requirements. In this context, the term "system" refers to something being developed or
operated, such as a mail-order product sales and service Website. Use case diagrams are
employed in UML (Unified Modelling Language), a standard notation for the modelling of
real-world objects and systems. System objectives can include planning overall requirements,
validating a hardware design, testing and debugging a software product under development,
creating an online help reference, or performing a consumer- service-oriented task. For
example, use cases in a product sales environment would include item ordering, catalog
updating, payment processing, and customer relations.
• The boundary, which defines the system of interest in relation to the world around it.
• The actors, usually individuals involved with the system defined according to their
roles.
• The use cases, which are the specific roles played by the actors within and around the
system.
The relationships between and among the actors and the use cases. A Use Case model can be
developed by following the steps below.
33
Fig 3: Use case diagram for blogging
4.5Class Diagram :
Class diagram is a static diagram. It represents the static view of an application. Class diagram
is not only used for visualizing, describing, and documenting different aspects of a system but
also for constructing executable code of the software application. Class diagram describes the
attributes and operations of a class and also the constraints imposed on the system. The class
34
diagrams are widely used in the modeling of object oriented systems because they are the only
UML diagrams, which can be mapped directly with object-oriented languages. Class diagram
38 shows a collection of classes, interfaces, associations, collaborations, and constraints. It is
also known as a structural diagram
35
CHAPTER 5
SYSTEM DEVELOPMENT
36
5.1.Program development
With new technologies flooding every day, it is hard to keep up with all the updates. Blogs are
a valuable resource for keeping up with recent innovations, communicating with fellow
developers and getting a feel of what software development is all about. Living in an era of
content overload, it is hard to find the best developer blogs out there. Some blogs post updates
every day and every hour, while others only reflect on major innovations. There is definitely a
lot to choose from and each and every one of them is somehow different from the other.
However, it is important that you can tell the bad from the good and follow only quality blogs
that provide trustworthy information.
Whether you are a beginner who wants to get started with software development or a
professional developer looking for improvement possibilities, you’ll find a blog on this list that
can suit your needs. Here is our ultimate compilation of must-read blogs for software
developer.
A blog is useful for many reasons. It can become a source of leads, it can be the place where,
in the future, you might sell your products if you want to become an indie developer, or it can
simply be the place where you have your audience and express your ideas.
Anyone has a unique angle, a perspective on something that’s worth sharing. You might think
you don’t know as much as person X, but person Y might have much less experience than you
and would benefit from reading your thoughts and learnings.
Also, the best moment to teach something is right after you’ve learned it, because you
remember how not knowing about it feels.
In this case, you can blog with the tone of a student that’s just learned something. I learn new
things every day. Around 50% of what I end up writing I just learned while researching a topic.
It’s true that some places on the internet are not afraid to give harsh opinions on things,
notoriously Reddit and Hacker News — but this is a good thing.
Remember, you’re not growing if you’re not challenged. Also, you’re not required to post there
if you don’t want to. Do you worry about someone making a mean comment on a post that’s
controversial? Remove comments altogether.
37
You learn much faster
One of ways I learn best is by doing. I literally decide on a topic I think I know something
about, and I drill down in a spiral loop through things I didn’t know, or I didn’t even think
about.
They say you never fully understand a topic until you are able to explain it. Blogging is a low
barrier to explaining things.
It’s also a good idea to publish them in advance. WordPress makes it very easy, and it’s doable
also with static blogs (here’s how I do it with Netlify and Hugo). Schedule a specific time and
day to write, consistently.
The same goes for blog posts titles and topics. Have a list of blog post ideas. When you feel
inspired to write, you will have an argument perfect for that day.
Podcasts are different because you listen to them, and I always have one on while driving or
when I take half a day off to go walk the dogs out in nature.
38
Wake up early
Set the alarm clock, actually wake up, and start writing. I used to wake up at 8AM — since I
never had any commute to take (I only work remotely), I could take it easy. I now wake up at
6AM, and by 8AM I have a new post scheduled for the next week. When you have
accomplished a task such as creating a new blog post by 8AM, you feel super energized to
tackle the rest of the day. Wake up even earlier if you can (I can’t, or I’ll spend the rest of the
day in zombie-state).
5.2.Programming Platform
It is a source code editor by Microsoft for Windows, Linux and macOS. Features include
support for debugging, syntax highlighting, intelligent code completion, snippets, code
refactoring, and embedded Git. Users can change the theme, keyboard shortcuts, preferences,
and install extensions that add additional functionality.
In the Stack Overflow 2019 Developer Survey, Visual Studio Code was ranked the most
popular developer environment tool, with 50.7% of 87,317 respondents reporting that they use
it.
Visual Studio Code was first announced on April 29, 2015, by Microsoft at the
2015 Build conference. A Preview build was released shortly thereafter.
39
On November 18, 2015, Visual Studio Code was released under the MIT License, having its
source code available on GitHub. Extension support was also announced. On April 14, 2016,
Visual Studio Code graduated from the public preview stage and was released to the Web
Visual Studio Code is a source-code editor that can be used with a variety of programming
languages, including Java, JavaScript, Go, Node.js, Python and C++. It is based on
the Electron framework,[19] which is used to develop Node.js Web applications that run on
the Blink layout engine. Visual Studio Code employs the same editor component (codenamed
"Monaco") used in Azure DevOps (formerly called Visual Studio Online and Visual Studio
Team Services).
Instead of a project system, it allows users to open one or more directories, which can then be
saved in workspaces for future reuse. This allows it to operate as a language-agnostic code
editor for any language. It supports a number of programming languages and a set of features
that differs per language. Unwanted files and folders can be excluded from the project tree via
the settings. Many Visual Studio Code features are not exposed through menus or the user
interface but can be accessed via the command palette.
Visual Studio Code can be extended via extensions, available through a central repository. This
includes additions to the editor and language support. A notable feature is the ability to create
extensions that add support for new languages, themes, and debuggers, perform static code
analysis, and add code linters using the Language Server Protocol.
Visual Studio Code includes multiple extensions for FTP, allowing the software to be used as
a free alternative for web development. Code can be synced between the editor and the server,
without downloading any extra software.
Visual Studio Code allows users to set the code page in which the active document is saved,
the newline character, and the programming language of the active document. This allows it to
be used on any platform, in any locale, and for any given programming language.
Language support
Out-of-the-box, Visual Studio Code includes basic support for most common programming
languages. This basic support includes syntax highlighting, bracket matching, code folding,
and configurable snippets. Visual Studio Code also ships with IntelliSense for JavaScript,
TypeScript, JSON, CSS, and HTML, as well as debugging support for Node.js. Support for
40
additional languages can be provided by freely available extensions on the VS Code
Marketplace.
Data collection
Visual Studio Code collects usage data and sends it to Microsoft, although this can be
disabled. In addition, because of the open-source nature of the application, the telemetry code
is accessible to the public, who can see exactly what is collected. According to Microsoft, the
data is shared with Microsoft-controlled affiliates and subsidiaries, although law
enforcement may request it as part of a legal process.
Version control
Source control is a built-in feature of Visual Studio Code. It has a dedicated tab inside of the
menu bar where you can access version control settings and view changes made to the current
project. To use the feature you must link Visual Studio Code to any supported version control
system (Git, Apache Subversion, Perforce, etc.). This allows you to create repositories as well
as make push and pull requests directly from the Visual Studio Code program.
5.3.Programming language
PYTHON
41
Guido van Rossum began working on Python in the late 1980s, as a successor to the ABC
programming language, and first released it in 1991 as Python 0.9.0. Python 2.0 was released
in 2000 and introduced new features, such as list comprehensions and a garbage collection
system using reference counting. Python 3.0 was released in 2008 and was a major revision of
the language that is not completely backward-compatible and much Python 2 code does not
run unmodified on Python 3. Python 2 was discontinued with version 2.7.18 in 2020.
Python uses dynamic typing and a combination of reference counting and a cycle-detecting
garbage collector for memory management. It also features dynamic name resolution (late
binding), which binds method and variable names during program execution.
Python's design offers some support for functional programming in the Lisp tradition. It
has filter , map and reduce functions; sets, and generator expressions. The standard library
has two modules (itertools and functools) that implement functional tools borrowed
from Haskell and Standard ML.
The language's core philosophy is summarized in the document The Zen of Python (PEP 20),
which includes aphorisms such as:
Rather than having all of its functionality built into its core, Python was designed to be
highly extensible (with modules). This compact modularity has made it particularly popular as
a means of adding programmable interfaces to existing applications. Van Rossum's vision of a
42
small core language with a large standard library and easily extensible interpreter stemmed
from his frustrations with ABC, which espoused the opposite approach.
Python strives for a simpler, less-cluttered syntax and grammar while giving developers a
choice in their coding methodology. In contrast to Perl's "there is more than one way to do it"
motto, Python embraces a "there should be one— and preferably only one —obvious way to
do it" design philosophy. Alex Martelli, a Fellow at the Python Software Foundation and
Python book author, writes that "To describe something as 'clever' is not considered a
compliment in the Python culture."
Python's developers strive to avoid premature optimization, and reject patches to non-critical
parts of the CPython reference implementation that would offer marginal increases in speed at
the cost of clarity. When speed is important, a Python programmer can move time-critical
functions to extension modules written in languages such as C, or use PyPy, a just-in-time
compiler. Cython is also available, which translates a Python script into C and makes direct C-
level API calls into the Python interpreter.
An important goal of Python's developers is keeping it fun to use. This is reflected in the
language's name—a tribute to the British comedy group Monty Python—and in occasionally
playful approaches to tutorials and reference materials, such as examples that refer to spam and
eggs (from a famous Monty Python sketch) instead of the standard foo and bar.
A common neologism in the Python community is pythonic, which can have a wide range of
meanings related to program style. To say that code is pythonic is to say that it uses Python
idioms well, that it is natural or shows fluency in the language, that it conforms with Python's
minimalist philosophy and emphasis on readability. In contrast, code that is difficult to
understand or reads like a rough transcription from another programming language is
called unpythonic.
5.4.Query language
Blogging is as simple as obtaining a website and publishing original content on it. Tech-savvy
bloggers can buy a domain name and build the website themselves. Those with less HTML
knowledge can create an account with sites like WordPress that simplify the web design and
publishing process.
43
Blogs are usually simple websites. Older pieces may be archived in separate sections of the
site, and there may be a separate page with contact info or a bio, but the blog itself is usually
just a single page that can be scrolled through—similar to the news feed on social media sites
like Facebook. As with a Facebook news feed, a blog displays the newest content at the top of
the page.
All of the posts on a blog are usually created by a single author. However, when a company or
organization maintains a blog, it may pay for blog content—either by hiring a team of writers
or buying content to post.
Interlinking occurs when a blogger links to another person's blog within their own blog post.
For example, if a music teacher maintains a blog, and they write a blog post about how to form
a chord, they might link to a musician's blog to show an example of the chords in action. A
political blogger may link to another politics blog and then discuss how they agree or disagree
with a post on that blog. Interlinking, along with the comment section, fosters the sense of
community that makes blogs unique.
44
Screenshots:
45
Fig 6: Blogging execution 2
46
Fig 7: Blogging execution 3
47
CHAPTER-6
TESTING
48
Security Testing 0f the Project
Testing is vital for the success of any software. no system design is ever perfect. Testing is also
carried in two phases. first phase is during the software engineering that is during the module
creation. second phase is after the completion of software. this is system testing which verifies
that the whole set of programs hanged together.
In this technique, the close examination of the logical parts through the software are tested by
cases that exercise species sets of conditions or loops. all logical parts of the software checked
once. errors that can be corrected using this technique are typographical errors, logical
expressions which should be executed once may be getting executed more than once and error
resulting by using wrong controls and loops. When the box testing tests all the independent
part within a module a logical decisions on their true and the false side are exercised , all loops
and bounds within their operational bounds were exercised and internal data structure to ensure
their validity were exercised once.
This method enables the software engineer to device sets of input techniques that fully exercise
all functional requirements for a program. black box testing tests the input, the output and the
external data. it checks whether the input data is correct and whether we are getting the desired
output.
Alpha Testing:
Acceptance testing is also sometimes called alpha testing. Be spoke systems are developed for
a single customer. The alpha testing proceeds until the system developer and the customer
agree that the provided system is an acceptable implementation of the system requirements.
Beta Testing:
49
On the other hand, when a system is to be marked as a software product, another process called
beta testing is often conducted. During beta testing, a system is delivered among a number of
potential users who agree to use it. The customers then report problems to the developers. This
provides the product for real use and detects errors which may not have been anticipated by the
system developers.
Unit Testing:
Integration Testing
Integration testing aims at constructing the program structure while at the same constructing
tests to uncover errors associated with interfacing the modules. modules are integrated by using
the top down approach.
Validation Testing:
Validation testing was performed to ensure that all the functional and performance
requirements
are met.
System Testing:
It is executing programs to check logical changes made in it with intention of finding errors. A
system is tested for online response, volume of transaction, recovery from failure etc. System
testing is done to ensure that the system satisfies all the user requirements
50
Implementation and Software Specification Testings
This phase of the systems development life cycle refines hardware and software specifications,
establishes programming plans, trains users and implements extensive testing procedures, to
evaluate design and operating specifications andfor provide the basis for further modification.
Technical Design
This activity builds upon specifications produced during new system design, adding detailed
technical specifications and documentation.
This activity prepares detailed test specifications for individual modules and programs, job
streams, subsystems, and for the system as a whole.
This activity encompasses actual development, writing, and testing of program units or
modules.
User Training
This activity encompasses writing user procedure manuals, preparation of user training
Acceptance Test
A final procedural review to demonstrate a system and secure user approval before a system
becomes operational.
51
System Installation
The process of starting the actual use of a system and training user personnel in its operation.
Review Phase
This phase evaluates the successes and failures during a systems development project, and to
measure the results of a new Computerized system in terms of benefits and savings projected
at the start of the project.
Development Recap
A review of a project immediately after completion to find successes and potential problems
in future work.
Post-Implementation Review
A review, conducted after a new system has been in operation for some time, to evaluate actual
system performance against original expectations and projections for cost-benefit
improvements. Also identifies maintenance projects to enhance or improve the system.
52
The unit testing done included the testing of the following items
After completing the Unit testing of all the modules, the whole system is integrated with all its
dependencies in that module. While System Integration, We integrated the modules one by one
and tested the system at each step. This helped in reduction of errors at the time of the system
testing.
The System Testinq done included the testinq of the followinq items:
53
• Testing the reports with all its functionality.
After the completion of system testing, the next following phase was the Acceptance Testing.
Clients at their end did this and accepted the system with appreciation. Thus, we reached the
There are other six tests. which fall under special cateqory. They are described below:
• Peak Load Test: It determines whether the system will handle the volume of activities
that occur when the system is at the peak of its processing demand. For example, test
the system by activating all terminals at the same time.
• Storage Testing: lt determines the capacity of the system to store transaction data on a
disk or in other files.
• Performance Time Testing: it determines the length of time system used by the system
to process transaction data. This test is conducted prior to implementation to determine
how long it takes to get a response to an inquiry, make a backup copy of a file, or send
a transmission and get a response.
• Recovery Testing: This testing determines the ability of user to recover data or re-start
system after failure. For example, load backup copy of data and resume processing
without data or integrity loss.
• Procedure Testing: lt determines the clarity of documentation on operation and uses of
system by having users do exactly what manuals request. For example, powering down
system at the end of week or responding to paper-out light on printer.
• Human Factors Testing: lt determines how users will use the system when processing
data or preparing reports.
54
CHAPTER-7
IMPLEMENTATION
55
TOOLS USED
DJANGO
Django is a high-level Python Web framework that encourages rapid development and clean,
pragmatic design. Built by experienced developers, it takes care of much of the hassle of Web
development, so you can focus on writing your app without needing to reinvent the wheel. It’s
free and open source.
Django is a Python-based free and open-source web framework that follows the model–
template–views (MTV) architectural pattern. It is maintained by the Django Software
Foundation (DSF), an American independent organization established as a non-profit.
Django's primary goal is to ease the creation of complex, database-driven websites. The
framework emphasizes reusability and "pluggability" of components, less code, low coupling,
rapid development, and the principle of don't repeat yourself. Python is used throughout, even
for settings, files, and data models. Django also provides an optional administrative create,
read, update and delete interface that is generated dynamically through introspection and
configured via admin models.
Components
Despite having its own nomenclature, such as naming the callable objects generating
the HTTP responses "views",[7] the core Django framework can be seen as
an MVC architecture.[8] It consists of an object-relational mapper (ORM) that mediates
between data models (defined as Python classes) and a relational database ("Model"), a system
for processing HTTP requests with a web templating system ("View"), and a regular-
expression-based URL dispatcher ("Controller").
56
• a template system that utilizes the concept of inheritance borrowed from object-
oriented programming
• a caching framework that can use any of several cache methods
• support for middleware classes that can intervene at various stages of request
processing and carry out custom functions
• an internal dispatcher system that allows components of an application to
communicate events to each other via pre-defined signals
• an internationalization system, including translations of Django's own components
into a variety of languages
• a system for extending the capabilities of the template engine
• an interface to Python's built-in unit test framework
HTML
The HyperText Markup Language, or HTML is the standard markup language for documents
designed to be displayed in a web browser. It can be assisted by technologies such as Cascading
Style Sheets (CSS) and scripting languages such as JavaScript.
Web browsers receive HTML documents from a web server or from local storage
and render the documents into multimedia web pages. HTML describes the structure of a web
page semantically and originally included cues for the appearance of the document.
HTML elements are the building blocks of HTML pages. With HTML constructs, images and
other objects such as interactive forms may be embedded into the rendered page. HTML
provides a means to create structured documents by denoting structural semantics for text such
as headings, paragraphs, lists, links, quotes and other items. HTML elements are delineated
by tags, written using angle brackets. Tags such as <img /> and <input /> directly introduce
content into the page. Other tags such as <p> surround and provide information about
document text and may include other tags as sub-elements. Browsers do not display the HTML
tags, but use them to interpret the content of the page.
HTML can embed programs written in a scripting language such as JavaScript, which affects
the behavior and content of web pages. Inclusion of CSS defines the look and layout of content.
The World Wide Web Consortium (W3C), former maintainer of the HTML and current
57
maintainer of the CSS standards, has encouraged the use of CSS over explicit presentational
HTML since 1997
CSS
Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation of
a document written in a markup language such as HTML. CSS is a cornerstone technology of
the World Wide Web, alongside HTML and JavaScript.
CSS is designed to enable the separation of presentation and content, including layout, colors,
and fonts. This separation can improve content accessibility, provide more flexibility and
control in the specification of presentation characteristics, enable multiple web pages to share
formatting by specifying the relevant CSS in a separate .css file which reduces complexity and
repetition in the structural content as well as enabling the .css file to be cached to improve the
page load speed between the pages that share the file and its formatting.
Separation of formatting and content also makes it feasible to present the same markup page in
different styles for different rendering methods, such as on-screen, in print, by voice (via
speech-based browser or screen reader), and on Braille-based tactile devices. CSS also has
rules for alternate formatting if the content is accessed on a mobile device.
The name cascading comes from the specified priority scheme to determine which style rule
applies if more than one rule matches a particular element. This cascading priority scheme is
predictable.
The CSS specifications are maintained by the World Wide Web Consortium (W3C). Internet
media type (MIME type) text/css is registered for use with CSS by RFC 2318 (March 1998).
The W3C operates a free CSS validation service for CSS documents.
In addition to HTML, other markup languages support the use of CSS including XHTML, plain
XML, SVG, and XUL.
58
CONCLUSION
59
CONCLUSION
While developing the system a conscious effort has been made to create and develop a software
package, making use of available tools, techniques and resources that would generate a proper
system for cases.
While making the system, an eye has been kept on making it as user-friendly. As such one may
hope that the system will be acceptable to any user and will adequately meet his/her needs. As
in case of any system development process where there are a number of short comings, there
have been some been some shortcomings in the development of this system also.
60
LIMITATION
61
LIMITATION
Though the present study aims to achieve the earlier-mentioned objectives in full earnest and
accuracy, it was hampered due to certain limitations. Some the limitations of this study may be
summarized as follows:
62
FUTURE SCOPE
63
FUTURE SCOPE
In a nutshell, it can be summarized that the future scope of the project circles around
maintaining information regarding:
The above mentioned points are the enhancements which can be done to increase the
applicability and usage of this project. Here we can maintain the records of Blogs and
Comment. Also, as it can be seen that now-a-days the users are versatile, i.e. so there is a scope
for introducing a method to maintain the Online Blogging System.
64
BIBLIOGRAPHY
65
BIBLIOGRAPHY
• www.google.co.in
• www.w3schools.com
• www.stackoverflow.com
• www.developers.com
• www.androidtutorial.com
• www.tutorialspoint.com
• www.wikipedia.co.in
66