- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件工程 第一章 导论
软件工程讲义 石 松 2006.8 关于我………… 授课方式 总学时:90学时,1-9周 (48+42) 指导方针:理论是用来指导实践的 学习环节: 理论讲授:立足课本,不拘泥课本,注重案例分析 实践环节: 给定若干案例,分组完成,进行 答辩 考试环节:笔试+认证考试 参考书 ? 实用软件工程 (第二版) 郑人杰 殷人昆 陶永雷 清华大学出版社(1996) 第一章 导言 文档:为了理解程序所需的阐述性资料。 软件的特点: 表现形式 软件是一种逻辑实体,而不是具体的物理实体。因而它具有抽象性 生产方式 软件的生产与硬件不同,在它的开发过程中没有明显的制造过程,大多数软件仍是定制的。 维护 在软件的运行和使用期间,没有硬件那样的机械磨损,老化问题 要求 ? 软件产品不允许误差 软件质量要素 可维护性:软件必须能够不断进化以满足用户的需求变 化,这是软件产品最根本的要素,因为工作环境是不断变化的,软件也必然要跟着变化。 可依赖性:包括可靠性、保密性和安全性。可靠的软件在系统失败的情况下,也不会导致人员伤亡和经济损失。 有效性:软件不要浪费内存和CPU等系统资源,因而有效性应包括响应时间、处理时间、内存利用率等。 可用性:软件必须具备可用性。必须是用户不用特殊地努力就能操作。那么,软件必须提供用户界面和充分地说明文档。 软件的分类 按软件的功能进行划分: 系统软件 使计算机系统各个部件、相关软件和数据协调、高效地工作的软件 操作系统 数据库管理系统 设备驱动程序 通信处理程序等 软件的分类 支撑软件 协助用户开发软件的工具软件 文本编辑程序 文件格式化程序 磁盘向磁带进行数据传输的程序 程序库系统 支持需求分析、设计、实现、测试和支持管理的软件 软件的分类 应用软件 商业数据处理软件 工程与科学计算软件 计算机辅助设计/制造软件(CAD/CAM) 系统仿真软件 智能产品嵌入式软件 实时软件 事务管理、办公自动化软件 计算机辅助教学软件 软件的分类 按软件规模进行划分: 类别 参加人员数 研制期限 源程序行数 微型 1 1~4周 0.5k 小型 1 1~6月 1k~2k 数值计算或数据处理,通常没有与其它程序的接口。需要按一定的标准化技术、正规的资料书写以及定期的系统审查。只是没有大题目那样严格。 中型 2~5 1~2年 5k~50k 软件人员之间、与用户之间的联系、协调的配合关系。因而计划、资料书写以及技术审查需要比较严格地进行。应用程序和系统程序。系统的软件工程方法是完全必要的。 软件的分类 大型 5~20 2~3年 50k~100k 编译程序、小型分时系统、实时控制系统等。二级管理,若干小组,每组5人以下。人员调整往往不可避免,新手的培训。采用统一的标准,实行严格的审查是绝对必要的。 甚大型 100~1000 4~5年 1M(=1000k) 若干个子项目,每一个子项目都是一个大型软件。子项目之间具有复杂的接口。如远程通信系统、多任务系统、大型操作系统、大型数据库管理系统、军事指挥系统通常现有这样的规模。很显然,这类问题没有软件工程方法的支持,它的开发工作是不可想象的。 极大型 2000~5000 5~10年 1M~10M 军事指挥、弹道导弹防御系统。 只是对软件工程技术依赖的程度不同而已。 这个项目的负责人F. D. Brooks事后总结了他在组织开发过程中的沉痛教训时说:“......正像一只逃亡的野兽落到泥潭中做垂死的挣扎,越是挣扎,陷得越深,最后无法逃脱灭顶的灾难。......程序设计工作正像这样一个泥潭,......一批批程序员被迫在泥潭中拼命挣扎,......谁也没有料到问题竟会陷入这样的困境......”。IBM360操作系统的历史教训成为软件开发项目的典型事例为人们所记取。 ⑴ 项目没有被很好地理解;计划不周,最终导致进度拖延。 必须意识到:“软件” 编程,它有自己的生命周期 (life cycle)。大型软件系统的开发与其它工程项目如建造桥梁、制造飞机、轮船等的开发是同理的。 软件工程定义 软件工程是一类求解软件的工程,它应用计算机科学、数学(用于构造模型和算法)和管理科学(用于计划、资源、质量和成本等的管理)等原理,借鉴传统工程(用于制定规范、设计范型、评估成本、权衡结果)的原则
文档评论(0)