关于软件开发的知识(中英文)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1. What is software development?

Software development is the process of developing software through successive phases in an orderly way. This process includes not only the actual writing of code but also the preparation of requirements and objectives, the design of what is to be coded, and confirmation that what is developed has met objectives.

Before systems development methods came into being, the development of new systems or products was often carried out by using the experienceand intuition of management and technical personnel. However, the complexityof modern systems and computer products long ago made the need clear forsome kind of orderly development process.

Typical phases of software development:

1) Identification of required software

2) Analysis of the software requirements

3) Detailed specification of the software requirements

4) Software design

5) Programming

6) Testing

7) Maintenance

In general, the development of commercial software is usually a result of demand in the marketplace, while enterprise software developmentgenerally arises from a need or a problem within the enterprise environment.

2. How is software development guided?

The software development process is almost invariably guided bysome systematic software development method (SDM). Referred to by a numberof terms, including process models, development guidelines,and systems development life cycle models (SDLC), software development methods nevertheless generally include the same development phases:

∙The existing system is evaluated and its deficiencies identified, usually through interviewing system users and support personnel.

∙The new system requirements are defined. In particular, the deficiencies in the existing system must be addressed with specific proposals for improvement.

∙The proposed system is designed. Plans are laid out concerning the physical construction, hardware, operating systems, programming, communications, and security issues.

∙The new system is developed. The new components and programs must be obtained and installed. Users of the system must be trained in its use, and all aspects of performance must be tested. If necessary, adjustments must be made at this stage.

∙The system is put into use. This can be done in various ways. The new system can phased in, according to application or location,

andthe old system gradually replaced. In some cases, it may be more cost-effective to shut down the old system and implement the new system all at once.

∙Once the new system is up and running, then it should be exhaustively evaluated. Maintenance must be kept up rigorously at all

ers of the system should be kept up-to-date concerning the latest modificationsand procedures.

The systems development life cycle model was developed as a structured approach to information system development that guides all the processesinvolved from an initial feasibility study through to maintenance of thefinished application. SDLC models take a variety of approaches to development.

Systems development life cycle models include:

· The waterfall model:This is the classic SDLC model, with a linear and sequential method that has goals for each developmentphase. The waterfall model simplifies task scheduling, because there areno iterative or overlapping steps. One drawback of the waterfall is thatit does not allow for much revision.

· Rapid application development (RAD):This models based on the concept that better products can be developed more quicklyby: using workshops or focus groups to gather system requirements; prototyping and reiterative testing of designs; rigid adherence to schedule; and less formality of team communications such as reviews.

· Joint application development (JAD): This modelinvolves the client or end user in the design and development of an applicationthrough a series of collaborative workshops called JAD sessions.

· The prototyping model: In this model, a prototype (an early approximation of a final system or product) is built, testedand then reworked as necessary until an acceptable prototype is finallyachieved from which the complete system or product can now be developed.

· Synchronize-and-stabilize: This model involves teams working in parallel on individual application modules, frequently synchronizing

相关文档
最新文档