Overview design, Detailed design: concepts, methods, practical steps

Source: Internet
Author: User
Tags define function documentation error handling exception handling

Complete Software development process:


Requirements analysis, summary design, detailed design


a

1. Concepts, methodologies, practical steps

Design refers to the process of designing the technology of a product from coarse to fine according to the result of requirement development. According to the design granularity and the different purpose can divide the design into the outline design, the detailed design and so on the stage to be easy to manage and to ensure the quality. The design content should also be defined according to the actual situation of the software system, for example, the system with high interaction requirements can have visual design and so on.

In general, the design phase can be divided into a summary design, detailed design 2 stages of management, program design can be combined with project management, assignment, development team capacity and quality requirements and other factors to determine whether as a separate phase of management.

N Summary design: Define the work product technical function, technology framework, define the design criteria and common treatment policy, break down the function module, define function and business process of each function module, define the interface relationship between modules. Typical work products are "Summary design book", "Design Guidelines" and "common treatment policy". Generally include the system technical framework, function at a glance, function migration diagram, database logic design, data file logical definition, System units function module and interface definition, design guidelines and common treatment policy (appearance, operation, error handling, log, prompt information, exception handling, naming protocol, code rules, etc.) and other content.

N Detailed design: Define the detailed implementation of the functional units of each function module, including the physical definition of the interface, and the physical definition of the database/data file. Typical work Product: "Detailed design book". Typical content includes the detailed description of the function unit implementation of each module, database physical design, data file physical definition, interface physical definition, status code physical design, output information (msg/log) design and other content.

Programming: A combination of specific coding language, coding process in the design of the code. Based on experience for a large number of beginners in the team, a certain amount of programming can improve the quality and efficiency of the coding.

2. Main processes in the design phase

The main activities in the design phase include the following: Planning or planning during the design phase, defining the design criteria, designing and designing the design documentation, and reviewing the design product.

1. The planning or planning content of the design phase determines the organization of the design team and authorizes, assesses the workload in the design phase, clearly designed work tasks (WBS decomposition), and the completion time, the definition of quality standards in the design phase, and the efficiency criteria. This part of the activity is mainly PDCA in the first step, in addition to the above content, but also need to consider some of the project management of common management planning, such as risk management, configuration management, stakeholder management, change management, decision analysis management and so on. Working on a multi-person or team job, making reasonable plans and planning is the first step.

2. Different types of system design methods, ways, etc. have a great difference, such as image processing system, monitoring system and ERP management system differences are obvious. Therefore, the design phase has a key activity is to determine the design criteria, the main purpose of this activity is based on the actual situation of the system, choose the best practice, with the best method to guide the design. The design guidelines usually include: design content, methods, tools, templates, naming conventions, module partitioning rules (especially design granularity), quality and efficiency assessment methods, and so on.

3. Design and Design Documentation: Perform design tasks and design documentation based on design guidelines and design planning most of the time is not a complex task, but it is an iterative process of digesting a lot of times for software systems. We need to understand, learn, iterate and spend a lot of time from discussing design ideas, forming preliminary drafts, fully communicating, making decisions, revising, and reviewing. The design of software system is the main method of design regardless of the form, layering, abstraction, generalization and summarization. Layering and abstraction are the most critical steps, but also relatively difficult to master, regardless of the hierarchy and abstraction from the beginning of the classification, such as functional classification, business classification, information classification, control mode classification and so on, as long as the layer can be categorized easily layered and abstract. In addition, induction, summary is a common method, but also manual work, as long as careful and meticulous can be done well.

4. Design Product review: Review of design products and related communication are the main activities to ensure the quality of design. From the formal, can use a variety of methods, such as design team review, peer review, formal meeting review and so on.

The planning or planning of the main activities during the design phase, the design criteria, design and design documentation, and design product review are iterative processes. Design is essentially a learning iterative process, through continuous review, confirmation, improvement to achieve maturity, so the design of the guarantee means mainly design guidelines and review.

Depending on the specific process of the software project type, there are also some differences in detail, each software development organization can be defined in conjunction with the business characteristics, the following examples describe 2 typical processes.

Example: Software outsourcing Enterprise, the typical process of engineering class (summary design)

Main Features:

ü The process emphasizes the participation of customers, such as the design of the plan, the design of the results of the review.

ü Emphasize quality control of key processes, such as the results of system architectures.

ü Grade control of projects with different scale, technology, quality and schedule requirements.

3.1 Develop and revise the project plan

• The project manager formulates the outline design plan according to the project plan specification, clarifies the work tasks and the completion time of the design management team, and informs the relevant parties to confirm.

• The project is in progress to adjust or re-establish the detailed schedule of the outline design in a timely manner, based on the changes in the given requirements and the tracking results of the actual progress of the summary design.

• Revise the plan and agree with the customer, as necessary, based on the progress of the outline design.

Note: agreement with the customer is the core of the outsourcing, the plan and the core content and the customer agree is very important.

• Project Outline design plans are incorporated into the project plan.

3.2 Determining system architecture and Outline design guidelines

• Determine system architecture

A. For Category A and B projects

 Start Dar (see decision analysis Procedures), analyze risk, cost, schedule constraints, technology, quality requirements, decide whether you need to buy commercial components, whether or not to reuse existing components. If you confirm that you need to purchase, please refer to the Supplier Contract management regulations.

 According to the company personnel situation, project business characteristics, performance data volume requirements, reliability requirements, cost, efficiency, risk and other aspects of the content of a variety of system architecture assessment, and finally select the appropriate system architecture for the project.

 Output refer to the output of the decision analysis procedures.

B. For non-category A and B projects

The Design Management group assesses a variety of system architectures based on company personnel, project business characteristics, performance data volume requirements, reliability requirements, cost, efficiency, and risk, and ultimately selects the appropriate system architecture for the project.

If a user has a different requirement for a general project or a structure that is unfamiliar to the company, the Development Technology (Environment) group needs to produce a prototype of the project to validate the technical architecture and ensure its correctness.

Note: According to the different workload, technology, quality, schedule requirements, team size and other identification of the project classification, and the summary design of the key control points (architecture) for different control.

• Define outline design Guidelines

 Design Management Group According to the project situation, determine the project outline design criteria, the guidelines usually include: the project Outline design method, the project outline design uses the tool, the summary design result material uses the partial template and so on.

 Design (style) management group defines various policies, each unit function module design should follow the defined policy.

 Commonly defined guidelines include: operations, error handling, logging, prompting, exception handling, naming conventions, and more.

All of the processing policies defined require documentation and configuration management.

 Create the outline design guidelines for all the content defined.

3.3 Design Business functions

• The design management Group uses various methods to refine (including splitting, merging, grouping, and so on) the business components defined in the system requirements definition book, and to assign the requirements to the business components or functional modules of these segments.

Design Management Group According to the various processing policies, the functions of the units and functional modules of the appearance, data item definition, function summary, data processing flow, operation method, each function component or function module interface and parameters are designed.

• Define the interface and parameters of each function and function module, and each designer must verify the consistency of its interface.

• Add the above content to the description of the system architecture and form the "Summary design book".

• The design Management group fills in the requirements tracking matrix with the content of the outline design in accordance with its and requirements.

• Database logic design.

3.4 Review System Overview Design

• The project manager organizes the project review Expert group to review the results of the summary design (see review procedures). The issues identified in the review should be reflected in the summary Design review report. After the review is complete, the development Manager (PJL) tracks these issues until the issue is corrected.

• Upon completion of the review, the Project review panel will produce a summary design review report based on the findings of the review and report to the project Manager (PM).

3.5 Confirm Summary Design

• The project manager (PM) obtains the customer's approval for the summary design book after the summary design review is passed.

Note: The summary design results in the software outsourcing generally also need the customer's review, this is also the main method of shielding risk of the project, but different customer technical level is not the same, but also according to the actual situation to judge.

3.6 Inclusion in Baseline management

• The outline design guidelines, the summary design book, and the demand tracking matrix should be included in the baseline management after the review

• All documents generated by this procedure are subject to configuration management (see Configuration management Procedures). The resulting documentation typically includes:

 "Outline Design Guidelines"

 "Summary Design book"

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.