




已阅读5页,还剩26页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第四章软件开发工具的技术要素 4 1基本功能与一般结构 一 基本功能 五个方面 1 提供描述软件善及其开发过程的概念模式 协助软件开发售货员认识软件工作的环境与要求 合理地组织与管理软件开发的工作过程 任何软件开发工具都具备这种功能 简答 概念模式包括几个主要方面 概念模式包括几个主要方面 对软件的应用环境的认识和理解对预期产生的软件产品的认识与理解 对软件开发过程的认识与理解 2 提供存储和管理有关信息的机制与手段 3 帮助使用者编制 生成及修改各种文档 4 帮助使用者编写程序代码 即代码生成 5 对于历史信息进行跨生命周期的管理 把项目运行与版本更新的有关信息科学地管理起来 完整的 一体化的软件开发工具应当具备以上这些功能 二 一般结构 中心位置的是总控部分和人机界面 一方面 人机界面面对不同类型的用户另一方面 总控部分面对着系统内部的各种功能与各种信息 它要保证各部分之间相互的协调一致 保证各部分之间信息有效地 准确的流通 系统中和个重要部分是信息库及其管理 信息库内容的丰富程度则是软件开发工具的功能与作用的最根本的保证 最主要的两个信息出口 代码生成与文档生成 另一个技术要求是项目管理和版本管理 4 2总控部分及人机界面 处于中心的位置 1 软件配置或集成的问题其实质是要设立一个有效的总控部分 能够在各个具体工具之上实现信息的正确传递与转换 帮助人们完成协调与配合的工作 从而形成一个统一的 完整的支撑环境 并能过一个统一的 友好的人机界面与用户对话 2 总控和人机界面是使用者和工具之间联系的桥梁 必须严格遵循面向使用者的原则 对用户来说 人机界面就是系统本身 3 软件开发过程的一个周期中包括的五个阶段及各阶段的任务 可能出大题 1 需求分析阶段需求分析阶段的任务是建立模型 具体说 首先应当建立志软件所处领域或环境的模型 即 企业模型 其次 建立起软件所要处理信息的静态模型 即数据环境 第三 建立起信息流通的模型 即信息的来源 去向 存储及处理的逻辑过程 2 分析设计阶段需求分析阶段的基本任务是完成系统的总体设计 包括数据结构的详细设计 处理过程的详细设计 子系统或模块的划分以及它们之间相互联系的具体规定 还就完成屏幕设计 报表设计 数据库的物理设计 3 编码阶段是指编写软件的阶段 这里是实际的程序代码的产生点 手工的编程不可能完成避免 4 测试阶段任务是对已经完成的各个模块或子系统进行试算 调整 以便最终形成完整的软件 5 运行维护阶段任务是组织和管理软件的日常运行 收集运行中的状态信息及出现的问题并及时地进行局部的修改与完善 4 总控部分和人机界面的设计原则是什么 在技术上可以归纳为三条基本原则 面向使用者 保证信息的准确传递 保证系统的开放性 或灵活性 第一条原则是面向用户的原则 两个方面 一方面是总控部分对各部分的调度与安排应当符合上述模式 另一方面向用户提供的统一界面就体现这个模式 模式见书 第二条原则是保证各部分之间信息的准确传递 第三条原则是保证系统的开放性或灵活性 理想的结构应当是模块式的 易于裁剪的 以上三项基本原则是对整个软件开发工具而言的 但是它们的实现主要体现在总控部分和人机界面这个中心环节上 这也正是软件开发工具真正发挥作用的要害和难点所在 因此 这些原则就成为软件开发工具研制者和使用者关心的焦点 4 3信息库及其管理 信息库是软件开发工具的基础 合理的组织信息库的内容 加强信息库的管理功能 是软件开发工具的又一个重要的技术要素 信息库的技术考虑主要涉及四个问题 信息库的内容 信息库的组织方式 信息库的管理功能 历史信息的处理方法 一 信息库的内容 信息库中需要存放四大类信息第一类信息是关于软件应用的领域与环境的第二类信息是设计成果 包括逻辑设计与物理设计的成果 主要包括 数据流程图 数据字典 系统结构图 数据库逻辑设计 各模块的设计要求以及由此形成的设计文档 第三类信息是运行状况与测试的记录 第四类信息是有关项目管理与版本管理的信息 这属于跨生命周期的信息 对单独一次开发似乎用处不大 但对于长期的 持续的 不断更新的软件则是十分重要的 二 信息库的组织方式 三种 1 集中存储方式 最初采取 就是建立一个庞大的数据库 把各种信息都存放在这个数据库存中 页而各种工具 或实现单项功能的模块则围绕在这个信息库的周围 进行操作 优点 想法比较自然 而且充分利用已有的数据库技术 比较容易保持一致性 缺点 与模块化的要求相冲突 2 分散存储把信息分别存入不同的数据库 由不同的功能模块来处理 优点 易于变更和裁剪 一部分发生变更 不致影响整个系统 缺点 每个模块都要有自己进行一整套增删改的操作 且各部分之间的一致性无从保证 3 逻辑上统一 物理上分散 设立统一的信息库管理模块来进行管理 通过信息库管理模块来对分散的各个数据库进行存取 并进行一致性的检查与维护 优点 数据库与模块都实现了模块化 既保持了一致生 又保持了灵活性 总之 由于信息库的内容众多 结构复杂 是一个比较困难的问题 需要认真地研究民设计 三 信息的管理功能 1 采用统一的信息库管理模块的结构方式 这个模块应具有哪些功能 1 录入更新 2 使用查询 3 一致性维护2 与一般数据库管理系统不同的主要有两点首先 信息之间逻辑联系的识别与记录 其次 如何实现定量信息与文字信息的协调一致 上述两个困难的根源都在于数据之间的逻辑关系的认识与表达 目前尚无十分令人满意的解决办法 四 历史信息的处理方法 1 信息库的另一个问题是如何处理历史信息 实际操作中有两个困难 1 一个是历史信息的数量太大 占用存储设备过多 2 另一个是历史信息格式不一致 难以有效地利用 2 解决办法 1 前一个问题一般采用脱机备份的方法解决 2 解决后一个问题是十分困难的 加强标准化 稳定数据结构只能使这个问题得到一定程度的解决 任何标准化都不是一成不变的 数据结构的稳定是相对的 变更则是绝对的 这个问题至今尚无令人十分满意的解决办法 4 4文档的生成与代码的生成 使用者从软件开发工具得到的最主要的帮助有两种方式 文档生成与代码生成 软件工具的起点也就是这二者 一 代码生成 输出代码是这个模块的目标 1 代码生成器的基本任务是根据设计要求 自支地或者半自动地产生相应的某种语言的程序 从输入 输出四个方面的内容就可以抓住代码生成中的技术关键 教材P58图4 6 2 代码生成器的输出是程序代码 输出的代码有两种情况 某种高级程序设计语言的代码优点 使用者可以在这个基础上进一步修改加工 即利用自动生成模块作为原型 在此基础上形成自己所要求的系统 或系统的一部分 缺点 功能较死 效率不高 某种机器 包括硬件和操作系统 环境下可运行的机器指令 优点 可以直接运行 如果不合要求可以立即调整命令和参数重新生成一遍 缺点 机器代码一般无法直接修改 对机器的硬件软件环境的依赖很大 后者不如前者应用的多一些 需要强调的是 程序归根到底是人编的 任何工具都只能发挥帮助和支持的作用 而不能完全代替人的工作 3 代码生成器的输入有三个方面 1 信息库中存储的有关信息 2 使用者通过人机界面输入的命令 参数 3 其它要求和用于生成代码的程序框架及组件 4 生成代码时依据的是三个方面的材料 与上题是一致的 1 信息库里已有的有关资料 在一个一体化的环境中 代码生成必须充分利用信息库中的各种资料 这不只是为了节省重复收集信息的劳动 更重要的是为了保证系统的统一 2 各种标准模块的框架和构件 事实上 代码生成的技术无非是根据人们对某一类模块的编程经验 归纳出一些一般框架或一般构件 事先存放在机器中 在实际使用时根据当时输入的参数 填入框架或重新组合构件 从而形成一个新的程序段落 3 使用者当时通过屏幕前的操作送人的信息 信息库中不可能已经存人了代码设计所需要的全部信息 还有相当一部分要求或参数是在编码时才确定的 因此代码生成决不会是完全隐藏在机器内部的 二 文档生成 比代码生成更难 文档生成的功能与代码生成相比 数量更大 内容更复杂 文档生成包括三大类 文章 表格 图形 画图已经不是困难的问题 困难是把图形的含义与信息库中的内容有机的联系起来 把信息库中的内容用人们一目了然的图形表示出来有一定的难度 表格比较容易按信息库当前的内容输出 文章是最难处理的 写好系统分析 设计的报告或者用户手册决不是技术问题 目前见到的文档生成器大多数只能做到提供一个标准和框架 提醒人们完整地 确切地表达设计思想 哪类程序易于生成 哪类程序难于生成 为什么 一般来说 对话屏幕 输入屏幕 输出报表 菜单控制结构等类型的模块比较容易生成 因为它们的处理过程比较规范 比较容易通过一些参数来加以描述和规定 而对于统计分析 数据加工 决策判断等类型的模块则比较难以生成 因为它们的灵活程度较大 4 5项目管理与版本管理 项目管理与版本管理的核心问题 跨生命周期的信息管理问题 项目管理与版本管理的关键问题 历史信息的处理 一 项目管理 以项目数据库为中心解决问题的思路 项目数据库实际上是信息库的一个组成部分 它记录的是项目本身进展的各种有关信息 项目管理的关键是质量 进度 资源配置 费用 四个基本问题 AD Cyvle的总框架中 对项目管理应当考虑的范围给出如下规定 也就是项目管理的任务 1 研究与确定开发工作的方针与方法 2 开发任务的划分与分工 3 资源状况 4 人员情况 5 变更情况 6 质量情况 项目数据库的内容应当支持项目负责人做好以上各项工作 二 版本管理 主要内容是 各个版本的编号 功能改变 模块组成 文档状况 推出时间 用户数量 或用户名单 用户反映 封存情况等 练习 名词解释软件配置 集成 项目管理简答与论述试述版本管理的意义与方法 软件开发过程中设计的信息类型有哪些试论信息库的管理功能 软件开发工具的一般结构有哪些 答案软件开发工具理想的系统结构应该是什么样的 处理历史信息时遇到哪两个问题 以何种方法解决 代码生成器的基本任务是什么 试论信息库的管理功能 代码生成器的代码输出方式有哪几种 优 缺点是什么 哪类程序易于生成 哪类程序难于生成 为什么 代码生成器依据哪些资料工作 信息库的组织方式有哪些 项目数据库的内容应当支持项目负责人做好哪些工作 版本管理的内
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025企业使用的合同范本
- 脊柱摄影相关课件
- 2025年中考消防考试题目及答案
- 工程机械海外推广方案(3篇)
- 2025年甘油胶水:UV胶水项目提案报告
- 运煤通道改道工程方案(3篇)
- 胶带工厂安全培训内容课件
- 河北本地吊装工程方案(3篇)
- 车间复工安全培训报道课件
- 锂电锯专业知识培训内容课件
- 建设项目日照分析报告
- 2024八年级数学上册第12章一次函数12.1函数第1课时上课课件新版沪科版
- 一年级新生家长会课件(共25张课件)
- 第八届全国职工职业技能大赛(网络和信息安全管理员)安徽选拔赛试题及答案
- 2024年秋新译林版英语三年级上册 Unit 3第1课时 Cartoon time 教学课件
- (部编版)统编版小学语文教材目录(一至六年级上册下册齐全)
- 送教上门记录24篇
- 2025届广东省佛山市南海区数学七上期末统考试题含解析
- JGJT384-2016 钻芯法检测混凝土强度技术规程
- 《大学生美育》 课件 第七章 艺术美
- 《智慧农业关键技术与装备》课件-第09章 农业信息传输技术概述
评论
0/150
提交评论