Professional Documents
Culture Documents
Final SDD, Comment
Final SDD, Comment
1. INTRODUCTION ...................................................................................................................... 1
7. REQUIREMENTS MATRIX................................................................................................ 40
8. APPENDIX ........................................................................................................................... 41
i
1. INTRODUCTION
1.1 Purpose
This software design document describes the architecture and system design of Ethiopedia free
encyclopedia system.
This document is the software architecture design document as agreed by users, developers, and
owners. The document has information for users, designers, system owners, maintenance team,
system testers and documentation team. The document provides different information that will
be vital for different groups of readers. The readers summarized as follows:-
System users Functional and non-functional To review if the interface, functional and
requirements, GUI requirements non-functional requirements are the one
they desire, And recommended change if
necessary.
Designers Use case, functional and non- Revise the use case as necessary, check the
functional requirements achievability of requirements and the tool
assumptions and dependencies proposed to be used
and design constraints.
System Project cost, functional and non- Specify development tools to be used.
owners functional requirements. Check if all their requirements are included.
Maintenance Functional and non-functional If system fails during maintenance the team
team requirements use case. maintaining the system needs to revise the
initial functionality the system was intended
to do.
Testing team Functional and non-functional During black box testing the tester checks if
requirements the system does what it was intended to do
using functional requirements.
It is targeted to cover the problem of information availability about the rich historical culture,
civilization, social life, history, ceremonies, famous public figures, and archeological data about
Ethiopia. Such information is scarcely and or unstructured manner dispersed here and there
currently. Ethiopedia is a promising solution for these problems for researchers, tourists,
archeologists, citizens and the world in large
The main goal of Ethiopedia free encyclopedia is to serve as main source of information, keep
every data found everywhere with manual system from extinction and become pioneer free
encyclopedia in Ethiopia.
The main objective of Ethiopedia free encyclopedia is to let customers access, add and retrieve
information found in Ethiopia.
1.3 Overview
The remaining next portion of this document is organized as follows;
<< Subsystem>>
<< Subsystem >> Application Serv er
Web Client
The web client request for the information, update information, edit information, register to the
system, delete data and save all the changes to the database server through the network.
This document details the architecture using the views defined in the “4+1” model
Ethiopeida free
encyclopedia
Data Management
Acount
management
User account management includes all account types, members, Administrators, system
administrators and new user going to be members. New members registered, users and
administrators account deleted and upgraded and system administrators going to be deleted when
necessary conditions meet
Data management manages all data that is in the system and accessed by users. Upload new data,
edit existing data (delete data, delete some contents), search data and view searched data and
view the data.
Ethiopedia free
encyclopedia
any user
search
members
for data
signup login
invalid password
successfully signup
manage data
manage users
genereate report
upgrade users upload data
delete user
edit data delete data
wrong data
finishign user
management
delete data add data
Upload Data
Searach Data
Delete Acount
Generate Report
network
network
Database serv er
Search data
Web desktop, smart devices: - any users can access the system using smart phones, desktops
and other devices support internet connection to search data, register for membership.
Web device:- members of the system uses devices on web using network to add data, edit data,
search data , manage user(admins) and approve data being posted(admins)
Google search engine: - used by any user for the search of the system and facilitates ease of
searching service for novice users to access our system using a link from google.
Database server: - it contains all users’ information and all other information system should
contain and accessed by the system server.
Network: - the medium though which communication takes place with from different
perspectives
Scenario view
The user click signup button. The lists to be filled displayed. The user fills the username,
password, confirm password and email fields. The system check the entered attributes and
validate them, if wrong it display re-enter message to the user and user can’t go further steps.
Then after fill the fields he/she click signup button. Immediately the user details added to the
database and successfully signup message displayed to the user and he/she logged in to the
system, becomes members of the system.
2. Login scenario
The member user clicked login button. He entered username and password. The system checks
validity from the database. If invalid username and password, the system displays to check the
password and email or user name field again. If correct the system lets the user to log in, display
home page.
The user types the title or words about the information he need to access. Then click search
button. The system checks the data from the database and if the data exists it displays to the user.
The user clicks on the title to see all contents of the displayed data. If the data doesn’t exist the
system displays error message, the user repeats the above steps.
The user types the title or words about the information he need to access. Then click search
button. The system checks the data from the database and if the data exists it displays to the user.
The user clicks on the title/ see more to see all contents of the displayed data. The user checks
the data content. If different from what he has, click create page button and type what he has in
hand and click upload button. If the data displayed contains some information and need to
change some contents, the user click edit button and omit some texts and add others to the
existing data and click finish editing button. This goes to the administrator page as notification
for approval. If the data contains rule contradicting texts, words or images, ignored by
administrators, else verified and added to the database. If need to delete the whole content the
user click delete button, then the data stored in database and wait for the administrator
confirmation of deletion of the data. If it confirmed by the administrator the data deleted form
the database else not.
The user logged into the system as administrator or system administrator. He/she see the user
database and generated report of the members. If someone needed to be deleted from the member
due to his or her action on the system, check the conditions and click delete user button after
Type Module
Function It allows the registration of new users, using inputs of email/username and password
inputs and authenticates for validity.
It upgrades members from lower to higher priority level and deletes problematic
users that will affect the system
The user’s data stored in the data server and deleted users removed from the system
database and can’t access restricted feature of the system.
Subordinates It contains text field for user detail, email, password and login and signup buttons. It
also contains buttons for view user data, upgrade user, delete user.
Dependencies It connects with the server database to fulfill its tasks, to access user detail, to
register new users to the database.
It performs command to delete user data from the database, to add new user detail to
the database and to fill upgraded information of a user.
Interfaces The login interface contains user name and password field and login button. The
user allowed entering the data at provided space and click login button, for wrong
entry tool tip text message is displayed at the bottom of the text field.
Sign up page contains first name, last name, email or phone, password and confirm
password text fields with the name of each text field label. And at the bottom there
exists sign up button and for wrong entries there exist tool tip error message to re
For deleting, upgrading purpose the interface contains view user detail button and it
let the user to connect to the user database and see all information what the user
does, user detail.
Resources Web browser, internet connection, devices support internet service (desktop, smart
phones, touch pad… etc.)
Processing User entered first name, last name, email, password and confirm password. Then he
click signup button. The system checks validity of the user data entered, if wrong
entry exists, re-try message displayed. Else the user data loaded to the database in
the database server and the user logged into the system.
For the next time he entered username and password and the system checks the
entered data from the database, if doesn’t exist or wrong entry exist the system
display to re-enter or try again message, else the user logged in and going on further
actions.
Further actions, user delete or upgrade, the use click view use data menu. Then the
system checks the user privilege and satisfied the system connects to the user
database and displays all user information with appropriate details. The user selects
from the users database and click delete or upgrade button. The systems again
checks the user’s privilege and allow the action to continue. Then the database freed
for delete use action and user loaded to upgraded database.
Data For the data internal to the component, describes the representation method, initial
values, use, semantics, and format. This information will probably be recorded in
the data dictionary.
Type Module
Function Authorized members manage the server and user data in the system and database.
These users upload, edit (modify), delete, and add data to the system data, manage
users database.
Subordinates It contains the edit menu, use list table, data search engine and add, edit, delete
buttons.
Dependencies It accesses the database server for every action that performed in data management
subsystem. To perform its task it should get users database and the information
database
Interfaces The interface contains submenus, edit, upload, delete, view user data, generate data,
and a searching space to search the data to be authenticated.
The user generate report and select from the report and select appropriate action to
be done
Resources Web browser, internet connection, devices support internet service (desktop, smart
phones, touch pad… etc.)
Processing The user click view user database. Then he clicks the category to be classified, then
he select from the categories classified and perform task. This task is for user’s data
management.
For the information management the user search the title he wants to perform
actions. Then he view the data and if needed doesn’t exist he upload new data. If
exist he view and edit data (add necessary data and ignore unnecessary data) then he
clicked finish edit button.
Data
Type Module
Function Any users members, administrators and system administrators use it to search and
view data from the system. It facilitates searching information from the system
either with name, related data (author, owner, place, location).
Subordinates It contains search text field to enter text and search button to submit
searching(instantiate action)
Dependencies It accesses the database server for every action that performed in data management
subsystem. To perform its task it should get the information database
Interfaces It contains search text field to enter text and search button to submit
searching(instantiate action),
Resources Web browser, internet connection, devices support internet service (desktop, smart
phones, touch pad… etc.)
Processing The user enters text to the text field, and click search button. The action passes to
the application server and the system search the requests from the database. If the
data doesn’t exist the system display reenters or data doesn’t exist message. Else the
system displays the selected data from the database and the user view the data.
Data
We were trying to use client-server architecture, but we find that this repository architecture have
client-server architecture in it. We have decided that increasing number of clients for the central
server makes repository architecture (we used).
Members
User
+ EditData() : void
+ SearchData() : void + Search() : void
+ SearchData() : void
+ ViewData() : void
ControlActiv ity
+ Login() : void
+ Logout() : void
+ Signup() : void
Admin
+ DeleteAcount() : void
+ GenerateReport() : void
+ UpgradeAcount() : void
Start
5.3A
c
t
Ethiopedia home page
i
v
Enter UserName and Password i
t
login Page
y
Re_enter D
i
Member Page a
Validate Yes
g
r
a
m
Final
Start
Sinup Page
Re_Enter Check
End
Start
Ethiopedie homePage
Select/ Add
data
Upload
Edit
System
check
Valid Database
Admin Data
Invalid
data
End
Start
Ethiopedie homePage
Edit
Edi t
System
check
Database
Admi n Edi ted
Nothi ng
End
Start
Ethiopedie homePage
Select
data
Delete
Delete
data
System
check
Deleted Database
Admin
Nothing
End
Browse
Input username;
Input password;
System. Display;
Action. Selected;
Else {
Click signup
Input email/phone
Input password
Confirm password
Input address
Click signup
If (data= correct)
Members page=displayed
Else () {
Browse;
Enter data;
Search;
If (data found) {
Else () {
System display” reenters the text for search, data not found”
The signup button leads to the requirements to be filled, the signup page. The user fill all the
spaces required and click the signup button. Then the members page (home page similar to the
users can access but with additional features) displayed to the member.
The additional features added to the members include upload data, delete data, edit data, view
member’s data, and upgrade, delete user and generate user data. This features depend on the
membership type (member, admin and system admin).
After completing their task the final stage is to logout from the system and leaves the page, the
user click logout button. The page of users displayed after login out.
This page includes main page for any users, displayed when everyone browse the site link. It
yields the services viewed on the interface including search for data.
Users create account using this interface. They fill the provided space shown on the interface and
create the account by click signup button.
Members of the system logged into the system through this page, displayed click login button.
This is the page displayed after logged in, the members page, it differ from the main page we put
before it has activities to be done by the members.
This page gives information of about the developers of the system, it contains general and detail
information of the website and its developers
This page displays news of the day for any users. Its advantage is to see news of the day without
any further searching, just visiting the news
Signup button: - leads the user to signup page, for signing up for membership, the user fill all
the required inputs, validated and then he/she become member of the system.
Login button: - leads the user to the login page and the user entered the username and password
in the provided space and click login button and logged into the system.
Search field: - allow the user to enter text to find what he want to view and the he click the
search button to activate search engine and the system search it from the database and display it
to the main page
Menus: - it contains all the necessary actions to be taken for every user like choosing
information type, edit data, upload data, and view developers biography, contacts and other
information displayed on the menus of the system.
Validate user data and data be uploaded, User management, data management
edited or deleted respectively
Members: - The system users, whose privilege is limited with specific tasks only.
System administrators: - Control overall system activities, members, user, administrators and
every activities and failures of the system.
Web device:-device that used to access a system on the web that support internet connection