0% found this document useful (0 votes)
212 views

Quality Attribute Workshop For Twitter Clone

This document summarizes the key discussions and outcomes from a quality attribute workshop (QAW) for designing a Twitter clone application. In the QAW, stakeholders discussed functional and non-functional requirements, proposed an initial architectural design with frontend, backend and database layers, identified important quality attributes, generated usage scenarios, prioritized scenarios based on business value, refined scenarios, and developed a utility tree to understand how quality attributes impact architecture and business goals. The overall goal was to design an architecture that meets quality attribute needs such as security, performance, usability and modifiability.

Uploaded by

Dheeraj Kumar
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)
212 views

Quality Attribute Workshop For Twitter Clone

This document summarizes the key discussions and outcomes from a quality attribute workshop (QAW) for designing a Twitter clone application. In the QAW, stakeholders discussed functional and non-functional requirements, proposed an initial architectural design with frontend, backend and database layers, identified important quality attributes, generated usage scenarios, prioritized scenarios based on business value, refined scenarios, and developed a utility tree to understand how quality attributes impact architecture and business goals. The overall goal was to design an architecture that meets quality attribute needs such as security, performance, usability and modifiability.

Uploaded by

Dheeraj Kumar
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/ 4

TWITTER CLONE

Requirements Specification:

1. User should be able to login.


2. User should be able to create his\her account.
3. User should be able to search other users.
4. User should be able to follow\unfollow other users.
5. User should be able to create new tweets.
6. User should be able to see the tweets of other users and able to filter the tweets of the user
he\she is following.

Quality Attribute Workshop:

Step 1: QAW presentation and introduction:

Purpose of this QAW is to identify the system architecture-critical quality attributes, such as availability,
performance, security, interoperability, and modifiability, which are derived from mission or
business goals.

Step 2: Business Presentation by Sponsors:

Business Mission: Functional Requirements:


To create a social networking website 1. Login\Signup.
similar to twitter.
2. Create Tweet.
Motivation:
3. Follow\Unfollow.
1. Connect with people.
4. See other users tweet.
2. Create, maintain, and
nurture social relationships. Non-Functional Requirements:
3. Share out thoughts.
1. Security of password.
User Category:
2. No of users.
There is a single type of user.
3. No of followers\following.

4. No of tweets.

5. Time of availability.

6. History and recovery of tweets.


Step 3: Architectural Plan:

Front-End Back-End Database


(Presentation Layer): (Application Layer): (Data Layer):

1. Login 1. Validate 1. Mongo DB


2. Signup 2. Login server
3. Home page 3. Signup
4. Search 4. DB-Connect
5. Profile 5. New tweet
USER 6. Follow\Unfol
low
7. All Tweets
8. Following
9. Search

Step 4: Architectural Drivers:

1. Easy to use and secure.


2. Easy to make additions of new feature.
3. Faster to develop.
4. High modularity.
5. High performance and availability.

Step 5: Scenario Brainstorming:

 User:
1. User’s personal details(email, password, following, etc.) should be secure.(security)
2. Website should be fast and easy to move between the different pages.(performance)
 Developer:
1. Able to add new feature to the website easily as the development of the website.
(addition of new features)
2. Can develop part of the website independently.(modularity)
3. Can demonstrate the results at every step.(fast development)

Step 6. Scenario Consolidation:

 User:
1. My personal details should be secure.
2. Website should be fast and easy to move between the different pages.
 Developer:
1. Website should be fast and easy to develop and the developer is able to add new
features easily.
2. Website should be presentable at every step.
Step 7: Scenario Prioritization:

Quality Attribute Scenario Business


Attribute Refinement value
Information of the user should be secure and must not be
Security Integrity available to anyone. High
Should be able to see the pervious tweets. In any other case
Tweet History recovery is possible. Medium
Tweet Frequency The number of tweets per day is limit to 50. Medium
Tweet User Tweets User tweets should be shown on his profile. Low
Following
Following count Following and follower count should be visible on profile. Low
Users View Others User should be able to see the tweets of any particular user. Medium
User should be able to find others by searching through the
Search Find Others search bar. Medium
Every user should have unique username so they can be
Username Unique differentiated easily. High

Step 8: Scenario Refinement & elaboration:

 Scenario: User should be able to find other and connect with them.
Elaboration:
1. User can see other users’ username and tweets on the home page.
2. If they want to follow them they can search the username and find the profile of other
users.
3. They can see other users’ profile and tweets. They can follow them and can see their
tweets separately.

 Scenario: User should be able to share their tweets with other.


Elaboration:
1. User can create tweet on the home page.
2. On global list every tweet is visible.
3. All the tweets made by the user are available on his\her profile.

 Scenario: User should be able to differentiate between other users.


Elaboration:
1. Every user have unique username so they can be differentiated using username.
2. Validity of username is checked at the time of signup.

Utility Tree: Understanding business value & impact on architecture:


Quality Attribute Scenario Business Architecture
Attribute Refinement value impact
Information of the user should be secure and
Security Integrity must not be available to anyone. High
Should be able to see the pervious tweets. In
Tweet History any other case recovery is possible. Medium
Tweet Frequency The number of tweets per day is limit to 50. Medium
Tweet User Tweets User tweets should be shown on his profile. Low
Following Following and follower count should be visible
Following count on profile. Low
User should be able to see the tweets of any
Users View Others particular user. Medium
User should be able to find others by
Search Find Others searching through the search bar. Medium
Every user should have unique username so
Username Unique they can be differentiated easily. High

Behavioral - The Command Design Pattern

Design patterns -bootstrap

You might also like