软件工程自考复习资料-全 下载本文

4. 软件工程的概念于1968年提出,涉及计算机科学、工程科学、管理科学、数学等领

域。

5. 软件工程面临的问题有:软件费用、软件可靠性、软件可维护性、软件生产率和软件

重用。

6. 软件工程过程是指规定了获取、供应、开发、操作、维护、管理、支持过程时,要实

施的过程、活动和任务。

7. 软件工程的纵向分解是把软件生产分为几个阶段。

七、 计算机辅助软件工程

1. 计算机辅助软件工程(CASE),英文是 Computer Aided Software Engineering,

是一组工具和方法的集合,可以辅助软件开发生命周期各阶段进行软件开发。 2. 较早期的CASE是结构的基于图形的CASE。

3. CASE领域是一个应用、集成和综合的领域。它把软件开发技术、软件工具和软件

开发方法集成到一个统一而一致的框架,吸收了CAD、网络、软件工程、数据库、操作系统和许多其他计算机领域的原理和技术。

4. 根据支持的范围,CASE工具可分为窄支持(支持单个过程任务的工具)、较宽支

持(工作台支持某一过程所有活动或某些活动)、一般支持(环境软件过程所有活动或至少大部分活动)工具。另外还可根据支持过程和功能进行分类。

5. CASE生存期步骤:CASE需求、CASE剪裁、CASE引入、CASE操作、CASE

演化、CASE废弃。

6. CASE系统所涉及的技术有:支持软件开发过程本身的技术、支持软件开发过程管

理的技术。从CASE系统产生方式看还有一种生成CASE系统的生成器所采用的

5

技术:元-CASE技术。 7. 集成化CASE的五级模型:

? 平台集成:工具运行在相同的硬件/操作系统平台上。

? 数据集成:不同软件工程能相互交换数据,工具使用共享数据模型来操作。分为三

个级别:共享文件、共享数据结构、共享仓库。

? 表示集成:工具使用相同的用户界面。分为三个级别:窗口系统集成、命令集成、

交互集成。

? 控制集成:工具激活后能控制其它工具的操作。

? 过程集成:工具在一个过程模型和“过程机”的指导下使用。即CASE系统嵌入了关

于过程活动、阶段、约束和支持这些活动所需的工具的知识。

第二章 软件需求和软件需求规约

一、 可行性研究

1. 可行性研究是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否

值得开发,给出“行或不行”的回答。

实质是以较抽象的方式进行一次简化的、压缩了的需求分析、设计过程。它是系统方案实现的必要性。

2. 可行性研究任务:(1)先进行概要的分析研究,初步确定项目的规模和目标、约束和

限制,把它们清楚的列出来。(2)分析员进行简要的需求分析,抽象出项目逻辑结构,建立逻辑模型。(3)经压缩设计,探索出若干种可选的解决方法,对每种方法研究其

6

可行性。

3. 可行性研究主要考虑开发风险、资源有效性和技术等情况,具体分为:

技术可行性:指在现有条件下估算开发项目的技术风险。对项目的功能、性能、限制

条件进行分析,要解决技术风险问题,研究硬件等开发资源的有效性。研究内容为:成本-效益分析、公司经营长期策略、开发所需成本和资源、潜在的市场前景。

经济可行性:指进行开发成本的估算及预期取得经济效益的评估。研究范围是效益分

析。

社会可行性:涉及范围有合同、责任、侵权、用户组织的管理模式、规范及其他一些

技术人员常不了解的陷阱。

4. 可行性研究步骤:(1)确定项目规模和目标。(2)研究正在运行的系统。(3)建立新

系统的高层逻辑模型。(4)导出和评价各种方案。(5)推荐可行的方案。(6)编写可行性研究报告。

5. 可行性研究报告的主要内容有:引言、可行性研究前提、对现有系统的分析、所建议

系统的技术可行性分析、所建议系统的经济可行性分析、社会因素可行性分析、其他可供选择的方案、结论意见。

6. 项目开发计划是一种管理性文档,内容包括:项目概述、实施计划、人员组织和分工、交付期限。

7. 与“可行性研究报告”、“项目开发计划”文档有关的人员是管理人员和开发人员。与“程序

维护手册”文档有关的人员是管理人员和维护人员。 8. 可行性分析中,系统流程图用于描述当前运行系统。

7

二、 效益分析

1. 成本-效益分析首先估算开发系统的开发成本,再与可能取得的效益进行比较和权衡。

目的是从经济角度评价开发一个新的软件项目是否可行。

2. 效益分为有形效益(用货币的时间价值、投资回收期、纯收入等指标度量)和无形效

益(从性质和心理上衡量)。

纯收入:是软件生存周期内系统的累计经济效益和投资之差。 投资回收期:是累计的经济效益等于最初的投资费用所需的时间。

货币的时间价值:通常用利率表示货币的时间价值。设年利率为i,现存入P元,n年

后的价值为F=P*(1+n*i)。

3. 一个软件开发成本为5万元,寿命为3年。未来3年的每年收入预计为22000元、24000元、26620

元。银行年利率为10%。试对此项目进行成本效益分析,以决定其经济可行性。 解:3年后,5万的价值为50000*(1+3*10%)=65000元。

3年软件总获利为22000*(1+2*10%)+24000*(1+1*10%)+26620=79420

元>65000元,所以此项

目盈利,经济可行。

4. 系统的经济效益是因使用新的系统而增加的收入和使用新的系统可以节省的运行费用之和。

三、 需求和需求分析

1. 软件需求以一种技术形式,描述了一个产品/系统应具有的功能、性能和其他性质。如

功能要求、环境需求、用户界面要求。

8