第三单元课文译文 计算机英语 吕云翔

第三单元 项目计划

第一部分 听说

A. 对话:软件项目计划

Jason :这么多工作要做啊!

Kevin :我认为我们需要一个正式的项目计划作为指导。

Sharon :是的,首先是时间,这也是影响我们项目的最重要的因素之一,我们需要一个进度表,尤其是项目的最终期限。

Kevin :我们总共有40天的时间,而需求已经花了5天的时间,因此我们还有35天时间。 Jason :哦,听起来时间确实很紧张。

Sharon :我们似乎应该尽快开始编程,对吗?

Jason :尽管编程是软件项目中非常重要的一个部分,但是,我认为现在最重要的事是,必须确定一个合适的时间进度表来控制我们的进度,并确保能够按时交付。

Kevin :是的,在需求阶段,我们还需要三天时间来对需求进行描述、分析和建模。之后,我们需要三天时间来完成结构设计,五天时间完成详细设计;由于这些工作量都是用于软件设计,因此接下来的编程相对不会很难,我认为在一周内应该能完成;测试及后续的调试在十天时间内应该能完成。

Sharon :也许我们可以用甘特图来描述我们的进度表,对于项目计划来说,甘特图是一种形象生动并且实用的工具。

Kevin :好主意!

Jason :事实上,测试不应该被看成是仅在编码阶段完成后才开始并仅限于以检测错误为目的。实际上,测试计划在需求阶段的早期就应该开始了,并且测试计划和流程应该系统地、不断地改进。我觉得,在编码阶段,我们可以同时执行单元测试,这将会节省大量时间并会获得更好的测试效果。最后,我们可以通过与客户一起工作来进行验证测试,检查开发出的软件客户是否满意,以确保客户能够获得他们所需要的。

Sharon :另外,我们需要三台计算机,必须安装客户所要求的具有统一版本的软件作为开发工具,以Visual Studio 2005作为开发平台,以Microsoft SQL server 2005作为数据库管理系统。

Jason :我们还需要网络。

Kevin :我将尽快为大家准备开发环境,然后给每个人分配一些管理任务。Sharon ,你负责文档管理,Jason ,你负责变更管理,我负责软件质量保证,怎么样? Jason 和Sharon :没问题。

Kevin :好,我已经把刚才讨论的内容做了记录,并会在两天内完成一份项目计划文档。

B. 短文理解:软件项目计划

有许多种项目计划方法。有些人是“最简单派”,他们认为,变化经常使得进行详细计划变得没有必要。其他人是“传统派”,他们认为,计划提供了有效的路线图,并且设计越详细,团队失败的可能性就越小。还有一部分人是“敏捷主义者”,他们认为,一个快速的“设计活动”是有必要的,但路线图将会在软件开始时作为实际工作出现。

那么到底应该如何做?在许多项目中,往往会因过度计划而事倍功半(太多的事情在变化),但过于简略的计划也会导致开发混乱。像生活中的大多数事物一样,应该适度进行计划,足以为团队提供有用的指导即可,不用多也不用少。

在一篇优秀的关于软件过程与项目的论文中,Barry Boehm提出:需要按比例缩减的组织原则来为简单的项目提供简单的计划。Boehm 建议一种方法来处理项目目标、里程碑、日程表、项目分工职责、管理及技术手段以及所需资源。他称此方法为W5HH 原则,在一系列引出关键项目特性的定义和随之产生的项目计划的问题之后:“为什么要开发系统”、“将要做什么”、“什么时候将完成”,上述三项是最必不可少的。此外,还有“一个功能由谁负责”、“人员被组织安置在哪里”、“工作将如何在技术和管理上完成”以及“每项资源各需要多少”。对于Bohehm 的W5HH 问题的回答十分重要,这点与软件项目的复杂度及规模无关。

C. 听写:软件项目中的四个变量

项目是使用资源来达到预定目的和目标的一系列特定的活动,是具有特定起止日期的有限努力和具有一系列的时间安排、预算及组织约束条件的管理过程。

通常情况下,在软件项目中,我们将控制四个经典变量——费用、时间、范围和质量。这四个变量通过相互作用共同影响着整个项目:增加的范围往往意味着要花费更多的时间和可能超过预算;紧迫的时间压力要求更强的资金支持,同时质量也可能受到影响;资金不足就难以解决范围之内的客户业务问题;更高的质量可能需要更长的开发生命周期和更高的费用成本。

看起来这四者之间的关系并不那么简单。例如,不能仅仅依靠投入更多的资金提高软件的开发速度。正像谚语所说:“即使是九个女人,也不可能在一个月之内生出孩子。” Kent Beck在他的《解析极限编程:拥抱变化》一书中提到,解决方法就是使这四个变量是可见的。如果每个人——程序员、客户和经理——都能注意到这四个变量,那么他们就可以有意识地选择控制哪些变量。如果他们不喜欢这四个变量可能带来的结果,那么可以改变投入或是选择不同的其他三个变量来进行控制以最终达到项目目标。

第二部分 阅读

A. 软件项目计划

一份恰当的项目计划是一个项目成功的重要因素。没有合适的计划,软件开发项目是不可能成功的。项目需求和架构可用之后就可以做一个好的计划了。项目计划的重要活动包括:过程计划、工作量估算、进度和人员安排、质量计划、配置管理计划、项目监控计划和风险管理。

过程计划一般涉及选择一个合适的过程模型并对它进行剪裁,以适合项目需要。在工作量估算中,项目总体工作量需求和不同阶段的工作量分解都要估算。在自上而下方法中,首先估算总体工作量,经常从项目规模估算开始,然后再确定不同阶段或任务的工作量。在自底向上方法中,首先识别项目中的主要任务并估算其所需要的工作量。从任务的工作量估算开始,进而完成总体工作量估算。

项目的总体进度和主要里程碑依赖于工作量估算和项目人员水平,并且可以使用简单模型来从工作量得到一个粗略的进度估算。很多时候,一个整体进度通过使用模型来确定,然后进行调整以满足项目需求和约束。详细进度是指在保持总体进度和工作量估算的条件下,将任务分解为更小的、可预计的任务,然后将其分派给特定的团队成员。详细进度是最生动的项目计划文档,因为它列出了必须做的工作;项目计划中的任何变化都会适宜地反映在详细进度中。

质量计划对于确保最终产品的高质量非常重要。项目质量计划确定了开发的不同阶段中所有必须执行的验证和确认活动以及如何执行这些活动。

配置管理的目标是控制项目过程中发生的变化。配置管理计划确定了需要被控制的配置项,并指定了完成配置计划的程序以及控制如何访问。

风险是那些不一定会发生、但一出现就会对项目具有负面影响的事件。为了在风险存在的情况下能够实现项目目标,需要适当的风险管理。风险管理要求对风险进行识别、分析和优先级排序。然后制定和执行风险缓解计划以将最高优先级风险的影响降到最小。 为了使项目计划成功实施,至关重要的一点是谨慎地监控项目。活动级别的监控、状态报告和里程碑分析是常用的机制。对于分析和报告,实际工作量、进度、缺陷和规模应被度量。有了这些度量,才有可能依照计划监控项目的执行情况。在此监控的基础上,如果需要,便可以采取措施来纠正执行的过程。

总体而言,项目计划制定了为了达到目标项目所应遵循的路线。项目计划指定了项目成员应当执行的所有任务,并指定为执行该计划谁将做什么、用多少时间以及什么时候做。有了详细计划,余下将要做的就是执行计划。当然,由于工作不能总是按计划完成,因此计划从来不是一成不变的。通过适当的监控,这些情况能够被识别,并可以相应地改变计划。基本的项目计划原则和技术也可以用于计划修改。

B. 操作系统

操作系统,也称为软件平台,由管理计算机基本操作的、低层的主要程序系统组成。这些程序提供多种资源管理服务。特别是它们负责硬件资源的控制和使用,包括磁盘空间、内存、CPU 时间分配和外围设备。每台通用计算机必须有一个操作系统来运行其他程序。操作系统可让用户专注于自己的任务或应用程序,而无需关注管理计算机的复杂性。每个应用程序都被写成在一个特殊的操作系统之上运行。

不同规模和牌子的计算机都有各自的操作系统。举例来说,Cray 超级计算机使用UNICOS 和COS ;IBM 大型主机使用MVS 和VM ;个人计算机运行Windows 或Unix ;苹果公司的Macintoshes 运行Macintosh OS。一般来说,为一种硬件写的操作系统不能运行在其他机器上。换句话说,不同的操作系统是互不兼容的。

操作系统可以做如下事情:引导开机、CPU 管理、文件管理、任务管理和安全管理。 操作系统可使用以下一个或多个术语进行非正式地分类和辨别:

单用户操作系统在同一时间只能由一个用户控制一组输入设备。用于掌上电脑和很多个人计算机的操作系统适合单用户类别。DOS 就是单用户操作系统的一个例子。

多用户操作系统允许一台计算机——通常是一个主机——同时处理来自多个用户的输入、输出和处理请求。多用户操作系统最难的任务之一就是调度一台集中式计算机必须执行的所有处理请求。IBM 的OS/390是流行的主机多用户操作系统之一。

网络操作系统(也称为服务器操作系统)提供可让计算机共享数据、程序和外围设备的通信和路由服务。举例来说,Novell 公司的NetWare 一直被称为网络操作系统。网络服务和多用户服务之间的区别似乎很模糊,特别是像UNIX 、Linux 和Sun Microsystem公司的Solaris 同时提供了上述两种功能。不过,主要区别在于,多用户操作系统调度请求,以实现在一台集中式计算机上的处理请求;而网络操作系统仅仅是将数据和程序发送到每个用户的本地计算机上,实际处理发生在这些本地计算机上。

桌面操作系统是一种专门为个人计算机而设计的——桌面、记事本或平板电脑。这些在家里、学校或在工作中使用的计算机最有可能配置一个桌面操作系统,例如Microsoft Windows 或Mac OS。通常情况下,这些操作系统是为单一用户设计的,但也可能提供网络功能。当今的桌面操作系统都能提供多任务能力。

有些操作系统供应商用家庭或专业版本来描述其产品特性。与专业版相比,家庭版通常的网络管理工具更少。

DOS

DOS 代表磁盘操作系统。它是由微软公司——后来生产了Windows ——开发并于1982年在原IBM 个人计算机上推出。尽管IBM 将这种操作系统称为PC-DOS ,但微软以MS –DOS 帝名字将其推向市场。

20多年以后,在个人计算机世界中DOS 遗留下来的痕迹仍然存在,因为它为Windows

3.1、95、98和Me 提供了操作系统内核的一部分。

Unix and Linux

Unix 操作系统是1969年在AT &T 的贝尔实验室里开发的。它原本是设计运行在网络环境下的微型计算机上。现在,它也用于强大的微型计算机和网站服务器上。Unix 有许多不同版本。其中之一便是当今广受关注的Linux 系统。

Windows 、Mac OS和许多Unix 版本是专有的操作系统,而Linux 却不是。它是一种开源软件,有很多免费的来源,包括网络。作为一个赫尔辛基大学的研究生,Linus Torvalds 在1991年开发了Linux 。他已经允许操作系统代码的销售版本,并鼓励他人修改和进一步开发代码。Linux 是最流行的和最强大的替代Windows 的操作系统之一。

Mac OS

苹果机操作系统(Mac OS)仅运行在Apple Macintosh计算机上,它设定了一套面向图标的、易于使用的图形用户界面标准。苹果公司以施乐公司所完成的工作作为其新界面的基础,而此前施乐公司已将斯坦福研究协会(现在是斯坦福国际研究协会)的早期研究作为其工作基础。在1984年投入市场不久,它就吸引了大量爱好者,并迫使竞争对手微软将DOS 升级为更加用户友好的Windows 操作系统。后来,1998年,苹果公司推出了iMac 计算机(i 代表internet ),增加了小规模联网这样的功能。其中一个Macintosh 操作系统的最新版本是Mac OS X 10.4版,也被称为Tiger 。下一版本的Mac OS是Leopard 。

Microsoft Windows

Microsoft Windows被安装在世界80%以上的个人计算机上。Windows 操作系统因其显示在基于屏幕的桌面上的矩形工作区而得名。每个工作区的窗口可以显示一个不同的文件或程序,提供了操作系统多任务能力的一个可视化模型。

早先版本的Windows ,包括Windows 3.1,有时也被称为操作环境,而非操作系统,因为它们需要DOS 提供操作系统内核。Windows 操作环境主要提供一个点击的用户界面,还包括图形屏幕显示和鼠标输入。Windows 操作环境演变成为了今天的综合操作系统,不再需要DOS 内核。

Windows 已经过了多个版本的演进,Windows 1.0 (1985) – Windows 2.0 (1987) –Windows 3.0 (1990) – Windows 3.1 (1992) – Windows for Workgroups (1992) – Windows NT (1993) – Windows 95 (1995) – Windows 98 (1998) – Windows 2000 (2000) – Windows Me (2000) – Windows XP (2001) – Windows Vista (2007)。

掌上操作系统

三种操作系统(Palm OS、Windows Mobile OS和Symbian OS)统治着掌上电脑的领域。它们为各种掌上电脑、具有电话功能的PDA 和智能手机提供操作系统。

第三部分 模拟写作

软件项目计划

为了与客户交流风险分析与管理、项目成本估算、进度及团队组织,我们通常撰写被称为项目计划的文档。该计划以书面形式说明客户的需求,以及为了满足该需求我们所希望采

取的行动。客户可以通过该计划了解开发过程中活动的有关信息,从而在开发过程中很容易地跟进该项目的进展。我们也可以使用该计划与客户确认我们制定的所有假设,尤其是关于成本和进度。

一个好的项目计划包括以下内容:

1. 项目范围

2. 项目进度

3. 项目团队组织

4. 被提议系统的技术描述

5. 项目的标准、程序、建议的技术和工具

6. 质量保证计划

7. 配置管理计划

8. 文档计划

9. 数据管理计划

10. 资源管理计划

11. 测试计划

12. 培训计划

13. 安全计划

14. 风险管理计划

15. 维护计划

范围规定了系统边界,对该系统将包含和不包含的内容做出解释。它向客户保证我们理解客户想要的东西。进度可以使用工作分解结构、可交付物和时间线来描述,以显示在项目生命周期过程中的每一个点上将会发生的事情。在阐明解释某些开发任务的并行特征时,甘特图是很有用的。

项目计划还列出开发团队的人员、组织方式及任务。正如我们所见,在整个项目中,并不是每个人在项目过程中随时都是必需的,所以项目计划通常包含一个资源分配图,用以显示不同时间的人员配置标准。

撰写技术描述促使我们在预期开发将如何进展时去回答和解决问题。该描述列出了硬件和软件,包括编译器、接口和特殊用途的设备或软件。任何关于布线、执行时间、响应时间、安全或其他功能或性能方面的特殊限制均应撰写在项目计划中。

模板

1.0 简介

本节提供软件工程项目概述。

1.1项目范围

描述该软件,包括主要的输入、处理功能和输出,不用考虑实现的细节。

1.2软件的主要功能

描述软件的功能组成(在估算和进度安排期间使用)。

1.3性能/行为问题

阐明关于性能或行为的特殊需求。

1.4管理和技术方面的约束

记录任何将影响项目进展方式的特殊限制或开发技术方法(例如,有限的资源、交付日期)。

2.0 项目估算

本节提供项目成本、工作量和时间的估算

2.1用于估算的历史数据

描述同当前估算相关的历史数据。

2.2运用的估算技术和成果

描述每项估算技术及由此产生的估算。

2.2.1某项估算技术

分别描述与上述各项估算技术相关的表格或方程。

2.2.2使用技术估算

分别描述由上述各项技术产生的估算。

2.3调和估算

描述该项目的(在这一点上的时间)最终成本、工作量、时间(时长)估算。

2.4项目资源

记录人员、硬件、软件、工具和其他为建立该软件所需的资源。

3.0 风险管理

本节讨论项目风险和管理风险的方法。

3.1项目风险

描述每个项目风险,可以使用CTC 格式。

3.2风险表

描述完整的风险表,包括风险的名称、概率、影响和RM3指针。

3.3风险缓解、监测和管理概述

概述RM3。完整的RM3是作为一个单独的文档或一组风险信息表。

4.0 项目进度

本节概述项目任务和项目调度工具的输出。

4.1项目任务集

描述该项目所选定的过程模型、框架内的活动和任务集。

4.2功能分解

描述可用于调度的功能分解。

4.3任务网络

以图表的形式描述项目任务及其相互依赖关系。

4.4时间线图

描述项目的时间线图,可以包括整个项目或每个人员的时间线。

5.0 人员组织

描述人员组织方式和报告机制。

5.1团队结构

确定项目团队结构,定义角色。

5.2管理报告和沟通

确定进展报告和跨/内部团队沟通的机制。

6.0 跟踪和控制机制

确定用于项目跟踪和控制的技术。

6.1质量保证和控制

概述SQA 活动。请注意,SQA 计划是针对中到大型项目开发的,并且可能作为一份单独的文档或以附录形式出现。

6.2变更管理和控制

概述软件配置管理活动。请注意,软件配置管理计划是为中到大型工程项目开发的,而且可能作为一份单独的文档或以附录形式出现。

7.0 附录

提供补充信息。

软件项目计划样例详见本书所附带的CD 。

第三单元 项目计划

第一部分 听说

A. 对话:软件项目计划

Jason :这么多工作要做啊!

Kevin :我认为我们需要一个正式的项目计划作为指导。

Sharon :是的,首先是时间,这也是影响我们项目的最重要的因素之一,我们需要一个进度表,尤其是项目的最终期限。

Kevin :我们总共有40天的时间,而需求已经花了5天的时间,因此我们还有35天时间。 Jason :哦,听起来时间确实很紧张。

Sharon :我们似乎应该尽快开始编程,对吗?

Jason :尽管编程是软件项目中非常重要的一个部分,但是,我认为现在最重要的事是,必须确定一个合适的时间进度表来控制我们的进度,并确保能够按时交付。

Kevin :是的,在需求阶段,我们还需要三天时间来对需求进行描述、分析和建模。之后,我们需要三天时间来完成结构设计,五天时间完成详细设计;由于这些工作量都是用于软件设计,因此接下来的编程相对不会很难,我认为在一周内应该能完成;测试及后续的调试在十天时间内应该能完成。

Sharon :也许我们可以用甘特图来描述我们的进度表,对于项目计划来说,甘特图是一种形象生动并且实用的工具。

Kevin :好主意!

Jason :事实上,测试不应该被看成是仅在编码阶段完成后才开始并仅限于以检测错误为目的。实际上,测试计划在需求阶段的早期就应该开始了,并且测试计划和流程应该系统地、不断地改进。我觉得,在编码阶段,我们可以同时执行单元测试,这将会节省大量时间并会获得更好的测试效果。最后,我们可以通过与客户一起工作来进行验证测试,检查开发出的软件客户是否满意,以确保客户能够获得他们所需要的。

Sharon :另外,我们需要三台计算机,必须安装客户所要求的具有统一版本的软件作为开发工具,以Visual Studio 2005作为开发平台,以Microsoft SQL server 2005作为数据库管理系统。

Jason :我们还需要网络。

Kevin :我将尽快为大家准备开发环境,然后给每个人分配一些管理任务。Sharon ,你负责文档管理,Jason ,你负责变更管理,我负责软件质量保证,怎么样? Jason 和Sharon :没问题。

Kevin :好,我已经把刚才讨论的内容做了记录,并会在两天内完成一份项目计划文档。

B. 短文理解:软件项目计划

有许多种项目计划方法。有些人是“最简单派”,他们认为,变化经常使得进行详细计划变得没有必要。其他人是“传统派”,他们认为,计划提供了有效的路线图,并且设计越详细,团队失败的可能性就越小。还有一部分人是“敏捷主义者”,他们认为,一个快速的“设计活动”是有必要的,但路线图将会在软件开始时作为实际工作出现。

那么到底应该如何做?在许多项目中,往往会因过度计划而事倍功半(太多的事情在变化),但过于简略的计划也会导致开发混乱。像生活中的大多数事物一样,应该适度进行计划,足以为团队提供有用的指导即可,不用多也不用少。

在一篇优秀的关于软件过程与项目的论文中,Barry Boehm提出:需要按比例缩减的组织原则来为简单的项目提供简单的计划。Boehm 建议一种方法来处理项目目标、里程碑、日程表、项目分工职责、管理及技术手段以及所需资源。他称此方法为W5HH 原则,在一系列引出关键项目特性的定义和随之产生的项目计划的问题之后:“为什么要开发系统”、“将要做什么”、“什么时候将完成”,上述三项是最必不可少的。此外,还有“一个功能由谁负责”、“人员被组织安置在哪里”、“工作将如何在技术和管理上完成”以及“每项资源各需要多少”。对于Bohehm 的W5HH 问题的回答十分重要,这点与软件项目的复杂度及规模无关。

C. 听写:软件项目中的四个变量

项目是使用资源来达到预定目的和目标的一系列特定的活动,是具有特定起止日期的有限努力和具有一系列的时间安排、预算及组织约束条件的管理过程。

通常情况下,在软件项目中,我们将控制四个经典变量——费用、时间、范围和质量。这四个变量通过相互作用共同影响着整个项目:增加的范围往往意味着要花费更多的时间和可能超过预算;紧迫的时间压力要求更强的资金支持,同时质量也可能受到影响;资金不足就难以解决范围之内的客户业务问题;更高的质量可能需要更长的开发生命周期和更高的费用成本。

看起来这四者之间的关系并不那么简单。例如,不能仅仅依靠投入更多的资金提高软件的开发速度。正像谚语所说:“即使是九个女人,也不可能在一个月之内生出孩子。” Kent Beck在他的《解析极限编程:拥抱变化》一书中提到,解决方法就是使这四个变量是可见的。如果每个人——程序员、客户和经理——都能注意到这四个变量,那么他们就可以有意识地选择控制哪些变量。如果他们不喜欢这四个变量可能带来的结果,那么可以改变投入或是选择不同的其他三个变量来进行控制以最终达到项目目标。

第二部分 阅读

A. 软件项目计划

一份恰当的项目计划是一个项目成功的重要因素。没有合适的计划,软件开发项目是不可能成功的。项目需求和架构可用之后就可以做一个好的计划了。项目计划的重要活动包括:过程计划、工作量估算、进度和人员安排、质量计划、配置管理计划、项目监控计划和风险管理。

过程计划一般涉及选择一个合适的过程模型并对它进行剪裁,以适合项目需要。在工作量估算中,项目总体工作量需求和不同阶段的工作量分解都要估算。在自上而下方法中,首先估算总体工作量,经常从项目规模估算开始,然后再确定不同阶段或任务的工作量。在自底向上方法中,首先识别项目中的主要任务并估算其所需要的工作量。从任务的工作量估算开始,进而完成总体工作量估算。

项目的总体进度和主要里程碑依赖于工作量估算和项目人员水平,并且可以使用简单模型来从工作量得到一个粗略的进度估算。很多时候,一个整体进度通过使用模型来确定,然后进行调整以满足项目需求和约束。详细进度是指在保持总体进度和工作量估算的条件下,将任务分解为更小的、可预计的任务,然后将其分派给特定的团队成员。详细进度是最生动的项目计划文档,因为它列出了必须做的工作;项目计划中的任何变化都会适宜地反映在详细进度中。

质量计划对于确保最终产品的高质量非常重要。项目质量计划确定了开发的不同阶段中所有必须执行的验证和确认活动以及如何执行这些活动。

配置管理的目标是控制项目过程中发生的变化。配置管理计划确定了需要被控制的配置项,并指定了完成配置计划的程序以及控制如何访问。

风险是那些不一定会发生、但一出现就会对项目具有负面影响的事件。为了在风险存在的情况下能够实现项目目标,需要适当的风险管理。风险管理要求对风险进行识别、分析和优先级排序。然后制定和执行风险缓解计划以将最高优先级风险的影响降到最小。 为了使项目计划成功实施,至关重要的一点是谨慎地监控项目。活动级别的监控、状态报告和里程碑分析是常用的机制。对于分析和报告,实际工作量、进度、缺陷和规模应被度量。有了这些度量,才有可能依照计划监控项目的执行情况。在此监控的基础上,如果需要,便可以采取措施来纠正执行的过程。

总体而言,项目计划制定了为了达到目标项目所应遵循的路线。项目计划指定了项目成员应当执行的所有任务,并指定为执行该计划谁将做什么、用多少时间以及什么时候做。有了详细计划,余下将要做的就是执行计划。当然,由于工作不能总是按计划完成,因此计划从来不是一成不变的。通过适当的监控,这些情况能够被识别,并可以相应地改变计划。基本的项目计划原则和技术也可以用于计划修改。

B. 操作系统

操作系统,也称为软件平台,由管理计算机基本操作的、低层的主要程序系统组成。这些程序提供多种资源管理服务。特别是它们负责硬件资源的控制和使用,包括磁盘空间、内存、CPU 时间分配和外围设备。每台通用计算机必须有一个操作系统来运行其他程序。操作系统可让用户专注于自己的任务或应用程序,而无需关注管理计算机的复杂性。每个应用程序都被写成在一个特殊的操作系统之上运行。

不同规模和牌子的计算机都有各自的操作系统。举例来说,Cray 超级计算机使用UNICOS 和COS ;IBM 大型主机使用MVS 和VM ;个人计算机运行Windows 或Unix ;苹果公司的Macintoshes 运行Macintosh OS。一般来说,为一种硬件写的操作系统不能运行在其他机器上。换句话说,不同的操作系统是互不兼容的。

操作系统可以做如下事情:引导开机、CPU 管理、文件管理、任务管理和安全管理。 操作系统可使用以下一个或多个术语进行非正式地分类和辨别:

单用户操作系统在同一时间只能由一个用户控制一组输入设备。用于掌上电脑和很多个人计算机的操作系统适合单用户类别。DOS 就是单用户操作系统的一个例子。

多用户操作系统允许一台计算机——通常是一个主机——同时处理来自多个用户的输入、输出和处理请求。多用户操作系统最难的任务之一就是调度一台集中式计算机必须执行的所有处理请求。IBM 的OS/390是流行的主机多用户操作系统之一。

网络操作系统(也称为服务器操作系统)提供可让计算机共享数据、程序和外围设备的通信和路由服务。举例来说,Novell 公司的NetWare 一直被称为网络操作系统。网络服务和多用户服务之间的区别似乎很模糊,特别是像UNIX 、Linux 和Sun Microsystem公司的Solaris 同时提供了上述两种功能。不过,主要区别在于,多用户操作系统调度请求,以实现在一台集中式计算机上的处理请求;而网络操作系统仅仅是将数据和程序发送到每个用户的本地计算机上,实际处理发生在这些本地计算机上。

桌面操作系统是一种专门为个人计算机而设计的——桌面、记事本或平板电脑。这些在家里、学校或在工作中使用的计算机最有可能配置一个桌面操作系统,例如Microsoft Windows 或Mac OS。通常情况下,这些操作系统是为单一用户设计的,但也可能提供网络功能。当今的桌面操作系统都能提供多任务能力。

有些操作系统供应商用家庭或专业版本来描述其产品特性。与专业版相比,家庭版通常的网络管理工具更少。

DOS

DOS 代表磁盘操作系统。它是由微软公司——后来生产了Windows ——开发并于1982年在原IBM 个人计算机上推出。尽管IBM 将这种操作系统称为PC-DOS ,但微软以MS –DOS 帝名字将其推向市场。

20多年以后,在个人计算机世界中DOS 遗留下来的痕迹仍然存在,因为它为Windows

3.1、95、98和Me 提供了操作系统内核的一部分。

Unix and Linux

Unix 操作系统是1969年在AT &T 的贝尔实验室里开发的。它原本是设计运行在网络环境下的微型计算机上。现在,它也用于强大的微型计算机和网站服务器上。Unix 有许多不同版本。其中之一便是当今广受关注的Linux 系统。

Windows 、Mac OS和许多Unix 版本是专有的操作系统,而Linux 却不是。它是一种开源软件,有很多免费的来源,包括网络。作为一个赫尔辛基大学的研究生,Linus Torvalds 在1991年开发了Linux 。他已经允许操作系统代码的销售版本,并鼓励他人修改和进一步开发代码。Linux 是最流行的和最强大的替代Windows 的操作系统之一。

Mac OS

苹果机操作系统(Mac OS)仅运行在Apple Macintosh计算机上,它设定了一套面向图标的、易于使用的图形用户界面标准。苹果公司以施乐公司所完成的工作作为其新界面的基础,而此前施乐公司已将斯坦福研究协会(现在是斯坦福国际研究协会)的早期研究作为其工作基础。在1984年投入市场不久,它就吸引了大量爱好者,并迫使竞争对手微软将DOS 升级为更加用户友好的Windows 操作系统。后来,1998年,苹果公司推出了iMac 计算机(i 代表internet ),增加了小规模联网这样的功能。其中一个Macintosh 操作系统的最新版本是Mac OS X 10.4版,也被称为Tiger 。下一版本的Mac OS是Leopard 。

Microsoft Windows

Microsoft Windows被安装在世界80%以上的个人计算机上。Windows 操作系统因其显示在基于屏幕的桌面上的矩形工作区而得名。每个工作区的窗口可以显示一个不同的文件或程序,提供了操作系统多任务能力的一个可视化模型。

早先版本的Windows ,包括Windows 3.1,有时也被称为操作环境,而非操作系统,因为它们需要DOS 提供操作系统内核。Windows 操作环境主要提供一个点击的用户界面,还包括图形屏幕显示和鼠标输入。Windows 操作环境演变成为了今天的综合操作系统,不再需要DOS 内核。

Windows 已经过了多个版本的演进,Windows 1.0 (1985) – Windows 2.0 (1987) –Windows 3.0 (1990) – Windows 3.1 (1992) – Windows for Workgroups (1992) – Windows NT (1993) – Windows 95 (1995) – Windows 98 (1998) – Windows 2000 (2000) – Windows Me (2000) – Windows XP (2001) – Windows Vista (2007)。

掌上操作系统

三种操作系统(Palm OS、Windows Mobile OS和Symbian OS)统治着掌上电脑的领域。它们为各种掌上电脑、具有电话功能的PDA 和智能手机提供操作系统。

第三部分 模拟写作

软件项目计划

为了与客户交流风险分析与管理、项目成本估算、进度及团队组织,我们通常撰写被称为项目计划的文档。该计划以书面形式说明客户的需求,以及为了满足该需求我们所希望采

取的行动。客户可以通过该计划了解开发过程中活动的有关信息,从而在开发过程中很容易地跟进该项目的进展。我们也可以使用该计划与客户确认我们制定的所有假设,尤其是关于成本和进度。

一个好的项目计划包括以下内容:

1. 项目范围

2. 项目进度

3. 项目团队组织

4. 被提议系统的技术描述

5. 项目的标准、程序、建议的技术和工具

6. 质量保证计划

7. 配置管理计划

8. 文档计划

9. 数据管理计划

10. 资源管理计划

11. 测试计划

12. 培训计划

13. 安全计划

14. 风险管理计划

15. 维护计划

范围规定了系统边界,对该系统将包含和不包含的内容做出解释。它向客户保证我们理解客户想要的东西。进度可以使用工作分解结构、可交付物和时间线来描述,以显示在项目生命周期过程中的每一个点上将会发生的事情。在阐明解释某些开发任务的并行特征时,甘特图是很有用的。

项目计划还列出开发团队的人员、组织方式及任务。正如我们所见,在整个项目中,并不是每个人在项目过程中随时都是必需的,所以项目计划通常包含一个资源分配图,用以显示不同时间的人员配置标准。

撰写技术描述促使我们在预期开发将如何进展时去回答和解决问题。该描述列出了硬件和软件,包括编译器、接口和特殊用途的设备或软件。任何关于布线、执行时间、响应时间、安全或其他功能或性能方面的特殊限制均应撰写在项目计划中。

模板

1.0 简介

本节提供软件工程项目概述。

1.1项目范围

描述该软件,包括主要的输入、处理功能和输出,不用考虑实现的细节。

1.2软件的主要功能

描述软件的功能组成(在估算和进度安排期间使用)。

1.3性能/行为问题

阐明关于性能或行为的特殊需求。

1.4管理和技术方面的约束

记录任何将影响项目进展方式的特殊限制或开发技术方法(例如,有限的资源、交付日期)。

2.0 项目估算

本节提供项目成本、工作量和时间的估算

2.1用于估算的历史数据

描述同当前估算相关的历史数据。

2.2运用的估算技术和成果

描述每项估算技术及由此产生的估算。

2.2.1某项估算技术

分别描述与上述各项估算技术相关的表格或方程。

2.2.2使用技术估算

分别描述由上述各项技术产生的估算。

2.3调和估算

描述该项目的(在这一点上的时间)最终成本、工作量、时间(时长)估算。

2.4项目资源

记录人员、硬件、软件、工具和其他为建立该软件所需的资源。

3.0 风险管理

本节讨论项目风险和管理风险的方法。

3.1项目风险

描述每个项目风险,可以使用CTC 格式。

3.2风险表

描述完整的风险表,包括风险的名称、概率、影响和RM3指针。

3.3风险缓解、监测和管理概述

概述RM3。完整的RM3是作为一个单独的文档或一组风险信息表。

4.0 项目进度

本节概述项目任务和项目调度工具的输出。

4.1项目任务集

描述该项目所选定的过程模型、框架内的活动和任务集。

4.2功能分解

描述可用于调度的功能分解。

4.3任务网络

以图表的形式描述项目任务及其相互依赖关系。

4.4时间线图

描述项目的时间线图,可以包括整个项目或每个人员的时间线。

5.0 人员组织

描述人员组织方式和报告机制。

5.1团队结构

确定项目团队结构,定义角色。

5.2管理报告和沟通

确定进展报告和跨/内部团队沟通的机制。

6.0 跟踪和控制机制

确定用于项目跟踪和控制的技术。

6.1质量保证和控制

概述SQA 活动。请注意,SQA 计划是针对中到大型项目开发的,并且可能作为一份单独的文档或以附录形式出现。

6.2变更管理和控制

概述软件配置管理活动。请注意,软件配置管理计划是为中到大型工程项目开发的,而且可能作为一份单独的文档或以附录形式出现。

7.0 附录

提供补充信息。

软件项目计划样例详见本书所附带的CD 。


相关内容

  • 饭店情景英语辅导
  • 基本资料 饭店情景英语辅导 作者: 郭兆康主编 出版社: 出版年: 2000年09月第1版 页数: 定价: 15 装帧: ISAN: 内容简介 本书共分三部分:原书课文译文.原书练习答案.饭店员工岗位培训统考模拟试题及其答案.课文译文力求忠于原文,符合饭店业用语规范. 书  目: 举报失效目录 超星 ...

  • 大学英语课程标准
  • <大学英语>课程标准 课程名称:大学英语 总学时数:180(实践课学时数:36) 学分数:10学分 适用专业:专科非英语专业 开设时间:第一和第二学期 一.课程性质 <大学英语>课程作为大学生人文素质培养的一个重要环节,是四川华新现代职业学院基本能力课程中的一门必修课程,供专 ...

  • 人教版高中英语教材分析
  • 人教版普高课标英语教材分析 一.教学目标 高中阶段英语课程的目标以义务教育一至五级目标为基础,共有四个级别(6-9级)的目标要求.其中七级是高中阶段必须达到的级别要求,八级和九级是为愿意进一步提高英语综合 语言运用能力的高中学生设计的目标.见高中英语课程结构表: 课程结 <普通高中课程标准实验 ...

  • 新概念教学方法
  • 教师按语 伴随每个教学单元的按语应该被视为建议.如果愿意,教师可以偏离所规定的教学计划,或是省略他认为不符合他教学目标的练习.然而,写上按语的目的是帮助教师组织训练所介绍的句型.在可能的情况下,每课书的练习均按难易程度分级.这就意味着,如果时间不够,最后的练习可以删去,而不至于严重影响学生的学习进程 ...

  • 新大学英语综合教程4第一单元课文译文
  • Book 4 unit 1 P6 Hello, I'm Lisa Jackson, Administrator of the Environmental Protection Agency. At the fi rst Earth Day 39 years ago, 20 million Ameri ...

  • [商务英语翻译教程]答案
  • 第一单元 名片 1.2 Lead-in 1.2.1 Harbin 公司 Century Village 财务主任 助理工程师 名誉主席 首席运营官 传真 邮政信箱 10) 外销部经理 1.2.3(略) Practice 1.7.1 全部正确 1.7.2 245 (1中改成"先高后低&quo ...

  • 大学课后习题答案
  • [大学四年100万份资料大集合] http://www.3che.com/forum.php?mod=viewthread&tid=7083&fromuid=582866 新视野大学英语课后习题答案1-4册全集 http://www.3che.com/forum.php?mod=vi ...

  • 九年级英语HAPPY HALLOWEEN教案1
  • 一.教学内容: 二.教学目标 知识目标:熟练掌握本单元课文中的单词,短语和句型. 能力目标:培养学生的综合运用知识的能力. 三.教学难点: 培养学生的综合能力 四.重点知识: 单词:本单元所有单词(单词表中) 短语: 2) return to their homes 回到家中 5) from doo ...

  • 卓越补习八年级下册英语广州牛津版课文笔记U1
  • Unit 1 Success stories (Ⅰ) 一周强化 一.一周知识概述 1.重难点单词与短语:award ,success ,strict encourage,support ,interest ,develop ,development ,overcome ,admire ,accide ...