SAT Group Assignment (Group2)
SAT Group Assignment (Group2)
GROUP ASSIGNMENT
APU2F2206SE
CT059-3-2-SAT
Group 2
Page 1
Table of Content
Page 2
Part A - Individual Component
1.1 Activity Diagram - Make payment function (Chan Heng Yan TP061221)
The system must allow registered customer All transactions should be highly secure
to choose any payment option and carried out with 128-bit encryption.
The system must support various type of The system's payment gateway must be
payment method able to operate 24 hours a day.
The system must be able to send an order The system should able to handle 100,000
confirmation email to the customer after transaction per day
complete the payment
The system must able to integrated with The transaction process of the system
banking API should not exceed five minutes
Page 3
Activity diagram - Make payment function
After a customer selects an order and pays for it, the system will first display all the
payment methods for the customer to choose from. After the customer selects a payment
method, the system will ask the user to input the payment information. Then, the customer
will click the check out button after completing the payment information. After that the
system will validate the payment information if it is correct then the system will change the
payment status to complete and save the information into the database as a record, otherwise,
the system will prompt a message to tell the customer there is an error and ask the customer
to select the payment method. At the same time, the system will also send a confirmation
email and receipt to the customer after completing the payment. Customers can view the
orders and print out the receipt.
Page 4
1.2 Activity Diagram - Schedule delivery (Alexander Shamil Mondoka
TP06033)
The system must schedule a date for delivery 25,000 orders per day should be possible
when a customer makes order for the system to manage.
The system must send alert to logistics team Customers must be able to place orders at
on parcels to be packaged for delivery any time of day, hence the system must be
available 24/7.
The system should allow customer to access Every year, the system must maintain an
real-time tracking of their parcel average of 97 percent of fulfilled deliveries.
The system must auto allocate a driver for The system must maintain current maps for
parcel delivery package tracking in real time.
Page 5
Use case diagram - Schedule Delivery
When a customer completes their payment procedure, an order is then made and sent
to the administration. Administration is able to approve the delivery request from the
customer and proceed to send an alert to the logistics team, who will the be tasked to
schedule the delivery and prepare to send it out for delivery. The logistics team will be tasked
on updating the location of the parcel and delivery time as well as notify the admin and user
in the delivery of the parcel.
Page 6
1.3 Class Diagram – Inventory Management (Chow Wen Xuan TP064438)
The system must allow store suppliers to The system should handle up to 30000
view all available stock inventory updates per day
The system should notify suppliers when the The system must be operational 24h
stock is running low because the inventory must be updated even
when the customer purchases from the
website
The system must allow staff to update The inventory stock amount in the system
inventory when the warehouse is being must be at least 98% accurate
restocked
The above class diagram shows the Inventory Manage part of the system. In this part
of the system, there are a total of 4 classes. There are Item, Suppliers, Inventory and Staff.
The relationship between Item and Inventory is aggregation because an item can still exist
even when there is no inventory to store the item. The relationships between Inventory and
both Supplier and Staff are association. The supplier will be able to view the inventory and
the system will notify the supplier when the supplies are running low. As for the staff, they
can update the items in the inventory.
Page 7
1.4 Sequence Diagram – Access database (Yim Zhi Hei TP064428)
The system must allow managers to access The system should be able to display all the
the system. data everyday.
The system must allow managers to open all The system should refresh all the databases
the databases. 24/7 to allow the manager to check the
database anytime.
The system must allow managers to filter the The data in the database must be accurate
database and search data. and the size of the database should not
exceed 2GB.
Page 8
The sequence diagram above shows how the managers access the database. A
sequence diagram is a visual representation that interacts between the actor (manager) and the
system. First, the manager will login to the system. The system will validate his username
and password to make sure the login user was the manager. After the manager login to the
system, the manager will open the database which shows all the data in the database. The
manager can search for some specific data and the system will filter the data to fulfill the
requirement of the manager. Lastly the system will display all the data and the manager will
be able to collect all the data and do analysis.
Page 9
2.0 4+1 Model
2. The system will display all the payment methods for the customers to choose.
3. The system will ask for the user to input the payment information after the customer
selects a payment method.
4. Then the customers will click the check out button after completing the payment
information.
6. If the payment information is correct, the system will change the payment status to
complete and save the information into the database as a record.
7. If the payment information is wrong, the system will prompt a message to tell the
customer there is an error and ask the customer to select the payment method.
8. At the same time, the system will also send a confirmation email and receipt to the
customer after completing the payment.
9. Customers can view the order and print out the receipt.
Page 10
Logical View Development view/ implementation view
Viewer : End user Components
Functional requirements: Platform : Window, Mac OS
● The system must allow registered Browser : Chrome, Safari, Microsoft Edge, Mozilla
customer to choose any payment option Firefox
● The system must support various type of Programming Language : HTML, CSS, C#, Python
payment method Testing : Select payment method, Enter payment
● The system must be able to send an order information, validate information, send
confirmation email to the customer after confirmation email
complete the payment Development team : 5 peoples
● The system must able to integrated with Development center database: 3 tables (customers,
banking API customer order, customer payment
Components information)
Customer : Database : MySQL
● Select payment methods, Types of interfaces: website, mobile, tablets
● Enter payment information GUI : Orange theme, user-friendly, simple design
● View order
● Print receipt
In the logical view, there is a list of functional requirements of the system, and the
viewer is the end user. The available components are to select payment methods, enter
Page 11
payment information, view order and print receipt. For development view, the platform is
Windows and Mac operating systems. Furthermore, we have covered some of the browsers
which are Google Chrome, Microsoft Edge, Mozilla Firefox and Safari so that our user has
the option to select one of the browsers. The programming languages that we select are
HTML, CSS, C# and python. The majority of programming languages are used to create a
website. The number of our development team is 5 members and there are 3 database tables
which are used to record customer information, customer order and customer payment
information. MySQL is the database system that will be used. The website also supports three
types of interface, website, mobile and tablet. The GUI will be orange theme and design it in
a user-friendly and in a simple form, so that our user will not face any difficulty while using
the website. In addition, in the process view there is a list of non-functional requirements of
the system and the component is to make payments, proceed to payment session, select
payment method, input validation, complete the transaction process and save information into
the database. For the physical view, the available platform for the user to access our website
is Windows 10 and above, Mac OS 10 and above and Android 13 and above. We will use
Apache HTTP server as our web server and Cloud as our topology. The storage for the
system is about 5TB and we will use Cloudflare, a firewall software as our security system.
The tools and services are WIX eCommerce and API .
Delivery Process:
Page 12
1. Customer makes an order
2. Notification sent to the admin about delivery together with information.
3. Admin is able to modify delivery information before sending it with an alert to the
logistics team
4. Logistics team receives alert
5. Logistics team schedules Parcel for delivery
6. Logistics sends an update to the customer on the delivery time
7. Logistics will update the live location of delivery for customers.
8. Customer completes the order once the parcel is delivered.
9. Logistics will send notification on successful parcel delivery.
Page 13
Process view / Main tasks Physical view/ Hardware Software
Non-functional requirements: Components
● 25,000 orders per day should be possible Platform: Windows 10 and above,
for the system to manage. Mac 10 and above,
● Customers must be able to place orders at Android 13 and above
any time of day, hence the system must be Servers: Apache HTTP Server, SNMP, SMTP, DNS
available 24/7. Topology type: Cloud
● Every year, the system must maintain an Storage: 5TB
average of 99 percent of fulfilled Security system: Firewall (Software - Cloudflare)
deliveries. Tools: WIX eCommerce
● The system must maintain current maps Services: API
for package tracking in real time.
Components:
● Complete Order
● Manage Delivery Info
● Send Delivery Alert
● Schedule Delivery
● Update Delivery Time
● Update Delivery Location
● Delivered Parcel Notification
● Save Information in Database
The logical view shows a list of the system's functional requirements, and the end user
will be the user. The following are the functional requirements:
When a client places an order, the system must arrange a delivery date, provide an
alert to the logistics team about parcels that need to be prepared for delivery, allow customers
to access real-time tracking of their parcel, and automatically assign a driver for parcel
delivery. The platform for development is Windows and Mac operating systems. The
following components are available for the Customer to choose from: Get a system notice
and Check out the warehouse inventory. Admin: Update Inventory Items Logistics Team:
Notification of successful delivery and update the location and time.
Page 14
2.3 Scenario - “Supplier restocks the inventory” (Chow Wen Xuan TP064438)
Restock Process:
Page 15
Logical View Development view/ implementation view
Viewer: End-user Components
Functional requirements: Platform: Window, Mac OS
● The system must allow store suppliers to Browser: Chrome, Safari, Microsoft Edge, Mozilla
view all available stock Firefox
● The system should notify suppliers when Programming Language : Java, HTML, CSS, C#,
the stock is running low Python
● The system must allow staff to update Scripts: JavaScript
inventory when the warehouse is being Testing:
restocked 1. Make orders
Components 2. Wait for restock request notification
Supplier: 3. Update inventory
● Receive notification from the system Development team: 5 peoples
● View warehouse inventory Development centre database: 3 tables (Supplier,
Staff: Staff, Inventory)
● Update Items in inventory Database: MySQL
Types of interfaces: website, mobile, tablets
GUI: Orange theme, user-friendly, simple design
Page 16
The scenario of the above 4+1 model is when the available stock is low, and the
supplier will be notified then restock the inventory. In the logical view, functionalities of
the system will be shown such as allowing store suppliers to view all available stock and
the suppliers will be notified when the stock in the inventory is running low. It should
also allow the staff to update the inventory when the stock reaches the warehouse. In the
process view, we can see the run-time behavior of the system and all the non-functional
requirements. The development view depicts a system from the standpoint of a
programmer. (Jayawardene, 2022) It provides information needed when the programmers
are working on the system such as how many tables are needed in the database, what
theme the GUI should use and what are the steps of testing. Finally, the physical view
shows the hardware requirements of the system.
Page 17
2.4 Scenario - “Manager able to access to the system and do analyze ” (Yim Zhi
Hei TP064428)
Analyze Process:
Page 18
Logical View Development view/ implementation view
Viewer: End-user Components
Functional requirements: Platform: Window, Mac OS
● The system must allow manager to access Browser: Chrome, Safari, Microsoft Edge, Mozilla
the system Firefox
● The system must allow manager to open Programming Language : Java, HTML, CSS, C#,
the database Python, SQL
● The system must allow manager to filter Scripts: JavaScript
and search data Testing:
Components 1. Access System
Manager: 2. System display all the data
● Access system 3. Filter and collect data
● Open database 4. Analyse the data
● Filter and search data Development team: 5 peoples
● Do analyse Development centre database: 4 tables (Manager,
Customer Order, Inventory, Customer Payment
Inventory)
Application Layer: HTTP, SNMP, SMTP, DNS
Database: MySQL
Types of interfaces: website, mobile, tablets
GUI: Orange theme, user-friendly, simple design
Page 19
The 4+1 model in table 2.4 is the scenario for the manager to access all the data in the
database. In the logical view, the functional requirement will be the system must allow
the manager to access the system and the system must allow the manager to open the
database. The system must also allow the manager to filter out the data and search for
specific data in the database. For the process view/ main task, the non-functional
requirement will be the system should be able to display all the data everyday. The
system should also refresh all the databases 24/7 to allow the manager to check the
database anytime and the data in the database must be accurate and the size of the
database should not exceed 2GB. The system should display all the databases in less than
5 seconds for the manager. The development view/ implement view will be using
standard programming language. The physical view/ hardware software will show all the
hardware for the system. All the hardware will be suitable for most of the people for them
to access the system.
Page 20
3.0 Factor and principle (Quality attribute)
High It is defined In the myCloth The advantages of this The high cohesion principle
cohesion as the system, all the principle are that it will is critical and beneficial to
degree to functions for make the system easier to the myCloth system
which the user behavior, understand, read, modify, because it reflects a high
components such as and test because the quality and better
of a module validating email modules are not dependent architecture design. For
belong to addresses, on other modules to example, the main function
one another should be achieve its purpose. For of the system is not directly
(Pagade. represented in example, if a developer affected by all of the
G,2022). the email class wants to make changes to module's parts. So, it's easy
and not in other email validation, they can to change or test the
classes like go directly to the email system, and it won't mess
making orders. class that handles these up any other modules and
things and make the make the maintenance
changes. These had process more efficient.
accelerated and enhanced
the efficiency of the
change process.
Security The level of When it comes to Check the system Only authorized users
security provided the privacy and to make sure that can access specific
by a system or security of user only people who data. For example, only
product to allow data, security is are supposed to administrators can
users or other much more have access to access this data for
systems or important than the data can get editing and deleting,
products to access other quality to it. while managers can
information and attributes. Poorly only access the data
data in accordance secured systems and can only view it.
with the type and are vulnerable to
level of hackers who can
authorization take away users'
assigned to them information to
Page 21
(ISO 25000 Portal, carry out criminal
2022). activities, etc.
Efficiency This basically assesses When it comes to The total May at first result in
how fast a system delivering the process number of more late or
completes a particular from payment successful on- unsuccessful
task. It is among the completion to product time deliveries deliveries but over
most crucial quality delivery should be as or early time this should
attributes(Padma, efficient as possible to deliveries grow smaller the
2022). keep customer should be more efficient the
satisfaction up. matched against system process
the total number becomes.
of late and
unsuccessful
deliveries
Page 22
(Chow Wen Xuan TP064438)
Reliability Reliability means is The customer must Continuously The system is stable
the system reliable be able to place an place orders and enough to work
enough to sustain in order at any time restock the 24hrs and the stock
any condition (What of the day and the inventory to count in the system
Are the Quality stock amount in check if the should match with
Attributes?, 2007) the inventory must inventory stock the total stock in
be correct to amount is correct the warehouse
prevent the after a lot of
situation where the inventory
customer placed updates.
an order but there
is no more stock.
Page 23
(Yim Zhi Hei TP064428)
Interfaces The way the In MyCloths A large design With the interface, user
system shows to system, all the interface can can easily view
the user to remain data can be interact with the anything in the system.
the stability or the displayed by the user and interface The manager can use
lifespan of the interface. The can help the system the interface to view all
system. data can be to remain stable the data and the system
collected from and also extend the can filter the data out
the database and lifespan of the and display to the
program the entire system. manager. The manager
output of all can collect all the data
data. he/her wants to do
analysis.
Accuracy The percentage of The data of the All the data that The data must
the data that is database that is inserted from be accuracy in
correct or the shown from the manager, staff , the database
measurement of how system to the customer or the
close the incorrect manager had to supplier must be
value is between the make sure it the same with
correct value. (Dan was accuracy so the data that
Stearn, 2011) the manager can comes out from
use the data to the database.
do analysis
Page 24
Part B Group Components
Page 25
Peer-to-Peer Cryptocurrency Expensive servers Decentralization
products are not needed as makes the process of
each of the finding a particular
connected computers file across the
can act as a server network (Roomi &
Roomi, 2020)
Page 26
As shown above, we chose a 4-tiered layer as our architecture diagram since it will
bring a lot of benefit to our design. There are four layers in a four-tiered layer architecture:
the client layer, the presentation layer, the application layer, and the database layer.
In our client layer, the components consist of a laptop, mobile phone, and desktop.
Our client can use these three types of devices to access the myCloth website. This layer is on
the outermost layer, which is also the interface that our users will see. The client layer is the
local user interface for creating, modeling, analyzing, reporting, displaying, and distributing
different types of content, as well as for clients from outside the system (ORACLE, 2023).
The second layer is the presentation layer. This layer consists of some types of
browsers that support our website, which are Google Chrome, Mozilla Firefox, Microsoft
Edge, and Safari. Furthermore, the presentation layer gets data from clients, sends requests to
the data layer, displays the user's requested data from the database, and figures out what the
user wants (Cao et al., 2013).
The third layer is the application layer, this layer's task is to ensure that applications
on various networks and devices can communicate with one another (Kirvan &
Froehlich,2022). This layer is a feature of the application that controls how it interacts with
other devices, rather than being an independent application. The protocols that myCloth
system architecture covers are HTTP, SNMP, SMTP, and DNS.
The last layer is the data layer, which is an object that includes all the data that must
be transmitted to the tag manager from the myCloth website (Arimetrics, 2021). In the data
layer, it will carry all the information that needs to be processed and delivered from the
website to the other connected applications. MySQL will be used to store all the necessary
data from the myCloth website.
Page 27
This analysis is then translated into risk concepts and their consequences, from which the
process may be replicated. With each analytical cycle, the process progresses from more
generic to more particular. The entire architecture will be fine-tuned, and risk concepts will
be resolved by investigating the problems raised in the initial cycle (GeeksforGeeks, 2020).
The attributes used are all based on each individual attribute discussed under the Quality
attribute section above. The following attributes are going to act as business drivers that are
included in the tree:
● Security - The Security Branch consists of 2 refinements from the attribute namely:
Page 28
- Confidentiality of date - All user data stored (Personal information & Payment
Information) should be encrypted
- Access Management - Before accessing any order functions, a user must
identify themselves using a username and password.
● Efficiency - The Efficiency Branch consists of one refinements from the attribute
namely:
- Performance - Improved efficiency is evidenced in terms of successful
deliveries.
● Accuracy - The Accuracy Branch consists of a refinements from the attribute namely:
- Backup Data - Encrypted stored data in the system database must be backed-
up on a cloud server
ADVANTAGES DISADVANTAGES
Early on in the life cycle, hazards were Improper task allocation, everyone wants t o
discovered. This involves identifying any possible get things done, some people work an
hazards prior to the start of the project and unusually large number of shifts. However,
developing a plan to reduce or avoid them from this approach can be harmful. Responsibility
occurring(Software Engineering Institute, 2011). and task allocation should be done with
Page 29
caution (Berdic Inc, 2020).
Improved architecture documentation. Requests made after the deadline. This occurs
Architectural documentation is critical in the when end consumers seek functionality at a
design process and cannot be understated. future stage. And it's possible that their
Through documenting each step of the design justifications are related to changes within
process, the quality and design are upheld, adding their perspective. The problem is that this end-
significant value towards the projects(Software user request might have major consequences
Engineering Institute, 2011). for the team(Berdic Inc, 2020).
Page 30
Figure 1.0 Process method of SAAM
Page 31
Describe Architecture Simple architectural notation should be used to describe the
design so that everyone involved in the analysis can understand
it. In these architectural descriptions, the system's
computational, data, and connectivity parts will be listed out.
Along with this static structural diagram, a description of how
the system changes over time or a more dynamic representation
of the system is given. This can come in the form of a more
formal specification or a description of general behavior in
everyday language. Typically, the creation of scenarios and the
explanation of designs drive one another. On the one hand,
having descriptions of architecture means that key players have
to think of ways to deal with the architecture's unique features.
Also, the scenarios must be part of the architecture description
because they show what the design needs.
Classify / Prioritize Scenarios In the scenario, a short explanation is given of how a system
could be used or how it should be used. If the architecture can
directly support the scenario, it means that the intended use can
take advantage of the consistency without having to change the
architecture to implement the scenario, and this is often proven
by showing how the proposed solution operates when the
current architecture is used. If a scenario is not directly
supported by the architecture being shown, it will need to be
changed. The architecture that we may illustrate has undergone
some modifications. This might involve a modification to how
one or more components carry out a particular function. A
modification to how a component carries out a certain function,
the addition of a component to carry out a function, the
addition of relationships between existing components, the
removal of a component, or the combination of these are
classified as the “indirect scenario." An indirect scenario is a
condition that needs architectural adjustments.
Page 32
Individually Evaluate Indirect The software architect will explain what changes need to be
Scenario
made to the architecture that includes indirect scenarios so that
the scenario can be used. This evaluation also helps reviewers
and stakeholders understand the structure of the architecture
and how its parts work together in a dynamic way. It's
important for stakeholders to talk about what they think a
scenario is supposed to mean and how the mapping works from
their point of view. For each indirect scenario, the changes to
the architecture that must be made to support the solution must
be listed, and the cost of implementing the change must be
estimated.
Page 33
Step 2 again.
Page 34
observer.
Advantages Disadvantages
Enhanced the communication between Lack of tools and standard methods for
stakeholder and evaluation team since they representing architectural design (Tutorials
using scenarios to visualize (Aneko, 2019) Point,2023)
Map scenarios to structures and point out Lack of analytical methods to predict or
parts and connections that will change if the forecast whether the architecture will meet
scenario changes (Aneko, 2019) system requirements after implementation
(Tutorials Point,2023)
Page 35
evaluation method like ATAM. ARID is a lightweight evaluation that concentrates on the
suitability. It reviews all the tasks carefully and it can ensure the quality of the design.
There are two phases and contain nine steps in the ARID evaluation method. In the
diagram above we can clearly see the two phases in the ARID evaluation method. Phase one
is the pre meeting and the first step will be to identify the stakeholders. In the MyCloth
system, there are four stakeholders which are the customer, manager, supplier and the staff.
Step two will be to prepare the design briefing. The development team will have a briefing
for the system and design all the functions in the system including the supplier connectivity
or the logistic support. Step three will be preparing the seed scenario. The development team
will design all the scenarios of the concept of the system. The goal or the potential issue will
Page 36
be discussed in this step. Last step of phase one will be preparing the material. All the seed
scenarios or the discussion in the first three steps will be presented in the meeting. After the
fourth step, phase two will begin by presenting the ARID method. The fifth step will be
presenting the ARID method by explaining all the steps of ARID. Next step will be
presenting the design. The development team had to present the design and see whether the
design is suitable for the system. Question and issue will be captured by the development to
fulfill the requirement of the system. Step seven will be brainstorming and prioritizing the
scenario. The stakeholder will suggest different scenarios for the design. If they can't decide,
voting will be taken to choose the suitable scenario for the system. The eighth step will be
applying all the scenarios. Most vote scenarios will be chosen and the development team will
start designing the concept of the system. Last steps will be summarized for the system. Issue
and problem will be listed out and the development team will collect the opinion for the
stakeholder and do changes.
References
● Pagade, G. (2022, November 9). Difference between cohesion and Coupling.
Baeldung on Computer Science. Retrieved February 15, 2023, from
https://www.baeldung.com/cs/cohesion-vs-coupling
● Altvater, A. (2019, May 1). What is N-Tier Architecture? How It Works,
architecture/
ict.com/gcse_new/networks/peer_peer/miniweb/pg5.htm
cons/
Page 37
● Roomi, M., & Roomi, M. (2020, November 15). 7 Advantages and
https://www.hitechwhizz.com/2020/11/7-advantages-and-disadvantages-
drawbacks-benefits-of-p2p-network.html
Community . https://dev.to/karanpratapsingh/system-design-n-tier-
architecture-4j82
architecture-cdf47a14d789
architecture/
ict.com/gcse_new/networks/peer_peer/miniweb/pg5.htm
https://intellipaat.com/blog/what-is-client-server-architecture/
cons/
Page 38
https://www.hitechwhizz.com/2020/11/7-advantages-and-disadvantages-
drawb acks-benefits-of-p2p-network.html
Community . https://dev.to/karanpratapsingh/system-design-n-tier-
architecture-4j82
architecture-cdf47a14d789
● Padma. (2022, February 8). What are Quality Attributes in Quality Assurance.
Www.h2kinfosys.com. https://www.h2kinfosys.com/blog/what-are-quality-
attributes-in-quality-assurance/
https://resources.sei.cmu.edu/library/asset-view.cfm?assetid=513908
● Berdic Inc. (2020). Top 7 Downfall of SDLC Model and How to Prevent
to-prevent-them
tradeoff-analysis-method-atam/
Page 39
● Software architecture & design introduction. Tutorials Point. (n.d.). Retrieved
February 18, 2023, from
https://www.tutorialspoint.com/software_architecture_design/introduction.htm
#:~:text=Limitations&text=Lack%20of%20tools%20and
%20standardized,architectural%20design%20to%20software
%20development.
architectural-view-model-in-software-ec407bf27258
https://www.techtarget.com/searchnetworking/definition/loose-coupling
deferral/
● Cao, J., Wei, J., & Qin, Y. (2013). Research and application of the four-tier
architecture. Proceedings of the 2013 the International Conference on
Education Technology and Information Systems. https://doi.org/10.2991/icetis-
13.2013.173
● Kirvan, P., & Froehlich, A. (2022, March 22). What is the application layer?
Networking. Retrieved February 19, 2023, from
https://www.techtarget.com/searchnetworking/definition/Application-
layer#:~:text=The%20application%20layer%20sits%20at,different
%20computer%20systems%20and%20networks.
Page 40
● Dan Stearn (2011) Quality Attribute
https://users.csc.calpoly.edu/~djanzen/courses/common/qualityDefinitions.htm
l
● Geeksforgeeks (23 Dec 2020) Active Review for Intermediate Designs (ARID)
in Software Architectures https://www.geeksforgeeks.org/active-reviews-for-
intermediate-designs-arid-in-software-architectures/
Page 41