1 / 26

第十一章

第十一章. 软件工程工具和方法. 内容. 典型的面向对象软件开发工具 EJB 软件体系结构 软件中间件技术. 软件工程工具与方法. 软件工程工具. 软件工程方法. 需求模型. 软件需求工具. 启动方法. 结构化方法. 需求可追踪性. 需求可追踪性. 软件设计工具. 面向数据方法. 程序编辑器. 面向对象方法. 软件构造工具. 编译器与代码生成. 形式化方法. 解释器. 规格说明语言与符号. 调试器. 精化. 测试生成器. 软件测试工具. 验证/证明特性. 测试执行框架. 测试评价. 原型方法. 风格. 测试管理.

nijole
Download Presentation

第十一章

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第十一章 • 软件工程工具和方法

  2. 内容 • 典型的面向对象软件开发工具 • EJB软件体系结构 • 软件中间件技术

  3. 软件工程工具与方法 软件工程工具 软件工程方法 需求模型 软件需求工具 启动方法 结构化方法 需求可追踪性 需求可追踪性 软件设计工具 面向数据方法 程序编辑器 面向对象方法 软件构造工具 编译器与代码生成 形式化方法 解释器 规格说明语言与符号 调试器 精化 测试生成器 软件测试工具 验证/证明特性 测试执行框架 测试评价 原型方法 风格 测试管理 原型化对象 性能分析 评价技术 程序理解 软件维护工具 再工程 缺陷、增强、发行和问题追踪 软件配置管理工具 版本管理 发布与建造 项目计划与追踪 软件工程管理工具 风险管理 度量 过程建模 软件工程过程工具 过程管理 集成CASE环境 以过程为中心的软件工程环境 评审与审计 软件质量工具 静态分析 工具集成技术 其它工具问题 元工具 工具评价 软件工程工具和方法知识域主题的本体结构

  4. 软件新技术七大原则 • 技术原则 • 实用原则 • 主见原则 • 时机原则 • 工具原则 • 期望原则 • 成本原则

  5. 类UNIX系统提供的部分标准软件工具 • grep这个工具在文件中查找匹配正则表达式 • diff这个工具显示代码和文档不同版本间的差异 • rcs、sccs、cvs这些是版本控制系统,管理源代码的变化。目前,cvs被开放源代码社区广泛采用 • sort这个工具可以根据各种不同标准对一个文件排序 • merge合并两个文件 • tr改变一个文件中的指定字符 • tar这个工具将一些文件制作成一个归档文件 • make这个工具控制从许多的源文件中构造软件 • lex、yacc这些是构建词法分析器(Analyzer)和解析器(Parser)的工具

  6. 好编辑器的特征 • 易于使用的命令集 • 强有力的查找功能 • 宏 • 语言感知 • 与其他工具集成

  7. 三种类型的编辑器 • 标准非模态编辑 • 模态编辑 • 基于GUI的编辑

  8. 集成开发环境一般功能 • 程序编辑器 • 与编译器集成,以一种方便的方式支持直接跳到语法错误处,便于编辑。 • 构建控制,对项目所需的所有源文件进行分组,允许项目的编译和构建在一步完成。 • 集成调试器:高级查找功能,包括在程序范围内查找特定符号的能力和在多文件中查找的能力。 • 版本控制,与一个版本控制系统集成;帮助,针对IDE和编程语言扩展帮助功能。 • 与其他工具集成,与外部工具协同工作的能力 • 其他与语言相关的特征,面向对象语言的类浏览,对特定GUI(如Swing)的用户界面生成器

  9. EJB软件体系结构 • EJB(Enterprise JavaBeans),是比较新的分布式对象标准软件体系结构(Framework)。它专门为企业中处理关键事务且事项容量大的应用系统而设计。 • EIB软件体系结构提供了一组相互合作的部件和对象,它们可以扩展,也可以适配在不同应用中使用,大大方便了企业应用的开发。

  10. EJB软件体系结构中的静态对象设计

  11. 界面PartHome(零件产地),PartIF(PartIF)

  12. 实施类PartBean(零件豆)

  13. 把PartBean配置到EJB容器后,得到的对象关系结构

  14. EJB CORBA(通用对象请求代理系统结构) PartEJBHome 零件的对象工厂(可有可无) PartIF PartIF(由IDL定义的界面) Part 没有对应物 PartEJBObject 连接对象(Part_TIE) PartBean 实施对象(Part_Impl) EJB和CORBA中对象结构的比较

  15. Bean的种类 构造后状态 资源管理策略 Entity Bean 在实例池、准备就绪 采用实例池集法,并与数据库同步化 有状态会话期Bean 在实例池、僵化态 僵化对象,然后存入二级存储器 无状态会话期Bean 准备就绪 采用实例池集法 EJB中“Bean”的状态及对应的资源管理策略

  16. Entity Bean的生命周期

  17. 客户机构造Entity Bean“Part”的序列图

  18. 客户机调用Entity Bean运算的序列图

  19. 寻找PartBean并调用其运算的序列图

  20. 软件中间件技术 • 在构造分布系统的过程中,开发人员经常会遇到网络通信、同步、激活/去活、并发、可靠性、事务性、容错性、安全性、伸缩性、异构性等问题。 • 中间件的主旨是简化分布系统的构造,其基本思想是:抽取分布系统构造的共性问题,封装这些共性问题的解决机制,对外提供简单统一的接口,从而减少开发人员在解决这些共性问题时的难度和工作量 。

  21. 主要的公共服务 • 名字和目录服务 • 事务服务 • 安全服务 • 持久化服务

  22. 主要技术与产品 • 事务式中间件 • 过程式中间件 • 面向消息的中间件 • 面向对象中间件 • Web应用服务器 • Web Services中间件 • 其他

  23. 关键实现技术 • 面向消息中间件的关键技术 • 面向对象中间件的关键技术

  24. 要点 • 实际上并不存在评价软件开发工具的某种工业标准。另外,软件开发工具的价格也是很重要的一个决定选用与否的因素。 • EJB服务器利用对象工厂、服务类和集合管理器等样式,主动地控制Bean的生命周期。 • 中间件在某种意义上可以理解为中间层软件,通常是指处于传统系统软件和应用软件之间的中间层次的软件,其主要目的是对应用软件的开发和运行提供更为直接和有效的支撑。

  25. 相关中国系统分析员论文题目 • 论软件开发平台的演变和选用(1994) • 论CASE工具的选用(1995)

  26. 相关世界软件工程大会论文 • A risk-driven method for eXtreme programming release planning • Unifying Artifacts and Activities in a Visual Tool for Distributed Software Development Teams • Sound methods and effective tools for engineering modeling and analysis • CASE at the start of the 1990's • Productivity factors and programming environments • Interactive software development tool: ISDT

More Related