SCEA_Common Architectures and Protocols

1.The role of an architect?

The architect is responsible for creating the blueprint for the system and must consider not only the functional requirement of the system but also the nonfunctional requirement as well. Is the system capable, scalable, secure, extensible? The architect must consider these issues. Architects are responsible for interacting with customers, beta testers, and end users to make sure that user requirements are satisfied.

Picture 1:Balancing architecture, design, and reality.

 

2. Architectural Design and Principle?

The software architecture is the high-level structure of a software system. At this level, all implementation details are hidden. The key difference between architecture and design is in the level of detail.

 

Architecture Terminology:

Abstraction is a term for something that is factored out of a design so

that it can be used repeatedly.

Boundaries are the area where two components interact.

Brittleness is the degree to which small changes will break large portions of the system.

Capabilities are the nonfunctional, observable system qualities, including scalability, manageability, performance, availability, reliability, and security, that are defined in terms of context.

Friction is how much interaction occurs between two components.Friction is measured by how a change in one component affects the other.

Layering is a hierarchy of separation. Surface area is a list of methods that are exposed to the

client.

 

 

Picture 2: Basic 3-tier architecture.

 

3. Capabilities and System Quality.

System quality

Definition

Availability

The degree to which a system is accessible. The term 24*7(*multiply) describes total availability.

Reliability

The ability to ensure the integrity and consistency of an application and its transactions.

Manageability

The ability to manage the system resources to ensure the availability and performance of a system.

Flexibility

The ability to address the architectural and hardware configuration changes without a great deal of impact to the underlying system.

Performance

The ability to carry out functionality in a timeframe that meets specified goals.

Capacity

The ability to run multiple tasks per unit of time.

Scalability

The ability to support the required availability and performance as transactional load increases.

Extensibility

The ability to extend functionality.

Validity

The  ability to predict and confirm results based on a specified input or users gesture.

Reusability

The ability to use a component in more than one context without changing its internals.

Security

The ability  to ensure that information is not accessed and modified unless done so in accordance with the enterprise policy.

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值