100% found this document useful (1 vote)
141 views21 pages

Software Design Specification

This document provides a high-level summary of a software design specification for a project titled "Care4aCause". It includes sections on the introduction and purpose, design considerations, system architecture at multiple levels, and design strategies. The purpose is to give an overview of the software product to help comprehension and testing. It describes the project as a website that allows donors to donate funds or goods to needy people through NGOs. The system architecture diagram shows the components at the system and sub-system levels. Design strategies focus on security, reliability, maintainability, and modifications.

Uploaded by

BEST BEST
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
141 views21 pages

Software Design Specification

This document provides a high-level summary of a software design specification for a project titled "Care4aCause". It includes sections on the introduction and purpose, design considerations, system architecture at multiple levels, and design strategies. The purpose is to give an overview of the software product to help comprehension and testing. It describes the project as a website that allows donors to donate funds or goods to needy people through NGOs. The system architecture diagram shows the components at the system and sub-system levels. Design strategies focus on security, reliability, maintainability, and modifications.

Uploaded by

BEST BEST
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 21

Software Design Specification

<Project Title>

Project Code:

Internal Advisor:

External Advisor:

Project Manager:

Project Team:

Submission Date:

_____________________
Project Manager’s Signature
Document Information

Category Information
Customer FAST-NU
Project <Project Title>
Document Software Design Specification
Document Version 1.0
Identifier <PGBH01-2003-DS>
Status Draft
Author(s) <Names of all the authors of this document>
Approver(s) PM
Issue Date Sept. 15, 2003
Document Location
1. Advisor
Distribution 2. PM
3. Project Office

Definition of Terms, Acronyms and Abbreviations


This section should provide the definitions of all terms, acronyms, and abbreviations required to interpret the terms
used in the document properly.

Term Description
ASP Active Server Pages
DD Design Specification
NGO Non-governmental Organization
OTP One Time Password
GUI Graphical User Interface
ER Entity Relationship

[Type here]
Table of Contents

1. Introduction..............................................................................................................................4
1.1 Purpose of Document.....................................................................................................................4
1.2 Project Overview.............................................................................................................................4
1.3 Scope................................................................................................................................................4

2. Design Considerations.............................................................................................................4
2.1 Assumptions and Dependencies..................................................................................................4
2.2 Risks and Volatile Areas................................................................................................................4

3. System Architecture................................................................................................................4
3.1 System Level Architecture.............................................................................................................4
3.2 Sub-System / Component / Module Level Architecture............................................................5
3.3 Sub-Component / Sub-Module Level Architecture (1…n)........................................................5

4. Design Strategies......................................................................................................................5
4.1 Strategy 1…......................................................................................................................................5

5. Detailed System Design...........................................................................................................5

6. References.................................................................................................................................6

7. Appendices................................................................................................................................6

[Type here]
1. Introduction
1.1 Purpose of Document

The purpose of this document is to explain all the ideas that have come up to define the
system, its requirements, functionalities and working. This document will give little
description of features this web app is expected to have, keeping in view the current needs
for society development. The document will provide the functional and non-functional
requirements along with different constraints also the project's target audience and its user
interface, hardware and software requirements.
In short, the purpose of this document is to give a bird’s eye view of the software product,
going through which will help in better comprehension of the system and may also help in
software testing.
1.2 Project Overview

Our Final Year Project is a website with the name of “Care4aCause.” This is developed to help
the needy people in NGO’s, or we can say that for which the NGO’s work. “Care4aCause” is
a web application that works on all electronic devices with any browser. “Care4aCause”
consists of three panels, admin panel, NGO panel, and the donor panel. Through this
application, anyone can donate the amount in his or her desired category like clothes, money
etc. And to donate, he or she has not to visit the NGO directly as he or she can donate through
mobile phones from where ever they are. Once the donation is sent the admin panel in the app
will receive the donation in their account and will be forwarded to NGO’s on their demand.
The donation can be made with one button click. Admin panel is managing the donors and the
NGO’s of the app completely.

1.3 Scope
The web app we are building for organization “Care4aCause” is to solve the big issue of
poverty. Poverty, which creates inferiority in the people having weak financial background.
Our project will maintain the record of the people who are willing to help the needy people.
The willing public could connect us through the application and provide clothes, finance etc.
for organization to help the needy. The money for charity, medical, education, and shelter
will be used with trustworthy environment. This reduces the rate of poverty, help the
humanity in trustworthy & reliable way.

2. Design Considerations
If someone from out of the country wants to donate some money then how will he donate?
To address this issue, we will use international payment method e.g., PayPal.
Another issue is that we don’t know the location of needy people, to address this issue we
will contact NGO’s who will provide us authentic information.

2.1 Assumptions and Dependencies

[Type here]
One of the assumptions that we are make is that we have all the stuff NGO’s need from us.
One of the dependencies we have is that when we have to spread awareness among people
about organization, we will have to use social media platforms like Facebook, YouTube etc.
and we will also use GMS module for SMS service.
2.2 Risks and Volatile Areas
We are using platforms like YouTube, Facebook and GMS module, we will have to face
severe issues if government puts ban on any of these.
If our website ever gets hacked then all our sensitive data will be at stake.

3. System Architecture
System architecture is the conceptual design that defines the structure and/or
behaviour of a system. An architecture description is a formal description of a system,
organized in a way that supports reasoning about the structural properties of the
system. It defines the system components or building blocks and provides a plan from
which products can be procured, and systems developed, that will work together to
implement the overall system. /System Architecture, 11/ Defining the architecture as
the set of relationships between the components of a system, that jointly ensures
emergent properties of the system as a whole. The architecture of a system is the set
of relationships between its components that cause the system to have desired
properties, such as desired functionality, behaviour, semantics and quality of service.
Architecture is the central problem in web applications because these applications
should enable distributed coordination between people and the architecture of these
coordination mechanisms evolves by itself as well as is designed by people. As shown
in below figure, we are able to see the architectural diagram of our system that
corresponds to our needs.

[Type here]
3.1 System Level Architecture

3.2 Sub-System / Component / Module Level Architecture

[Type here]
4. Design Strategies
There are different designs strategies are as follows:

4.1 Strategy 1
Our system is a secure platform as it does not allow everyone to register in the
organization panel. Only the NGO’s with accurate data regarding the organization can
register themselves within the app. And on the user end, it provides OTP
authentication for the donor to log in the app. And save data in the database.

4.2 Strategy 2
This software is much reliable as the authentic organizations are registered in it.
Donor need not worry about the amount he/she will transact. And they can view their
transaction history anyhow.

[Type here]
4.3 Strategy 3
Software maintainability is defined as the degree to which an application is
understood, repaired, or enhanced. Software maintainability is important because it
is approximately 75% of the cost related to a project! After the deployment of the
project, if any error occurs it can easily maintain by the developer.
I. The maintenance of the software is very easy.
II. The functioning of the software is very easy to understand.

4.4 Strategy 4
Modification is also easier with this computerized system. The modification term is
used for making changes in the functionality of the system or record. If the
developer wants to modify the functionality of the system or saved a record of the
application, it is possible.
4.5 Strategy 5
The application shall be able to run on all android mobiles that are widely in use
today. In other words, any user who has internet access on his/her mobile shall be
able to connect to our application by installing it. Therefore the application can run
android mobiles only.
4.6 Strategy 6
The system will store all the records in central storage, which is handled by the
administration only. The people shall able to contact an administrator in case of
any problem with some specific entity. The administrator could easily provide
alternative help from others

5. Detailed System Design


Conceptual design in itself is not the end of the design process, rather it servers as a
basis for the detailed MIS design. The performance requirements specified by the
conceptual design become inputs to the detailed design phase, in which these are
further refined, detailed and finalized to be called the system specifications.

Thus, the main objective of the detailed system design is to prepare a blue print of a
system that meets the goals of the conceptual system design requirements. Detailed
system design involves the following:
 Class diagram
 Sequence diagram
 State Diagram
 Logical data model (E/R model)
 Physical data models

[Type here]
 Detailed GUIs

5.1 Class Diagram

The class diagram is the main building block of object-oriented modeling. It is used


for general conceptual modeling of the structure of the application, and for detailed
modeling translating the models into programming code. Class diagrams can also be
used for data modeling [1].

5.2 Sequence Diagram


A sequence diagram simply depicts interaction between objects in
a sequential order i.e. the order in which these interactions take place. We can also
use the terms event diagrams or event scenarios to refer to a sequence
diagram. Sequence diagrams describe how and in what order the objects in a system
function [2].

5.2.1 Add Organization

[Type here]
Figure 5.2.1: Add Organization Sequence Diagram
Description:

1. The above is the use case diagram for adding the organization to the system.
2. This shows that the organization enters their credentials to be part of our system.
The system database verifies them and allows them to get registered.
3. If the input credentials are not valid, the registration will never allow us to be
successful.
4. Only valid input information will get entertained. The verified organization will
be successfully added to the system after their credentials are verified

5.2.2 Edit Organization

[Type here]
Figure 5.2.2: Edit Organization Sequence Diagram

Description:

1. The sequence diagram shows the steps for how the organization makes changes to its
information.
2. The organization must follow the format to make changes. Otherwise, no
changes can be allowed.
3. The right format with the right input will be verified and make the changes
successfully.
4. When the valid organization information is provided, the system successfully
accepts the information to edit and update the organization profile.

5.2.3 Edit Donor

[Type here]
Figure 5.2.3: Edit Donor Sequence Diagram
Description:

1. The donor needs to edit the profile. The donor provides the required information
to update the profile.
2. The donor gets updated when he input the information in the set format as the
system is required.
3. When the valid format information is provided to the system, the system
successfully edits the donor profile.

5.2.4 Delete Donor Account from Donor Profile

[Type here]
Figure 5.2.4: Delete Donor Account from Donor Profile Sequence Diagram

Description:

1. The donor can delete the profile.


2. The system confirms from the donor to delete the profile.
3. The system deletes the donor account permanently from the databases

5.2.5 Donate Amount

[Type here]
Figure 5.2.5: Donate Amount Sequence Diagram

Description:

1. The donor can donate the money to any organization from the system.
2. The donor first needs to select the organization to whom he/she wish to transfer
the amount.
3. The donation screen donates the amount through the pre-defined payment
method.
4. As the donor, confirmed the transaction. The system transfers the amount to the
selected organization successfully.
5. The system acknowledges the transaction has been successful status.

5.3 State Diagram


A state diagram is used to represent the condition of the system or part of the
system at finite instances of time. It’s a behavioral diagram and it represents the
behavior using finite state transitions. State diagrams are also referred to as State
machines and State-chart Diagrams.

5.3.1 Add Organization

[Type here]
Figu5.3.1: Add Organization State Data Diagram

Description:

1. State model for Add Organization shows that how the organization login to the
system.
2. Organizations access the login screen and provide valid credentials to log in to
the system.

[Type here]
3. The organization will only login to the system after verification of valid
credentials.
4. Successfully login to system displays the home screen to the organization.

5.3.2 Edit Organization

Figure 5.3.2: Edit Organization State Data Diagram


Description:
1. The edit organization state model explains how the organization makes
changes to the profile.
2. The organization profile screens show the data on the system.
3. The organization fills the field needs to update.
4. The system shows the updated data in the organization profile screen.

5.3.3 Edit Donor

[Type here]
Figure 5.3.3: Edit Donor Account State Data Diagram

Description:
1. The state model begins with a donor profile screen.
2. The donor enters the data whatever in which field he/she desires to edit profile.
3. When the valid data to accept in the proper format is provided. The data
will be edited and display on the screen.

[Type here]
5.3.4 Delete Donor from Donor Profile

Figure 5.3.4: Delete Donor Account from Donor Profile State Data Diagram

Description:
1. The state model starts with the donor profile screen.
2. The donor can delete the profile from this screen. The donor input
command to delete the profile.
3. The system as to confirm to delete. After confirmation of delete. The
profile is deleted permanently from the database.

[Type here]
5.3.5 Donate Amount

Figure 5.3.5: Donate Amount State Data Diagram


Description:
1. The donated amount describes the procedure of donation of the system
through different states.
2. From the home screen to the donation screen, the donor has to access the
donation screen.
3. At the donation screen, donors start the transaction for the amount through
the donation method.
4. The donor enters the amount to transfer for the organization.
5. After the confirmation for payment, the amount transfer through the
PayPal or bank transfer donation method. The donating process will
be completed.

[Type here]
5.4 ER Diagram

Figure 4.5: Entity Relationship Diagram


Description
Donor:
 It consists of donor credentials details.
 Its cardinality is one to one with “transaction,” “reset the password,” and
“organization.”
Reset Password
 It offers the donor to reset his/her password with the mentioned credentials.
 Its cardinality is one to one with “Donor.”
Transaction
 It consists of donor donation information and organization to donate
information.
[Type here]
 Its cardinality is one to one with “Organization” & “Donor.”
Organization
 It consists of organization details.
 It has information about donation payments.
 Its cardinality is many to one with “Donor” & “Transaction.”

6. References
1. https://en.wikipedia.org/wiki/Class_diagram/
2. https://www.geeksforgeeks.org/unified-modeling-language-uml-sequence-diagrams/
3. https://www.geeksforgeeks.org/unified-modeling-language-uml-state-diagrams/

7. Appendices
Include supporting detail that would be too distracting to include in the main body of the document.

[Type here]

You might also like