Lecture 5 Flashcards
1
Q
Which layers does the strict 3-layer-architecture include?
A
- GUI-Layer (presentation)
- Business-concept layer
- Data management layer
2
Q
What are advantages of layer separation?
A
- reusability
- maintainability
- portability
3
Q
What are influencing factors on software architecture?
A
- Product use (how many users, how used)
- Non functional requirements
- Quality requirements
- Target platform
4
Q
What are quality requirements?
A
- Reliability
- Efficiency
- Changeability
5
Q
What are characteristics of cloud computing?
A
- On demand self-service
- Broad network access
- Resource pooling
- Rapid elasticity (provisioning)
- Measured service (monitoring)
6
Q
What are deployment models of cloud computing?
A
- Public cloud
- Private cloud
- Hybrid cloud
- Community Cloud
7
Q
What are the cloud computing service models?
A
- IaaS
- PaaS
- SaaS
8
Q
What are challenges and threats of cloud computing?
A
- technical issues
- Hosting (location)
- Security
- Prone to attack
- Prone to copy
- Reliability
- Lack of standard (APIs)
- Continuously Evolving
- Compliance
9
Q
What are the principles of implementation?
A
- Verbalization: Significant names, comments, self-documenting language
- Data types suited for the problem
- Refinement: Structuring with levels of abstraction
- Integrated documentation: for example Readme.md
10
Q
What is generative programming?
A
- Automatic generation of program codes
- Generator creates program parts from formalized model
- e.g. Executable UML or Model Driven Architecture (MDA)
11
Q
What is the idea of MDA?
A
- Develop precise models that can be read my machines for automated development of architectures
12
Q
What are the levels of MDA?
A
- Computation Independent Model (CIM)
- Platform Independent Model (PIM)
- Platform Model (PM)
- Platform Specific Model (PSM)
- Transformations
13
Q
What are potential benefits of MDA?
A
- Productivity (automation)
- Portability (via PSM)
- Interoperability
- Maintenance and documentation
14
Q
What are reasons / dimensions for a need for integration?
A
- Autonomy
- Heterogenity
- Distribution
15
Q
What are types of autonomy (integration)?
A
- Design autonomy: independence regarding e.g. data model
- Communication autonomy: Independently decide to communicate
- Execution autonomy: Independent execution and scheduling of inquiries from other components