软件工程笔记.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第一章 软件体系结构的发展 (1)主机结构 (2)F/S结构(文件-服务器结构) (3)C/S结构(客户-服务器结构) (4)B/S结构(浏览器结构) .开发环境 (1)单行命令式调式器(如DEBUG) (2)多行代码编辑器(如EDIT编辑器) (3)集成开发环境 (二)软件的特点 1.软件具有抽象特征 软件是一种逻辑实体,而不是一种具体的物理实体。这种抽象特征,必须通过某种存储介质来保存,通过电脑执行达成其现实意义。 2.软件具有无明显制造过程的特征 软件的材料费用接近于零(光盘费、包装费用,网上供下载的共享软件的代理费),软件的主要成本在于研发费用(人工费)。软件开发完成后,可以大量复制。 3.软件无备件的特征: 软件不存在硬件使用过程中的磨损、老化问题,但软件仍然需要维护,是指随着软硬件环境或用户需求变化,原有软件可能不再适用用户的要求,从而导致软件退化。 (三)软件分类 1.按软件功能进行划分: (1)系统软件:与硬件结合紧密,协调计算机系统各个部分、相关软件和数据协调高效工作的软件。 操作系统、数据库管理系统、设备驱动程序、通信处理程序…… (2)支撑软件:协助用户进行软件开发的工具性软件。 文本编辑程序、编译软件、测试与诊断软件 (3)应用软件:在特定领域内开发,为特定目的服务的一类软件。 商业处理软件(财务软件、进货系统等MIS类) 工程与科学计算软件 CAD/CAM软件 平面设计与三维设计软件 智能产品嵌入软件(车载GPS系统、掌上电子词典) CAI软件 2.按软件规模进行划分 4.软件危机产生的根本原因 软件危机的产生主要在于不准确的软件项目策划、不精确的用户需求调研、随意频繁的软件需求变更、不规范的软件开发管理、轻视文档工作、轻视软件测试、体系结构的不健全、可维护性差等原因造成的。要消除软件危机,要彻底清除在计算机系统早期发展阶段形成的“软件就是程序”的错误观念。 (1)软件开发无计划性 (2)软件需求不充分 (3)软件开发过程无规范 (4)软件产品无评测手段 5. 解决软件危机的途径 (1)加强软件开发过程的管理 软件应包括计算机程序、方法、规则、相关文档资料、必要的数据等齐全的内容,并遵循软件工程的指导原则和ISO、CMM等规范的要求来开发软件项目。 (2)推广使用开发软件的成功技术与方法 这是一个不断进行的、永续的、经验教训积累过程 (3)开发和使用好的软件工具,建立良好的软件工程支持环境。 (三)软件工程的目标 1.付出较低的开发成本 2.实现要求的功能 3.取得较好的软件性能 4.开发的软件易于移植 5.需要的维护费用较低 6.能按时完成开发工作,及时交付使用。 四、软件生存周期与软件开发模型和工作任务 (一)软件生存周期 软件从定义、开发、使用和维护,直到最终被废弃,要经历一个漫长的时期,通过称为软件生命(生存)周期。 根据软件所处的状态、特征以及软件开发活动的目的、任务,软件生存周期可划分为若干阶段。 1.计划时期 主要任务是调查和分析:调查用户需求,分析新系统的主要目标,分析开发该系统的可行性。 细分为问题定义和可行性研究两个阶段。 (1)问题定义 有的项目也将该阶段称为“系统规划”阶段,主要是确定系统用来“解决什么问题”。 系统分析员通过问题定义阶段弄清楚问题的性质、软件系统的目标和规模,并以书面形式向用户提交,请用户审查和认可。经过调查、讨论,弄清问题的本质和界限。 (2)可行性研究 该阶段对问题定义阶段确定的系统目标进行全面的分析,研究完成该项软件任务的可行性,探讨解决问题的可能方案,并对可利用的资源(计算机硬件、软件、网络、人力等)、成本、可取得的效益、开发的进度做出估算,制定出完成开发任务的实施计划,连同可行性研究报告提交管理部门审查 系统分析员在该阶段,通过与用户的配合,对用户需求和环境进行深入细致的调查,主要包括两方面的调研: 1~技术可行性 根据现有的技术分析能否实现系统目标,研究制定的操作方式用户是否能够接受。研究软件体系结构与软件开发方法,是否与用户条件相适应。 2~经济可行性 根据系统目标,确定系统的软硬件规格,并估算软件开发成本,分析系统的经济效益能否超过它的总成本,从经济上分析系统是否值得投资。 2.开发时期 完成设计和实现两大任务,设计包括需求分析和软件设计,实现阶段包括编码和测试。 从重要性和工作量上看,设计要重于实现。 (1)需求分析 要解决“目标系统必须做什么”,也就是要 1~深入描述软件的功能和性能; 2~确定软件设计的限制、接口; 3~定义软件的基础有效性需求,并以

文档评论(0)

118books + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档