Building blocks - TU/ewsinmak/Education/2IMN10/Q1_1617/Homework... · Nature of building blocks and...
-
Upload
truongngoc -
Category
Documents
-
view
214 -
download
0
Transcript of Building blocks - TU/ewsinmak/Education/2IMN10/Q1_1617/Homework... · Nature of building blocks and...
Building blocks:
Connectors:
View – concern – stakeholder (1..*):
Extra-functional requirements (Y + motivation) /N :
• Security:
• Availability & reliability:
• Maintainability:
• Performance and scalability:
Distribution (Y + motivation) /N :
Clarity/Semantics ( ☺ | � | �) + motivation:
2
Building blocks:
Nodes, including disk storage, organized in racks and cabinets including storage, connected to layers
of Routers (all P)
Connectors:
Inclusion (nodes in cabinets, cabinets in pairs), communication links with protocols (VLT, ECMP)
(all P, technology mentioned)
View – concern – stakeholder (1..*):
• Physical (deployment) view.
• Interesting to system engineers, and network administrators concerned with how to build and
configure the system from its components
• And how to deploy Hadoop (where to put name nodes, job trackers)
• Interesting to data analysts using Hadoop, to see data capacity and what performance they may
expect (note that client runs within the cluster)
• Interesting to system acquirers and hardware suppliers to see what hardware to buy or supply.
Extra-functional requirements (Y + motivation) /N :
• Security: N
• Availability & reliability: Y, but rather implicit,
• the cluster runs Hadoop, which ensures reliability by re-execution of failed tasks
• each pair of cabinets has two routers, i.e. two access points and there are multiple
3
routing paths
• Maintainability: N
• Performance and scalability: Y
• Metrics to indicate size of resource such as storage, bandwidth, number and type of processors
• ECMP (equal-cost multi-path routing) protocol for load-balancing network traffic
• System can be scaled up to 64 racks
Distribution (Y + motivation) /N : Y
• because there are many physical machines in this cluster
Clarity/Semantics ( ☺ | � | �) + motivation: ☺, good structure and clear legend
3
Building blocks: (all C)
A hub (broker!) providing services (lookup routing, access control, logging) , Healthcare Information
systems (QHIS), UZI-cards
Connectors:
VPN Connections from the hub to the external information systems, QHISs (C)
View – concern – stakeholder (1..*):
Logical view
• interesting for all stakeholders to that are interested in seeing how the system is organized
(patients, medical staff)
Information view (RW)
• interesting to assessors that want to check whether the system conforms to privacy regulations
regarding storage and exchange of medical data
Development view (not very convincingly)
• Interesting for programmers to see how the software within the hub is (can be) organized in
modules
Extra-functional requirements (Y + motivation) /N :
• Security: Y
• Audit and access control processes, VPN to provide privacy and authorized access to
patient data
4
• Availability & reliability: N
• Maintainability: N
• Performance and scalability: N,
• Although the distribution of data over QHIS is some indication of scalability, the hub may be a
bottleneck
Distribution (Y + motivation) /N : Y
• the data in the QH information systems is located outside the hub at the place where it is collected
Clarity/Semantics ( ☺ | � | �) + motivation: �,
• meaning of colors not explained , hence not clear
• the accompanying text on the web-site is needed to properly understand the model
4
Building blocks: classes indicating the main concepts in mitigating security risks (all C)
Connectors:
Qualified associations labelled with multiplicities, aggregations, and specializations (all C)
View – concern – stakeholder (1..*):
• Logical view, important for all stakeholders that need to understand or explain security concepts,
e.g. users, programmers, communicators
Extra-functional requirements (Y + motivation) /N :
• Security: Y and N,
• Obviously the model addresses security, but it is a meta-model and does not address
a specific architecture or specific architectural elements, but identifies artefacts that should
be present
e.g. processes indicated by green classes to secure assets against risks elaborated in the red
classes.
• Availability & reliability: N
• Maintainability: N
• Performance and scalability: N
• Understandability: Y
• Model defines concepts in risk management and clarifies their relationships
5
Distribution (Y + motivation) /N :
Clarity/Semantics ( ☺ | � | �) + motivation: ☺,
• a very clear domain models for security management of business processes.
5
Building blocks: (all C)
• processes such Client, Trackers , and processes that operate on client data (Mapper, Shuffle,
Reducer)
• storage objects (HDFS, Local)
• lifelines and activations, repetition blocks
Connectors: (all C)
• asynchronous messages (start, launch)
• synchronous messages with return values (read, write)
View – concern – stakeholder (1..*):
• Process view, interesting for testers and integrators that have an interest in putting the system
together and verifying that the parts interact in a proper fashion
• Also a scenario (of a complete map-reduce computation).
Extra-functional requirements (Y + motivation) /N :
• Security: N
• Availability & reliability: Y,
• Implicitly, because Hadoop inherently addresses this issues.
• Explicitly, because we see “heartbeat” message
• Maintainability: N
• Performance and scalability: Y
6
• Concurrency is visible through messages that start threads and nodes, and launch subcomputations
Distribution (Y + motivation) /N : N
Not through the diagram. Of course, it is well-known that Hadoop is a framework deployed on clusters.
Clarity/Semantics ( ☺ | � | �) + motivation: ☺
• Sequence diagram that follows the UML conventions.
6
Building blocks:
• Layers, modules, services components (all C),
• Nodes, such as mainframe running a data base, blade (P)
Connectors:
• dependencies (arrows between layers),
• control flow (horizontal arrows in damage claiming process)
• Implementation relations between services and components
• lines with filled black dots on both ends (to link roles to actors??)
View – concern – stakeholder (1..*):
• Logical view
• Stakeholders such as insurance companies and their customers can see the functionality
offered by the system
• Development view
• We see modules organized in layers, of interest to programmers and developers.
• Process view
• We see how the activity workflow of the damage claiming process. Of interest to system
integrators .
• Deployment view
• We hardware infrastucture and the services deployed on them. Of interest to system
engineers.
7
Extra-functional requirements (Y + motivation) /N :
• Security: N
• Availability & reliability: N
• Maintainability: Y
• Modular organization limits dependencies and thereby increases the maintainability
• Performance and scalability: N
Distribution (Y + motivation) /N : Y
• the technology layer
Clarity/Semantics ( ☺ | � | �) + motivation: �
Much information crammed into a single model
Uses a mix of notational conventions (partly UML)
Nevertheless, it makes clear how an insurance claim is dealt with, both in terms of the process and the
organization of the software
7
Building blocks:
• threads? (C), the accompanying text suggest that we see classes for which is indicated on what
type of thread they are run
• subsystems, groups of threads that handle a specific task (the square boxes) (C),
Connectors:
• Could be flow of control or just dependencies (C)
View – concern – stakeholder (1..*):
• Logical view/development view, for all stakeholders that need to understand the system, users,
developers
• Process view, because we see processes and threads, more interesting for developers than for
system integrators
Extra-functional requirements (Y + motivation) /N :
• Security: N
• Availability & reliability: N
• Maintainability: Y
• Because it shows how the software is grouped into subsystems
• Performance and scalability: Y
• We see concurrency in the form of multithreading
8
Distribution (Y + motivation) /N : N
Clarity/Semantics ( ☺ | � | �) + motivation: �
Nature of building blocks and is unclear and the text on the website does not help much either.
It claims that the diagram is made “To assist others coming up to speed on the architecture of the video decoder”
It is not very successful in doing that.
8
Building blocks:
• Layers (C)
• Actors that provide content to the system (C)
• Databases, Repository (C)
• Interfaces (C, organized according to user status)
• Content management system (a server, C or P)
• Caches (P)
• Presentation blocks, GUIs?(C)
Connectors:
• data (content) flow (C),
• API calls (for policy issues, like access rights) (C)
View – concern – stakeholder (1..*):
• Development view (K & RW):
• we see layers an modules relevant for system developers, like programmers
• Information viewpoint (RW):
• we see how content providers (editors) feed data to databases and how that content gets
distributed to content consumers (internet radio stations and their audience); also we see
representation issues (XML-repository)
• Process view:
• because we can see data flow (K), ingestion of content from sources, fan-out to content
9
distributors (radio stations) and consumers (the latter via the internet)
• also mash-ups an ingest scripts are processes, interesting to system integrators
Extra-functional requirements (Y + motivation) /N :
• Security: Y
• content access management in filtering and rights layer
• Availability & reliability: N
• Maintainability: Y
• because the layering helps to isolate and provide separation of concerns.
• Performance and scalability: Y
• data is flattened and caches are used to provide rapid access
Distribution (Y + motivation) /N : Y
• but not very explicit, reading the reference this become more clear. E.g., the building blocks in the
presentation layer are clients (radio stations, listeners) that are at locations distinct from the data.
Clarity/Semantics ( ☺ | � | �) + motivation: �
The NPR provides a central content database from which various radio stations can distribute content to their
audience using their own presentations formats. However, this
is difficult to infer this from the diagram. The pipeline architecture that shows the flow of data from content
providers to listeners and the issue addressed (COPE) is nevertheless
reasonably clear.
9
Building blocks: (all C)
• hierarchical states, initial states
Connectors: (all C)
• labeled state transitions (labels are press button events)
View – concern – stakeholder (1..*):
Process view interesting for testers and system integrators, but also for end users (watch owners) that
can see which buttons to press, and for how long, to configure the watch.
Extra-functional requirements (Y + motivation) /N :
• Security: N
• Availability & reliability: N
• Maintainability: N
• Performance and scalability: N
Distribution (Y + motivation) /N : N
Clarity/Semantics ( ☺ | � | �) + motivation: ☺-�
Complete state machine that makes it clear how to configure the watch by pushing its 4 buttons, even
though the parameters (173, 185) of function doActivity() are not explained.
Also the negated events NOTS1 and NOTS2 are unclear. Button s4 does not appear in the diagram!
10
Building blocks: (all C)
• actors (roles, so C)
• use cases showing system functionality
Connectors: (all C)
• specialization relationships between actors
• interactions between actors and use cases
• include relationships between use cases
View – concern – stakeholder (1..*):
• Logical view that presents to stakeholders that have an interest in the external visible behavior of
the system, such as end users, acquirers,
Extra-functional requirements (Y + motivation) /N :
• Security: Y
• We see an actor representing an authentication service.
• Availability & reliability: N
• Maintainability: N
• Performance and scalability: N
Distribution (Y + motivation) /N : N
11
Building blocks:
• layers, nested controller modules (all C), perception subsystem (C)
• sensors, actuators (C or P: C because they are not specific, or P because they are physical
entities)
• teammates (P other identical? robots, so physical entities)
Connectors: (all C)
• uni- and bi-directional data flows, labeled with type of communicated data
View – concern – stakeholder (1..*):
• Development view: we see organization of control software in layers and modules of interest to
programmers
• Process view: we see communication between layers which is of interest for testers and
integrators
Extra-functional requirements (Y + motivation) /N :
• Security: N
• Availability & reliability: N
• Maintainability: Y
• Functionality is clearly located in specific layers and modules, and therefore can be
independently developed and modified
• Strict layering of low-,mid-, and high-level controllers limits dependencies.
12
• Performance and scalability: N
Distribution (Y + motivation) /N : Y
Although this is the set of modules found within a single robot, we see modules that address the robot’s behavior
as part of a team. We also see communication with its teammates modelled.
Clarity/Semantics ( ☺ | � | �) + motivation: �
Typo: temamate instead of teammate,
Not clear why communication between ZMP controllers is indicated with a double blue arrow.
Not clear which module generates the “Keyframe commands”
12