Architectural Guidance for Composite Smart Clients

本文详细阐述了软件开发过程,从需求分析到最终实现的具体步骤,包括整体用户案例设计、基础设施服务实施与测试、使用案例细化及工作项设计等内容。特别强调了工作项的设计原则和模块化的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Outlining the Development Process

  1. First requirement analysis, overall user case
  2. Overall Shell-design
  3. Shell implementation and tests
  4. Infrastructure services implementation and tests
  5. Use Case Analysis
  6. Overall WorkItem design
  7. Use Case refinement
  8. Final WorkItems design and packaging
  9. WorkItem implementation and tests

Indentifying WorkItems

                RootWorkItem acts as central entry point for global services and WorkItems added by modules.

                ModuleController WorkItem acts as a root WorkItem within a module.

                Firs-level WorkItems are directly added to RootWorkItem or the ModuleController WorkItem without having any other parents in between. They are entry points into a specific business-related task.

                Design WorkItem based on use case diagram, in most cases, one WorkItem and user case is 1:1 mapping, WorkItems are nothing else than use case controllers implement the UI processes necessary for completing a use case(task) and putting together all the required parts for doing so.

                Relationships between use cases can be of two different types: a use case is either a sub-use case of another use case  or use case is used by many other use cases and not only by its own parent. Pure sub-use cases are sub-WorkItems that are not accessible from outside their parents. Use case used by many other use cases in addition to its own parent need to be accessible directly or through their parent WorkItem. When a use case logically belongs to parent use case, but it does not share state, context, or anything else with other sub-use cases and that it does not also depend on shared state, context or other commonalities. To avoid unnecessary overhead in that case, you should also make these WorkItems first-level WorkItems, such as “Find Stock” and “Find Business”.

Packaging WorkItems into Modules

Basically, one package logically related WorkItems that address the same space of business into a module. The following are also required for deciding how to package of WorkItems into Modules:

  1. Security. Modules can be configured based on role membership of a user.
  2. Configurability.
  3. Reusablility.

If the configuration requirements, security requirements and reusability requirements are equal for some of the WorkItems that are outsourced into separate modules, one can package them into one module instead of three modules.

CAB Infrastructure Usage Guidelines

Relationship between use cases represent interaction between use cases. Two types of interaction between components exist in CAB:

  1. Active communication through an implementation of the command pattern
  2. Passive communication through event broker system

Using the Event Broke System

Use the event broker for loosely coupled types of communication. That means if a CAB component(WorkItem, controller,presenter,SmartPart,Service)wants to provide information to other without getting immediate response and without requiring knowing who receives events, the event broker is the right way to go.

Using the Command Pattern

If your component needs something to be done immediately by another component or is passing control on to this other component, the Command Pattern infrastructure can help accomplish these goals. Use commands for launching WorkItems (or sub-WorkItems) instead of events.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值