1 / 26
文档名称:

软件工程基础知识.doc

格式:doc   大小:115KB   页数:26页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

软件工程基础知识.doc

上传人:酒酿小樱桃 2022/3/3 文件大小:115 KB

下载得到文件列表

软件工程基础知识.doc

相关文档

文档介绍

文档介绍:软件工程基础知识
一.什么是软件?



二.软件危机以及产生软件危机的原因?
,包括软件工程过程和软件管理过程。
评估工具
软件过程的评估,通常采用软件能力成熟度
模型〔Capability Maturity Model,CMM〕。
〔由低级到高级〕:
初始级
软件过程是无序的,有时甚至是混乱的,对过程几乎没有定义,成功取决于个人努力,管理是反应式〔消防式〕的。
可重复级
建立了基本的项目管理过程来跟踪费用、进度和功能特性。制定了必要的过程纪律,能重复早先类似应用项目取得的成功。
已定义级
已将软件管理和工程两方面的过程文档化、标准化,并综合成该组织的标准化软件过程。所有项目均使用经标准、裁减的标准软件过程来开发和维护软件。
已管理级
收集对软件过程和产品质量的详细度量,对软件过程和产品都有定量的理解与控制。
优化级
加强了定量分析,通过来自过程质量反馈和来自新观念、新技术的反馈使过程能持续不断地改良。
七.软件工程项目管理基本知识
软件项目管理开始于任何技术活动之前,并且贯穿于整个的软件生命周期。
软件工程项目管理一般分为时间管理、成本管理、人力资源管理、风险管理。

Gantt图
是一种简单的水平条形图,它以水平线段表示子任务的工作阶段,线段的起点和终点分别对应着子任务的起始时间,线段长度指示完成该任务所需要的时间。
甘特图的优点:直观简明、易学易绘、可从图上清楚地标出子任务间的时间比照,但它也有
缺点:
〔a〕不能显示地描绘各项彼此间的依赖关系;
〔b〕进度计划的关键部分不明显,难以判断哪些部分应当是主攻和主控的对象;
〔c〕计划中有潜力的部分以及潜力的大小不明确,往往造成潜力的浪费。
PERT网图与关键路径
PERT网图是一个由箭头〔标识任务〕和结点〔标识事件〕组成的有向图。将网络方法用于工作计划安排的评审和检查。
PERT图不仅给出了每个任务的开始时间、结束时间和完成该任务所需的时间,还给出了任务之间的依赖关系,即哪些任务完成后才能开始另一些任务,以及如期完成整个工程的“关键路径”。
关键路径〔Critical Path〕是由一连串的任务所组成的链,距离最大的一条路径。
软件项目的管理人员应该密切注视关键任务的进展情况。如果希望缩短工期,只有往关键任务中增加资源才会有效果。
八.模块化基本知识
模块是指执行某一特定任务的数据和可执行语句程序元素的集合,通常是指可通过名字来访问的过程、函数、子程序或宏调用等。
模块化就是将一个待开发的软件划分成假设干个可完成某一子功能的模块,每个模块可独立地开发、测试,最后组装成完整的程序。
模块特性
可分解性
如果一种设计方法提供了将问题分解成子问题的系统化机制,它就能降低整个系统的复杂性,从而实现一种有效的模块化解决方案。
可组装性
如果一种设计方法使现存的〔可复用的〕设计构件能被组装成新系统,它就能提供一种不需要一切从头开始的模块化解决方案。
可理解性
如果一个模块可以作为一个独立的单位〔不用参考其他模块〕被理解,那么它就易于构造和修改。
连续性
如果对系统需求的微小修改只导致对单个模块,而不是整个系统的修改,则修改引起副作用就会被最小化。
保护性
如果模块内部出现异常情况,并且它的影响限制在模块内部,不会影响其他模块,则错误引起的副作用就会被最小化。
模块与模块的耦合性
耦合是对一个软件结构内不同模块之间互连程序的度量。
耦合可以分成以下几种,它们之间的耦合度由高到低排列。
内容耦合
直接操作或修改另一模块的数据,或不通过正常入口转入另一个模块。
软件设计时应坚决禁止内容耦合,应设计成单入口、单出口的模块,防止病态连接。
公共耦合
多个模块引用同一全局数据区。
外部耦合
模块与软件以外的环境有关联。例如,输入输出把一个模块与特定的设备、格式、通信协议耦合在一起。
控制耦合
一模块明显把开关量、名字等信息送入另一模块,控制另一模块的功能。
标记耦合
两个模块之间通过传递公共指针或地址相互作用的耦合。
数据耦合
模块间通过传递数据交换信息。
非直接耦合〔无耦合〕
模块间无任何关系,独立工作
原则上讲,模块化设计总是希望模块之间的耦合表现为非直接耦合方式。
在以上耦合中,耦合度从高到低,内容耦合度最高