您的位置:首页 > 其它

SCEA_Common Architectures and Protocols

2008-12-26 15:51 323 查看
1.The role of an architect?[/b]
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?[/b]
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.[/b]
System quality[/b]Definition[/b]
AvailabilityThe degree to which a system is accessible. The term 24*7(*multiply) describes total availability.
ReliabilityThe ability to ensure the integrity and consistency of an application and its transactions.
ManageabilityThe ability to manage the system resources to ensure the availability and performance of a system.
FlexibilityThe ability to address the architectural and hardware configuration changes without a great deal of impact to the underlying system.
PerformanceThe ability to carry out functionality in a timeframe that meets specified goals.
CapacityThe ability to run multiple tasks per unit of time.
ScalabilityThe ability to support the required availability and performance as transactional load increases.
ExtensibilityThe ability to extend functionality.
ValidityThe ability to predict and confirm results based on a specified input or users gesture.
ReusabilityThe ability to use a component in more than one context without changing its internals.
SecurityThe ability to ensure that information is not accessed and modified unless done so in accordance with the enterprise policy.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: