下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件工程在软件生产中的运用一、软件工程概述.软件工程定义软件工程是指导计算机软件开发、运行和维护的工程学科。软件工程的应用始终贯穿于工程的前期调研、设计开发、前期运行和后期维护。通过软件工 程中所定义的一些标准或规那么约束工程中的很多近似不规范的东西,从而使整个工程过程变 得更加有条理,更加清晰,让工程经理便于管理,让程序员易于开发,让工程人员巧于实施, 让客服人员更于维护。.软件工程原那么软件需求的变动性软件开发过程中无法消除的副产品莫过于需求变更,面对这样的问题,不能回避,只有 清醒地认识它们,才能更好的解决它们。稳妥的设计方法大大地方便软件开发在软件开发过程中都会遇到这样的问题,在工程进
2、行到中期左右的时候,随着对业务的 不断摸索和工程开发过程的逐渐熟悉,经常会发现前期的设计方法并不能够完全满足项1的 需要,有的甚至是阻碍了开发或工程实施的继续进行,所以稳妥的设计方法至关重要。软件工程工程的质量与经济开销直接取决于对它所提供的支撑的质量与效用软件工程工程的质量与经济开销直接取决于对它所提供的支撑的质量与效用,这话一点 都不假,就像一个程序员曾经说过的那样“你给了我一个制造自行车的钱,怎么能让我生产 出一辆摩托车呢? ”但很多客户似乎却不明白这个道理,他们的“百般刁难。让工程成员, 尤其是工程经理陷入深深的苦恼之中。工程质量和经济开销是成正比的,如何控制工程费用,是一门很深的课题
3、,除了基本的 理论知识外,在现有的资源条件下控制工程本钱,“功在当代,利在长远 有效的软件工程只有在对软件过程进行有效管理的情况下才能实现“没有规矩无以成方圆”。只有在软件过程中有效地运用管理,才能有效地实现软件工程。 如果只有软件工程理论,而不将其有效应用于软件过程中,那软件工程的理念只是一句大白 话。.软件工程的基本目标软件工程的目标有好多种,它也会因为工程的不同而侧重点不同,以下就罗列出一些常见的,重要的加以说明。到达要求的软件功能这个不用多说,招标书或技术协议上都写的明明白白的,如果重要功能没有实现或没有 到达用户要求的话,那后果是严重的。付出较低的开发本钱这是每一个工程所追求的“剩余
4、价值”,开发的本钱越低,我们从工程中的获利也越大。取得较好的软件质量取得好的软件质量,不仅仅对工程验收带来有利条件,而且对于工程管理、设计、开发、 实施、维护、测试等步骤都是一个好的验证,有了成功的软件,有了好的软件质量,我们就 可以借鉴于其他工程,为以后的工程带来捷径,带来经验。开发的软件易于移植一个成熟的软件产品都是积累于代码的可移植性上的,同样,一个好的软件,它自身好 的功能也应该可以移植到其他产品上去,这样既免除了烦琐的开发量,节约本钱,同时也保 障了软件的灵活性,使其更具竞争优势!较低的维护费用大多数工程完工后都会预留10%左右来作为尾款,以保证软件在售后服务期内不发生 重大或严重的
5、错误。在这段时间内,维护费用的支出就完全落在了软件产品的质量上了。随着系统的正式运行,和大量数据的涌入,检验软件的性能和功能问题才真正来临,同 时维护人员的业务和技术水平也直接影响着系统的运作,所以他们能否通过考验,便成为影 响维护费用的关键。按要求的进度交付使用工程工时的延期和需求变更的多少是成正比的。伴随着需求变更的现状无法逃避,工程 的进度必然会受到影响,这样甲乙双方就不得不为工程延期而进行磋商,重新讨论工程交付 使用的时间和费用问题。其他在实际开发的具体工程中,企图让以上几个目标都到达理想的程度往往是非常困难的。 目标很可能是互相冲突的,假设只顾降低开发本钱,很可能同时也降低了软件的可
6、靠性;如果 过于追求提高软件的性能,可能造成开发出的软件对硬件有较大的依赖,从而直接影响到软 件的可移植性;有些目标之间是互补关系,如易于维护和高可靠性之间,低开发本钱与按时 交付之间。还有一些目标是彼此互斥的,如上述指出的互相冲突的情况。二、软件工程的基本内容和框架1 .软件生命周期软件生存周期是指软件产品或软件系统从产生、投入使用到被淘汰的全过程。在计算机 技术开展的初期,人们把软件开发简单地理解为编写程序。随着软件复杂性的增长,人们认 识到软件开发活动应划分为需求分析、设计、实现、测试等假设干个活动,并将这些活动以适 当的方式分配到不同的阶段中去完成。通常把软件生存周期分为6个阶段:计划
7、、需求分析、软件设计、程序编码、软件测试 和运行维护。计划阶段主要是确定待开发软件总目标,给出功能、性能、可靠性及接口要求。通过研究工程开 发、实施过程的可能性,探讨解决问题的方案。并提交可行性报告并进行审查,同时制定详 细的实施计划。需求阶段包括需求获取,需求分析,需求定义三个子阶段。需求获取需要从甲方那里收集相关业 务的内容,并提炼出功能性及非功能性要求;并通过需求分析(包括功能分析、动态分析、 静态分析)生成需求说明书;再根据需求定义需要完成需求规格说明书,并得到用户确实认, 为将来的工程验收做准备。设计阶段依据需求规格说明书建立和确认分析结果的解决方案。建立整个软件体系结构,包括子 系
8、统、模块以及相关层次的说明和部署、每一模块的接口定义等;产生程序员可用的模块说 明文档,即数据结构说明、数据字典及处理描述。实现阶段主要分为开发和实施阶段。开发阶段是把设计结果转换为规定硬件平台以及系统运行体 系架构可执行的程序代码,包括界面实现,控制实现和基本操作实现;实施阶段主要包括系 统安装、部署,调试环境并及时反响在实施过程中所发现的有关代码开发的问题清单。测试阶段包括单元测试、集成测试和确认测试,这些测试活动的目的就是使软件系统到达需求阶 段所提出的各项要求,尽可能多的将系统问题暴露在试运行前。维护阶段对投入运行的软件进行错误修改,功能及操作性能完善,使软件系统能适应外界环境的变 化
9、、实现功能扩充和质量改善;同时在维护阶段要加强对维护人员的业务培训并提高解决常 见问题的能力。.软件的逻辑结构了解软件的功能需求,商业价值,和验收条件。了解软件的静态结构,包括组织结构,角色定义,权限划分,资源信息或知识库的整理。了解软件的动态结构,包括业务流程、交互信息、事件跟踪、控制范围、条件约束等。.基本的开发技术和开发方法掌握开发软件所必须的程序语言和数据库知识;掌握开发方法和开发技巧;能及时跟踪 问题并解决问题。.软件需求工程软件需求工程主要是用来探索如何用更好、更有效的方法来完善需求分析过程,解决需 求分析过程中出现的问题,保证需求的完整性和可用性。.软件工程管理软件工程管理是为了使软件工程能够按照预定的本钱、进度、质量顺利完成,而对人 员(People)、产品(Product)、过程(Process)和工程(Project)进行分析和管理的活动。 软件工程管理的根本目的是为了让软件工程,尤其是大型工程的软件生命周期都能在管理者 的控制之下,以预定本钱按期,按质的完成软件交付用户使用。.软件过程及软件过程改进软件过程(Software Pr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 危岩坠落监测预警技术体系与工程实践
- 3.2.6 意图理解标注-闹钟设定意图标注
- 机械加工安全操作规程讲解
- 石油勘探公司安全操作规范
- 某光学厂质量检验准则
- 食品安全管理体系细则
- 2026智能健身车虚拟骑行场景:技术革新与体验重构
- 2026年直播电商AI虚拟背景应用技巧
- 2026年灵活就业劳动权益保障研究
- 应急灯检修规程
- 2026年黑龙江哈三中高三二模政治试题含答案
- 2026年贪污贿赂司法解释(二)深度解析课件
- 2026年英语四六级考试模拟单套试卷
- 江西家政行业风险分析报告
- 2026劳动合同(含试用期协议)一体化模板 避免法律纠纷
- 养老机构服务标准操作手册
- 2026贵州省黔晟国有资产经营有限责任公司面向社会招聘中层管理人员2人备考题库参考答案详解
- 2025版《中国急诊创伤出血防控整合指南》
- 人教版初中英语七至九年级单词汇总表(七年级至九年级全5册)
- 青岛科技大学2023年综合评价招生考试诚信承诺书
- 辉瑞标准销售模式
评论
0/150
提交评论