Blog Web Application New 1
Blog Web Application New 1
Blog Web Application New 1
A Project Report
Submitted in partial fulfilment of the Requirements for the award of the Degree of
By
IT-2056
Under the esteemed guidance of
Course Coordinator
MAHARASHTRA
2022-23
PROFORMA FOR THE APPROVAL PROJECT PROPOSAL
(Note: All entries of the proforma of approval should be filled up with appropriate &
complete information. Incomplete proforma of approval in any respect will be
summarily rejected.)
Date: …………………
D. G. RUPAREL COLLEGE OF ARTS, SCIENCE & COMMERCE
CERTIFICATE
Date:
(Course Co-Ordinator)
ABSTRACT
Blog is a communication tool that plays a key role in a web application. Use of blogs has
resulted in a paradigm shift in the way a web application interacts with the customer. During the
development of web application, there is a need to elicit and specify the requirements for the
blogging functionality. In this study, we present a requirements checklist for the blog, from the
perspective of integrating the blog in a web application.
We follow the use case-based approach for identifying the software requirement for the
blog. The requirement checklist helps both the web application and the developer during the
requirement elicitation of the blog’s software. The checklist is also useful during the testing
phase for the validation and verification of the blog functionality.
ACKNOWLEDGEMENT
My journey towards achieving my destination for design for the design and development of “Blog
Web Application” has finally come to a fruitful culmination.
My whole efforts and wholehearted co-operation of each one has ended on a successful note.
During this journey, I faced numerous unforeseen problems and unknown challenges. However, at these
junctures, a few enterprising people stepped in and guide me in a right direction.
I would like to extend my sincere acknowledgement to those who have supported and encouraged
me during this tough journey. Many people met me during this endeavor and enrich me with their support
and knowledge both personally and professionally that resulted in project being better that it could
possibly have been without them.
I express my sincere gratitude to Prof. Mandar Bhave for his ongoing support during the
journey and for assisting me throughout this project. I thank him for providing me confidence. I also
thank Ms. Mansi Rajapurkar For always having my back on this and most importantly for the guidance
throughout the project development.
A special mention to my friend and family who helped me in completing the project by
suggesting me new ideas for the project and sharing them. I pay regards to my parents for encouraging
and support me when I need or require.
DECLARATION
I hereby declare that the project entitled, “Project Name” done at D.G.
Ruparel College of Arts, Science & Commerce, has not been in any case duplicated to
submit to any other university for the award of any degree. To the best of my knowledge other
The project is done in partial fulfilment of the requirements for the award of degree of
Harshal Kamble
Signature:
Table of Contents
Chapter 1 ..................................................................................................................................................... 1
Introduction ................................................................................................................................................. 1
1.1 Background ......................................................................................................................................... 1
1.2 Objectives ........................................................................................................................................... 2
1.3 Purpose and Scope .............................................................................................................................. 3
1.3.1 Purpose........................................................................................................................................ 3
1.3.2 Scope............................................................................................................................................ 4
1.3.3 Applicability ............................................................................................................................... 5
Chapter 2 ..................................................................................................................................................... 7
Survey of Technologies ............................................................................................................................... 7
2.1 Existing System .................................................................................................................................. 7
2.2 Proposed System ................................................................................................................................. 9
2.3 Requirement Analysis ......................................................................................................................... 9
2.4 Hardware Requirement ..................................................................................................................... 10
2.5 Software Requirement ...................................................................................................................... 11
2.6 Justification of Platform .................................................................................................................... 11
Chapter 3 ................................................................................................................................................... 13
Requirements and Analysis ...................................................................................................................... 13
3.1 Problem Definition............................................................................................................................ 13
3.2 Requirement Specification ................................................................................................................ 14
3.2.1 Functional Requirements ........................................................................................................ 14
3.2.2 Non-Functional Requirements ................................................................................................ 15
3.3 Planning and Scheduling................................................................................................................... 17
3.3.1 GANTT CHART ...................................................................................................................... 17
3.4 Preliminary Products Description ..................................................................................................... 18
3.4.1 Product Perspective: ................................................................................................................ 18
3.4.2 Product Functions:................................................................................................................... 18
3.5 Entity Relationship Diagram ............................................................................................................. 18
3.6 Conceptual Diagrams ........................................................................................................................ 20
3.6.1 Event table: ............................................................................................................................... 20
3.6.2 Use-case diagram: .................................................................................................................... 22
3.6.3 Sequence diagram .................................................................................................................... 25
3.6.4 Activity diagram:...................................................................................................................... 26
3.6.5 Class diagram: .......................................................................................................................... 27
3.6.6 Object diagram......................................................................................................................... 28
3.6.7 Component diagram ................................................................................................................ 29
3.6.8 Deployment diagram................................................................................................................ 30
Chapter 4 ................................................................................................................................................... 31
System Design ............................................................................................................................................ 31
4.1 Basic Modules................................................................................................................................... 31
4.2 Data Design....................................................................................................................................... 32
4.2.1 Schema Design: ........................................................................................................................ 32
4.2.2 Data Integrity and Constraints ............................................................................................... 33
4.3 Procedural Design ............................................................................................................................. 35
4.3.1 Logic Diagram .......................................................................................................................... 35
4.3.2 Algorithms Design .................................................................................................................... 35
4.4 User Interface Design: ...................................................................................................................... 37
4.5 Security Issues .................................................................................................................................. 39
4.6 Test Case Design: ............................................................................................................................. 40
Chapter 5 Implementation and testing ........................................................................................................ 42
5.1 Implementation Approaches ............................................................................................................. 42
5.2 Coding Details and Code Efficiency:................................................................................................ 43
5.2.1 Code Efficiency......................................................................................................................... 43
5.3 Testing approaches............................................................................................................................ 89
5.3.1 Unit Testing .............................................................................................................................. 89
5.3.2 Integration Testing................................................................................................................... 89
5.3.2 Beta Testing ................................................................................................................................... 90
5.4 Modification and Improvements ....................................................................................................... 91
Chapter 6 Results and Discussion ............................................................................................................... 92
6.1 Test Reports ...................................................................................................................................... 92
6.2 System Functioning/ User Documentation ....................................................................................... 96
Chapter 7 Conclusion................................................................................................................................ 104
7.1 Conclusion ...................................................................................................................................... 104
7.2 Limitation of the system ................................................................................................................. 105
7.3 Future Scope of the Project ............................................................................................................. 105
References & Bibliography....................................................................................................................... 106
Website Used ............................................................................................................................................ 106
Table Of Figures:
Figure 1 14
Figure 2 16
Figure 3 18
Figure 4 19
Figure 5 20
Figure 6 22
Figure 7 23
Figure 8 24
Figure 9 25
Figure 10 26
Figure 11 27
Figure 12 32
Figure 13 34
Figure 14 35
Figure 15 36
1
Chapter 1
Introduction
1.1 Background
Blogging has become such a mania that a new blog is been created every second of every
minute of each hour of each day. A blog is the best bet among all the online crowd. blog is
usually the work of the individual occasionally of a small group, and often covered a single
subject. Recently "Multi-Author Blogs" (MABs) have been introduced and developed to make
the work easier, with posts written by the greater number of authors and professional writers,
MABs from newspapers, other media outlets, universities, think tanks, social media, advocacy
groups, and similar institutions account for an increasing quantity leading to blog traffic.
A blog is a type of website that is updated regularly with added content. Most blogs
contain short, informal articles called blog posts. These posts usually contain some combination
of text, photos, videos, and other media. At its core, a blog is just a space on the Web that you
can create to record and express your opinions, experiences, and interests.
If you spend much time browsing the Web, you've probably read a blog post before, even
if you didn't realize it at the time. Some of the most-read blogs are a bit like online magazines
because they're written by a team of people who are paid to update the blog with new posts
several times a day.
Blog can also be used as a verb, meaning to maintain or add content to a blog. The rise
of new social media platforms such as Twitter and many more has helped to integrate MABs and
single-author blogs into social streams. Blog contains the information of various things related to
Technology, Education, News, International, Business, Sports, Entertainment, and ongoing
activities throughout the world. A novel a long, frictional narrative which describes intimate
human experience. A weblog, sometimes written as web log or Weblog, is a Web site that
consists of a series of entries arranged in reverse chronological order, often updated on
1
frequently with latest information about particular topics. WEBLOG is a combination of both
novel and blog and is also rising as it has been used more usually by everyone.
The main aim of the project is to provide data to students in only one site. Students can
gather the information from one site as well as give their feedback and create their own blog.
Students can post their views and thoughts and analyse themselves. Beside all such core
functionalities, the application also includes features like CURD, FAQ, Request, feedback, etc.
so as to provide a satisfactory user experience to the individual. This software is supposed to
eliminate and, in some cases, reduce the hardships faced by this existing system. Moreover, this
system is designed for the particular need of company or the group of people to carry out
operations in a smooth and effective manner. The application is reduced as much as possible to
avoid errors while entering the data. It also provides error message while entering invalid data.
No formal knowledge is needed for the user to use this system. Thus, by this all it provides it is
user-friendly environment. This application can lead to error free, secure, reliable, and fast
management system. It can assist the user to concentrate on their other activities rather to
concentrate on the record keeping. Thus, it will help organization in better utilization of
resources. This system will ultimately allow you to better manage resources.
1.2 Objectives
By my analysis on web search, I was expected that for common people to develop
website, they have to face many problems and also, they want to share their knowledge,
technology, articles, etc.
In the recent time Blogs are store in the paper files and difficult to search or modify any
information, for expanding the Blogs infrastructure, Awareness of environmental issues or any
other issues related to education, health, digital technology, and search for greater safety give of
information to all persons in all age groups and a new role within the education system, I choose
this project. As a result of these project initiatives phenomenal growth has taken place in all the
activities of blogs and any user can share its information related to any topic to all users. If you
have a blog, you are doing it with a result in mind. All blogs need goals. Without goals, you
won’t accomplish anything at all. Not only do you need goals, but you must quantify them.
As a blogger, your mindset needs to be extremely specific. If your goal is to make money
(your immediate goal, not your goal), it is not really a goal. It is what results from achieving
other goals. Remember that you need to be able to set metrics to your goals and you can’t really
set metrics to making money. There are goals, however, that you can set that are quantitative and
achievable. The objective of my project is to provide all its user with easy access to relevant, and
by using provide them choosing facility to component. People will make their own blog using
style, template, their own creativity, etc. The objective of our Project is to provide all its
user with easy access to relevant, and by using provide them. Choosing facility to
component.
The objective of a blog is to provide content on your website that answers your
prospective customers' questions and helps them learn about your product or service. It expands
your brand's visibility by giving Google and other search engines content to index and serve up
in search results.
1.3.1 Purpose
The main purpose of the Project on Online Blogging System is to manage the details of
Blogs, Idea, Topic, Entries, Views. It manages all the information about Blogs, Content, Views,
Blogs. The project is totally built at administrative end and thus only the administrator is
guaranteed the access. The purpose of the Blogs, Idea, Content, Topic. It tracks all the details
about the Topics, Entries, Views.
This platform provides an environment for posting or sharing knowledge throughout the
organization. This gives detailed information about functional and non-functional requirements
of users or students that is whatever they want to share then they can easily write on their blog,
and it can be viewed by the member in the organization. The purpose meets the goal of sharing
the information in formal or in secure way. This system provides an effortless way for teachers
and student to get connected to each other after leaving the particular organization.
The purpose of Online Blogging System is to automate the existing manual system by the
help of computerized and full-fledged computer software, fulfilling their requirements, so that
their valuable data/information can be stored for a longer period with easy accessing and
manipulation of the same. The required software and hardware are easily available and easy to
work with. Online Blogging System, as described above, can lead to error free, secure, reliable,
and fast management system. It can assist the user to concentrate on their other activities rather
to concentrate on the record keeping. Thus, it will help organization in better utilization of
resources.
The organization can maintain computerized records without redundant entries. That means
that one need not be distracted by information that is not relevant, while being able to reach the
information. The aim is to automate its existing manual system by the help of computerized
equipment and full-fledged computer software, fulfilling their requirements, so that their
valuable data/information can be stored for a longer period with easy accessing and manipulation
of the same. Basically, the project describes how to manage for good performance and better
services for the clients. It is also use for creating posting and viewing the others post, ideals,
entries, and blogs.
1.3.2 Scope
Blogging is not only for writing, but it is a business by itself. It involves a good
understanding of the topic you have selected, digital marketing, and sales. This will give you an
understanding of content marketing You can use your writing skills and become a good
entrepreneur based on your content marketing skills.
This platform allows will allow any individual to create their own blog as required by them. The
gist of the idea is to digitalize the process of manually driven ideas, topics and blog sharing
among the user, small or big organizations as well as small forums and then to bake it into a web
application to make it available for common people even to speed up process reducing further
hassle and issues. It may help collecting perfect management in detail. In a noticeably
abbreviated time, the collection will be obvious, simple and sensible.
It will help a person to know the management of passed year perfectly and vividly. It also
helps in current all works relative to Online Blogging System. It will be also reduced the cost of
collecting the management & collection procedure will go on smoothly.
1.3.3 Applicability
Personal blogs: The personal blog, an ongoing diary or commentary by an individual, is the
traditional, most common blog. Personal bloggers usually take pride in their blog posts, even
if their blog is never read. Blogs often become more than a way to just communicate; they
become a way to reflect on life or works of art. Blogging can have a sentimental quality.
Corporate and organizational blogs: A blog can be private, as in most cases, or it can be for
business purposes. Blogs used internally to enhance the communication and culture in a
corporation or externally for marketing, branding or public relations purposes are called
corporate blogs
By media type: A blog comprising videos is called a vlog, one comprising links is called a link
log, a site containing a portfolio of sketches is called a sketch blo1g or one comprising photo is
called a photoblog. Blogs with shorter posts and mixed media types are called tumblelog. Blogs
that are written on typewriters and then scanned are called typecast or typecast blogs; see
typecasting (blogging).
Survey of Technologies
Existing system is manual system. It requires a lot of file work to be done. It is a time-
consuming system. All customer information is maintained manually. Any searching requires so
much effort manually. There is no way of spreading the information so fast and in cheaper
manner. In previous system all information does not get in one place. Here people can write
whatever they want to write without any difficulties.
The other existing software are publicly accessible to anyone, there is no security for
confidential data. In the past, an individual has generally had to write to any other individual
exclusively. It’s hard for them to get excited about writing something that they know no one else
will see, on a subject that seems to serve no real purpose outside the society.
The platform also has its darker side with some limitations on the enjoyment of its
features and functionality. One of the major downsides of Blogger is that you cannot monetize it
with ads other than Google’s. Google frowns over the competition thus it exercises exclusive ad
service only for Google ads in Blogger. Google owns the site as it exercises control on what ads
you are allowed to post on your blog site. With this ownership issue, a blogger should realize
that whatever content that they post on Blogger could disappear if Google decides to close down
the platform. Therefore, anyone who is using Blogger should backup their content because their
blog site could be deleted by Google even without notice to the blog site user.
Another disappointing feature from the Blogger template is that it lacks plugins that are
so numerously available in its competitive blogging platform, WordPress. Although professional
bloggers could tweak the template a bit, they are not at the full liberty to customize their blog
sites. It is because of these limited features and designs available in the Blogger templates that
lead us to another downside of using blogger – duplicate or similar blog site design. Because
there are only quite a few available template designs to choose from it is a challenge to create a
professional-looking blog site. Most often than not, you will feel extremely disappointed to find
another site using the same design as your blog site.
• WordPress: WordPress started in 2003 with a single bit of code to enhance the
typography of everyday writing and with fewer users than you can count on your fingers
and toes. Since then, it has grown to be the largest self-hosted blogging tool in the world,
used on millions of sites and seen by tens of millions of people every day. WordPress
started as just a blogging system but has evolved to be used as full content management
system and so much more through the thousands of plugins and widgets and themes,
WordPress is limited only by your imagination.
• Drupal: Drupal isn’t your typical blogging software. While it has an incredible
community behind the code and many blogs use it for blogging software, it’s not just
blogging software. Drupal is community software. Drupal really shines as blog software
for a blogging community. Drupal also comes with a large community of developers and
modules. With these modules, one could build any type of site or add nearly any sort of
functionality to their Drupal installation.
• Serendipity: Serendipity takes pride in the fact that it is a beginner friendly blogging
platform. Serendipity keeps your plugins up to date by automatically checking the
plugins repository online and downloading the updated version if needed from a fairly
extensive library of user-contributed plugins.
• Social media platforms: After the rise of blogging website many social media platforms
are also down on this lane. Many social media platforms such as twitter, Instagram,
Tumblr, Pinterest, LinkedIn have adapted the blogging design for their own goods, but
they have their own drawbacks.
2.2 Proposed System
Having a good blogging system can get rid of faster and an important issue for everyone.
Using this system one can store information about every new entry of blogs without thinking for
the privacy issues as it will be secure by admin. One can do all the works such as Vlogging,
blogging, saving notes, saving images as memories, work diary only through single system there
will beno need for using multiple applications for such functionalities. The blog can be private as
well as public as per user need.
In public blog everyone can read the uploaded blog and get the information in it. They
can also add comments and give their opinion on the particular blog if they want. This comment
will also be visible to the blog owner. In private, the user can select the Number of peoples
he/she wanted to show their blog to, not everyone can see this blog. The other functionalities are
same as the public blog, but it’s just private blogs are more secured.
In public blog if anyone is not comfortable with the following user or the topic then they
can even select the topics they wanted to see the blogs. In this system the user can use “CURD”
(Create, Update, Read, Delete) for their blog. This application will also have the search option to
search the particular user or the topic of their own interest to read. All the blogs and the users
will be handles by the admin of the page. He will be maintaining query records.
The hardware requirements are the requirements of a hardware device. Most hardware
only has operating system requirements or compatibility. For example, a printer may be
compatible with Windows XP but not compatible with newer versions of Windows like
Windows 10, Linux, or the Apple macOS.
For running any software there is some specification and only if it satisfies the specified
requirements, it will get installed and work as it is designed for.
The website will be developed using the JS, HTML, CSS and for backend I will be using
MYSQL and PHP server. There are many platforms available to develop a web application such
as java/JSP/visual studio, etc. PHP is a script language and interpreter that is freely available and
used primarily on Linux Web servers. PHP, originally derived from Personal Home Page Tools,
now stands for PHP: Hypertext Pre-processor, which the PHP FAQ describes as a "recursive
acronym."
PHP executes on the server, while a comparable alternative, JavaScript, executes on the
client. PHP is an alternative to Microsoft's Active Server Page (ASP) technology. As with ASP,
the PHP script is embedded within a Web page along with its HTML(also CSS and JavaScript).
Before the page is sent to a user that has requested it, the Web server calls PHP to interpret and
perform the operations called for in the PHP script.
For the backend support I will be using Microsoft SQL server, as it is secure and
portable. Microsoft SQL server is the relational database management system. When writing
code for SQL CLR, data is stored in SQL server databases and can be accessed using the Xampp
API’s. SQL server also provides several enhancements to the PHP including classes to work with
tabular data or a single row of data. There are many advantages of using Microsoft SQL Server
as it has an enhanced performance.
Chapter 3
• Poorly written code: Many bloggings Web app have this issue which will lead to the
problems to a host of we application including ineffective algorithm causing less reach of
the blog to the world, memory leaks, and application deadlocks.
• Unmanaged growth of Data: Data systems tend to degrade over time. Developing a plan
to manage and monitor data as it grows is indispensable to your web performance.
• Traffic Spikes: We generally think of increased traffic as a good thing but Due to the
large number of users of blogging web application through-out the world this causes the
traffic of the blogs in the server causing the crash of the server and render error. Planning
ahead is the key and set up an early warning system through simulated user monitor
systems.
• Poor Load distribution: Poor load distribution can cause slow response times by
incorrectly assigning new site visitors to bogged-down servers instead of others with
cycles spare.
• DNS, Firewall, and network connectivity: DNS queries make up the majority of web
traffic. That’s why a DNS issue can cause so much trouble, preventing visitors from
accessing your site and resulting in errors, 404s, and incorrect pathways. Likewise,
network connectivity and firewall efficiency are crucial for access and productivity. Use
DNS monitoring safeguards to pinpoint problems at hand. Also, revise switches, check
VLAN tags, and distribute tasks between servers.
• No option of update of the blog: The existing blogging web application does not give the
option of updating the blog after posting the blog on the particular topic. If we want to do
this, we have to delete the old product and then upload the new product with all the
updates. This can cause the loss of interest in the particular topic in which project is
based on.
• Security: Some of the existing blogging web application have the problem of data leaking
and have very less security. Because of this there is the leak of the personal data which
can be used by anyone for bad use. The personal data of the individual can be used by
anyone because of the lack of security and authentication.
• Different Platform for different Blog: In the Existing systems there is not one platform
for all type of blogs such as vlog (video blog), weblog (novel blog), etc. There is the need
of the same platform for all types of the blogs.
2) Users:
a) Register: To use this application the user needs to login if they are already a
user or need to register otherwise.
b) Login: each user will have its own unique user id and password and they will
be provided with the 2-step authentication factor and the different columns of
the different topics.
c) Create Blog: The user can create the new blogs according to their need it can
be public as well as private. In public other users can also read the shared
blogs.
d) Update Blog: The user will be able to update or edit the submitted blog now,
because sometimes it becomes the need.
e) Read Blog: The users can read the blogs of each other and give their own
opinions by using the features of the commenting on the post. They will create
the spread of the particular individual through social media who are having
the similar opinions on the particular topic.
f) Delete Blog: Some blogs are inappropriate and can hurt anyone’s sentiments
such blogs should be deleted. For this only this option is given.
Date JUL AUG SEP OCT NOV DEC JAN FEB MAR
Phase
Literature
Survey.
Requirement
Gathering
System design
Coding
Testing
Documentation
Figure 1
Estimated Time
Actual Time
3.4 Preliminary Products Description
The system is intended to work on all types of operating systems like UNIX and
Windows based platform. The system will be a reliable product for all the users.
ER Diagram stands for Entity Relationship Diagram, also known as ERD, is a diagram that
displays the relationship of entity sets stored in a database. In other words, ER diagrams help to
explain the logical structure of databases. ER diagrams are created based on three basic concepts:
entities, attributes, and relationships.
ER Diagrams contain different symbols that use rectangles to represent entities, ovals to
define attributes and diamond shapes to represent relationships.
At first look, an ER diagram looks remarkably similar to the flowchart. However, ER
Diagram includes many specialized symbols, and its meanings make this model unique. The
purpose of ER Diagram is to represent the entity framework infrastructure.
Figure 2
What is ER Model?
ER Model stands for Entity Relationship Model is a high-level conceptual data model
diagram. ER model helps to systematically analyse data requirements to produce a well-designed
database. The ER Model represents real-world entities and the relationships between them.
Creating an ER Model in DBMS is considered as a best practice before implementing your
database.
ER Modelling helps you to analyse data requirements systematically to produce a well-
designed database. So, it is considered a best practice to complete ER modelling before
implementing your database.
The above ER diagram is the database diagram for my blog application. This entity relationship
diagram shows the blog database system. Such data models are typically used in the first phase of
information system design; for example, they are used to describe information requirements and/or
the types of information to be stored in the database during the requirements analysis phase.
• Use cases
• Actors
• Subsystems
• Relationship in use-case diagrams
Figure 4
This is the use case diagram for the admin of the application. These are the activities used by
admin in the application.
Figure 5
This is the use case diagram for the user of the application. Here is all the function that a user
can use while using this web application.
3.6.3 Sequence diagram
UML Sequence Diagrams are interaction diagrams that detail how operations are
carried out. They capture the interaction between objects in the context of a collaboration.
Sequence Diagrams are time focus, and they show the order of the interaction visually by
using the vertical axis of the diagram to represent time what messages are sent and when.
• the interaction that takes place in a collaboration that either realizes a use case or an
operation (instance diagrams or generic diagrams)
• high-level interactions between user of the system and the system, between the system
and other systems, or between subsystems (sometimes known as system sequence
diagrams)
Figure 6
3.6.4 Activity 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, join, etc.
Figure 7
This is the activity diagram for my application of blog. This is nothing but the flowchart of the
application. This represents the activity of both user and admin of the system.
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 various 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 diagrams are widely used in the modelling of object-oriented
systems because they are the only UML diagrams, which can be mapped directly with object-
oriented languages.
Figure 8
3.6.6 Object diagram
A UML object diagram represents a specific instance of a class diagram at a certain moment
in time. When represented visually, you'll see many similarities to the class diagram.
An object diagram focuses on the attributes of a set of objects and how those objects relate to
each other. Object diagrams are dependent on the class diagram as they are derived from the
class diagram. It represents an instance of a class diagram. The objects help in portraying a static
view of an object-oriented system at a specific instant.
Both the object and class diagram are similar to some extent; the only difference is that the class
diagram provides an abstract view of a system. It helps in visualizing a particular functionality of
a system.
Figure 9
3.6.7 Component diagram
UML Component diagrams are used in modelling the physical aspects of object-
oriented systems that are used for visualizing, specifying, and documenting component-
based systems and also for constructing executable systems through forward and reverse
engineering. Component diagrams are essentially class diagrams that focus on a system's
components that often used to model the static implementation view of a system.
A component represents a modular part of a system that encapsulates its contents and
whose manifestation is replaceable within its environment. In UML 2, a component is drawn as
a rectangle with optional compartments stacked vertically. A high-level, abstracted view of a
component in UML 2 can be modelled as:
Figure 10
3.6.8 Deployment diagram
In UML, deployment diagrams model the physical architecture of a system. Deployment
diagrams show the relationships between the software and hardware components in the system
and the physical distribution of the processing.
Deployment diagrams, which you typically prepare during the implementation phase of
development, show the physical arrangement of the nodes in a distributed system, the artifacts
that are stored on each node, and the components and other elements that the artifacts implement.
Nodes represent hardware devices such as computers, sensors, and printers, as well as other
devices that support the runtime environment of a system. Communication paths and deploy
relationships model the connections in the system.
Deployment diagrams are effective for visualizing, specifying, and documenting the
following types of systems:
• Embedded systems that use hardware that is controlled by external stimuli; for example, a
display that is controlled by temperature change
• Client/server systems that typically distinguish between the user interface and the
persistent data of a system
• Distributed systems that have multiple servers and can host multiple versions of software
artifacts, some of which might even migrate from node to node.
Figure 11
Chapter 4
System Design
1. User login:
❖ Register: The new user needs to register in order to make a new blogging account on the
website and use all the facilities to explore the website and make new reach to the world.
❖ Login: Only the registered users can use this module of login. In this user has to put their
login ID and Password to use the website. They can have the answer to the query if any.
2. Admin Login:
The admin will be responsible to add, delete or update the data of the new users and
blogs. He can view the users and the different types of blogs
3. Search Blogs:
The user and Admin both will be able to search the requested information after the login.
The blogs will be categorized according to its categories given by the system and the tags. The
user can choose the blog which they want to see.
4. Add Blogs:
The user can add their own blog to the website for the other users to read.
5. Blog Categories:
The user can see the blogs according to its categories and users can also add their own
blogs according to their category.
4.2 Data Design
Name Password
• User database:
Username Password
User table:
Figure 12
Step 5 Search for the types of blogs you want to Read and have the opinion on.
Step 6 Add new blog on your account and publish it to the website if you are having a
public account.
Step 7 Blogs will be displayed after the search, click on the suitable blog, and add a
comment if you want.
Step 8 If you want to add the new category you can add it.
Step 11 After visiting the site normal users can view the different Blogs and ask queries
without logging in.
Step 12 If the admin Login, then he can
1. Manage Users
2. Manage Blog
3. Manage Blog Category
4. Update users
5. Manage Blog Type
6. Manage Updates
Step 13 Logout from the website.
4.4 User Interface Design:
Figure 13
User login:
Figure 14
User registration login:
Figure 15
Issues Solutions
Admin/User privileges Users can access only his account, but admin can
access all the accounts.
Your Blog posts. A blog profile will be private or open as per user
requirement.
4.6 Test Case Design:
Index Test Case Test Data State Test input values Expected
result
1. The username Numbers or INVALID Harshal xyz Enter valid
should be only any other value
in characters (A- special
Z) and (a-z) characters
Alphabets VALID Harshal123 Name is
A-Z and a-z accepted.
Implementation is the phase which comes after designing. The result of this phase consists of
source code, together with documentation to make the code reliable. Implementation is the action
that must follow any preliminary in order for something to actually happen. It encompasses all
the processes involved in getting new software and hardware operating properly in its
environment, including installation, configuration, running, testing and making necessary
changes. In implementation we start with the actual execution of the website with the design we
have made. Implementation is done before we start with the coding of the software product.
Implementation includes writing codes with the design in hand. Implementation is the process of
building the web according to its design.
System Implementation is used to bring a developed system or sub system into operational use
and turning it over to the user. It involves programmer, users and operational management. It
also needs to introduce and train the people to work with the new system. The system has been
implemented and tested successfully. It meets the information Requirements specified to the
great extent. Although the system has been designed keeping the Present and future requirements
in mind and made very flexible. There are many limitations of this design.
Advantages:
5. User friendly screen to enter the data and enquire the database tables.
6. User can easily access the system without much experience.
• Naming convention have been utilized for user element and that of variables and functions
which help for better understanding of the website application code.
• The application does not contain any type of redundant code which might lead to slowing down
application response time.
• The code is written according to the logic which was required for the application to present
itself and hence avoiding any type of unwanted lines of code.
• Simplicity has been maintained throughout the application code by making use of sections and
proper formatting of the code.
• Validations have been provided in order to prevent from any type of misuse of the application
by any of the users.
index.php
<style media="screen">
.bg {
background: url('https://png.pngtree.com/png-vector/20220127/ourmid/pngtree-video-blogger-
making-video-for-blog-or-vlog-review-png-image_4369337.png');
background-repeat: no-repeat;
background-position: top;
background-size: contain;
background-colour: Blue;
height: 500px;
</style>
<?php
$index_url='index.php';
$posts_url='posts/posts.php';
$top_posts_url='posts/topposts.php';
$post_url='posts/post.php';
$newpost_url='posts/newpost.php';
$login_url='users/login.php';
$logout_url='users/logout.php';
$register_url='users/register.php';
$search_url='posts/search.php';
$contact_us_url='users/contact_us.php';
session_start();
include("include/navbar.php");
include("include/bootstrap_cdn.php");
if(isset($_SESSION['username'])) {
header("location:posts/posts.php");
?>
<div class="row">
<div class="bg"></div>
</div>
navbar.php
<div class="container-fluid">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
All Posts
</a></li>
<div class="input-group">
<div class="input-group-btn">
</button>
</div>
</div>
</form>
<?php
if(!isset($_SESSION['username'])) {
include("loginform.php");
}
else {
include("userdetail.php");
?>
</ul>
</nav>
Algos.php
<?php
include("../db/dbconnect.php");
$query="SELECT *
FROM user_post
WHERE postID='$id'
";
$result=mysqli_query($conn , $query);
if($result==true) {
if(mysqli_num_rows($result) == 1) {
while($row = mysqli_fetch_assoc($result)) {
$views=$row['postViews'];
$views = $views + 1;
$query="UPDATE user_post
SET postViews='$views'
WHERE postID='$id'
";
$res=mysqli_query($conn , $query);
if($res) {
return $row['postViews'];
} else {
$result=mysqli_query($conn , $query);
if($result) {
return 1;
} else {
}
} else {
return 0;
?>
<?php
include("../db/dbconnect.php");
$query="SELECT *
FROM user_post
WHERE postID='$id'
";
$result=mysqli_query($conn , $query);
if($result) {
if(mysqli_num_rows($result)==1) {
while($row=mysqli_fetch_assoc($result)) {
return $row['postViews'];
} else {
return 0;
}}
return 0;
?>
register.php
<?php
include("../include/url_users.php");
if(isset($_SESSION['username'])) {
header('Location:../index.php');
if(isset($_POST['submit'])) {
$username=$_POST['username'];
$firstname=$_POST['firstname'];
$emailid=$_POST['emailid'];
$password=$_POST['password'];
include("../db/dbconnect.php");
$result=mysqli_query($conn , $query);
$rows=mysqli_num_rows($result);
if($rows > 0) {
header("location:register.php");
else {
VALUES ('$username','$firstname','$password','$emailid')";
mysqli_query($conn , $query);
header("location:../index.php");
}}
/* * * * * Registeration Form * * * * */
else {
include("../include/frame_register.php");
}
?>
post.php
<?php
include("../include/url_posts.php");
include_once("../include/algos.php");
/* post.php?id=2 */
if(isset($_REQUEST['id'])) {
$id=$_REQUEST['id'];
$result=mysqli_query($conn , $query);
if($post=mysqli_fetch_assoc($result)) {
$id=$post['postID'];
$title=$post['postTitle'];
$desc=$post['postDesc'];
$tags=$post['postTag'];
$author=$post['postAuthor'];
$time=$post['postTime'];
$shortpost=0;
/* increament view by 1 */
$views=increament_views($id, $author);
include("../include/frame_post.php");
}}
/* post.php?tags=dp */
if(isset($_REQUEST['tags'])) {
$tag=$_REQUEST['tags'];
$result=mysqli_query($conn , $query);
if(mysqli_num_rows($result) > 0) {
while($post=mysqli_fetch_assoc($result)) {
$id=$post['postID'];
$title=$post['postTitle'];
$desc=$post['postDesc'];
$tags=$post['postTag'];
$author=$post['postAuthor'];
$time=$post['postTime'];
include("../include/frame_post.php");
}}}
/* post.php?user=qt */
if(isset($_REQUEST['user'])) {
$user=$_REQUEST['user'];
$result=mysqli_query($conn , $query);
if(mysqli_num_rows($result) > 0) {
while($post=mysqli_fetch_assoc($result)) {
$id=$post['postID'];
$title=$post['postTitle'];
$desc=$post['postDesc'];
$tags=$post['postTag'];
$author=$post['postAuthor'];
$time=$post['postTime'];
include("../include/frame_post.php");
}}}
?>
topposts.php
<?php
include("../include/url_posts.php");
include("../db/dbconnect.php");
include_once("../include/algos.php");
"background-color: #f7f7f7",
"padding: 20px",
"border-radius: 5px",
"margin-bottom: 20px",
];
$query = "SELECT *
WHERE user_post.postID=posts.postID
";
if ($result == false) {
} else {
if (mysqli_num_rows($result)) {
$id = $post['postID'];
$title = $post['postTitle'];
$desc = $post['postDesc'];
$tags = $post['postTag'];
$author = $post['postAuthor'];
$time = $post['postTime'];
include('../include/frame_post.php');
echo '</div>';
echo '</div>';
}}
?>
contact_us.php
<?php
include("../include/url_users.php");
?>
<div class="container">
<div class="row">
<?php
if (isset($_POST["submit"])) {
$name = $_POST['name'];
$email = $_POST['email'];
$msg = $_POST['message'];
if ($result) {
} else {
} else {
include("../include/frame_contact_us.php");
?>
</div>
</div>
</div>
search.php
<?php
/* search.php?q='dp' */
include("../include/url_posts.php");
if(isset($_POST['submit'])) {
$q=$_POST['q'];
} else {
$q='';
}+
$query="SELECT *
FROM posts
";
$result=mysqli_query($conn , $query);
?>
<div class="container">
<hr>
<div class="row">
<?php
if(mysqli_num_rows($result)) {
while($post=mysqli_fetch_assoc($result)) {
$id=$post['postID'];
$title=$post['postTitle'];
$desc=$post['postDesc'];
$tags=$post['postTag'];
$author=$post['postAuthor'];
$time=$post['postTime'];
include("../include/frame_post.php");
} else {
?>
</div>
</div>
admin.php
<?php
include("../include/url_users.php");
if(!isset($_SESSION['username'])){
header('Location:../index.php');
else if($_SESSION['usertype']!='admin') {
header('Location:../index.php');
else {
$user=$_SESSION['username'];
?>
<!DOCTYPE html>
<html lang="en">
<head>
<title>Admin</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet"
href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
</head>
<body>
<div class="container">
<h2>Admin Panel</h2>
</ul>
<div class="tab-content">
<p>
<?php
include("../include/post_request.php");
?>
</p>
</div>
<p>
<?php
include("../include/account_request.php");
?>
</p>
</div>
<p>
<?php
include("userlist.php");
?>
</p>
</div>
<p>
<?php
include("../include/messages.php");
?>
</p>
</div>
</div>
</div>
</body>
</html>
message.php
<?php
if(!isset($_SESSION['username'])){
header('Location:../index.php');
else if($_SESSION['usertype']!='admin') {
header('Location:../index.php');
else {
$user=$_SESSION['username'];
echo "
<table class='table'>
<tr>
<th>Name </th>
<th>E mail</th>
<th>Message </th>
<th>Time</th>
</tr>
<tbody>
";
if($result) {
if(mysqli_num_rows($result)>0) {
while($row=mysqli_fetch_assoc($result)) {
//include("../include/frame_profile_detail.php");
echo "<tr>";
echo "<td>".$row['name']."</td>";
echo "<td>".$row['email']."</td>";
echo "<td>".$row['message']."</td>";
echo "<td>".$row['time']."</td>";
echo "</tr>";
}
echo "
</tbody>
</table>
";
} else {
echo "failed";
?>
Accountrequest.php
<?php
if(!isset($_SESSION['username'])){
header('Location:../index.php');
else if($_SESSION['usertype']!='admin') {
header('Location:../index.php');
else {
$user=$_SESSION['username'];
}
$result=mysqli_query($conn , $query );
if($result) {
if(mysqli_num_rows($result)==0) {
else if(mysqli_num_rows($result)>0) {
echo "
<table class='table'>
<tr>
<th>ID</th>
<th>Username</th>
<th>Name</th>
<th>Email</th>
<th>Action</th>
<th>Accept</th>
<th>Delete</th>
</tr>
<tbody>
"; while($row=mysqli_fetch_assoc($result)) {
//include("../include/frame_profile_detail.php");
echo "<tr>";
echo "<td>".$row['id']."</td>";
echo "<td>".$row['username']."</td>";
echo "<td>".$row['firstname']."</td>";
echo "<td>".$row['emailid']."</td>";
echo "<td>".$row['password']."</td>";
$accept_requested_user_link='../include/accept_requested_user.php?username='.$row['username'
];
$delete_requested_user_link='../include/delete_requested_user.php?username='.$row['username'
];
echo "</tr>";
echo "
</tbody>
</table>
"; }
} else {
echo "failed";
?>
userlist.php
<?php
if(!isset($_SESSION['username'])){
header('Location:../index.php');
else if($_SESSION['usertype']!='admin') {
header('Location:../index.php');
else {
$user=$_SESSION['username'];
$result=mysqli_query($conn , $query );
echo "
<table class='table'>
<tr>
<th>ID</th>
<th>Username</th>
<th>Name</th>
<th>Email</th>
<th>Action</th>
<th>Delete</th>
</tr>
<tbody>
";
if($result) {
if(mysqli_num_rows($result)>0) {
while($row=mysqli_fetch_assoc($result)) {
//include("../include/frame_profile_detail.php");
echo "<tr>";
echo "<td>".$row['id']."</td>";
echo "<td>".$row['username']."</td>";
echo "<td>".$row['firstname']."</td>";
echo "<td>".$row['emailid']."</td>";
echo "<td>".$row['password']."</td>";
echo "</tr>";
echo "
</tbody>
</table>
";
} else {
echo "failed";
?>
deleteuser.php
<?php
/* Authenticate user */
include("../db/dbconnect.php");
} else {
$username=$_REQUEST['username'];
WHERE username='$username'
";
$result=mysqli_query($conn , $query);
if($result==TRUE) {
} else {
?>
profile.php
<?php
include("../include/url_users.php");
if(!isset($_REQUEST['user'])) {
header('Location:../index.php');
} else {
$user=$_REQUEST['user'];
$query="SELECT *
FROM users
WHERE username='$user'
";
$result=mysqli_query($conn , $query );
if($result) {
if(mysqli_num_rows($result)==1) {
while($row=mysqli_fetch_assoc($result)) {
if($row['usertype']=='admin') {
header("location:admin.php");
include("../include/frame_profile_detail.php");
}}
} else {
echo "failed";
}/*
$query="SELECT *
";
$result=mysqli_query($conn , $query);
if($result) {
if(mysqli_num_rows($result) > 0 ) {
while($post=mysqli_fetch_assoc($result)) {
echo "<br>";
print_r($post);
}}
} else {
} */
?>
login.php
<?php
include("../include/url_users.php");
if(isset($_POST['submit'])) {
$username=$_POST['username'];
$password=$_POST['password'];
$result=mysqli_query($conn , $query);
//$rows=1;
/* query failed */
if($result==FALSE) {
header("location:login.php");
if(mysqli_num_rows($result) == 1) {
$_SESSION['username']=$username;
$_SESSION['password']=$password;
/* user type */
$detail=mysqli_fetch_assoc($result);
$_SESSION['usertype']=$detail['usertype'];
} else {
echo "
<span class=\"sr-only\">Error:</span>
</div>
";
}} else {
if(!isset($_SESSION['username'])) {
echo "
<span class=\"sr-only\">Error:</span>
Login Again
</div>
";
} else {
header("location:../index.php");
}}
?>
logout.php
<?php
include("../include/url_users.php");
session_start();
session_destroy();
//header("location:../index.php");
?>
posts.php
<?php
include("../include/url_posts.php");
include_once("../include/algos.php");
?>
<?php
$result=mysqli_query($conn , $query);
if(mysqli_num_rows($result) > 0) {
while($post=mysqli_fetch_assoc($result)) {
$id=$post['postID'];
$title=$post['postTitle'];
$desc=$post['postDesc'];
$tags=$post['postTag'];
$author=$post['postAuthor'];
$time=$post['postTime'];
$views=showViews($id,$author);
include("../include/frame_post.php");
?>
update.php
<?php
include("../include/url_posts.php");
if(!isset($_REQUEST['id'])) {
header("posts.php");
if(!isset($_POST['submit'])) {
include("../db/dbconnect.php");
$id=$_REQUEST['id'];
$result=mysqli_query($conn , $query);
if(mysqli_num_rows($result) > 0) {
$post=mysqli_fetch_assoc($result);
header("location:post.php?id=".$post['postID']);
$id=$post['postID'];
$desc=$post['postDesc'];
$title=$post['postTitle'];
$tags=$post['postTag'];
$author=$post['postAuthor'];
include("../include/frame_update.php");
} else {
}}
/* Update query */
else {
include("../db/dbconnect.php");
echo "hello";
$id=$_REQUEST['id'];
$desc=$_POST['postDesc'];
$title=$_POST['postTitle'];
$tags=$_POST['postTag'];
$query="UPDATE posts
WHERE postID='$id';
";
$result=mysqli_query($conn , $query);
if($result) {
header("location:post.php?id=".$id);
} else {
header("location:update.php?id='$id' ");
}}
?>
newpost.php
<?php
include("../include/url_posts.php");
if(!isset($_SESSION['username']))
header("location:../users/login.php");
if(isset($_POST['submit'])) {
$postTitle=$_POST['postTitle'];
$postDesc=$_POST['postDesc'];
$postTag=$_POST['postTag'];
$postAuthor=$_SESSION['username'];
include("../db/dbconnect.php");
mysqli_query($conn , $query);
header("location:posts.php");
/* * * * * POST Form * * * * */
else {
/*
echo "
</form>
";*/
include("../include/frame_newpost.php");
?>
newpost.php
<?php
include("../include/url_posts.php");
if(!isset($_SESSION['username']))
header("location:../users/login.php");
if(isset($_POST['submit'])) {
$postTitle=$_POST['postTitle'];
$postDesc=$_POST['postDesc'];
$postTag=$_POST['postTag'];
$postAuthor=$_SESSION['username'];
include("../db/dbconnect.php");
mysqli_query($conn , $query);
/* * * * * POST Form * * * * */
else {
/*
echo "
</form>
";*/
include("../include/frame_newpost.php");
?>
deletepost.php
<?php
/* Authenticate user */
include("../db/dbconnect.php");
/* Redirect if postid is not set */
if(!isset($_REQUEST['postid'])) {
header("location:post.php?id=".$id);
} else {
$postid=$_REQUEST['postid'];
WHERE postID='$postid'
";
$result=mysqli_query($conn , $query);
WHERE postID='$postid'
";
$result=mysqli_query($conn , $query);
WHERE postID='$postid'
";
$result=mysqli_query($conn , $query);
if($result==TRUE) {
header("location:posts.php");
} else {
?>
comments.php
<?php
$result=mysqli_query($conn , $query);
if($result) {
echo "
<div class='panel-footer'>
Comments
</div>
";
if(mysqli_num_rows($result) > 0) {
while($comment=mysqli_fetch_assoc($result)) {
include("../include/frame_comment.php");
} else {
?>
5.3 Testing approaches
Software testing is an integral part of software engineering where the purpose of the introduction
of this concept was to validate the build of the proposed software and verify its working
according to the software requirement specification (SRS).
SRS describes the specifications of the software, it is expected to work, and its needs during
development. This concept of software testing also ensures the quality of the software being
developed. The main reason for which software testing was introduced, is because it gives the
quality assurance of the proposed software before the final result is published.
Unit Testing is important because software developers sometimes try saving time doing minimal
unit testing and this is myth because inappropriate unit testing leads to high cost defect fixing
during System Testing, Integration Testing and even Beta Testing after application is built. If
proper unit testing is done in early development, then it saves time and money in the end. Unit
testing is performed on each module of the website that is login page, register page, home page,
post page, services (contact us) page, contact page and about page.
Integration testing is known as the second level of the software testing process, following unit
testing. Integration testing involves checking individual components or units of a software
project to expose defects and problems to verify that they work together as designed.
In integration testing all the modules are combined together and executed. This helps to
understand if the all the modules work accordingly and is error free and runs in the required
sequence i.e., as the user logs into the account the home page of the website opens which
consists of the links for the different webpages of the website. The user can select any of the
page, when a particular page is selected the website takes the user to that particular web page i.e.,
when the ‘+ (new post)’ page is selected by the user the website opens the add new post page of
the website where the user can create a new blog post and upload it on the website.
Beta testing is one of the types of User acceptance testing. The main goal of user acceptance
testing is to check whether the developed software product fulfils the user requirements. Beta
testing is performed in order to access the product by exposing it to real end users. After that, the
feedback is taken from the users and the defects are fixed. It helps the software product to
provide better user experience. Beta Testing is one of the Acceptance Testing types, which adds
value to the product as the end-user (intended real user) validates the product for functionality,
usability, reliability, and compatibility. It is a test conducted to determine if the requirements of a
specification are met, It may involve chemical tests, physical tests, or performance tests. Beta
testing is basically done by the user or customer although other stakeholders may be involved as
well.
The goal of a Beta testing is to establish confidence in the system. Beta testing is most often
focused on a validation type testing. Beta testing may occur at more than just a single 113 level.
It is the last phase of the software testing process. Actual software users test the software to make
sure it can handle required tasks in real-world scenarios, according to specifications. It is also
known as Application testing or end user testing.
5.4 Modification and Improvements
The web application needed a bit of modification to reach the needs of the usual users and satisfy
their basic needs.
• The admin needs to accept and approve every post and every user request to join
the server and post the desired blogs.
• The admin can delete any post or user at any time it he/she posted the
inappropriate information or hate speech.
• The user can edit the uploaded post at any time and update it again.
• The views of every post can be seen by everyone.
• There are many modification while adding the new posts features like source,
save, print, search, find and replace, add image using URL, emoji, remove format,
Find and Replace etc.
Chapter 6
Test
Case ID Test Case Description Test Steps Expected Results Pass/Fail
1. Login as admin. 2.
Click the + button. 3.
Enter the blog details The system should
such as title, description, update the blog details
Create a new post as and tags. 4. Click the and display the blog on
TC008 admin. Save button. the top of the all blogs. Successful
1. Login as admin. 2.
Delete every blog u want
Delete an existing to be deleted from the The system should
TC009 post as admin posts section. delete the blog. Successful
1. Login as a user. 2.
Click the + button for an
available exam. 3. Enter The system should
the blog details such as update the blog details
title, description, and and display the blog on
Create a new post as tags. 4. Click the Save the post window of the
TC010 user. button. admin. Successful
Home page: -
Sign-in or Login page which allows the user and admin to login to access the website: -
Sign-up(register) page
User profile: -
Creating a new post as a user: -
Conclusion
7.1 Conclusion
The blog web application build with the XAMPP server is an easy to use and basic website that
serves as platform for users to make and publish blogs to the world and get their opinion on it
and administrators to manage and verify those blogs and users. The combination of technology
using XAMPP that includes APACHE, MySQL that has allowed the development of the high-
performance web application that is scalable, flexible, and simple to maintain.
User registration and logins, creating of new blog post and editing, blog-surfing, comments and
administration are all included in the project. Password hashing ensures that the user is safe and
protected from unauthorised access.
User will enter all the information they want to share as a post and post it. After the admin
accepts the post request the information in the post will be saved in the database according to the
autogenerated id. When the request is accepted by the admin the post will be show in all post tab
and the other users can view and comments on those posts.
To ensure the application's functionality, reliability, and performance, the project employs a
variety of testing methods, including unit testing, integration testing, and Beta testing. The use of
the XAMPP IDE improves the efficiency and productivity of the programming process even
further. The project's efficient code, extensive testing, and strong security measures ensure that it
is a trustworthy and useful tool for its users.
7.2 Limitation of the system
Although I have put my best efforts to make the software flexible, easy to operate but limitations
cannot be ruled out even by me. Though the software presents a broad range of options to its
users some intricate options could not covered into it; partly because of logistic and partly due to
lack of sophistication. Paucity of time was also major constraint; thus, it was not possible to
make the software fool proof and dynamic. Lack of time also compelled me to ignore so much
part such as storing result of the post.
Considerable efforts have made the software to operate even for the people not related to the
fields of computers but it is acknowledged that a layman may find it a bit problematic.
• More features are needed for the website such as achieving the post the user doesn’t want
to share for a while.
• The testing should be done in more effective manner.
• Website should be mobile-friendly.
• Website should be eye-catchy.
• User interface needs to be improved.
• Forgot password feature.
• Offline reports of blogs.
• A blog profile will be private or open as per user requirement.
• The system should provide the profile picture or the avatar feature for the users so that it
makes it more attractive.
• The system should provide the archive feature for the user.
• We can add printer in future.
• We will host the platform on online server to make it more accessible to the world.
• Implement the backup mechanism for taking the backup of code and database in regular
interface of time.
• Sitemap can be created.
References & Bibliography
Website Used
• https://github.com
• https://www.geeksforgeeks.org/
• https://www.w3schools.com/
• https://www.google.com/
• https://www.javatpoint.com
• https://www.youtube.com
• https://www.wikipedia.com
• https://www.researchgate.com
• http://kamarajcollege.ac.in/Department/Computer%20Science/II%20Year/007%20Skill%
20Based%20I%20Core%20-
%20Programming%20with%20PHP%20&%20MYSQL%20-%20III%20Sem.pdf
• https://www.codewithharry.com/
YouTube channels:
@codewithHarry
@Jake wright