软件工程09实现技术.pptx
《软件工程09实现技术.pptx》由会员分享,可在线阅读,更多相关《软件工程09实现技术.pptx(35页珍藏版)》请在优知文库上搜索。
1、软件工程2023-5-82第第9章章 实现技术实现技术 实现阶段的一个首要任务就是构造合适的程序架构以实现阶段的一个首要任务就是构造合适的程序架构以使得所有的用户需求能够在未来的系统中得到满足和使得所有的用户需求能够在未来的系统中得到满足和体现。体现。 从设计到代码的转换过程不仅具有针对算法过程的实从设计到代码的转换过程不仅具有针对算法过程的实现,同时还要考虑到每个具体项目的约束条件。现,同时还要考虑到每个具体项目的约束条件。 与实现相关的关键技术:与实现相关的关键技术:数据管理策略和方法、数据数据管理策略和方法、数据持久化、持久化、XML、领域特定语言领域特定语言(DSL)、模型驱动架构、模
2、型驱动架构(MDA)、重构、重构(Refactoring)等等。非功能性需求的实现非功能性需求的实现 由于非功能性需求涉及的范围由于非功能性需求涉及的范围广且类型不尽相同,因此需要广且类型不尽相同,因此需要在设计和实现中根据不同的要在设计和实现中根据不同的要求区别对待。求区别对待。 硬件是提升性能的手段之一,硬件是提升性能的手段之一,但算法、资源利用情况等也需但算法、资源利用情况等也需考虑和监控(必要时)。考虑和监控(必要时)。 质量方面(正确性)的需求:质量方面(正确性)的需求:可测试性、程序结构。可测试性、程序结构。 安全方面的要求:传输安全性安全方面的要求:传输安全性、数据安全性、操作安
3、全性。、数据安全性、操作安全性。(入侵与健壮性)(入侵与健壮性)2023-5-83分布式系统分布式系统 分布系统中存在多个控制点,因为有多个分布系统中存在多个控制点,因为有多个子程序需要同时工作,如操作系统中的进子程序需要同时工作,如操作系统中的进程。程。 进程间信息交换的方式和规则是信息领域进程间信息交换的方式和规则是信息领域中一个较为复杂的问题,解决的方法与条中一个较为复杂的问题,解决的方法与条件要求(关键区域)密切相关,如数据库件要求(关键区域)密切相关,如数据库的事务。的事务。 实现要求:同构与异构、对象在网络中的实现要求:同构与异构、对象在网络中的分布管理、同步调用与异步调用等。分布
4、管理、同步调用与异步调用等。2023-5-84同步与异步调用同步与异步调用 同步调用具有的最大优点是所有的进程相互了解同步调用具有的最大优点是所有的进程相互了解各自在通信过程中所处的状态各自在通信过程中所处的状态 同步调用缺点是需要实现相对复杂的同步通信,同步调用缺点是需要实现相对复杂的同步通信,由于发送方和接收方需要相互等待会使得两个进由于发送方和接收方需要相互等待会使得两个进程在总体上的执行速度变慢。程在总体上的执行速度变慢。 异步调用的执行速度通常是比较快的,因为发送异步调用的执行速度通常是比较快的,因为发送方和接收方可以互相独立的工作。方和接收方可以互相独立的工作。 异步调用容易出问题
5、的地方是当缓冲区满的情况异步调用容易出问题的地方是当缓冲区满的情况,这时整个系统运行变慢或者信息可生丢失。,这时整个系统运行变慢或者信息可生丢失。2023-5-85死锁、竞争与活锁死锁、竞争与活锁 死锁的产生、进程的竞争死锁的产生、进程的竞争 活锁又被称为饿死(活锁又被称为饿死(starvation) 解决的方法:调度问题,在公平性和合理性上做解决的方法:调度问题,在公平性和合理性上做出折衷。出折衷。2023-5-86胖客户、瘦客户、三层架构胖客户、瘦客户、三层架构2023-5-87 三层架构实现了视图、业务和数据的分离,提升系三层架构实现了视图、业务和数据的分离,提升系统可维护性的同时也为系
6、统分布提供更好的选择。统可维护性的同时也为系统分布提供更好的选择。XML XML是由是由W3C委员会定义的一种标准化语言,用来描述数委员会定义的一种标准化语言,用来描述数据模型和数据。据模型和数据。2023-5-88Storage Module49Udo Kelter50 XML结构的描述:结构的描述:DTD(Data Type Definition)和)和XSD(XML Schema Definition)。)。 如果如果XML文档对其标准的文档对其标准的DTD或或XSD进行了说明并进行了约束,进行了说明并进行了约束,则称该文档为则称该文档为well formed,指,指定了该定了该XML文
7、档的有效性文档的有效性。XML程序设计程序设计 对于对于XML文档的存储和处理目前已经出现了很多文档的存储和处理目前已经出现了很多可用的软件包或系统,使得每种编程语言都具有可用的软件包或系统,使得每种编程语言都具有了处理了处理XML文档的能力。文档的能力。 XML的处理方式一般有两种:文档对象模型(的处理方式一般有两种:文档对象模型(DOM)或用于)或用于XML的简单的简单API(SAX)。)。 DOM是复杂对象处理的首选,比如当是复杂对象处理的首选,比如当XML比较比较复杂的时候,或者当需要随机处理文档中数据的复杂的时候,或者当需要随机处理文档中数据的时候。时候。 SAX则是以流的方式从文档
8、的开始通过每一节点则是以流的方式从文档的开始通过每一节点进行移动,以定位一个特定的节点。进行移动,以定位一个特定的节点。2023-5-89程序轮子程序轮子 对于大多数经常出现的问题,可以将常见对于大多数经常出现的问题,可以将常见的解决方法通过库函数的形式提取出来作的解决方法通过库函数的形式提取出来作为一种公共的资源共享。为一种公共的资源共享。 库函数可以是免费或者收费的,应尽量选库函数可以是免费或者收费的,应尽量选取那些使用者较多的函数库,因为存在的取那些使用者较多的函数库,因为存在的缺陷可能也要少些。缺陷可能也要少些。 在对应用进行测试时,通常是在假设函数在对应用进行测试时,通常是在假设函数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 09 实现 技术