- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第一章 软件工程基础【荐】.ppt
教材 叶俊民,《软件工程教程》. 清华大学出版社,2006 。 参考书 张海藩. 软件工程导论. 第四版. 北京:清华大学出版社 实用软件工程,郑人杰,殷人昆,陶永雷,清华大学出版社 软件工程:实践者的研究方法(第5版) Software Engineering A Practitioners Approach(Fifth Edition), Roger S.Pressman,机械工业出版社 软件工程,Ian Sommerville,机械工业出版社 实用面向对象软件工程教程,(Case Studies in Object-oriented Analysis and Design), Edward Yourdon, 电子工业出版社 软件工程课程学习安排 课程安排:40课时授课+8课时讨论+10课时上机验收 课堂内学习:课外自学(包括上机操作)=1:3 考核:上机实践 30% +文档20% +笔试(闭卷)50% 平时作业:课后习题+课堂讨论 上机课题要求 有统一的题目与自选题目之分 统一题目(单机板+网络版): 图书管理系统; 考试系统; 考勤系统; 学员信息管理系统; 网上通讯录系统 自选题目:可任意选作感兴趣的系统 课题文档(A4纸质+电子版):按软件工程文档标准,主要:问题定义与可行性研究文档(含进度计划)、需求分析文档、测试计划、总体设计文档、详细设计文档、源程序、测试用例与分析结论、小组总结及个人总结。 小组制度:每组不超过5人,组员的成绩按权值递减:100,98,95,90,85。 软件发展阶段 程序设计阶段 — 50至60年代 程序系统阶段 — 60至70年代 软件工程阶段 — 70年代以后 软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合。 程序是按事先设计的功能和性能要求执行的指令序列 数据是使程序能正常操纵信息的数据结构 文档是与程序开发,维护和使用有关的图文材料 软件的特点 软件是一种逻辑实体,而不是具体的物理实体。因而它具有抽象性 软件的生产与硬件不同,在它的开发过程中没有明显的制造过程 在软件的运行和使用期间,没有硬件那样的机械磨损,老化问题 软件的开发和运行常受到计算机系统的限制,对计算机系统有着不同程度的依赖性 软件的开发至今尚未完全摆脱手工艺的开发方式 软件本身是复杂的 实际问题的复杂性 程序逻辑结构的复杂性 软件成本相当昂贵 相当多的软件工作涉及到社会因素 软件发展过程中存在的问题 软件开发能力不能满足人们的需要; 社会对软件的依赖程度加大,人们普遍关注软件的安全和可靠性; 若干年前开发的应用软件经过几十次修改已无人认识它的内部结构,己经不可维护; 由于经济原因,嵌入式系统存在许多怪现象,企业不愿意投入资源再生产,而采取打补丁+时髦界面的方法。 软件危机 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。 典型表现: 开发成本和进度的估计常常很不准确; 用户对“已完成的”软件系统不满意; “闭门造车”; 软件质量不可靠; 软件常常是不可维护的; 软件成本的比例逐年上升; 软件产品“供不应求”; 软件危机产生的原因 客观原因:软件的特点 主观原因:软件开发和维护过程中使用不正确的方法。 消除软件危机的途径 消除 “软件就是程序”的错误观念。 一个软件必须由一个完整的配置组成,事实上,软件是程序、数据及相关文档的完整集合。 软件开发不是某种个体劳动的神秘技巧,而应该是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目。 成功的软件开发技术和方法。 软件工具和软件工程支撑环境。 软件工程的定义 1968年 NATO 计算机科学会议 软件危机?根源?解决途径?软件工程 “概括地说,软件工程是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。” 软件工程的目标 软件工程的目标是明确的,就是研制、开发与生产出具有良好软件质量和费用合算的产品。 采用工程化方法和途径来开发与维护软件。 应该开发和使用更好的软件工具。 采取必要的管理措施。 软件工程的基本原理(B.W.Boehm) 用分阶段的生命周期计划严格管理 坚持进行阶段评审 错误出现的时间:在编代码之前(63%:37%) 改正错误的代价:发现得月晚,开发代价越高 实行严格的产品控制 基线配置、变动控制 采用现代程序设计技术 结果应能清楚地审查 开发小组的人员应该少而精 承认不断改进软件工程实践的必要性 软件工程研究的基本内容 软件工程学分为:理论与结构、方法、工具与环
文档评论(0)