Software requirements, outline design, detailed design (documents)

Software requirements, outline design, detailed design (document) how to do, what to do?

52018.06.15 2451 08:09:26 number of words read 36159

EDITORIAL

Since the project needs, the need to provide "Software Requirements Specification", "software outline design specification" and "software detailed design specification." So organized here to learn about the contents of the relevant documents needed. Article does not describe in detail the design analysis of all requirements, preliminary design and detailed design. Because of which can be extracted at any point become a separate book content software engineering disciplines.

1 overall software design process:

  • Software requirements analysis phase : the output of the "software requirements specification" does not involve specific method. Users can understand it, developers can accordingly make the following work, figuring out "to solve the problem."
  • Outline design stage : determine the overall layout of the software system, the relationship between the various functional modules and sub-modules, the relationship with external systems, technical route choice. There are some elements of research and demonstration. And outputs "Summary Software design specifications." Figure out "the overall implementation"
  • Detailed design stage : for further refinement of the outline design, usually served by the personnel section were completed according to the outline design and integration, specific implementation details. A "procedure" blueprint determination algorithm used in each module, data structures, implementation of the interface, attribute parameters. And outputs "software detailed design specification." Figure out "how to do each of the modules."

Needs analysis

2.1 Why do we need to "Software Requirements Specification"?

If you write the demand for illustrative purposes only function implemented in software, so good coding structure, code comments can achieve a good description of the software features, programmers can write needs time savings were achieved more features; but such a situation may be more suitable for small projects, or Internet project because this project needs is not complicated, and demand is changing rapidly, so the R & D efficiency is very important. However, for large software project or function more complex systems, software development may be more than collaborative effort, so the information transfer process, we only consider in advance the contents of a good software requirements in order to properly assess the time required for software development, cost elements, so as to better manage the project.

2.2 "software requirements specifications," the general structure
  • The first chapter is the body 1. Overview , contains
  • 1.1 purpose of writing; 1.2 Terms and definitions; 1.3 References; three parts
  • The second chapter is given to the standards and specifications of the project , as well as project development process must be carried out in compliance with the standards and norms in the subsequent preparation of the content of the document.
  • The third chapter should describe underlying assumptions of the project, a number of limitations and dependencies , in the course of the subsequent deployment of the system can have reference value.
  • Chapter IV "functional specification" is the focus of the demand function and view function point list highlights the role of this system, interface design ideas, systems, and system use cases. This content must be described in detail, in order to provide guidance on the subsequent development and testing.
  • Chapter 5, " non-functional specifications " for the performance of the project, security, backup, data recovery and other content explanation explanation, a project in addition to the full-featured, but also consider the appropriate requirements of performance, security, and so on.
  • Chapter VI "Appendix" , is the software requirements specification of some additional documentation, which the "Software Requirements Traceability Matrix" is the focus of this document is to improve the degree of follow-up requirements were strictly controlled.

3 outline design

3.1 "outline design specification," the general structure:
  • Overview: (talk about the origin of matter) needs or objectives, environment, limitations;
  • The overall design: from a global point of view about the organizational structure, functions, processing flow, which has a relationship between modules, modules, operating environment and so on. (FIG. Output: system configuration diagram, a flowchart of the system, data flow, line drawing tools recommended https://www.processon.com/ )
  • The external interface: a general description of external users, software and hardware interface (available resources);
  • Modular design: each module "what", a brief description of "how" (input, output, processing logic, interfaces to other systems or modules), in what logical location, the physical position.
模块设计,可以写以下内容:
   1、模块描述:说明哪些模块实现了哪些功能;
   2、模块层次结构:可以使用某个视角的软件框架图来表达;
   3、模块间的关系:模块间依赖关系的描述,通信机制描述;
   4、模块的核心接口:说明模块传递的信息、信息的结构;
   5、处理方式设计:说一些满足功能和性能的算法;
  • Data structures: logical structure, the physical structure.
  • Disaster Recovery Design: error messages, error handling. (Optional)
  • Monitoring design: Run module combination, control, time. (Optional)
  • User interface design :( optional).
  • Security design :( optional).
  • Other design :( optional).
  • Norm (Appendix): design principles, code specification, an interface protocol, naming rules.
3.2 Summary of local design Note
  • Used to evaluate the feasibility of the overall design.
  • Design module is used to check the integrity of each module to ensure a corresponding function has achieved.
  • Used to assess the development effort, to guide the development plan (in the case do not write detailed design).
  • Summary of too much emphasis on business process design phase is a misunderstanding.
  • Outline design stage to achieve too much attention to detail is a misunderstanding.

4 detailed design

4.1 "detailed design specification," the general structure:

Reference on how to write software detailed design content?

  • Introduction, comprising: a
    write object, background, references, and description Definition

  • Design Overview, includes: mission and objectives, an overview of the demand, an overview of the operating environment, conditions and limitations, detailed design methods and tools

  • Detailed system requirements analysis, include: a detailed needs analysis, detailed system operating environment and constraints analysis interface requirements analysis

  • Confirmed the overall program, comprising: a confirmation system architecture, the system interface is divided Details

  • Detailed design of the system, comprising: partitioning subsystem and system architecture design, detailed design of the system function modules (FIG HIPO be employed ,, IPO described by an interface or a configuration diagram of the relationship between the composition of structures, algorithms, modules and each module functional decomposition module description a cross-reference between requirements, functional and three modules.), system interface detailed design

每个模块的描述说明可参照以下格式:

**模块编号:**

**模块名称:**

**输入:**

**处理:**

**算法描述:**

**输出:**
  • Database System Design
Local detailed design Note 4.2

Or if it is necessary, especially for large software system, the detailed design phase partitioning system function modules or subsystems.

5 distinguish the outline design and detailed design

5.1 outline design stage:

At this stage, the designer will generally consider and take care of the internal implementation module, but but more entangled here. Mainly in the division module, assign tasks, defining the relationship between calls. Interfaces between modules and pass parameters to be set at this stage very clear and detailed, rigorous data dictionary should be prepared to avoid subsequent design produces puzzled or misunderstanding. Not a general summary of the design can be done, but repeated restructuring. A typical adjustment is repeated merge function module or modules can be further decomposed multiplexing. In the preliminary design stage, should maximize the extraction module can be reused, the establishment of well-structured system, saving part of the follow-up work.
The most important part of the design documents are hierarchical schematic data flow diagram, a structure diagram, data dictionary, and the corresponding text descriptions. In summary is based on design documents, detailed design of each module can be launched in parallel.

5.2 detailed design stage

At this stage, the individual modules can be distributed to different people to parallel design. In the detailed design phase, the designer of the work object is a module, according to the outline design tasks given to local and external interfaces, module design and express algorithms, processes, state transition and so on. Here we must note that if there are necessary structural adjustments (such as decomposition of sub-modules, etc.) are found, must return to the outline design stage, will be adjusted in response to the summary of the design documents, but not resolved on the spot, without warning.
The most important part of the document is a flowchart illustrating the detailed design modules, state diagrams, local variables and the corresponding text descriptions

 

Guess you like

Origin www.cnblogs.com/xtxt1127/p/11540272.html