Mahesh BC A Final Defence
Mahesh BC A Final Defence
A PROJECT REPORT ON
Submitted to
Department of ComputerApplication
Ratna Rajya Laxmi Campus,
Pradarshani Marg, Kathmandu
Submitted by:
Lauv Shahi (6-2-40-36-2022)
Mahesh Chaulagain (6-2-40-35-2022)
Supervisor’s Recommendation
I hereby recommend that this project prepared under my supervision by LAUV SHAHI
and MAHESH CHAULAGAIN entitled “MINI BLOGGING SYSTEM” in partial
fulfillment of the requirements for the degree of Bachelor of Computer Application is
recommended for the final evaluation.
………………………..
SIGNATURE
Bipin Timalsina
Supervisor
Tribhuvan University
Faculty of Humanities and Social Sciences
Ratna Rajya Laxmi Campus
LETTER OF APPROVAL
This is to certify that this project prepared by LAUV SHAHI and MAHESH
CHAULAGAIN entitled “MINI BLOGGING SYSTEM” in partial fulfillment of the
requirements for the degree of Bachelor in Computer Application has been evaluated.
In our opinion it is satisfactory in scope and quality as a project for the required degree.
…………………………… ………………………………
Mr. Bipin Timalsina Mr. Ananda Kc
Supervisor Director
Kathmandu Pradarshani Marg, Kathmandu
……………………………... ……………………………….
Internal Examiner External Examiner
ACKNOWLEDGEMENT
We are very grateful to the department of computer application, Ratna Rajya Laxmi
Campus for providing us with an opportunity to work on a major project as part of our
fourth semester project. We are delighted to express our deep sense of gratitude and
indebtedness to our learned supervisor Mr. Bipin Timalsina for his invaluable guidance,
encouragement and even monitoring of spare time despite her busy schedule for project
progress reviews.
Our special thanks go to our colleagues and everyone who directly and indirectly
extended their hands in making this project success
Lauv Shahi
Mahesh Chaulagain
ABSTRACT
This project presents a mini blogging application designed to provide a user-friendly
platform for sharing thoughts, engaging with others, and maintaining community
standards. The application allows users to create an account, publish blogs, and interact
with content through likes and comments. Each user has the ability to express their ideas
by posting blogs, while other users can engage by liking and commenting on these posts,
promoting an interactive and dynamic environment.
To ensure the platform remains a safe and respectful space, the application includes
reporting features. If a user encounters inappropriate or offensive content, they can
submit a report for review. This feature supports maintaining community guidelines and
helps in moderating user-generated content effectively.
LIST OF FIGURES....………………………………………………………………….I
LIST OF TABLES……………………………………………………………………..II
LIST OF ABBREVIATION………………………………………………………….III
Chapter 1: Introduction………………………………………………………………..1
1.1Introduction………………………………………………………………………1
1.2Problem Statement……………………………………………………………….1
1.3Objectives………………………………………………………………………...2
1.4Scopes……………………………………………………………………………..2
1.5Report Organization……………………………………………………………..2
2.1Background Study……………………………………………………………….3
2.2Literature Review………………………………………………………………..3
3.1System Analysis…………………………………………………………………..5
3.1.1Requirement Analysis……………………………………………………… 5
3.1.2Feasibility Analysis…………………………………………………………..7
3.3System Design…………………………………………………………………...11
3.3.1Architectural Design……………………………………………………….12
3.3.3Interface Design…………………………………………………………….14
4.2Testing…………………………………………………………………………...19
5.2Conclusion………………………………………………………………………23
5.3Limitations………………………………………………………………………23
5.4Future Recommendation……………………………………………………….24
References……………………………………………………………………………...25
APPENDIX……………………………………………………………………………26
LIST OF FIGURES
I
LIST OF TABLES
II
LIST OF ABBREVIATION
III
Chapter 1: Introduction
1.1 Introduction
The Mini Blogging System is a dynamic and user-friendly web-based platform designed
to enable users to share their thoughts, ideas, and insights with a global audience. This
system serves as an interactive space where individuals can publish blog posts on a wide
range of topics, including entertainment, national and international events, personal
experiences, technology, lifestyle, education, and more. By providing an easily accessible
platform, it eliminates the barriers associated with traditional blogging, making it possible
for anyone to create, manage, and share content without the need for technical expertise.
Furthermore, this system bridges the gap between casual social media updates and
professional blogging, offering a balanced medium where users can express themselves
freely while maintaining an organized and structured approach to content creation. It
caters to a diverse audience, from hobbyist writers to those aspiring to build a dedicated
readership. The Mini Blogging System ultimately enhances the accessibility of blogging,
empowering individuals to participate in the global exchange of information and ideas
while preserving their thoughts in a digital landscape for years to come.
The emergence of blogging systems is prompted by several pressing issues in the current
existing systems. Some of them are label below :
1
1.3 Objectives
CHAPTER 2: Includes background study and literature review includes the previous
work related to the systems and similar works were studied and are summarized.
CHAPTER 3: Includes system analysis and design includes different feasibility analysis
and designed system architecture, system flow diagram, data flow diagram.
2
Chapter 2: Background Study and Literature Review
2.1Background Study
Blogs, short for weblogs, are online platforms where individuals or groups can share their
thoughts, opinions, and experiences in a chronological format. Dating back to the late
1990s, early blogging sites such as LiveJournal, Blogger, and WordPress paved the way
for the popularity of blogging [1] as a form of personal expression and information
dissemination. These platforms offered users the ability to publish content easily and
interact with readers through comments and sharing features. Over time, blogging has
evolved into a diverse and dynamic medium, with blogs covering a wide range of topics
including lifestyle, fashion, technology, travel, and more. [2] Today, blogging remains a
popular means of communication and storytelling, with modern platforms offering
advanced features and customization options to cater to the needs and preferences of
bloggers and readers alike. [3]
2.2Literature Review
Blogging systems have undergone significant evolution since their inception in the late
1990s, transforming the landscape of online communication and content creation. Early
platforms like LiveJournal, Blogger, and WordPress paved the way for the popularity of
blogging as a mainstream medium for sharing thoughts, opinions, and experiences [4].
These platforms democratized content creation by offering simple yet effective tools for
publishing and managing blogs.
3
monetization efforts .Moreover, accessibility barriers such as language and device
compatibility may limit the reach and impact of bloggers, particularly in underserved
regions.
4
Chapter 3: System Analysis and Design
3.1System Analysis
It is the phase in which we study the system and identify the components or modules to
achieve the end user’s requirements and to ensure that all the system's modules work
efficiently to meet the end goal. Considering that the system later passed through the
design and development phase we initially identified all the system modules as per the
requirement which helped us on later phases of system development.
3.1.1Requirement Analysis
a. Functional Requirements
Those requirements that the system must perform fall under functional requirements of a
system. Some of the functional requirements of our Pharmacy Inventory Management
System were:
5
Figure 3.1: Use case Diagram of Mini Blogging System
b. Non-Functional Requirements
6
3.1.2Feasibility Analysis
Feasibility analysis measures the system that is to be developed in terms of how
beneficial the software will be for the end user/organization for whom the system is built.
The feasibility study of the system comprises the following:
The system is technically feasible because it’s technically possible to develop a system
that fulfills all specified requirements with available means and medium under a given
deadline.
The system is secure, reliable, maintainable and is built with a user-friendly interface.
The system is simple and straightforward to use, no complex procedure needs to be
followed to operate the system. The system can be operated even if the user is not
computer literate. No additional staff is required to operate the system. So, the system is
operational feasible.
The proposed system is built with the use of open-source tools and technologies like
MYSQL, OOP-Java, hence the system is economically feasible.
During the overall development cycle of the system, followed a proper schedule and in
turn the complete development and testing of the project was done on time before the
given deadline.
7
3.1.3Data Modeling (E-R Diagram)
In the above figure admin, users, comments, blogs, likes are the entities that are
represented by a rectangle. The relationship between the entities is represented by
diamond shape. The attributes of the entities are represented by an oval shape. The
attributes that have underlined below its name are primary keys and their relation
between entities are given.
8
3.1.4Process Modeling (DFD)
Entities that interact with the system are shown in the above context diagram. Admin
entities that interact with the system. In the above context diagram, the project concept is
demonstrated in single process visualization. The user feeds data into the system and
receives the output.
9
Figure 3.5: level 1 (DFD) of Mini Blogging System
Above level 1 DFD shows a more detailed path of data from input to output. Processes
are represented by rectangular shapes with radius. Data stores are represented by
open-ended rectangles. Arrows represent the flow of data and Users and Admin are the
only entities represented with a rectangle. There are in total 11 processes that a user,
admin can perform after logging in to the system. The task that a user can perform varies
based on his/her requirement. There are seven databases to which a request is made when
10
doing a task and corresponding responses are returned from the database.
For the development of the Mini Blogging System, we choose a waterfall model in our
system development life cycle because the size of the project is small, all the
requirements were clearly defined before the development phase which helped us to
develop our system sequentially. Also, the output generated in the waterfall model has
high visibility as seen in the figure below.
3.3System Design
Process of defining the elements of a system such as the architecture, modules, and
components, the different interfaces of those components, and the data that goes through
that system. It is meant to satisfy specific needs and requirements of a business or
organization through the engineering of a coherent and well-running system.
11
3.3.1Architectural Design
The diagrammatic representation of Mini Blogging System is shown in the
architectural design shown below:
In the above figure we can observe that the client and database server layer can interact
with each other with the help of a Logical layer. The main purpose is the client being able
to send requests to the database server. A response from the server goes to the client
through the Logical layer and is displayed on the application. In this model, the client
corresponds to a web application. So a user can easily request to the database and easily
retrieve data as per needed.
12
3.3.2Database Schema Design
The database schema design for Mini Blogging System showing all the relations (users,
blogs, likes, comments, blocks, report_blogs, privacy_policy) along with their respective
attributes and inter- relationship between the relations is shown below:
Database schema is the skeleton structure of the database. The above schema diagram
shows the organization of data in the Mini Blogging system. As shown in the above
figure Blogs has a Users , comments and likes has a Blogs entity. Blocks and
Report_blogs depend on Users and Blogs as they define which entity to delete.
13
3.3.3Interface Design
The interface design (wireframes) has been designed using Figma. It can be used to
represent digital sketches of an idea or concept for an application or website, facilitating
and understanding before any code is written.
Register page:
The interface of the user profile page is shown in the above figure. Here, the user will see
its credentials and the blogs he have written, if he has not written none blogs will be
displayed.
14
Index page:
The interface of the index page is shown in the above figure. Here, the user will be shown
the blogs of the users and some popular blogs on the side.
Blog page:
The interface of the blog page is shown in the above figure. Here, the user will see the
blogs in detail and can see the comment sections and comment on a post.
15
Profile page :
The interface of the user profile page is shown in the above figure. Here, the user will see
its credentials and the blogs he has written, if he has not written none blogs will be
displayed.
16
Chapter 4: Implementation and Testing
4.1Implementation
After studying all the requirements, the system designing was done as a second phase of
the development cycle. In the implementation phase actual code is written according to
the designs made in the previous phase. With the use of many tools and technologies
actual working on a computer code is written. Some of the tools that were used during the
implementation phase are discussed in the preceding chapter.
4.1.1Tools Used
For the development of the final working system various tools have been used in the
front-end and back-end of the system.
a. Front-end
17
ii. Versioning Control
a. GitHub: GitHub is used for collaboration and version control
in a system.
iii. IDE ((Integrated Development Environment)
a. Neovim: IDE that was used during system development.
iv. Architecture Design
For architecture design of the system following tools were used:
a. Lucid Charts: Lucid Charts is used to design use-case
diagrams, context diagrams, flow charts, E-R diagrams, system
architecture and data flow diagrams in the system.
The Register module facilitates the registration process for new users. The
user provides information such as username, email, date of birth etc.
18
4.2Testing
After the development of every system module, testing of a fully developed system was
performed to validate the system behavior and to check if the system meets the system
requirement specification document or not. Before the deployment of the developed
system, it is very necessary to test the system thoroughly. Test cases were generated to
test the system properly.
Some of the testing’s that we did with the system are described below:
Provide user
Credential As
1 credentials Email, first Pass
should be expected,
name, last
name, dob, entered
password etc
Click register
Redirect to As
2 Button Button clicked Pass
profile page expected,
19
b. Add Blog Table
Table 4.2:Test case for User Create Blog Module
As Pass
Navigate to Redirect to Expected,
add blog login page
Navigate to add blog
5 page without page
authenticated
20
c. User Login Table
Table 4.3:Test case for User Login Module
21
e. Change User Details Table
Table 4.5: Test case for Change User Details Module
22
Chapter 5: Conclusion and Future Recommendations
5.1Lesson Learnt / Outcome
In creating the online mini blogging system, we’ve learned some important lessons. First,
listening to users and making changes based on their feedback is critical for improving
the platform. Second, ensuring accessibility for all users, including those with disabilities,
is essential. THird, having effective tools for content moderation helps maintain a positive
community atmosphere. Lastly, staying adaptable and keeping up with trends is key for
the platform’s success in a fast-changing digital world.
5.2Conclusion
In conclusion, the development of an online blogging system represents a significant
opportunity to harness the power of digital technology for creative expression,
information sharing, and community building. By providing users with user-friendly
platforms to publish content, interact with audiences, and explore diverse topics, online
blogging systems empower individuals and organizations to amplify their voices and
connect with others on a global scale. While challenges such as content moderation,
monetization, and accessibility remain, the evolving landscape of blogging continues to
offer exciting possibilities for innovation and collaboration. As we move forward, it is
essential to prioritize user experience, inclusivity, and ethical practices to ensure that
online blogging systems continue to thrive as vibrant and valuable tools for
communication and engagement in the digital age.
5.3Limitations
Although we both did our best to create the best Blogging system using all the knowledge
and skills we had gathered over the period, due to time constraints we had to drop some
of the ideas that we wanted to be included in the system. We are still working on the
system and our plan is to include all the ideas in the system to remove these limitations of
the system and make the system more efficient.
23
5.4Future Recommendation
Many features and functionalities can be added to the system such as portability,
usability, enhanced performance and scalability.As the Project comes up with some
limitations which can be improved in future and further more advancement can also be
made. The different features that can be added are as follows:
● Responsive GUI
● Private messaging among the users should be added
● Add special characters like Italic, Bold which make blog interactive
24
REFERENCES
[1] A. Johnson, "How to Build Your Own Blogging Platform," Tech Blogging Insights,
Blogger, Apr. 22, 2023. [Online]. Available:
https://techblogginginsights.blogger.com/build-your-own-blogging-platform. [Accessed:
Sept. 4, 2024].
[2] H. .Zou and Ken Hyland, "www.aelfe.org," 2022 [Online]. Available:
http://www.aelfe.org/documents/39_11_IBERICA.pdf. [Accessed Sept. 19, 2024].
[3] A. Bel, “Jones David. Blogging The super simple guide on how to Make Blogging in
2016 Stop working and start blogging,” Aek Bel - Academia.edu, Nov. 2019, [Online].
Available:
https://www.academia.edu/40828003/Jones_David_Blogging_The_Super_Simple_Guide
_On_How_To_Make_Blogging_in_2016_Stop_Working_and_Start_Blogging?sm=b
[Accessed : Sept. 16, 2024]
[4] R. Blood, 7 september 2000. [Online]. Available:
http://www.rebeccablood.net/essays/weblog_history.html. [Accessed Sept 2 2024].
25
APPENDICES
Figure:Register Page
This is a register page where users make an account to make a profile and create
blogs.He/ she provides the credentials like name, dob, email , password etc.
26
Figure : Blog Page
.
Blog page where user can read and interact with blog through like and comments
In this profile page the user info along with his/her blogs are displayed
27