软件工程阅读(中英文对照)之需求分析
The first questions a businessperson,such as the manager of a department,should consider are:“What needs to be done better in my business?”and“Will a computer help?”[1].Of course,that person might have a difficult time specifying exactly what needs to be done more efficiently in his or her business.And,there are cases where managers introduce computers into their departments without understanding their applications.For example,suppose a small firm does not have a working manual accounting system but contracts the job to an accounting service because no one in the firm really understands accounting.A computerized accounting system might be difficult to implement or,worse yet,might aggravate the accounting problem.
However,thinking about a new computer system is an ideal opportunity for businesspeople to reexamine their business and the manner in which it is operated.The starting point for the requirements analysis is a review of the potential applications.
Making a requirements list of your applications can be done in a simple,nontechnical way.First,make a list of potential applications.Then,write a description of each applications and decide whether it can justify needing a computer system.Also include in the description how much time will be spent using the application.When people begin to describe their applications,it becomes easier to picture more concrete uses and functions for computer systems.The descriptions will serve as guidelines in later phases of the life cycle.
For example,let us examine the case of two secretaries:one is an executive secretary for the president of a firm and the other is a legal secretary for a law firm.The executive secretary is primarily interested in a word processing application to handle business correspondence,which consists of letters,memos,and brief proposals that flow through the office [2].The secretary will use word processing on a daily basis,but only for brief periods during the day.As the secretary begins to describe the applications,he finds out that most of the documents are under three pages and that a word processing package that is easy to learn and use will satisfy most of his needs[3].
On the other hand,the law firm’s secretary needs a word processing application to process the legal contracts and other documents that flow through the law firm’s office.In this case,the documents are lengthy and require extensive revisions.The word processor plays a central role in this secretary’s work,and it is used extensively.The simple,easily learned word processing software might suffice for the executive secretary,but the legal secretary needs word processing software geared to the legal profession that may be harder to learn but,in the long run,will be a more effective tool to solve the problem.
翻译:
一个实业家(比如一个部门的经理),首先应该考虑“让事业更兴旺需要做些什么?”、“计算机能提供帮助吗?”当然,要准确地说明他或她所经营的业务需要采取哪些卓有成效的措施是比较困难的,经营者没弄清楚计算机的具体应用就将它们引入其经营部门的情况是存在的。例如,假定一个小商行没有-个人真懂会计业务,而不用人工记账系统却把这一工作交给记账服务程序,而计算机记账系统可能难以完成,或者更糟,反倒增加了记账困难。
但是,考虑一个新的计算机系统对于经营者重新审查业务及经营方式是一个绝好的机遇。需求分析是从考察潜在的各项应用着手。
可以用一种简单而非技术性的方式列出所有应用的需求清单。首先,列出潜在的各项应用。然后,对每项应用作出说明,并决定是否有理由使用计算机系统;另外,该说明还包括应用的时间长短。这样,当人们着手描述应用时,勾画出计算机系统的具体用途和功能就变得得心应手。这份说明书将作为生存周期后期的指导原则。
例如,我们来看看两位秘书的工作情况:一位是一家商行经理的执行秘书,另一位是律师事务所的法律秘书。执行秘书感兴趣的主要是处理商业函件的字处理应用。这些商业函件包括办公室经手的信件、备忘录以及简要建议书。虽然秘书每天都需使用字处理系统,但它只占一天中很短的时间。当秘书着手描述应用时,他发现大多数文件在3页以内,一种易学易用的字处理软件包就能满足其大部分需要。
而另一方面,律师事务所的秘书则需要处理事务所的法律合同以及其他文件的字处理应用,这些文件冗长且需要反复修订,因此字处理在该秘书的工作中起着关键作用并得到广泛应用。简单易学的字处理软件对于执行秘书来说可能已经足够,但对法律秘书则要求适合法律职业的字处理软件,此软件可能不易掌握,但从长期使用的角度来看,它将是解决问题的一个更为有效的工具。
The requirements analysis is important because it will play a major role in determining the design of specific software and hardware systems.
Often,systems analysts in medium and large-scale organizations must use an existing system on which they base their requirements analysis.In this case,gaining an understanding of the existing system can be viewed as a background study that is a preliminary phase to the definition phase.A systems analyst would analyze an existing system and produce a written document that would identify the following:
• The needs of the people who use the system;
• The existing inputs,outputs,and processing;
• The flow of information through the system.
Once a good understanding of the existing system has been acquired,it serves as a basis for a detailed functional specification in which problems and opportunities to improve effectiveness can be identified and communicated to others[1].The analyst should always examine the existing system to see if needs can be met without a new system.
As information is collected about the current system,it should be organized so that every possible solution and its feasibility can be examined.The systems analyst works with users to analyze the alternatives.In this case,the goal of the background study is to:
• Identify and prioritize system-related problems and costs;
• Identify opportunities to improve systems performance;
• Produce a functional specification.
On the other hand,in many cases a systern must be designed to fill a need that did not exist beforehand.New computer systerns are often technology-driven.That is,as a technology becomes feasible to implement,it presents new business opportunities.For example,the automated teller machines(ATMs)presented the banking industry with a new opportunity.In that case,the process did not start with a request from a user,but as an opportunity created by new computer software and hardware.
The requirements analysis is one of the most important tasks to undertake,because it answers such questions as:
• What is the user’s problem?
• Will a computer help?
• What is the system required to do?
• What are some preliminary approaches to the problem?
NOTES
[1] “… a businessperson,such as the manager of a department,should consider”是省略关系代词“that”的限定性定语从句,修饰主语“questions”,其中“such as…”是插入语,说明“businessperson”。
[2] “to handle”引出的不定式短语,作定语修饰“a word processing application”;其后which引导的非限制性定语从句修饰“correspondence”。
[3] 句中有3个“that”,前两个that,即“that…and that…”引导两个并列的宾语从句;最后一个“that”引导定语从句,修饰“word processing package”。
[4] “in which”到句末为引导词是介词宾语的定语从句;其中“to improve effectiveness”为不定式短语,作定语修饰“problems and opportunities”。
KEYWORDS
requirement analysis 需求分析
background study 背景研究
需求分析十分重要,因为它在决定专用软件和硬件的设计中起着重要的作用。
通常,大中型机构的系统分析员必须根据现有系统做需求分析。在这种情况下,了解现有系统的工作可视为背景研究,这是方案论证的预备阶段。系统分析员将分析现有系统,并产生一个明确以下几项的书面文件:
使用该系统的人员的需要;
现有的输入、输出及处理能力;
系统的信息流。
一旦对现有系统有了充分的了解,就有条件写一份详细的功能说明书,其中要明确提高效率的问题和时机,且将它通知给其他人员。分析员应一直观察现有系统,判断不用新系统是否能满足需要。
在收集有关现有系统信息的同时,应将信息组织好以便于审查各种可能的解决方案及其可行性。系统分析员与用户共同分析研究替代方案。在这种情况下,背景研究的目的是:
确定系统有关的问题及花费,并排出解决的先后次序;
确定改进系统性能的时机;
制定一份功能说明书。
另一方面,许多情况下必须设计一个新系统来填补原来系统的不足。新计算机系统往往是技术驱动性的,即每当一种技术成熟可行时,就会给事业带来勃勃生机。例如,自动柜员机给银行业带来新的生机。在这种情况下,此过程并不是源于用户的要求,而是新的计算机软硬件的产物。
需求分析是要完成的最重要的任务之一,因为它回答了以下问题。
用户的问题有哪些?
计算机有帮助吗?
要求系统做什么?
解决问题的预备工作有哪些?
EXERCISES
1.True / False.
(1)____There are cases where managers introduce computers into their departm-ent without understanding their applications.
(2)____A law firm’s secretary is primarily interested to handle business corresp-ondence.
(3)____A executive secretary is primarily interested to process the legal contracts.
(4)____System analysts in large-scale organizations would understand the existi-ng systems.
(5)____ATMs are introduced as technology driven.
(6)____Listing a requirement you need a technical way.
(7)____Information of requirement should be organized so that every possible solution can be examined.
(8)____“What needs to be done better in my business?”is the first question for a businessman.
2.Fill in the blanks with appropriate definitions or phrases.
(1)Requirements analysis answers ____.
(2)One of the goal of the background study in system analysis is to____.
(3)____plays a central role in secretary’s work.
(4)For a detailed functional specification____serves as a basis.
(5)The first step of making a requirement list of your application is ____.
(6)____would analyze an existing system.
(7)The requirement analysis is important because it plays a major role in____.
(8)The analyst should always examine the existing system to____.
a.to make a list of potential applications
b.The word processor
c.determining the design of specific software and hardware systems
d.A system analyst
e.a good understanding of the existing system
f.see if needs can be met without a new system
g.identify opportunities to improve systems performance
h.“Will a computer help?”
答案:
1.(1)t (2)f (3)f (4)t
(5)t (6)f (7)t (8)t
2.(1)h (2)g (3)b (4)e
(5)a (6)d (7)c (8)f