# \ # DETAIL DESIGN DOCUMENT **Project Code:** \ **Document Code:** \<82e-BM/DE/HDCV/FSOFT\> – DD – v\<1.5\> --- ## RECORD OF CHANGE | No | Effective Date | Version | Change Description | Reason | Reviewer | Approver | |----|----------------|---------|-------------------|---------|----------|----------| | 1 | 15/Nov/2004 | 1.0 | Issued | IP | | | | 2 | 15/Oct/2005 | 1.1 | Change logo | BOM decision | | | | 3 | 10/Dec/2005 | 1.2 | Page 8: Section 2: Add data model | 20-PIP2005 | | | | 4 | 8/Mar/2006 | 1.3 | Add 5. OTHER CONSIDERATIONS | For CMMI 5 | | | | 5 | 10/Oct/2013 | 1.4 | - 1.3 Standards and Conventions => Add new
- 2.3 Store Procedure => Add new | Update to fit the actual | | | | 6 | 20/Jun/2016 | 1.5 | Re-format template to make consistent in QDS | To fix comments of QAI from CMMi5-v1.3 assessment project (Gap Analysis phase) | | HyTQ | | 7 | | | | | | | | 8 | | | | | | | | 9 | | | | | | | | 10 | | | | | | | --- ## TABLE OF CONTENTS 1. [Introduction](#1-introduction) - 1.1 [Purpose](#11-purpose) - 1.2 [Definitions, Acronyms and Abbreviations](#12-definitions-acronyms-and-abbreviations) - 1.3 [Standards and Conventions](#13-standards-and-conventions) - 1.4 [References](#14-references) - 1.5 [Overview](#15-overview) 2. [Common Package and Mechanism](#2-common-package-and-mechanism) - 2.1 [Common Package](#21-common-package) - 2.2 [Error, Exception Handling](#22-error-exception-handling) - 2.3 [Log, Trace and Debug](#23-log-trace-and-debug) - 2.4 [Performance Optimizing Mechanism](#24-performance-optimizing-mechanism) - 2.5 [Multilingual Processing](#25-multilingual-processing) 3. [Diagrams](#3-diagrams) 4. [Packages](#4-packages) - 4.1 [XXX Package](#41-xxx-package) - 4.2 [Implementation](#42-implementation) 5. [Database](#5-database) - 5.1 [ERDs](#51-erds) - 5.2 [XXX Table](#52-xxx-table) - 5.3 [Store Procedure](#53-store-procedure) 6. [File Design](#6-file-design) - 6.1 [File List](#61-file-list) - 6.2 [XXX File](#62-xxx-file) 7. [Code Design](#7-code-design) 8. [Edge Case Definition (エッジケース定義)](#8-edge-case-definition-エッジケース定義) - 8.1 [Abnormal Value Definition (異常値定義)](#81-abnormal-value-definition-異常値定義) - 8.2 [Boundary Value Definition (境界値定義)](#82-boundary-value-definition-境界値定義) - 8.3 [Exception Handling Definition (例外処理定義)](#83-exception-handling-definition-例外処理定義) 9. [Other Considerations](#9-other-considerations) 10. [Appendix](#10-appendix) --- ## RECORD OF CHANGE (of the project) | No | Effective Date | Version | Change Description | Reason | Reviewer | Approver | |----|----------------|---------|-------------------|---------|----------|----------| | 1 | \
| \ | \ | \ | | | --- ## 1. Introduction ### 1.1 Purpose \ **Example:** XXX detail design document contains descriptions of all classes, data structures, and implementation details of the YYYY system including: - Class diagrams that describe the static relation of all classes in the system - Dynamic diagrams such as collaboration diagram, sequence diagram, activities diagram - Description of class in detail - Database design including ERDs, table definitions, and stored procedures - File design specifications - Common mechanism in implementing is also defined in this document Developer and tester will base on this design to implement classes, database objects, and conduct unit testing. ### 1.2 Definitions, Acronyms and Abbreviations | Abbreviations | Description | Comment | |--------------|-------------|---------| | TBD | To be decided | It means "not decided yet" | | Windows DDK | Windows Device Development Kit | Development Kit from Microsoft to develop device driver for Windows 2000/XP/Server 2003 OS | | ESC/P | Escape Printing command | A page description language used on Epson ink jet printers | ### 1.3 Standards and Conventions \ ### 1.4 References \ | Document Number | Title | |----------------|-------| | \<01\> | \ | | \<02\> | \ | | | | ### 1.5 Overview \ --- ## 2. Common Package and Mechanism ### 2.1 Common Package #### 2.1.1 Class Diagram \ | No | Class Name | Description | |----|-----------|-------------| | 01 | \ | \ | | 02 | | | | 03 | | | #### 2.1.2 XXX Class \ **Attributes** | No | Attribute | Type | Default | Note | Description | |----|-----------|------|---------|------|-------------| | 01 | \ | int | | Public/ Static | \ | | 02 | | | | | | **Methods** | No | Method | Description | |----|--------|-------------| | 01 | \ | \ | | 02 | | | | 03 | | | **xxxx Method** \ \ **Parameters & Return** | No | Parameter | Type | In/out | Default | Description | |----|-----------|------|--------|---------|-------------| | 01 | parameter name | int | | | \ | | 02 | | | | | | | 03 | \ | | | | | **Implementation** \ ### 2.2 Error, Exception Handling #### 2.2.1 Class Diagram \< Describe class like in common package\> #### 2.2.2 Usage Mechanism \ ### 2.3 Log, Trace and Debug \ ### 2.4 Performance Optimizing Mechanism \ ### 2.5 Multilingual Processing \ --- ## 3. Diagrams \ **Example: Customer management** - **Add customer** ![Figure 1 Add Customer sequence diagram] - **Update customer** \ --- ## 4. Packages | No | Package | Language | Description | |----|---------|----------|-------------| | 01 | \ | C++, Java | \ | | 02 | | | | | 03 | | | | ### 4.1 XXX Package #### 4.1.1 Class Diagram \ | No | Class Name | Description | |----|-----------|-------------| | 01 | \ | \ | | 02 | | | | 03 | | | #### 4.1.2 External Interface \ #### 4.1.3 XXX Class \ **Attributes** | No | Attribute | Type | Default | Note | Description | |----|-----------|------|---------|------|-------------| | 01 | \ | int | | Public/ Static | \ | | 02 | | | | | | | 03 | | | | | | **Methods** | No | Method | Description | |----|--------|-------------| | 01 | \ | \ | | 02 | | | | 03 | | | **xxxx Method** \ \ **Parameters & Return** | No | Parameter | Type | in/out | Default | Description | |----|-----------|------|--------|---------|-------------| | 01 | \ | int | | | \ | | 02 | | | | | | | 03 | \ | | | | | ### 4.2 Implementation \ ...... --- ## 5. Database ### 5.1 ERDs \ ### 5.2 XXX Table \ **Table Structure** | No | Column Name | Data Type | Length | Null | Default | PK | FK | Description | |----|------------|-----------|--------|------|---------|----|----|-------------| | 01 | \ | \ | \<50\> | \ | | \ | | \ | | 02 | | | | | | | | | | 03 | | | | | | | | | **Indexes** | No | Index Name | Type | Columns | Description | |----|-----------|------|---------|-------------| | 01 | \ | \ | \ | \ | | 02 | | | | | **Constraints** \ ### 5.3 Store Procedure #### 5.3.1 XXX Stored Procedure **Purpose** \ **Parameters** | No | Parameter Name | Data Type | In/Out | Default | Description | |----|---------------|-----------|--------|---------|-------------| | 01 | \<@parameter_name\> | \ | \ | | \ | | 02 | | | | | | | 03 | \<@return_value\> | \ | \ | | \ | **Logic** \ **Example** ```sql CREATE PROCEDURE [dbo].[XXX_ProcedureName] @param1 VARCHAR(50), @param2 INT AS BEGIN -- Procedure logic here END ``` --- ## 6. File Design ### 6.1 File List | No | File Name | Format | Description | Location | |----|-----------|--------|-------------|----------| | 01 | \ | \ | \ | \ | | 02 | | | | | | 03 | | | | | ### 6.2 XXX File **File Description** \ **File Format** \ **File Structure** | No | Field Name | Data Type | Length | Format | Description | |----|-----------|-----------|--------|--------|-------------| | 01 | \ | \ | \<50\> | | \ | | 02 | | | | | | | 03 | | | | | | **Sample Data** \ **Processing Rules** \ --- ## 7. Code Design \ --- ## 8. Edge Case Definition (エッジケース定義) \ | Edge Case ID | BD ID | Input Item | Abnormal Condition | Expected System Behavior | Error Code | Log Level | User Message | |--------------|-------|-----------|-------------------|-------------------------|------------|-----------|-------------| | EC-001 | \ | \ | \ | \ | \ | \ | \ | | EC-002 | | | | | | | | | EC-003 | | | | | | | | ### 8.2 Boundary Value Definition (境界値定義) \ | Boundary ID | BD ID | Field Name | Min | Max | Test Value | Expected Result | |-------------|-------|-----------|-----|-----|------------|----------------| | BV-001 | \ | \ | \<1\> | \<50\> | \<0\> | \ | | BV-002 | | | | | \<1\> | \ | | BV-003 | | | | | \<50\> | \ | | BV-004 | | | | | \<51\> | \ | ### 8.3 Exception Handling Definition (例外処理定義) \ | Exception ID | Scenario | Trigger Condition | System Behavior | Transaction Handling | Retry Policy | Log Level | User Impact | |-------------|----------|------------------|----------------|--------------------|--------------|-----------|------------| | EX-001 | \ | \ | \ | \ | \ | \ | \ | | EX-002 | \ | \ | \ | \ | \ | \ | \ | | EX-003 | | | | | | | | --- ## 9. Other Considerations \ --- ## 10. Appendix \