- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第一章软件工程与软件危机
1、什么是软件
软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合。
软件 程序+数据+文档
软件的分类(划分)
按软件的功能进行划分:系统软件、支撑软件、应用软件
按软件规模进行划分:微型、小型 、中型、大型 、甚大型、极大型
按软件工作方式划分:实时处理软件(Real-Time)、分时软件(Share-Time)、交互式软件
、批处理软件
按软件服务对象的范围划分:项目软件、产品软件
按使用的频度进行划分:一次使用、频繁使用
按软件失效的影响进行划分:高可靠性软件、一般可靠性软件
3、软件的发展与软件危机
软件发展阶段(从40年代第一台计算机出现)
程序设计阶段 — 50至60年
程序系统阶段 — 60至70年
软件工程阶段 — 70年代以后
软件危机(Software Crisis): 软件的整体质量较低,及期限、费用等问题
4、软件工程的定义及研究内容
定义:软件工程是一门旨在生产满足用户需求的、及时交付、不超过预算的和无故障(Bug)的软件的学科,为达到这些目标,必须在软件生产的所有阶段采用合适的技术。
软件工程三要素:(一组)方法、(一系列)工具和(一个)过程
5、软件生存期 生命周期
定义:软件有一个孕育、诞生、成长、成熟、衰亡的生存过程。这个过程即为计算机软件的生存期
软件生存期的六个步骤,即制定计划、需求分析、软件设计、程序编码、软件测试及运行维护
瀑布模型
优点:1.近乎强迫式规则,每个阶段有文档需确认。2.带反馈环。
缺点:1生产软件仍不能完全满足需求。2积累错误。越早出现的错误,暴露的时间越晚,排除故障付出的代价就越高。
螺旋模型 Spiral Model
螺旋模型沿着螺线旋转,在四个象限上分别表达四个方面的活动,即:
制定计划──确定软件目标,选定实施方案,弄清项目开发的限制
风险分析──分析所选方案,考虑如何识别和消除风险
实施工程──实施软件开发
客户评估──评价开发工作,提出修正建议
软件开发方法
软件开发方法:结构化软件开发方法和面向对象软件开发
结构化软件开发方法:
数据处理系统:结构化分析,设计,Jackson方法
大型复杂系统:SADT
实时事务处理:FSM 有穷状态机,Finite State Mechanism
并发系统:Petri网
面向对象的软件开发方法: OOT
第二章系统分析(定制计划,可行性研究)
1、定制计划阶段目标与任务
目标:解决的问题是什么?(软件项目计划的第一个活动是确定范围)
任务:确定软件范围,给出可行性分析,由用户决定“行”或“不行”。软件范围描述了将被处理的数据和控制、功能、性能(如处理及响应时间)、约束(外部硬件,可用能存或其他已有系统对软件的限制)、接口及可靠性。
2、确定软件范围所需信息的方法
(1)软件工程师(分析员)与客户交流(会谈式):集中于客户、总体目标及收益;集中在客户对软件解决方案的想法;“元问题”(集中于会谈效果)
(2)联合小组形式,其中一种方法:便利应用规约技术FAST, 如由IBM公司开发的JAD。
★★★此处有习题:传送带分类系统(CLSS)
3、可行性研究的方面
可行性研究的四维:1。技术2。财政 3。时间 4。资源
①经济可行性:进行成本效益分析,评估项目的开发成本。
②技术可行性:现有技术是否实现系统的功能,满足约束,风险有多大!对系统的性能、可靠性、可维护性以及生产率等方面的信息进行评价。
③法律可行性:系统开发可能导致的责任(合同责任、法律责任,专利、版权等)
④抉择:对系统不同方案的对比、选择
4、可行性研究的步骤(八个步骤)
5、系统流程图
★★★此处有习题:请画出由下列文字描述的系统流程图(某城市招干考试成绩统计系统)
6、成本—效益分析
①基于代码行估计(LOC:Line of Code,单位kLoc)如,2900行源代码,注释,测试,等200行,总工作量9人/月
生产率(Production Rate) 源代码行/总工作量 2900-200 /9 300Loc/PM
②基于功能点(FP:Function Point)估计
③基于过程估计
④经验估计(自动软件估计)(公式)
第三章软件需求分析
1、需求分析的任务:“理解、分解和表达”
①理解:通过调查分析,来定义用户的需求,以达到对用户需求的共同的理解(理解软件需求)目的:理解问题的数据域(数据流、数据内容、数据结构)和功能域。
②分解:通过结构化分析方法,自顶向下,逐层分析的方式对问题进行分解和不断细化。目的:确定系统的构成和主要成份。
③表达:把共同的理解和结构化分析的结果用双方均能理解的方法描述出来,写入需求规格说明(SRS)
结构化的分析方法(SA)
①采用自顶向
您可能关注的文档
- 数据库基础知识【荐】.pdf
- 数据库复习【荐】.doc
- 数据库复习题【荐】.pdf
- 数据库学习要点【荐】.doc
- 数据库定义1【荐】.doc
- 数据库定义详情【荐】.doc
- 数据库实验【荐】.pdf
- 数据库实验四【荐】.pdf
- 数据库实验报告【荐】.doc
- 数据库常用技术手册【荐】.pdf
- 2.1神经调节的结构基础 课件 人教版高中生物学选择性必修1.pptx
- 2.2.1算术平方根 课件 北师大版数学八年级上册.pptx
- 2.3.1细胞通过分裂而增殖 课件(内嵌视频3个)初中生物学北师大版(2024)七年级上册.pptx
- 2.3.2细胞分化形成组织 课件 初中生物学北师大版(2024)七年级上册.pptx
- 4.3.1 角与角的大小比较 课件 2025-2026学年湘教版数学七年级上册.pptx
- 2.3.3生物体的器官、系统 课件 初中生物学北师大版(2024)七年级上册.pptx
- 聚异氰酸酯行业商业计划书.docx
- 2.4节神经系统的分级调节 课件 人教版高中生物学选择性必修1.pptx
- 【公开课】探索勾股定理第1课时(课件)数学北师大版2024八年级上册.pptx
- 综合实践 一天的时间(课件)2025-2026学年度苏教版数学三年级上册.pptx
文档评论(0)