第1章商务解决方案设计第2章收集和分析信息第3章解决方案的构思第4章概念设计的创建第5章逻辑设计的创建第6章物理设计的创建第7章表示层的设计第8章数据层的设计第9章设计安全规范第10章完成计划阶段第11章稳定和部署的方案基于.NET的需求分析和解决方案设计第10章完成计划阶段整合设计的考虑事项管理功能的计划将来阶段计划创建技术说明书整合设计的考虑事项可扩展性的设计方法可用性设计方法可靠性设计的方法性能设计的方法互操作性设计的方法全球化和本地化设计方法10.1整合设计的考虑事项可扩展性的设计方法可扩展性向上扩展与向外扩展可扩展性的设计方法原则10.1.1可扩展性的设计方法可扩展性可扩展性是指增加资源从而提高服务生产力的能力对比其它因素,设计对应用程序的可扩展性的影响最大硬件调优产品调优代码调优设计调优10.1.1可扩展性的设计方法服务能力处理能力向上扩展向上扩展与向外扩展ScalingoutDesigningforscalability服务能力处理能力向外扩展向上扩展改善现有服务器的处理硬件方法增加内存,增加处理器,加快处理器,迁移应用到一台更强劲计算机向外扩展将处理负载分布到多台服务器上方法:使用多台服务器10.1.1可扩展性的设计方法可扩展性的设计方法指导方针设计进程使得它们无须等待有效地管理会话状态设计进程使得它们无须竞争资源设计进程可交换性设计应用程序元素互换性隔离资源和行为10.1.1可扩展性的设计方法可用性设计方法可用性可用性设计方法技术10.1.2可用性设计方法可用性可用性衡量一个应用程序可以用来处理服务请求的时间与计划运行时间的比可用性=(MTBF/(MTBF+MTTR))×100MTBF:故障间平均时间,应用程序在故障发生前的平均运行时间MTTR:恢复平均时间,发生故障后修补和恢复服务所需的平均时间10.1.2可用性设计方法假设AWC公司的计划运行时间是连续1000小时,如果在这段时间中发生了2次1小时的故障停机,那么AWC公司系统的可用性是多少?MTBF=1000/2=500小时,MTTR=1小时,可用性=(500/(500+1))×100=99.8%可用性设计方法技术减少计划的停机时间通过使用群集减少未计划的停机时间使用网络负载均衡使用RAID做数据存储隔离关键任务应用程序使用队列10.1.2可用性设计方法可靠性设计的方法可靠性可靠性设计的方法任务10.1.3可靠性设计的方法可靠性可靠性是应用程序提供准确结果的能力应用程序故障原因错误代码缺少质量软件工程过程测试不充分与外界服务或应用程序交互更改管理问题更改操作条件操作失误特殊事件缺少实时监控和分析硬件故障环境问题10.1.3可靠性设计的方法可靠性设计的方法任务规格书中的文档可靠性要求使用一个好的架构基础结构在应用程序中包含管理信息使用冗余性使用质量开发工具使用定期的应用程序可靠性检查实现错误处理减少应用程序的功能性而不是完全将其舍弃10.1.3可靠性设计的方法性能设计的方法性能目标和指标定义性能需求10.1.4性能设计的方法性能目标和指标应用程序的性能由指标来定义,例如事务吞吐能力和资源使用率确定性能目标业务目标是什么?解决方案的关键功能是什么?不同用户要求的特性是什么?10.1.4性能设计的方法定义性能需求确定约束决定特性规定负载根据用例和使用场景将使用该应用程序的客户端个数包括预算、时间表、基础设施以及开发工具和技术的选择10.1.4性能设计的方法互操作性设计的方法互操作性不同类型的互操作性设计的方法10.1.5互操作性设计的方法互操作性互操作性指的是系统在各种异构的计算环境中成功运行的能力带来的好处:减少操作成本和复杂性更容易的部署更好的投资回报10.1.5互操作性设计的方法不同类型的互操作性设计的方法网络互操作性:连接不同的网络系统数据互操作性:在不同格式和存储系统间移动数据应用程序互操作性:为应用程序提供一个公共的平台管理互操作性:跨系统的管理维护任务参考多个系统间相互通讯而无需使用公共协议的能力参照应用程序获取并使用存储在结构化和非结构化存储系统(如数据库、文件系统和e-mail存储)中数据的能力参考确保新的n层应用程序和现有应用程序、业务逻辑和数据之间互操作性所必需的基础设施关注于组织里的用户账号管理、性能监控以及异类应用程序调优等任务10.1.5互操作性设计的方法全球化和本地化设计方法全球化设计本地化设计全球化和本地化设计方法考虑要素全球化和本地化设计方法最佳实践10.1.6全球化和本地化设计方法全球化设计设计和开发应用程序使得能够在多种文化和多个地区中使用应用程序的全球化包括:确定要支持的文化和地区设计支持这些文化和地区的特性编写可以在这些文化和地区中正常运行的代码10.1.6全球化和本地化设计方法本地化设计将一个全球化的应用程序与一种特定文化和地区相适应的过程,为每一种文化使用单独的资源资源文件的形式:.txt、.resx、.resources创建应用程序的本地化版本,必须确保:代码块与数据块分离应用程序代码可以准确读取数据,不受文化和地区的影响10.1.6全球化和本地化设计方法全球化和本地化设计方法考虑要素语言因素格式化因素字符串相关因素用户界面因素消息菜单和对话框图标和位图存取和快捷键用户界面控件10.1.6全球化和本地化设计方法全球化和本地化设计方法最佳实践技术上使用Unicode作用字符编码标准来表示文本实现多语言用户界面文化和政治上在所有文本中避免俚语、俗语和晦涩的措辞避免在其它文化和地区中使用带种族主义或冒犯性的位图和图标图案用户界面将所有用户界面元素存储在资源文件、消息文件或一个私有数据库中只把那些需要本地化的字符串放在资源文件中10.1.6全球化和本地化设计方法第10章完成计划阶段整合设计的考虑事项管理功能的计划将来阶段计划创建技术说明书管理功能的计划计划监控的方法数据移植的设计方法创建许可说明书的方法10.2管理功能的计划计划监控的方法监控监控工具10.2.1计划监控的方法监控监控确保了应用程序正常运行,并且工作在最佳水平监控计划定义操作环境监控解决方案的过程监控计划元素资源和它们的临界值性能监控趋势分析失败监测错误监测事件日志通知工具10.2.1计划监控的方法监控工具性能计数器事件日志服务控制器10.2.1计划监控的方法数据移植的设计方法数据迁移是指把数据从一个现有的解决方案移动到一个新的解决方案迁移计划描述从现有系统或应用程序到新的解决方案的迁移迁移计划的元素迁移策略工具迁移原则迁移过程测试环境回滚计划10.2.2数据移植的设计方法创建许可说明书的方法为开发阶段和部署阶段提供许可规范确保你对需要的产品有足够的许可10.2.3创建许可说明书的方法第10章完成计划阶段整合设计的考虑事项管理功能的计划将来阶段计划创建技术说明书将来阶段计划计划部署阶段的方法稳定阶段的计划方法部署阶段计划10.3将来阶段计划计划部署阶段的方法开发计划描述解决方案开发过程提供将要开发内容的技术细节开发计划元素包括:开发目标权衡方法设计目标标准和最佳实践版本和源代码控制构造过程交付策略设计和模式开发团队培训10.3.1计划部署阶段的方法稳定阶段的计划方法测试计划描述了用来计划、组织和管理项目的测试行为的策略和方法测试计划包括的元素:测试计划的示例先导计划(试运行计划)描述了团队将如何从候选发布版本过渡到测试准备区测试方法职责要测试的特性和功能期望测试结果测试过程假定的时间表10.3.2稳定阶段的计划方法部署阶段计划一个部署计划:讨论了可能影响成功部署的因素包含了详细的部署原则指导部署阶段部署计划元素包含:部署范围部署规模组件架构部署时间表部署资源解决方案支持培训协调站点安装过程10.3.3部署阶段计划第10章完成计划阶段整合设计的考虑事项管理功能的计划将来阶段计划创建技术说明书创建技术说明书技术说明书技术说明书文档的元素课堂练习检查测试计划和技术规范10.4创建技术说明书技术说明书一系列参考文档,通常包含:物理设计的产出品类规范组件模型度量标准网络和组件拓扑开发人员使用技术规范来限定工作产品的范围和给出定义技术规范的示例接口定义注册表项需要安装的字节数DLL和assembly的名称强名称和键影响部署的技术细节10.4.1技术说明书技术说明书文档的元素架构概述描述解决方案将实现的架构对象模型描述解决方案的对象模型接口包含每一个接口的方法的代码和细节代码流描述每一种方法的操作错误代码描述了用于错误处理的错误代码错误日志描述了不同的错误如何处理和记录日志配置描述了解决方案如何被注册到目标计算机上支持的文档列出了用来描述解决方案的文档,例如功能规范和他们的位置问题描述了解决方案的任何已知问题10.4.2技术说明书文档的元素课堂练习检查测试计划和技术说明书练习1:检验测试计划练习2:检验技术说明书10.4.3课堂练习检查测试计划和技术说明书回顾学习完本章后,将能够:整合设计的考虑事项管理功能的计划将来阶段计划创建技术说明书