- 1、本文档共64页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章 应用软件设计和开发技术A 大字黑体
第6章 应用软件设计与开发技术 6.1 软件工程概述 6.2 软件详细设计的表达 6.3 结构化分析与设计方法 6.4 测试与调试基本技术 6.5 软件开发新技术 回顾概念:计算机软件 软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合 程序 是按事先设计的功能和性能要求执行的指令序列 回顾概念:计算机软件 数据 是使程序能正常操纵信息的数据结构 文档 是与程序开发,维护和使用有关的图文材料 软件的特点 软件是一种逻辑实体,而不是具体的物理实体。因而它具有抽象性 软件的生产与硬件不同,在它的开发过程中没有明显的制造过程 在软件的运行和使用期间,没有硬件那样的机械磨损,老化问题 软件的特点 软件的开发和运行常受到计算机系统的限制,对计算机系统有着不同程度的依赖性 相当多的软件工作涉及到社会因素 软件的特点 软件本身是复杂的 实际问题的复杂性 程序逻辑结构的复杂性 软件的开发至今尚未完全摆脱手工艺的开发方式 软件成本相当昂贵,维护困难 软件分类 1、按功能进行划分: (1)系统软件:能够控制计算机系统各部件(软硬件)协调、高效地工作和进程处理、资源共享管理等 操作系统 数据库管理系统 设备驱动程序 通信处理程序等 (2)支撑软件 工具软件,它帮助软件开发人员开发自己的软件产品 文本编辑程序 程序库系统 支持需求分析、设计、实现、测试和支持管理的软件 集成开发环境(IDE) (3)应用软件 为特定的应用目的而开发的服务性软件 商业数据处理软件 工程与科学计算软件 计算机辅助设计/制造软件 系统仿真软件 智能产品嵌入软件 医疗、制药软件 事务管理、办公自动化软件 计算机辅助教学软件 2、按软件规模进行划分 类别 参加人员数 研制期限 源程序行数 微型 1 1~4周 0.5k 小型 1 1~6月 1k~2k 中型 2~5 1~2年 5k~50k 大型 5~20 2~3年 50k~100k 甚大型 100~1000 4~5年 1M(=1000k) 极大型 2000~5000 5~10年 1M~10M (1) 微型 只是一个人,在几天之内完成的软件。写出的程序不到5百行语句,仅供个人专用。 通常这种小题目无需做严格的分析,也不必要有一套完整的设计、测试资料。不过这并不是说可以随便地不讲任何方法地做。 事实说明,即使这样小的题目,如果经过一定的分析、系统设计、结构化编码以及有步骤地测试,肯定也是非常有益的。 (2)小型 一个人半年之内完成的2千行以内的程序。 例如,数值计算问题或是数据处理问题就是这种规模的课题。 这种程序通常没有与其它程序的接口。但需要按一定的标准化技术、正规的资料书写以及定期的系统审查。只是没有大题目那样严格。 (3)中型 5个人以内在一年多时间里完成的5千到5万行的程序。 这种课题开始出现软件人员之间、软件人员与用户之间的联系、协调的配合关系问题。因而计划、资料书写以及技术审查需要比较严格地进行。这类软件课题比较普遍,许多应用程序和系统程序就是这样的规模。 在开发中使用系统的软件工程方法是完全必要的,这对提高软件产品质量和程序人员的工作效率起着重要的作用。 (4)大型 5至10个人在两年多的时间里完成的5万到10万行的程序。 例如编译程序、小型分时系统、应用软件包、实时控制系统等很可能是这种软件。 参加工作的软件人员需要按二级管理,例如划分成若干小组,每组5人以下为好。在任务完成过程中,人员调整往往不可避免。因此会出现对新手的培训和逐步熟悉工作的问题。 对于这样规模的软件,采用统一的标准,实行严格的审查是绝对必要的。由于软件的规模庞大以及问题的复杂性,往往会在开发的过程中出现一些事先难于做出估计的不测事件。 (5)甚大型 100至1000人参加用4到5年时间完成的具有100万行程序的软件项目。 这种甚大型项目可能会划分成若干个子项目,每一个子项目都是一个大型软件。子项目之间具有复杂的接口。 例如,实时处理系统、远程通信系统、多任务系统、大型操作系统、大型数据库管理系统、军事指挥系统通常现有这样的规模。 很显然,这类问题没有软件工程方法的支持,它的开发工作是不可想象的。 (6)极大型 2000人到5000人参加,10年内完成的1000万行以内的程序。 这类软件很少见,往往是军事指挥、弹道导弹防御系统。 软件的发展分为四个阶段 软件危机 软件危机爆发于20世纪60年代末期,软件总是超出
文档评论(0)