Architectural Analysis

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

VIETNAM NATIONAL UNIVERSITY

UNIVERSITY OF ENGINEERING AND TECHNOLOGIES

Object-oriented Analysis and Design


Topic: House for rent

Architectural Analysis

Group 3
Lê Đức Duy - 20021318
Đàm Anh Đức - 20021333
Nguyễn Tương Quyết - 20021423
Lê Huy Thái - 20021434
Nguyễn Lưu Tú - 20021461

HANOI - 2023
Table of contents
1. Define the High-Level Organization of Subsystems 2
2. Identify Analysis Mechanisms 2
3. Identify Key Abstractions 4
4. Create Use-Case Realizations 5

1
1. Define the High-Level Organization of Subsystems

The above figure describes the high-level organization of the software


system. The system consists of three layers:
● The Application layer contains the design elements that are specific
to each use case of the system.
● The Business Services layer encapsulates some key abstractions
and services common to all use cases. It is accessible from the
Application layer.
● The Middleware layer offers services to enable data communication
and management on distributed systems.

2. Identify Analysis Mechanisms


Identify Analysis Mechanisms
Analysis Mechanism Design Mechanism Implementation Mechanism

Persistency RDBMS JDBC

Security Web tokens Java Spring framework

Distribution REST API Java Spring framework

Analysis-Class-To-Analysis-Mechanism map

2
Analysis Class Analysis Mechanism

User

Admin

Post

AI bot

Rating Persistency, Security

Chat

Message

Report

FacebookUseInfo

GmailUserInfo

System

ChatController

ModerationQueue

ManagePostController
Distribution
RatingController

ChatWithOtherUserController

SearchPostController

RegistrationController

Analysis mechanism characteristics


Security
➢ Data granularity: attribute level
➢ User granularity: three roles – unregistered users, registered users
and administrators
➢ Security rules:

3
○ Only registered users/administrators may log into the
system.
○ Only logged in users may view and edit their own account
profile.
○ Only logged in users may publish for renting.
○ A post for renting could only be edited by its owner.
○ Only administrators may perform the following actions: view
reports made by users, approve posts, delete users and
delete spam posts.
Persistency
➢ Granularity: The persistence mechanism should be able to store
information at the level of individual objects or entities, such as
user profiles, rental listings, and conversations.
➢ Volume: The persistence mechanism should be able to handle a
potentially large number of objects, such as user profiles, rental
listings, conversations, and comments.
➢ Duration: The persistence mechanism should be able to store
objects for a relatively long period of time, potentially indefinitely in
some cases.
➢ Retrieval mechanism: The persistence mechanism should provide a
way to uniquely identify and retrieve objects based on various
criteria, such as user ID, rental listing ID, and conversation ID.
➢ Update frequency: The persistence mechanism should be able to
handle frequent updates to objects, such as when users create or
modify rental listings or post comments.
➢ Reliability: The persistence mechanism should be able to ensure
data integrity and availability even in the event of system crashes or
other failures. This can be achieved through features such as
backup and recovery mechanisms, transaction management, and
failover capabilities.

3. Identify Key Abstractions


➢ User: Users are divided into 2 permissions, tenants and landlords,
with information such as year of birth, gender, name, avatar .... and
authentication information such as email, password, username

4
➢ Admin: Administrator has system administrator rights, has
information such as phone number, name, ... and has
authentication information such as username, password
➢ Account: A record of user/administrator. Each account has a unique
user ID and username, which distinguishes between users and
administrators and allows them to use system functions.
➢ Post: A user post, containing basic information for rental / rental
such as address, price, video, ...
➢ Comment: User comments on the article, do not include
inappropriate words, violate the rules.
➢ Conversation: A conversation between a tenant and a landlord, or
between a tenant and an admin to ask for more information.
➢ AI chat bot: A bot that can answer questions, helping users to
search faster and more conveniently.

4. Create Use-Case Realizations


See the “Use case Analysis” Documentation.

You might also like