Flashcards in L5 - Design Goals Deck (24):
Concurrent Threads can lead to ...
Provides unified interface for a subsystem + consists of a set of public operations + makes use easier
illustrates distribution of components on concurrent processes at runtime
Access Control Matrix
Models access of actors on classes: actors (rows) + classes (columns) + entry (access right)
Global Resource Handling
Describes access rights for different actors. Tool: Access Control Matrix
Addresses nonfunctional requirements (e.g.: performance/latency) + can lead to starvation/deadlocks/fairness
Mapping object model on hardware & software
Initialization + Termination + Failure
Caching of information. Proxy object as local representative for an object in different address space. No frequent information change.
Persistent Data Management
Data is persistent if the values of their attributes live beyond execution (file system: many readers/1 writer OR database: concurrent writers and readers)
Global Access Table
Represents non-empty cell by triple (actor; class; operation): LeagueOwner; Arena; view()
Threads provided by hardware (multiprocessors/multicores)
Thread Of Control
Path through a set of state diagrams where only a single object is active at any time
Centralized Software Control
Fork Sequence Diagram: Procedure-Driven (control in code) OR Event-Driven (control in dispatcher) OR 'Spider' (1 control object)
By what is a class/a class attribute and an instance of a class modeled when mapped to a database?
table (class) - column (class attribute) - row (instance of class)
Threads provided by software
Associates pair (class; operation) with an actor: Arena; view() with LeagueOwner
illustrates dependencies between components at design time/compilation/run time
Decentralized Software Control
Stair Sequence Diagram: Independent Objects (distributed control means better performance but outspread responsibility)
Good System Design foresees ______________.
... fatal failures and deals with them.
Real object too expensive to create/download and doesn't get accessed often.
Access Control. Provides protection for the real object. Different actors with different viewing rights.
Associates list of pairs (actor; operation) with class: Player; play() with Match