- 1、本文档共28页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第二章软件开发过程及其组织讲解
2.1?软件开发中的困难 一、软件开发的基本知识 1、软件开发过程的两个转换:首先是从用户的理解到程序员的理解,其次是从程序员的理解到程序的实现。 2、两个转换的基本情况:第一个转换是用户对软件功能的理解和程序员对软件功能的理解之间的转换。保证这一转换顺利完成的手段就是利用尽可能标准化的方法编写程序设计任务书,用明确的语言或图形、表格,把程序要处理的信息的内容、格式、来源、去向、存储与处理清楚的表达出来,作为双方共同的理解。 第二个转换所要解决的是人和机器之间交流与协调问题:人和机器之间在思维方式、工作方式上都有许多根本区别。做好第二个转换的关键在于程序员的知识水平与实际经验。3、对于单个程序员来说,做好软件工作的关键是以上两个转换。 二、大型软件开发中的困难(大题) 当程序的规模超?出一个人的力量范围时,一系列新的、更难以克服的困难就出现在人们的面前了。(1)一致性的保持成为十分困难的问题。(2)测试的困难大大增加。????[名词]水波效应:当我们修改程序的某一处错误时,由于没有充分考虑到这一修改对相关部分带来的影响,结果出现新的错误。????黑箱检验方法(只能证明程序有错而不能证明程序没错) (3)工作进度难以控制。(与其他工作相比,大型软件开发中的进度控制是非常困难的)(4)文档与代码协调十分困难。(文档包括:功能说明书、总体设计、各模块的设计任务书、每个部分的研制报告、测试报告,直到最终的验收报告和给使用者的用户手册)(5)版本更新带来的困难。(大量的工作在于审核与回顾)总之,如果说单个程序员的软件开发工作面临的困难是一分的话,那么多人参加的大型软件开发工作面临的困难将是十分的,或者更多。 三、困难产生的原因 原因是复杂的、多方面的,不能得意地归结为程序员或软件工作者的弱点:·首先,这些困难来自大系统的复杂性。·其次,许多具有主动性的个人之间的组织与协调本身也会带来大量的困难。·另外,各个应用领域之间的差别也导致这些困难的加重。·最后,时间的因素、变化的因素也给软件开发工作带来许多困难。软件危机的研究与克服,是当代人类思想发展的前沿课题之一。 2.2??软件开发方法的发展 软件开发的方法:结构化程序设计、软件工程方法、面向对象的方法、即插即用的程序设计方法、可视化设计编程 2.2软件开发方法的发展 软件开发过程中的角色和任务:22-23角色: 任务:用户: 提出要求、验收、使用、要求修改项目负责人: 分析需求、向程序员分配任务、验收程序员的工作成果(代码和文档)、对这个软件进行联调程序员: 编写程序和文档、调试自己的程序、向项目负责人提交成果计算机: 无 一、结构化程序设计: 1、《程序结构与设计的技术》一书中关于好的程序结构的各种看法:(1)它能够保证程序正常地,按照功能说明书运行;(2)它具有灵活性,没有错误,即使有了错误也能够很快地改正;(3)它的文档齐全,一旦需要变更,很容易找到应当改动的地方;(4)它运行速度快;(5)它在经济上能够保证投资很快地得到回报。 2、程序的结构分解成三种基本模块:处理单元、循环机制、二分决策机制。问题的关键在于合理地划分模块 3、模块的划分应当符合以下三条基本的要求:(1)模块的功能在逻辑上尽可能地单一化、明确化,最好做到模块与任务的一一对应,即每一个模块实现一项明确的任务,反之每项任务仅由一个模块来完成。(凝聚性)(2)模块之间的联系及互相影响尽可能地少,对于必需的联系都应当加以明确的说明,如参数传递,共享文件的内容民格式等。(各种联系及相互影响称为耦合,应当尽量避免逻辑耦合,而仅限于数据耦合。) (3)模块的规模应当足够小,以便使它本身的调试易于进行。??如果一个软件能够分解成满足上述三条原则的模块,那么它就可以称为有良好结构的软件,能够避免前面所讲的各种问题。实施这种方法应当采取自顶向下的方法。自上而下、逐步分解的办法。 4、结构化程序设计的基本思想 24 a限制甚至不用GOTO语句,绝对禁止超越模块边界的GOTO语句 b子程序尽可能做到只有一个入口、一个出口 c程序设计应当尽量明确、清晰,包括适当的注释,书写格式体现层次结构,变量名称尽量具有逻辑意义 d程序编写的同时完成文档编辑,不拖时 ★结构化程序设计方法主要是为程序员服务的。 ○结构化程序设计方法的缺点:增大了程序工作量,增加了编辑中的麻烦与琐碎的工作,并且降低了程序的运行效率。但这种是为保证软件的可靠、准确度与易于修改付出的代价。 二、软件工程的方法 1、工程思想的核心有两点:标准化的表达方法与规范化的工作步骤。2、软件工程的产生背景:由于
您可能关注的文档
- 第二章股东与股东权讲解.ppt
- 第二章美术字-变体美术字讲解.ppt
- 第二章肿瘤讲解.ppt
- 第二章自然环境中的物质运动和能量交换讲解.doc
- 第二章船舶和船员讲解.ppt
- 第二章航空运输经讲解.ppt
- 第二章药物制剂的基本操作讲解.ppt
- 第二章行政法主体讲解.ppt
- 第二章计算机基础知识讲解.ppt
- 第二章计算机系统基础讲解.ppt
- 中国国家标准 GB/T 45390-2025动力锂电池生产设备通信接口要求.pdf
- 中国国家标准 GB/T 45393.2-2025信息技术 建筑信息模型(BIM)软件 第2部分:参数化模型.pdf
- GB/T 45393.2-2025信息技术 建筑信息模型(BIM)软件 第2部分:参数化模型.pdf
- 《GB/T 45393.2-2025信息技术 建筑信息模型(BIM)软件 第2部分:参数化模型》.pdf
- GB/T 10184-2025电站锅炉性能试验规程.pdf
- 海尔智家股份有限公司海外监管公告 - 海尔智家股份有限公司2024年度环境、社会及管治报告.pdf
- 上海复旦张江生物医药股份有限公司2024 环境、社会及管治报告.pdf
- 中国邮政储蓄银行股份有限公司中国邮政储蓄银行2024年可持续发展报告.pdf
- 豫园股份:2024年环境、社会及管治(ESG)报告.pdf
- 南京熊猫电子股份有限公司海外监管公告 - 2024年度环境、社会及治理(ESG)报告.pdf
文档评论(0)