Faculty of Computing
Department of Software Engineering
FINAL YEAR PROJECT
REPORT
TOPIC:
Fundraising Campaign
GROUP MEMBERS
Umm-e-Ammara
4055-FBAS/BSSE/F20
(umm.bsse4055@[Link])
Siddiqa Rashid
4069-FBAS/BSSE/F20
(siddiqa.bsse4069@[Link])
Supervisor
Ma’am Saba Tamouri
SPRING-2023
27 November 2023
Fundraising Campaign Report
CONTENTS
CHAPTER 1: INTRODUCTION ……………………………………………………………….. 6
1.1 Introduction of Project ………………………………………………………………………….. 6
1.2 Purpose …………...…………………………………………………………………………….. 6
1.3 Project Motivation ..…………………………………………………………………………….. 6
1.4 Scope ………..………………………………………………………………………………….. 7
1.4.1 Modules ….. ………………………………………………………………………………….. 8
CHAPTER 2: PROBLEM ANALYSIS …………………………………………………………... 10
2.1 Existing System …..…………………………………………………………………………….. 10
2.2 Drawbacks of Existing System ...………………………………………………………………... 10
2.2.1 Slow Processing Time .……….……………………………………………………………….. 10
2.2.2 High Transaction Costs ……………………………………………………………………….. 10
2.2.3 Limited Accessibility ...……………………………………………………………………….. 11
2.2.4 Geographic Restrictions ...…………………………………………………………………….. 11
2.2.5 Security Concerns …………………………………………………………………………….. 11
2.2.6 Lack of Transparency ……………………………………………………………………….... 11
2.3 Proposed System ……………………………………………………………………………….. 12
2.3.1 Security through Cryptography …..….……………………………………………………….. 12
2.3.2 Decentralization ……….……………………………………………………………………… 12
2.3.3 Smart Contracts ………………………………………………………………………………. 12
2.3.4 Transparency …………………………………………………………………………………. 12
2.3.5 Reduced Transaction Costs …………………………………………………………………... 13
2.3.6 Global Accessibility ………………………………………………………………………….. 13
2.4 Stakeholders ……………………………………………………………………………………. 13
2
Fundraising Campaign Report
2.5 Actor Goal List ………………………………………………………………………………….. 13
CHAPTER 3: SYSTEM ANALYSIS …..………………………………………………………… 16
3.1 Problem Overview …………………………………………………………………………….... 16
3.2 Functional Requirements ……………………………………………………………………….. 17
3.2.1 User Registration and Authentication ……………………………………………………….... 17
3.2.2 User Profile Management …………………………………………………………………….. 17
3.2.3 Campaign Creation …………………………………………………………………………… 17
3.2.4 Donation Processing ………………………………………………………………………….. 17
3.2.5 Campaign Visibility …………………………………………………………………………... 17
3.2.6 Donor Visibility ……………………………………………………………………………….. 18
3.2.7 Campaign Templates …………………………………………………………………………. 18
3.2.8 Campaign Sharing ……………………………………………………………………………. 18
3.2.9 Notification ……………………………………………………………………………….…... 18
3.2.10 Campaign Management ………………………………………………………………..….… 18
3.2.11 Admin Features ……………………………..………………….……………………………. 19
3.2.12 User Feedback …….……………….…….……….…….…….…………………………….... 19
3.2.13 Privacy Controls …………………………………………………………………….……..... 19
3.2.14 Profile Customization ……………………………………………………………………….. 19
3.2.15 Educational Resources …..….…………………………………………..…………….….….. 19
3.2.16 Search and Filtering ………..………………………………………………………………... 19
3.2.17 User Support …………………………………………………………………………..…….. 19
3.2.18 Legal Compliance ……………………………………….……………………………….….. 20
3.3 Non Functional Requirements .………………………………………………….….…………... 20
3.3.1 Performance …………………………………………………………………….…………….. 20
3.3.2 Availability …………………………..………………….….…….……………..…………….. 20
3
Fundraising Campaign Report
3.3.3 Security …………………………….…………….……..…………….……….…….….…….. 20
3.3.4 Blockchain Security …………………………………………………………….…………….. 21
3.3.5 User Experience (UX) …………………………………………………………….………….. 21
3.3.6 Maintainability …………………………….………………….…….….….……..…………..... 21
3.3.7 Reliability ………………………………………………….…….……………………………. 21
3.3.8 Monitoring and Logging ……………………………………………………………………… 21
3.3.9 Documentation ..………………………………………………………………..….…….……. 22
3.3.10 User Education …………………………………….……….………….……….…..…..….… 22
3.3.11 Privacy …………………………………………………….……..……….…..………..….… 22
3.4 Use Case Diagram ………………………………………………….….………….……………. 23
3.5 Fully Dressed Use Cases …………………………………………….…………….……….…... 24
CHAPTER 4: SYSTEM DESIGN………….…..…..….…….…..……..……….…………..….… 51
4.1 Class Diagram ………………………………………………………………………………….. 51
4.2 Interaction Diagram (Sequence)..……………………………………………………………….. 52
4.3 Entity Relationship Diagram..………………………………………………………………...... 68
References …………………………………………………….……..……….…..………..….……. 69
4
Fundraising Campaign Report
List of Figures:
Figure 1. Use Case Model ………………………………………………………………………….. 23
Figure 2. Class Diagram…………………………………………………………………………….. 51
Figure 3. Signup…………………………………………………………….……………………….. 52
Figure 4. Login…………………………………………………………………...………………….. 53
Figure 5. Start Campaign …………………………………………………...……………………….. 54
Figure 6. Donate Money………………………………………………………….………………….. 55
Figure 7. Manage Profile…………………………………………………………………………….. 56
Figure 8. Search Campaign………………………………………………………………………….. 57
Figure 9. Cancel Campaign………………………………………………………………………….. 58
Figure 10. Select Template…………………………………………………………….…………….. 59
Figure 11. Share on Social media………………………………………………………..….……….. 60
Figure 12. Chatbot…………………………………………………………………..……………….. 61
Figure 13. Review and Rating……………………………………………………………………….. 62
Figure 14. Give Feedback…………………………………………………………...……………….. 63
Figure 15. Approve Campaign……………………………………………………………………….. 64
Figure 16. Disapprove Campaign………………………………………………………...………….. 65
Figure 17. Manage Complaints…………………………………………………………...………….. 66
Figure 18. Get Notifications………………………………………………………………...……….. 67
Figure 19. View Donaters………………………………………………………………………...….. 67
Figure 20. Entity Relationship Diagram (ERD)…………………………………….……………….. 68
5
Fundraising Campaign Report
CHAPTER 1: INTRODUCTION
1.1 Introduction of Project:
Fundraising Community is a platform where individuals can independently raise funds online
securely. Our platform utilizes block chain technology for a safer and more trustworthy fund
transfer system. With a user-friendly environment, you can easily run campaigns and donate
with a simple click. Using a crypto wallet, you can directly contribute through cryptocurrency,
bypassing third-party banks. Our Aim is to say goodbye to traditional methods to build a safer,
globally accessible and efficient system.
1.2 Purpose:
Our project aims to develop a web-based fundraising platform, utilizing blockchain technology
to revolutionize digital fundraising. In contrast to traditional platforms relying on conventional
money transfer methods, our solution focuses on enhancing security, transparency, and
efficiency through the strategic integration of blockchain.
1.3 Project Motivation:
In today's digital age, fundraising plays a pivotal role in enabling individuals, organizations,
and causes to realize their goals and create positive impacts on society. However, traditional
fundraising platforms often encounter challenges related to security, transparency, and
efficiency. Conventional methods of transferring funds may be prone to fraudulent activities,
lack transparency in tracking donations, and entail lengthy processing times.
Recognizing these shortcomings, our project seeks to introduce a transformative approach to
digital fundraising by harnessing the power of blockchain technology. Blockchain, renowned
for its decentralized and immutable nature, offers unparalleled advantages in terms of security,
transparency, and efficiency. By leveraging blockchain technology, we aim to revolutionize the
landscape of digital fundraising, empowering both fundraisers and donors with enhanced trust
and reliability.
6
Fundraising Campaign Report
The motivation behind our project is multi-faceted:
Enhanced Security: Blockchain's cryptographic techniques and decentralized
architecture ensure that transactions are secure and tamper-proof. By utilizing
blockchain, our platform mitigates the risk of fraudulent activities, protecting both
fundraisers and donors from potential threats.
Transparency and Accountability: Transparency is paramount in fundraising to build
trust among donors and ensure that funds are allocated appropriately. Blockchain's
transparent ledger system enables real-time tracking of donations, providing donors
with full visibility into how their contributions are utilized. This fosters accountability
and strengthens the bond of trust between fundraisers and donors.
Efficiency and Cost Reduction: Traditional fundraising platforms often involve
intermediaries and complex processes, leading to inefficiencies and high transaction
costs. By integrating blockchain technology, our platform streamlines the fundraising
process, automating tasks such as verification and disbursement of funds. This not only
enhances efficiency but also reduces operational costs, enabling more resources to be
directed towards the cause itself.
Global Accessibility: Blockchain technology transcends geographical boundaries,
offering global accessibility to fundraisers and donors alike. Our platform eliminates
barriers associated with traditional banking systems, allowing individuals from across
the globe to participate in fundraising efforts seamlessly.
Our project is motivated by the vision of redefining digital fundraising through the strategic
integration of blockchain technology. Through innovation and a commitment to social impact,
we aspire to bring positive change and create a more transparent ecosystem for fundraising on
a global scale.
1.4 Scope:
To build a reliable and trustworthy community, our platform is designed to enhance security
and credibility by eliminating the involvement of third parties. To design a system that not only
7
Fundraising Campaign Report
is user friendly but also empower the people of community to engage and help in making
society a better place.
1.4.1 Modules:
The system involves two modules:
User (Run-campaign and Donate)
Administrator (Approve campaign)
In terms of scope, following are the features with respect to each module:
User:
● Signup
● Login
● ChatBot
● Donate money
● Manage Profile
● Select Template
● View Campaign
● Create Campaign
● Cancel Campaign
● Search Campaign
● Provide Feedback
● Providing Guidelines
● Real Time Notification
● Social media Integration
● View donators of Campaign
● Review and Rate Campaign
● View campaigns running on other platforms
8
Fundraising Campaign Report
Administrator:
● Signup
● Login
● Manage Profile
● Provide Feedback
● Manage Complains
● Manage Database
● Approve/Disapprove Campaign
9
Fundraising Campaign Report
CHAPTER 2: PROBLEM ANALYSIS
2.1 Existing System:
Existing fundraising platforms rely on traditional money transfer methods which can expose
users to various risks. These risks include:
Information Theft: When users provide sensitive financial information to
traditional fundraising platforms, such as credit card details or bank account numbers,
they are vulnerable to potential data breaches and information theft. Hackers may target
these platforms to steal personal and financial data, leading to identity theft or
fraudulent transactions.
System Disruption: Centralized fundraising platforms are susceptible to system
disruptions caused by technical failures or cyberattacks. A single point of failure within
the platform's infrastructure can disrupt the entire fundraising process, leading to delays
in donations or even loss of funds. Moreover, downtime or service interruptions can
undermine donor trust and impede fundraising efforts.
2.2 Drawbacks of Existing System:
Traditional methods of money transfer in fundraising platforms can pose several challenges
and problems. Here are some common issues associated with traditional fundraising methods:
2.2.1 Slow Processing Time:
Traditional methods such as checks or bank transfers can take a significant amount of
time to process. This delay can be inconvenient for both donors and fundraisers,
especially in urgent situations.
10
Fundraising Campaign Report
2.2.2 High Transaction Costs:
Transaction fees associated with traditional methods can be relatively high. For
example, banks may charge fees for wire transfers, and check processing can also incur
costs. These fees reduce the overall amount of money that reaches the intended cause.
2.2.3 Limited Accessibility:
Traditional methods may require physical presence or access to specific banking
services, limiting the accessibility of the fundraising platform. This can be a barrier for
potential donors who may not have easy access to banks or financial institutions.
2.2.4 Geographic Restrictions:
Traditional methods may have limitations when it comes to international transactions.
Cross-border transfers can be more complicated, expensive, and time-consuming,
making it challenging for global fundraising efforts.
2.2.5 Security Concerns:
Paper-based transactions, such as checks, are susceptible to loss, theft, or forgery. This
poses a risk to both the donor and the fundraising platform's integrity.
2.2.6 Lack of Transparency:
Traditional methods may lack transparency in terms of tracking and reporting
transactions. This can create challenges in providing donors with real-time updates on
fundraising progress.
11
Fundraising Campaign Report
2.3 Proposed System:
To address the challenges associated with traditional methods, our objective is to establish a
system that surpasses existing ones in terms of security, transparency, and efficiency.
Blockchain technology plays a vital role in achieving these goals in the following manner:
2.3.1 Security through Cryptography:
Blockchain relies on cryptographic methods to secure transactions. Every transaction
will be securely recorded within a block, and these blocks will be interconnected
through cryptographic hashes. This process guarantees the integrity and security of the
data.
2.3.2 Decentralization:
Unlike traditional fundraising platforms that operate on centralized servers, which are
susceptible to hacking, blockchain operates in a decentralized manner. It will distribute
data across a network of nodes, eliminating a single point of failure and bolstering
overall security.
2.3.3 Smart Contracts:
Smart contracts are self-executing agreements with terms directly coded into the
system. They will automate and enforce contract rules, reducing reliance on
intermediaries.
2.3.4 Transparency:
Blockchain establishes a transparent and immutable ledger. All network participants
will access the same information, and once a block is added to the chain, it becomes
unalterable. This transparency fosters trust among donors, enabling them to verify fund
utilization and track project progress.
12
Fundraising Campaign Report
2.3.5 Reduced Transaction Costs:
Unlike traditional methods involving intermediaries with associated fees, blockchain
transactions can help in cutting out these intermediaries. This reduction in transaction
costs ensures that a larger portion of funds reaches the intended recipients.
2.3.6 Global Accessibility:
Operating on a global scale, blockchain facilitates fundraising without the constraints
imposed by traditional banking systems. This broadens fundraising opportunities to a
global audience and streamlines cross-border transactions without the need for currency
conversions.
2.4 Stakeholders:
● Project Team
● University Faculty and Advisors (Supervisor & Panel Members)
● User, Administrator & Authenticated User ( Donaters & Fundraisers)
● Blockchain Expert
2.5 Actor Goal List:
Actor Goal
● Signup
● ChatBot Integration
● View Campaign
● Search Campaign
User
● Providing Guidelines
● View campaigns running on other
platforms
13
Fundraising Campaign Report
● Login
● ChatBot Integration
● Donate money
● Manage Profile
● Select Template
● View Campaign
● Create Campaign
● Cancel Campaign
● Search Campaign
Authenticated User ● Provide Feedback
● Providing Guidelines
● Real Time Notification
● Social media Integration
● View donors of Campaign
● Review and Rate Campaign
● View campaigns running on other
platforms
● Signup
● Login
● Manage Profile
Administrator ● Provide Feedback
● Manage Complains
14
Fundraising Campaign Report
● Manage Database
Administrator ● Approve/Disapprove Campaign
15
Fundraising Campaign Report
CHAPTER 3: SYSTEM ANALYSIS
3.1 Problem Overview:
The shortcomings of traditional fundraising methods encompass a range of challenges that are
mentioned below. Addressing these issues is essential to enhance the effectiveness and
credibility of fundraising efforts, ultimately maximizing the impact of charitable initiatives and
social causes.
Operational Inefficiencies: Traditional fundraising often involves manual
processes, paperwork, and intermediary institutions such as banks or payment
processors. These processes can be time-consuming and prone to errors, leading to
delays in fund disbursement and inefficient use of resources.
Financial Obstacles: Conventional fundraising methods may entail high
transaction fees associated with banking or payment processing services. These fees
can eat into the funds raised, reducing the overall impact of the fundraising efforts.
Additionally, fundraising campaigns may struggle to reach a wide audience due to
limited payment options or geographical constraints.
Security Risks: Traditional fundraising platforms are susceptible to security
breaches, fraud, and misuse of funds. Centralized systems can be targeted by hackers,
leading to data breaches or theft of sensitive information. Moreover, the lack of
transparency in tracking donations can raise concerns among donors regarding the
integrity of the fundraising process.
Limited Accessibility: Geographical barriers and regulatory constraints can hinder
the accessibility of traditional fundraising platforms. Certain regions may have limited
access to banking services or face restrictions on cross-border transactions, limiting the
potential donor pool and hindering fundraising efforts.
Lack of Transparency: Transparency is crucial in fundraising to build trust among
donors and ensure accountability in fund allocation. However, traditional methods often
lack transparency in tracking donations and monitoring how funds are utilized. This
16
Fundraising Campaign Report
opacity can undermine donor confidence and hinder the success of fundraising
campaigns.
3.2 Functional Requirements:
3.2.1 User Registration and Authentication:
● Users should be able to create accounts securely.
● Implement email verification or two-factor authentication for added security.
3.2.2 User Profile Management:
● Users should be able create and manage their profiles, including personal
information, campaign history, and contact details.
3.2.3 Campaign Creation:
● Users should be able to create new fundraising campaigns with details such as
title, description, fundraising goal, and campaign end date.
● Option to set up a smart contract on the Ethereum blockchain for campaign
funds.
3.2.4 Donation Processing:
● It should provide a secure mechanism for users to donate funds to campaigns,
utilizing Ethereum for transactions.
● It should be able to display real-time updates on campaign funding status.
3.2.5 Campaign Visibility:
● Users should be able to view a list of active campaigns on the platform.
● Each campaign should display relevant details, such as the amount raised,
percentage of goal achieved, and time remaining.
17
Fundraising Campaign Report
3.2.6 Donor Visibility:
● Fundraisers should be able to see a list of donors who have contributed to their
campaigns.
● Donors should be able to choose whether they want to remain anonymous or
have their names publicly displayed.
3.2.7 Campaign Templates:
● Users should be able to select and save campaign templates to expedite the
process of starting new campaigns with predefined settings and content.
3.2.8 Campaign Sharing:
● Users should be able to share their campaigns on social media platforms directly
from the platform.
● Should provide unique campaign URLs for easy sharing.
3.2.9 Notifications:
● Users should be able to receive notifications for important events, such as new
donations, campaign updates, and campaign completion
● It should allow users to customize notification preferences.
3.2.10 Campaign Management:
● Fundraisers should be able to edit, pause, or cancel their campaigns.
● Users should be able to view and manage their ongoing and completed
campaigns.
18
Fundraising Campaign Report
3.2.11 Admin Features:
● Admin should be able to review and approve/disapprove campaigns based on
guidelines.
● Admin should be able to manage user complaints and disputes.
3.2.12 User Feedback:
● Users should be able to leave feedback or comments on campaigns.
● Fundraisers should be able respond to donor comments.
3.2.13 Privacy Controls:
● Users should be able to control the visibility of their profiles and decide whether
donor names are displayed publicly.
3.2.14 Profile Customization:
● Users should be able to customize their profiles with profile pictures and
additional details.
3.2.15 Educational Resources:
● It should provide educational resources on blockchain and cryptocurrency for
users who may not be familiar with the technology.
3.2.16 Search and Filtering:
● Users should be able to search for specific campaigns or filter campaigns based
on categories, popularity, or end date.
3.2.17 User Support:
● It should provide a support system for users to reach out for assistance or report
issues.
19
Fundraising Campaign Report
3.2.18 Legal Compliance:
● It should ensure compliance with legal and regulatory requirements for
fundraising platforms and cryptocurrency transactions.
Regularly updating and maintaining these functional requirements will help ensure the smooth
operation of the fundraising platform, enhance user experience, and foster trust among users.
3.3 Non Functional Requirements:
3.3.1 Performance:
Response Time:
Ensure that the platform responds to user actions within a specified time limit
(e.g., page load times, transaction processing).
Scalability:
The platform should handle increased user and transaction loads efficiently.
3.3.2 Availability:
The system should aim for a high level of availability (e.g., 99.9% uptime) to
ensure users can access the platform reliably.
3.3.3 Security
● All user data and transactions must be secured using encryption.
● Implement robust measures to protect against common web vulnerabilities (e.g.,
SQL injection, Cross-Site Scripting).
● Regular security audits and updates to address emerging threats.
3.3.4 Blockchain Security:
20
Fundraising Campaign Report
● Ensure the security of smart contracts on the Ethereum blockchain.
● Implement mechanisms to protect against potential vulnerabilities in blockchain
network.
3.3.5 User Experience (UX):
● The platform should provide a seamless and user-friendly experience, with
intuitive navigation and responsive design.
● Accessibility standards should be followed to ensure inclusivity.
3.3.6 Maintainability:
● Code should follow industry best practices to facilitate ease of maintenance.
● Regularly update software dependencies and libraries.
3.3.7 Reliability:
● The platform should be reliable, with minimal downtime and quick recovery
from any service interruptions.
● Implement automated backup and recovery mechanisms.
3.3.8 Monitoring and Logging:
● Implement robust monitoring tools to track system performance, user activity,
and security events.
● Maintain detailed logs for auditing and troubleshooting purposes.
3.3.9 Documentation:
21
Fundraising Campaign Report
● Provide comprehensive documentation for users, administrators, and
developers.
● Include user manuals, API documentation, and system architecture
documentation.
3.3.10 User Education:
● Provide educational resources for users about blockchain, cryptocurrency, and
the platform's features.
● Implement tooltips and guidance within the platform to assist users.
3.3.11 Privacy:
● Implementing privacy controls to protect user data and allow users to manage
their privacy settings
● Comply with data protection standards and regulations.
These non-functional requirements are essential to ensure the robustness, security, and
usability of the fundraising platform, enhancing user trust and satisfaction. Regular testing,
monitoring, and updates will contribute to the ongoing success of the platform.
3.4 Use Case Diagram:
22
Fundraising Campaign Report
Figure 1. Use Case Diagram
3.5 Fully Dressed Use cases:
23
Fundraising Campaign Report
3.5.1 Sign Up
ID: UC01
Name: Sign Up
Primary Actor:
● Admin
● Users who want to run campaigns and donators
Scope: Main Function
Level: User goal
Stakeholders & Interests: Users and admin
Pre-Condition: User must have an email account and account on ethereum.
Post-Condition: User’s account should be created on Fundraising Community website
Main Success Scenario:
User System
1. User will click Sign up option 2. System will open Sign up page
3. User will add username email account 4. System will verify credentials from
password and ethereum account and click respective platforms and add users account
sign up to the platform
Alternative Scenario:
24
Fundraising Campaign Report
2a. System doesn’t open the sign up page.
3a. Users add wrong credentials in any or all rows.
4a. System will not allow the user to make an account.
Frequency: High
3.5.2 Login
ID: UC02
25
Fundraising Campaign Report
Name: Login
Primary Actor: Authenticated Users
Scope: Main Function
Level: User goal
Stakeholders & Interests: Authenticated users and admin
Pre-Condition: Users must have an account on the Fundraising Community.
Post-Condition: User will log in to the system.
Main Success Scenario:
User System
1. User will click Login option 2. System will open Login page
3. User will add username email account 4. System will verify credentials and allow
password and ethereum account and click users to log in.
Log In
Alternative Scenario:
2a. System doesn’t open the login page.
3a. Users add wrong credentials in any or all rows.
4a. System will not allow you to open an account.
Frequency: High
26
Fundraising Campaign Report
3.5.3 Start Campaign
ID: UC03
Name: Start campaign
27
Fundraising Campaign Report
Primary Actor: Authenticated users
Scope: Main Function
Level: User goal
Stakeholders & Interests: Authenticated users
Pre-Condition: User must have logged in to their account.
Post-Condition: Campaign will be added to the list for approval.
Main Success Scenario:
User System
1. User will click start campaign option 2. System will open campaign form
3. User will enter target(money), deadline, 4. System will save information. And will
title, story, media, links in respective fields add it to the campaign list.
and submit it
Alternative Scenario:
2a. System doesn’t open a campaign form.
3a. User misses any input field or submits without adding any information.
4a. System will show empty fields and will ask to fill information to all fields.
Frequency: High
28
Fundraising Campaign Report
3.5.4 Donate Money
ID: UC04
Name: Donate money
Primary Actor: Authenticated users
29
Fundraising Campaign Report
Scope: Main Function
Level: User goal
Stakeholders & Interests: Authenticated users
Pre-Condition: User must have logged in to their account.
Post-Condition:
1. Selected money will be deducted from user’s account
2. Amount will be added to the running campaign
Main Success Scenario:
User System
1. User will click donate option 2. System will open a running campaigns
page.
3. User will select campaign 4. System will open that campaign.
5. User will enter amount to donate 6. System verifies if the user has selected
an amount in their account and will add the
amount to the campaign.
7. System will give option to go back
to the home screen
8. User will select that option and go to the
home screen
Alternative Scenario:
30
Fundraising Campaign Report
2a. System doesn’t open a running campaign page.
4a. System doesn’t open a selected campaign.
5a. User enters more than the target amount.
6a. System will only deduct money that is needed.
5b. User enters a targeted amount but there is not enough money in their account.
6b. System will inform users that money is not enough.
Frequency: High
3.5.5 Manage Profile
ID: UC05
Name: Manage profile
Primary Actor: Authenticated users
31
Fundraising Campaign Report
Scope: Sub Function
Level: User goal
Stakeholders & Interests: Authenticated users
Pre-Condition: Users must have an account on the Fundraising Community website.
Post-Condition: Changes should be added to the user’s account
Main Success Scenario:
User System
1. User will click Settings option 2. System will open the settings page.
3. User will select any options from (user 4. System will open a selected category.
name, about, profile image, password)
5. User will make changes in the opened 6. System will save changes.
category and click save option.
Alternative Scenario:
2a. System doesn’t open the settings page.
4a. System doesn’t open the selected category.
5a. User adds the same password.
6a. System will ask the user to enter a different password.
Frequency: Medium
32
Fundraising Campaign Report
3.5.6 Search Campaign
ID: UC06
Name: Search campaign
Primary Actor: Users & Authenticated Users
Scope: Sub Function
33
Fundraising Campaign Report
Level: User goal
Stakeholders & Interests: Users & Authenticated Users
Pre-Condition: Internet should be connected.
Post-Condition: Searched campaign should be shown on the page.
Main Success Scenario:
User System
1. User will click search option 2. System will open a search option and
provide filters to search campaigns.
3. Users will select any filter or can add 4. System will open selected campaigns.
directly names of campaigns or fundraisers
to search campaigns, then search or select
filters or names.
Alternative Scenario:
2a. System doesn’t provide filters to search.
3a. User enters any name that doesn’t exist on the platform.
4a. System will tell the user there is no such campaign with a name.
Frequency: High
34
Fundraising Campaign Report
3.5.7 Cancel Campaign
ID: UC07
Name: Cancel campaign.
Primary Actor: Authenticated User
Scope: Sub Function
Level: User goal
35
Fundraising Campaign Report
Stakeholders & Interests: Authenticated Users
Pre-Condition: User should be the fundraiser of the campaign that is going to be
canceled.
Post-Condition: Campaign should be canceled and removed from campaign page.
Main Success Scenario:
User System
1. User will select cancel campaign option 2. System will confirm from the user if
they really want to cancel the campaign.
3. User will confirm. 4. System will remove it from the records
and page.
Alternative Scenario:
2a. System doesn’t confirm whether users want to cancel the campaign.
4a. System removes it from records but it is still showing on the page.
Frequency: Low
36
Fundraising Campaign Report
3.5.8 Select Template
ID: UC08
Name: Select template
Primary Actor: Users (Fundraisers)
Scope: Sub Function
Level: User goal
37
Fundraising Campaign Report
Stakeholders & Interests: Authenticated User (Fundraisers)
Pre-Condition: Campaign should already be created.
Post-Condition: Template should be added to the campaign.
Main Success Scenario:
User System
1. User will select template option 2. System will open a template page.
3. User will select any template. 4. System will add a selected template to
the campaign.
Alternative Scenario:
2a. System doesn’t open the template page.
4a. System doesn’t add selected template to the campaign.
Frequency: Medium
3.5.9 Share on Social Media
ID: UC09
Name: Share on social media
Primary Actor:
Scope: Sub Function
Level: User goal (Fundraiser)
Stakeholders & Interests: Authenticated Users
38
Fundraising Campaign Report
Pre-Condition: Campaign should already be created.
Post-Condition: Campaign should be shared on other platforms.
Main Success Scenario:
User System
1. User will select share option 2. System will open a share option to share
this on other platforms.
3. User will select any platform (i.e. 4. System will add a selected template to
whatsapp, Instagram, twitter) from provided the campaign.
options.
Alternative Scenario:
2a. System doesn’t open a share option.
4a. System doesn’t share on the platform.
Frequency: High
39
Fundraising Campaign Report
3.5.10 Ask Questions from Chatbot
ID: UC10
Name: Ask questions from chatbot
Primary Actor: User and Authenticated User
Scope: Sub Function
Level: User goal
Stakeholders & Interests: Users & Authenticated Users
40
Fundraising Campaign Report
Pre-Condition: Internet should be connected.
Post-Condition: Chatbot should provide answers and ask users to clear their confusion
from the platform.
Main Success Scenario:
User System
1. User will select chat option 2. System will open a chatbot.
3. User will type questions and enter. 4. Chatbot will answer their question.
Alternative Scenario:
2a. System doesn’t open the Chatbot option.
4a. Chatbot doesn’t answer the question.
Frequency: High
3.5.11 Give Review of Campaign
ID: UC11
Name: Give review of campaign
Primary Actor: Authenticated User
Scope: Sub Function
Level: User goal
Stakeholders & Interests: Users (Fundraisers)
Pre-Condition: Campaign should be completed.
41
Fundraising Campaign Report
Post-Condition: Reviews should be added to the completed campaign.
Main Success Scenario:
User System
1. User will select add review option 2. System will open the text area.
3. User will type their review and 4. System will add their review.
enter.
Alternative Scenario:
2a. System doesn’t open the text area.
4a. System doesn’t add the review.
Frequency: High
3.5.12 Add Feedback
ID: UC12
Name: Add feedback
Primary Actor: Authenticated Users
Scope: Main Function
Level: User goal
Stakeholders & Interests: Users
Pre-Condition: Internet should be connected.
Post-Condition: Reviews should be added to the Website.
42
Fundraising Campaign Report
Main Success Scenario:
User System
1. User will select the Give feedback 2. System will open the text area.
option.
3. User will type their review and 4. System will add their review to the
enter. website.
Alternative Scenario:
2a. System doesn’t open the text area.
4a. System doesn’t add feedback.
Frequency: Low
43
Fundraising Campaign Report
3.5.13 Approve Campaign
ID: UC13
Name: Approve campaign
Primary Actor: Admin
Scope: Main Function
Level: Admin goal
Stakeholders & Interests: Authenticated users
Pre-Condition: User should be logged in from the admin account.
Post-Condition: Campaign should be added to the Website.
Main Success Scenario:
44
Fundraising Campaign Report
User System
1. User will select the campaign and 2. System will add campaign to the
select approve. website.
Alternative Scenario:
2a. System doesn’t add campaign to the system.
Frequency: High
3.5.14 Disapprove Campaign
ID: UC14
Name: Disapprove campaign
Primary Actor: Admin
Scope: Main Function
Level: Admin goal
Stakeholders & Interests: Authenticated users
Pre-Condition: User should be logged in from the admin account.
Post-Condition: User should be informed.
Main Success Scenario:
45
Fundraising Campaign Report
User System
1. User will select campaign and select 2. System will remove the campaign
disapprove. from.
Alternative Scenario:
2a. System doesn’t remove the campaign from the list.
Frequency: Low
3.5.15 Manage Complaints
ID: UC15
Name: Manage complaints
Primary Actor: Admin
Scope: Main Function
Level: Admin goal
Stakeholders & Interests: Authenticated users
Pre-Condition: User should be logged in from the admin account.
Post-Condition: User should be informed.
Main Success Scenario:
User System
46
Fundraising Campaign Report
1. User will select complaints and 2. System will open complaint.
select complaint.
3. User will review and solve then 4. System will inform the user and
select resolved. remove it from the list.
Alternative Scenario:
2a. System doesn’t open complaints.
3a. User solved the problem but didn’t click resolved
4a. System doesn’t inform user
4b. System doesn’t remove the complaint from the list.
Frequency: High
47
Fundraising Campaign Report
3.5.16 Get Notifications
ID: UC16
Name: Get notifications
Primary Actor: Users
Scope: Main Function
Level: Admin goal
Stakeholders & Interests: Authenticated users
Pre-Condition: User should be logged in from the admin account.
Post-Condition: Notification should be marked as done.
Main Success Scenario:
User System
1. User will select Notifications and 2. System will open a selected
48
Fundraising Campaign Report
select any notification. notification.
Alternative Scenario:
2a. System doesn’t open notifications.
Frequency: High
3.5.17 View donators of Campaign
ID: UC17
Name: View donators of campaign
Primary Actor: Users
Scope: Main Function
Level: Fundraiser goal
Stakeholders & Interests: Authenticated users
Pre-Condition: Campaign should be opened.
Post-Condition: Null.
Main Success Scenario:
User System
1. User will select Donators. 2. System will show donors of the
49
Fundraising Campaign Report
campaign.
Alternative Scenario:
2a. System doesn’t show donors.
Frequency: High
CHAPTER 4: SYSTEM DESIGN
4.1 Class Diagram:
Figure 2. Class Diagram
50
Fundraising Campaign Report
4.2 Interaction (Sequence Diagram):
51
Fundraising Campaign Report
Figure 3. Signup
52
Fundraising Campaign Report
Figure 4. Login
53
Fundraising Campaign Report
Figure 5. Start Campaign
54
Fundraising Campaign Report
Figure 6. Donate Money
55
Fundraising Campaign Report
Figure 7. Manage Profile
56
Fundraising Campaign Report
Figure 8. Search Campaign
57
Fundraising Campaign Report
Figure 9. Cancel Campaign
58
Fundraising Campaign Report
Figure 10. Select Template
59
Fundraising Campaign Report
Figure 11. Share on Social Media
60
Fundraising Campaign Report
Figure 12. Chatbot
61
Fundraising Campaign Report
Figure 13. Review and Rating
62
Fundraising Campaign Report
Figure 14. Give Feedback
63
Fundraising Campaign Report
Figure 15. Approve Campaign
64
Fundraising Campaign Report
Figure 16. Disapprove Campaign
65
Fundraising Campaign Report
Figure 17. Manage Complaints
66
Fundraising Campaign Report
Figure 18. Get Notifications
Figure 19. View Donors
67
Fundraising Campaign Report
4.3 ERD:
Figure 20. Entity Relationship Diagram
68
Fundraising Campaign Report
References:
Use Case model:
[Link]
usp=sharing
Class Diagram:
[Link]
usp=sharing
Sequence Diagram:
[Link]
usp=sharing
Entity Relationship Diagram:
[Link]
usp=sharing
69