Solution Software Architecture WILP
Answer key: Software Architecture Mid term WILP
State the 3 main software quality attributes? Justify.
There are different
attributes concerning the properties of critical systems and the best methods
to develop them:
Performance —
Availability -
Dependability —
Security —
Modifiability —
The most appropriate
definitions as much as applicable to the University case study.
Define the primary tactics you will use to satisfy these
quality attributes
Availability:
Performance:
Security:
Exact reproduction of this
diagram is discouraged. The student should really understand the real meaning
of what each tactic means will get full credit.
Briefly explain the strategies to protect how intruders
would be protected from exporting important files through mail or Google drive
Your content is stored securely
When you upload a file of
any type to Google Drive, it is stored securely in our world-class data centers.
Data is encrypted in-transit and at-rest. If you choose to access these files
offline, we store this info on your device.
Your Google
Account comes with built-in security designed to detect and block threats like
spam, phishing and malware. Your activity is stored using strong industry
standards and practices.
Drive uses data to improve your experience
To provide
services like spam filtering, virus detection, malware protection and the
ability to search for files within your individual account, we process your
content.
To improve
Drive’s performance and reliability, and to help with troubleshooting in case
of issues while you use Drive, we collect performance data and crash analytics.
We also save this info to help prevent abuse of our services and for analysis.
Anything
which need not be an exact reproduction – even paraphrasing would get full
credit.
Identify two software quality attributes that can be traded
off at the expense of other. Point exactly the logic with good reasoning
Software Quality Attribute Trade-offs
Designers need to analyze
trade-offs between multiple conflicting attributes to satisfy user
requirements. The ultimate goal is the ability to quantitatively evaluate and
trade off multiple quality attributes to arrive at a better overall system. We
should not look for a single, universal metric, but rather for quantification
of individual attributes and for trade-off between these different metrics,
starting with a description of the software architecture.
The ensuing picture provides a
good guideline for understanding the quality attributes trade-off process.
The answer should highlight
how one parameter trades off the other parameter.
Define the term tactics as applied to dealing
with quality attributes. Is there consideration of trade-offs while a tactic is
being considered during design phase?
A tactic is a design decision
that influences the achievement of a quality attribute response—tactics
directly affect the system’s response to some stimulus.
The focus of a tactic is on a
single quality attribute response. Within a tactic, there is no consideration
of trade-offs. Trade-offs must be explicitly considered and controlled by the
designer. In this respect, tactics differ from architectural patterns, where
trade-offs are built into the pattern.
Anything on these lines would
do
Define maximum three points that define a "Good
Architecture"
·
Well
defined modules whose functional responsibilities are allocated on the
principles of
·
Each
module should have a well-defined interface
·
Quality
attributes should be achieved using well-known architecture tactics specific to
each attribute
·
If
an architecture depends upon a commercial product, it should be structured such
that changing to a different product is inexpensive.
·
Creating
/ Consumption of data should be separated in different modules
·
Well
defined processes or tasks that do not necessarily mirror the module
decomposition
·
The
architecture should feature a small number of simple interaction patterns
Any three on
these lines would do
Comments
Post a Comment