


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件生存期的阶段划分 :(1)可行性研究与计划; (2) 需求分析; (3)总体设计; (4)详细设计 (5) 实现 (6)集成测试 (7)确认测试 (8)使用和维护软件=程序+文档+数据产生软件危机的原因 :软件本身特点 (客观 ):逻辑部件: 管理和控制软件开发过程相当困难, 较难维护; 规模庞大: 代码长度不正比程序复杂程度; 软件开发与维护的方法不正确 (主观 ): 没有认识到软件的生命周期; 软件开发不同阶段进行修改需要付出的代价差别很大; 软件产 品=程序+每个阶段的文档资料。消除软件危机的途径:对计算机软件有一个正确的认识 (软件工程序);技术措施:推广使用 在实践中总结出来的开
2、发软件的成功技术和方法; 开发和使用更好的软件工具等; 管理措施: 必须充分认识到软件开发不是某种个体劳动的神秘技巧, 而应该是一种组织良好、 管理严密、 各类人员协同配合、共同完成的工程项目。软件发展的 4 大趋势: 流水线生产、网络化、服务化与全球化。软件工程是: 把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也 就是把工程应用于软件; 研究中提到的途径。 ”软件工程具有下述的本质特性 : 1.软件工程关注于大型程序的构造2. 软件工程的中心课题是控制复杂性 3. 软件经常变化 4. 开发软件的效率非常重要 5. 和谐地合作是开发软件的关 键 6. 软件必须有效地支持它的用
3、户 7. 在软件工程领域中是由具有一种文化背景的人替具 有另一种文化背景的人。软件工程的基本原理 ;1 用分阶段的生命周期计划严格管理 :2 坚持进行阶段评审 3 实行严格 的产品控制 4 采用现代程序设计技术 5 结果应能清楚地审查 6 开发小组的人员应少而精 7 承认不断改进软件工程实践的必要性软件工程三个要素:方法、工具、过程 软件工程方法学,分别是传统方法学和面向对象方法学。传统方法学: 把软件生命周期的全过程依次划分为若干个阶段,然后顺序地完成每个阶段的任务面向对象方法 :是一种以数据为主线,把数据和对数据的操作紧密地结合起来的方法面向对象方法学具有下述 4个要点:(1)把对象(ob
4、ject)作为融合了数据及在数据上的操作行 为的统一的软件构件。 (2) 把所有对象都划分成类 (class)。 (3) 继承:按照父类 (或称为基类 ) 与子类 (或称为派生类 )的关系,把若干个相关类组成一个层次结构的系统(也称为类等级 )。(4) 对象彼此间仅能通过发送消息互相联系。软件定义 :即问题定义、可行性研究和需求分析软件开发 :总体设计、详细设计、编码和单元测试、综合测试。瀑布模型特点: 是一个理想化过程。 会掩饰项目中真正的风险, 当你太晚发现它们时已无济 于事; 过程逆转性很差, 因为上游的错误会在下游进行发散性传播。 所以逆转会造成很大损 失;缺乏灵活性 ;特别是无法解决
5、软件需求不明确或不准确的问题后期错误,修正代价高;适用于:功能和性能明确、完整、无重大变化的软件开发,并且分析设计人员对应用领域很 熟悉,项目风险低,用户很少参与开发工作的项目。原型模型的评价: 可及早为用户提供有用的产品; 可及早发现问题, 随时纠正错误; 减少技 术、应用风险,缩短开发时间,减少费用;促使用户主动参与开发活动,促进各类人员的协 调,减少误解,适应需求的变化,能有效提高系统质量。增量模型; 遵循递增方式进行软件开发。开发一部分, 向用户展示一部分; 增量模型是一种 非整体开发的模型; 适用条件: 1)使用面向对象语言或第四代语言; 2)需求可能发生变化, 客户接受分阶段交付;
6、 3)分析设计人员对应用领域不熟悉,难以一步到位;4)项目风险高;螺旋模型是一种风险驱动的模型,基本思想是:适用原型及其他方法来尽量降低风险。 喷泉模型体现迭代和无间隙的特征;在分析、设计、实现等各项活动之间无明显边界 可行性研究的目的 就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得开发,最后给决策者提供做与不做的依据。可行性研究的实质:要进行一次大大压缩简化了的系统分析和设计的过程;在较高层次上以较抽象的方式进行的系统分析和设计的过程融舸旳源点/终点数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。数据字典组成:(1)数据流(2)数据流分量
7、(即数据元素)(3)数据存储(4)处理数据元素组成数据的方式(关系算符):(1)顺序即以确定次序连接两个或多个分量;(2)选择即从两个或多个可能的元素中选取一个;(3)重复即把指定的分量重复零次或多次。(4)可选即一个分量是可有可无的(重复零次或一次)。符号含义举例及说明被定义 为;等价 于+与;和X=a+b表示X由a和b组成。1或X=a|b表示X由a或b组成。重复X=a表示X由0个或多个a 组成。m n 或 nm重复X=2a5 或 X a 52 表示 X 中最少出现2次a,最多出现 5次a, 5、2为重复次数的上 下限。()可选X=(a)表示a可在X中出现, 也可不出现。a”基本数据儿糸X=
8、 “a”表示X是取值为字符a 的数据元素。? ?连接符X=1 ? ? 9,表示X可取1至U 9 中任意一个值。软件系统本质:信息处理系统;通常采用建立数据模型的方法。结构化分析方法 就是面向数据流自顶向下逐步求精进行需求分析的方法。需求分析是 发现、求精、建模、规格说明和复审的过程。需求分析3种模型:数据模型;功能模型;行为模型。数据模型中包含 3种相互关联的信息:数据对象、数据对象的属性、数据对象彼此间相互 连接的关系。软件系统经常使用各种长期保存的信息,这些信息通常以一定方式组织并存储在数据库或文件中,为减少数据冗余,避免出现插入异常或删除异常,简化修改数据的过程,通常需要把 数据结构规范
9、化。规范化的目的是:消除数据冗余;消除多义性;使关系的概念”单一化;方便操作;使关系模式更灵活。IPO图是输入、处理、输出图的简称。验证软件需求:一致性;完整性;现实性;有效性。一个有穷状态机可以表示为一个 5元组(J, K,T,S, F)+1(P)其中:J是一个有穷的非空状 态集;K是一个有穷的非空输入集; T是一个从(J-F)X K到J的转换函数;S J,是一个初 始状态;F土 J,是终态集;谓词集P.当前状态菜单+事件所选择的项+谓词 =下个状态Petri网包含4种元素:一组位置P、一组转换T、输入函数I,输出函数0。映射Z语言:给定的集合、数据类型及常数。状态定义。初始状态。操作。模块化就是将程序划分成若干个独立的模块,每个模块完成一个特定子功能,每个模块既是相对独立的,又是相互联系的,它们共同完成系统指定的各项功能。模块化的目的是为了 降低软件的复杂性逐步求精是一种先总体、后局部的思维原则,也就是一种逐层分解、分而治之的方法。模块独立:模块本身的内聚和模块之间的耦合耦合强弱取决于模块间接口的复杂程度;最强的一类耦合称为内容耦合设计原则:尽量使用数据耦合,少用控制耦合和特征耦合,限制公共环境耦合的范围,完全不用内容耦合。内聚标志一个模块内各个元素彼此结合的紧密程度内聚和耦合是密切相关的,模块内的高内聚往往意味着模块间的松耦合。功能内聚10
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 大学毕业论文致谢词范文5篇
- 人教七下第七章第二节 日本 说课稿
- 第7课 我是一只小小鸟教学设计-2025-2026学年小学美术苏少版四年级下册-苏少版
- 1. 小桥、流水、森林教学设计-2025-2026学年小学美术岭南版四年级下册-岭南版
- 7 一盘红樱桃教学设计-2025-2026学年小学信息技术人教版2022第4册-人教版2022
- 第3课 路径动画和遮罩动画教学设计-2025-2026学年初中信息技术闽教版2020七年级下册-闽教版2020
- 2025年神经科学科帕金森病临床表现分析评估测试答案及解析
- 工业再生项目资金使用方案
- 2025年肝胆胰外科肝功能衰竭处理考试答案及解析
- 2025酒店家具采购合同模板版
- 城市街道景观设计课件
- 主题思政课铸牢中华民族共同体意识
- 邮政行业痛点与解决措施
- 二年级《劳动最光荣》课件
- 帕夫雷什中学
- 2023年人教版美术六年级上册全册教案
- 道路交通安全法知识试题库完整
- 《铁路交通事故调查处理规则》解读
- 研究生学术行为规范讲座
- 水资源论证水土保持防洪评价收费标准
- 年处理12万吨煤焦油加工工艺初步设计
评论
0/150
提交评论