0% found this document useful (0 votes)
40 views23 pages

Team4 Architecture-Design v1.0 EN

The document summarizes the proposed architecture for an English Center Management website. It describes using a 4+1 view model to represent the architecture with five views: use case view, logical view, process view, deployment view, and implementation view. The architecture aims to be hosted on IIS and SQL Server with compatibility for common browsers. It prioritizes security, data persistence in a relational database, and reliability/availability.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
40 views23 pages

Team4 Architecture-Design v1.0 EN

The document summarizes the proposed architecture for an English Center Management website. It describes using a 4+1 view model to represent the architecture with five views: use case view, logical view, process view, deployment view, and implementation view. The architecture aims to be hosted on IIS and SQL Server with compatibility for common browsers. It prioritizes security, data persistence in a relational database, and reliability/availability.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 23

<English Center Management>

Architecture Design

Project Code: ECM

Document Code: ECM_Architecture Design_v1.0

MEMBER: Trần Thế Vinh

Phạm Duy Khánh

Nguyễn Quang Linh

Nguyễn Quang Huy

Lưu Doãn Dưỡng

Ha Noi, 07/02/2023

Internal use
2/23
RECORD OF CHANGE

*A - Added M - Modified D - Deleted

Effective Date Changed Items A*M, D Change Description New Version

02/07/2023 A Create new v1.0

Table 1: Record of change

3/23
SIGNATURE PAGE

ORIGINATOR: <Name> dd/mm/yyyy

<Role>

REVIEWERS: Nguyen Van Sang 08/02/2023

Instructor
APPROVAL: Nguyen Van Sang 08/02/2023
Instructor

4/23
TABLE OF CONTENTS

1 INTRODUCTION 5

1.1 Purpose 5
1.2 Scope 5
1.3 Definitions, Acronyms and Abbreviations 5
1.4 References 5
1.5 Overview 5
2 CHOICE OF ARCHITECTURE DESIGN 5

3 ARCHITECTURAL REPRESENTATION 5

4 ARCHITECTURAL GOALS AND CONSTRAINTS 5

5 USE-CASE VIEW 5

6 LOGICAL VIEW 6

6.1 Overview 6
6.2 Architecturally Significant Design Packages 6
7 PROCESS VIEW 6

8 DEVELOPMENT VIEW 6

9 DEPLOYMENT VIEW 6

10 QUALITY 6

5/23
1 INTRODUCTION

1.1 Purpose

<>This Software Architecture Document (SAD) describes the proposed architecture for English
Center Management Website. It is intended to capture and convey the significant architectural
decisions that have been made on the system.

The Software Architecture Document has two purposes. First, it is intended to communicate the
architectural direction for English Center Management Website. Second, it is to inform the architect
of English Center Management Website Website by software development organization.

1.2 Scope

The SAD addresses the entire architecture of the custom software to be developed to implement
English Center Management Website. The architecture is presented in various views that present
English Center Management Website’s high-level functionality, major logical components,
deployment, implementation technologies, considerations for performance and security.

The SAD does not address the following:

• The architecture of underlying commercial off-the-shelf software, such as Microsoft .NET or


HTML 5

• The architecture of existing framework

• The architecture of other applications

• The architecture of specific hardware and network infrastructure to be used to support


English Center Management Website

1.3 Definitions, Acronyms and Abbreviations

<>

Term
Definition

6/23
MVC Model – View – Controller

SAD Software Architecture Design

WS Web Service

IIS Internet Information Server

User The user manager of English Center Management Website

NLB Network Load Balancing

1.4 References

Website_Strategy_Pres Customer Supplied Requirement


entation_v1_20110328.
pdf

FMO_Functional Project folder Requirement


Requirement
Specification_v1.0.doc

MVC overview http:// Architect


msdn.microsoft.com/
en-us/library/

7/23
ff649643.aspx

ASP.Net MVC 3 http://www.asp.net/ Architect


mvc/mvc3#overview

Log4Net features http:// Architect


logging.apache.org/
log4net/release/
features.html

1.5 Overview

<>In order to cover all area of the architecture, the SAD contains the following sections:

Architectural Representation: describe the purpose of each view of the system.

Architectural Goal and Constraints: describe the architectural constraints of the system.

Use Case View: describe the major use cases of the system.

Logical View: describe the logical parts of the system.

Process View: describe the main processes of the system and the external system that it interacts
with.

Deployment View: describe how the system will be deployed.

Implementation View: describe how the system will be implemented, in development perspective.

Size and Performance: describe the proposed solution to satisfy the need of a scalable and high
performance system.

Quality: describe the quality goals of the system.

2 CHOICE OF ARCHITECTURE DESIGN


<>The ECH System Architecture is represented by five views defined in the 4+1 view
model. The views of the system include the Use Case View defining key functionality, the
Logical View defining structure of components, the Process View delineating performance

8/23
factors, the Deployment View describing the system topology and the Implementation View
describing the software construction.

4+1 is a view model used for "describing the architecture of software-intensive systems,
based on the use of multiple, concurrent views".The views are used to describe the system
from the viewpoint of different stakeholders, such as end-users, developers, system
engineers, and project managers. The four views of the model are logical, development,
process and physical view. In addition, selected use cases or scenarios are used to illustrate
the architecture serving as the 'plus one' view. Hence, the model contains 4+1 views:

The 4+1 View Model

1.Logical view:

Audience: Designers.

Related Artifacts: Design Model

9/23
The logical view is concerned with the functionality that the system provides to end-users. UML
diagrams are used to represent the logical view, and include class diagrams, and state diagrams.

2.Process view:

Audience: Integrators.

Related Artifacts: N/A

The process view deals with the dynamic aspects of the system, explains the system processes
and how they communicate, and focuses on the run time behavior of the system. The process
view addresses concurrency, distribution, integrator, performance, and scalability, etc. UML
diagrams to represent process view include the sequence diagram, communication diagram,
activity diagram.

4.The physical view:

(aka the deployment view) depicts the system from a system engineer's point of view. It is
concerned with the topology of software components on the physical layer as well as the
physical connections between these components. UML diagrams used to represent the physical
view include the deployment diagram.

5. Scenarios (Use case view):

Audience: All stake-holders.

Related Artifacts: Use Case Model

The description of an architecture is illustrated using a small set of use cases, or scenarios,
which become a fifth view. The scenarios describe sequences of interactions between objects
and between processes. They are used to identify architectural elements and to illustrate and
validate the architecture design. They also serve as a starting point for tests of an architecture
prototype. This view is also known as the use case view.

10/23
3 ARCHITECTURAL REPRESENTATION
<>

4 ARCHITECTURAL GOALS AND CONSTRAINTS

4.1 Technical Platform


Server side: English Center Management website will be hosted on the IIS web server and connected to
the SQL Server 2008 Database server.

The web server is listening on web standard port 80.

All communication with clients must comply with public HTTP, HTTPS, TCP/IP communication
protocol standards.

Client-side: The client will work correctly with the following web browsers: Windows Internet Explorer
versions 8, 10 and 11; Google Chrome (all versions); and Apple Safari versions 10 to 16, which
customers can also access from the company's intranet; from a VPN Internet connection; and by Android,
iOS and Windows smartphones and tablets

4.2 Security
- All user data will be kept safe and secure

- Users must log in to avoid virtual and junk files that cause data loss

- Courses do not affect users

4.3 Persistence
Data persistence will be addressed using a relational database.

4.4 Reliability/Availability
-Accuracy: Specifications must be precise enough for standards or user actions to take.

- Efficiency: Eliminate redundant things, to complete the set goal

- Sustainability:

11/23
4.5 Performance

-1000 users in total and up to 100 concurrent users during peak usage periods of 7:00 A.M. until 1:00, the
estimated average is 8 minutes.

- The system shall display confirmation messages to users within an average of 3 seconds and a maximum
of 6 seconds after the user submits information to the system.

5 USE-CASE VIEW

The diagram below included a list of use cases that represent significant and major functionality of
the system. The use cases that have significant impact on the system are:

1. Login
a. Actor: User
b. Description: login to home screen
2. Register
a. Actor: User
b. Description: register user's account
3. Logout
a. Actor: User
b. Description: Exit the main screen

12/23
4. Score calculation
a. Actor: User
b. Description: aggregate scores and calculate the average score of each student
of the center
5. Collect tuition fee
a. Actor: User
b. Description: send an application as well as confirm the tuition fee of each
student in the center
6. Tuition processing
a. Actor: User
b. Description: perform the confirmation, calculate the reservation request,
change the class, ... to calculate the exact amount of each student.

7. View List student

a. Actor: User

b. Description: This is a highlighted feature based on traffic and usage of the current English
Center Website. IManagement t enables users to search for a doctor using full name teacher, subject.
System calls a web service to get the search result. The result contains the address, phone number
and certification information… of the student and returned in several pages.

8. Delete student

a. Actor: User

b. Description: This feature enables users to delete students. Users will be asked to confirm the
request before the deletion is triggered.

9. Add student

a. Actor: User

b. Description: This feature enables users to create a new profile for a new teacher. This has
six steps in which the user needs to enter the full name, location, phone, email, birthday, subject.

10. Edit student

a. Actor: User

b. Description: This feature enables the user to edit all information of a teacher.

13/23
11. View List Teacher

a. Actor: User

b. Description: This is a highlighted feature based on traffic and usage of the current English
Center Website. IManagement t enables users to search for a doctor using full name teacher, subject.
System calls a web service to get the search result. The result contains the address, phone number
and certification information… of the teacher and returned in several pages.

12. Delete Teacher

a. Actor: User

b. Description: This feature enables the user to delete teachers. Users will be asked to confirm
the request before the deletion is triggered.

13. Add Teacher

a. Actor: User

b. Description: This feature enables users to create a new profile for a new teacher. This has
six steps in which the user needs to enter the full name, location, phone, email, birthday, subject.

14. Edit Teacher

a. Actor: User

b. Description: This feature enables the user to edit all information of a teacher.

15. View Class

a. Actor: User

b. Description: This is a useful feature of the current English Center Management Website. It
helps users see their classes. The system calls the web service to get the search results. The result
contains the information of the student and the teacher of that class

16. Class Division

a. Actor: User

b. Description: this feature helps users to be divided into classes whose learning level is
suitable for their current ability

14/23
17. View Class Schedule, Timetable

a. Actor: User

b. Description: this feature helps users to see the class and class time they are assigned to

6 LOGICAL VIEW

15/23
7 PROCESS VIEW

7.1 Login

16/23
7.2 Register

17/23
7.3 Add (teacher, student)

18/23
7.4 Delete (teacher, student)

19/23
7.5 Edit (teacher, student)

20/23
8 DEVELOPMENT VIEW

No Package Description
01 controllers Contain classes that are defined as controllers, the main function is connected
between client and server through endpoints.
02 service Contain classes that are defined as service, handle processing business logic and
work as a bridge between controller and repository.

03 data Contain classes to keep data received from the database.


response and request model class

04 views Containing views class, component,css, js,..

21/23
9 DEPLOYMENT VIEW

There are three main communication links between users and two groups of servers running in the
data center. Given that messages are sent between the system and the server, secure connections are
used. Encryption is used when the message is out on the internet.

Link 1: End user connects to the application server. As the number of end users grows, more
application servers will be added to maintain acceptable response times. The application servers are
network load balanced. Each class runs the View, Controller, and Data Model classes.

Link 2: The application servers access database server running MS SQL to store and query persistent
data.

9.1 Hardware recommendations for servers

9.1.1: Application Server

Component Minimum requirement

Processor ● Minimum: 2 cores cpu


● Recommended: 4 cores cpu

RAM ● Minimum: 2GB

Hard disk ● 80GB for system drive or above

9.1.2: Database Server

Component Minimum requirement

Processor ● Minimum: 2 cores cpu


● Recommended: 4 cores cpu

RAM ● Minimum: 2GB


● Recommended: 6GB or more

Hard disk ● Minimum: 40GB


● Recommended: 500GB

22/23
● Maximum: 1TB

9.2 Software recommendations for servers

Server Type Software requirement

Reverse Proxy ● Window server 2019 64 bit OR Ubuntu


20.04 64 bit
● Nginx version 1.23 or above

Application Server ● Window server 2019 64 bit OR Ubuntu


20.04 64 bit
● .Net 6

Database Server ● Window server 2019 64 bit


● MS SQL 2019

10 QUALITY
Quality goals, including the following, are to be determined.

• Performance: 1000 users in total and up to 100 concurrent users during peak usage periods of 7:00
A.M. until 1:00, the estimated average is 8 minutes. The system shall display confirmation messages to
users within an average of 3 seconds and a maximum of 6 seconds after the user submits information to
the system.

• Security: All user data will be kept safe and secure.Users must log in to avoid virtual and junk files
that cause data loss.

• Availability: achieve 90% in first deployment and can develop in subsequent times.

• Usability: Designed to be user-friendly with the least amount of manuals

• Reliability: Ensure latency availability, performance, efficiency, change management, monitoring,


emergency response, and capacity planning throughout product development and creation

• Extension: Using classes or structures to be able to develop products later helps reduce performance,
easy to develop

• Reusability: Can be reused when the center opens more branches

23/23

You might also like