Template for Detailed Design2
-
Upload
vishu-kukkar -
Category
Documents
-
view
228 -
download
0
Transcript of Template for Detailed Design2
-
7/30/2019 Template for Detailed Design2
1/33
aricent.com - Rel #.#.#.#Software Design Document
ARICENT:
Revision Number:
-
7/30/2019 Template for Detailed Design2
2/33
Copyright 2009 Aricent Inc. All Rights Reserved. No part of this document may be reproduced, storedin a retrieval system or transmitted, in any form, or by any means, electronic or otherwise, includingphotocopying, reprinting, or recording, for any purpose, without the express written permission of Aricent.
Printed in ________
TRADEMARKS ARICENT and THE ARICENT LOGO are trademarks of Aricent Inc. in the U.S. andother countries. The use of any of these trademarks without Aricent prior written consent is strictlyprohibited. Other trademarks and trade names may be used in this document to refer to either theentities claiming the marks and names or their products. Aricent Inc. disclaims any proprietary interest inthe trademarks and trade names other than its own.
DISCLAIMER The information in this book is provided as is, with no warranties whatsoever, includingany warranty of merchantability, fitness for any particular purpose or any warranty otherwise arising outof any proposal, specification or sample. This document is provided for informational purposes only andshould not be construed as a commitment on the part of Aricent. Information in this document is subjectto change without notice.
REQUESTS For information or obtaining permission for use of material of this work, please submit awritten request to: Corporate Marketing and Legal, Aricent onwww.aricent.com
DOCUMENT No.:ARICENT:
http://www.aricent.com/http://www.aricent.com/http://www.aricent.com/http://www.aricent.com/ -
7/30/2019 Template for Detailed Design2
3/33
REVISION HISTORY
RevisionNo.
Date Description of Change Author Reviewed &Approved By
-
7/30/2019 Template for Detailed Design2
4/33
-
7/30/2019 Template for Detailed Design2
5/33
SOFTWARE DESIGN DOCUMENT 1ARICENT CONFIDENTIAL
Contents
CHAPTER 1: 1. INTRODUCTION ______________________________________________ 71.1 PURPOSE...................................................................................................... 71.2 SCOPE.......................................................................................................... 71.3 DEFINITIONS ANDACRONYMS......................................................................... 71.3.1 Definitions................................................................................................. 71.3.2 Acronyms ................................................................................................. 81.4 REFERENCES ................................................................................................ 81.5 DOCUMENT ORGANISATION............................................................................ 81.6 TYPOGRAPHICAL CONVENTIONS (OPTIONAL) .................................................. 81.7 APPROVALS ANDAUTHORIZATIONS................................................................. 81.8 DISTRIBUTION................................................................................................ 9
CHAPTER 2: 2. HIGH LEVEL DESIGN ________________________________________ 112.1 LEVEL 0DESIGN DESCRIPTION.....................................................................11
2.1.1 Interface Description ..............................................................................112.2 LEVEL X DESIGN DESCRIPTION .....................................................................12 2.2.1 Module name (level x1) .......................................................................122.2.1.1 Decomposition Description ----------------------------------------------------- 122.2.1.1.1 Module Description ------------------------------------------------------------ 132.2.1.1.2 Process Description ----------------------------------------------------------- 152.2.1.2 Interface Description ------------------------------------------------------------- 152.2.1.2.1 Process Interface -------------------------------------------------------------- 152.2.1.3 Dependency Description -------------------------------------------------------- 152.2.2 Module 2 (level x-1) ................................................................................152.3 LEVEL (X+1)DESIGN DESCRIPTION ..............................................................15 2.4 CONTROL FLOW SCENARIO..........................................................................15
CHAPTER 3:
3.ALTERNATE DESIGN ________________________________________ 17
3.1 ALTERNATE DESIGNS...................................................................................17 3.2 DESIGN EVALUATION REPORT ......................................................................17 3.3 DESIGN LIMITATIONS ...................................................................................17
CHAPTER 4: 4. DETAILED DESIGN __________________________________________ 194.1 MODULE 1 ...................................................................................................194.1.1 Detailed Data Design .............................................................................194.1.1.1 Data Structure ABC -------------------------------------------------------------- 194.1.1.2 Total Data Size -------------------------------------------------------------------- 204.1.2 Detailed Module design ..........................................................................214.2 MODULE 2 ...................................................................................................224.2.1 Detailed Data Design .............................................................................22
4.2.2 Detailed Module Design .........................................................................22CHAPTER 5: 5. SYSTEM ISSUES ____________________________________________ 23
5.1 PERFORMANCE ...........................................................................................23 5.2 SCALABILITY................................................................................................23 5.3 SYSTEM SIZING............................................................................................23 5.4 LOGGING.....................................................................................................23
CHAPTER 6: 6. SYSTEM MANAGEMENT DESIGN CONSIDERATIONS _____________ 256.1 MIBDESIGN................................................................................................25
-
7/30/2019 Template for Detailed Design2
6/33
- REL #.#.#.#
2 ARICENT:ARICENT CONFIDENTIAL
6.1.1 Standard MIB .........................................................................................256.1.2 Proprietary MIB ......................................................................................256.2 CONFIGURATION AND CONTROL....................................................................26 6.2.1 Overview ................................................................................................266.2.2 Start-up ...................................................................................................266.2.3 Shutdown ...............................................................................................266.2.4 Creation of < Table name > New Entries ...............................................266.2.5 Deletion of < Table name > Entries .......................................................266.3 ERROR HANDLING .......................................................................................26 6.3.1 System Errors.........................................................................................266.3.2 Interface Errors.......................................................................................266.3.3 Protocol Errors .......................................................................................266.4 RESOURCE REQUIREMENTS.........................................................................27
YOUR OPINION MATTERS __________ERROR! BOOKMARK NOT DEFINED.
REVISION HISTORY ____________________________________________ 29
-
7/30/2019 Template for Detailed Design2
7/33
-
7/30/2019 Template for Detailed Design2
8/33
-
7/30/2019 Template for Detailed Design2
9/33
SOFTWARE DESIGN DOCUMENT 5ARICENT CONFIDENTIAL
Tables
Table 1-1: Definitions Used in this Document ............................................................................................... 7
Table 1-2: Acronyms Used in this Document ................................................................................................ 8Table 1-3: Approvals and Authorizations ...................................................................................................... 8Table 1-4: Distribution.................................................................................................................................... 9Table 4-1: Field Description Table ............................................................................................................... 20Table 4-2: Total Data Size ........................................................................................................................... 20
-
7/30/2019 Template for Detailed Design2
10/33
-
7/30/2019 Template for Detailed Design2
11/33
SOFTWARE DESIGN DOCUMENT 7ARICENT CONFIDENTIAL
Chapter
11.Introduction
1.1 Purpose
Specify the purpose of the software and the document
Specify the intended audience.
1.2 Scope
Identify the software by name.
Explain what the software product(s) will and will not do (either directly or byreference to another software document).
Describe the application of the product (either directly or by reference toanother software document).
1.3 Definitions and Acronyms
Provide the definitions of all terms, acronyms and abbreviations requiredto properly understand the SDD. List them in the alphabetical order.
Sample given below.
1.3.1 Definitions
Table 1-1: Definitions Used in this Document
-
7/30/2019 Template for Detailed Design2
12/33
- REL #.#.#.#
8 ARICENT:ARICENT CONFIDENTIAL
OSI ISIS for IP and Dual Environments, RFC 1195, Dec 1990.
Intermediate System to Intermediate system Intra-Domain RoutingInformation Exchange Protocol, ISO/IEC 10589:1992 (E)
1.3.2 Acronyms
Table 1-2: Acronyms Used in this Document
Acronym Explanation
ATM Asynchronous Transfer Mode
ISDN Integrated Services Digital Network
PSTN Public Switched Telephone Network
SS7 CCSS7 Common Channel Switching System 7
1.4 References
List all the documents referenced elsewhere in the document
1.5 Document Organisation
Explain how the Software Design Document is organized.
Specify the purpose of each section.
1.6 Typographical Conventions (Optional)
Specify any conventions used in the document.
1.7 Approvals and Authorizations
Table 1-3: Approvals and Authorizations
-
7/30/2019 Template for Detailed Design2
13/33
CHAPTER 1: INTRODUCTION
SOFTWARE DESIGN DOCUMENT 9ARICENT CONFIDENTIAL
Designation Name Date
Approved by Quality Co-ordinator
Authorized by Engineering Manager
1.8 Distribution
Table 1-4: Distribution
Copy No. Holders Designation Issue Date
1 Engineering Manager
2 Project Co-ordinator
3 Quality Co-ordinator
4 Team members
-
7/30/2019 Template for Detailed Design2
14/33
-
7/30/2019 Template for Detailed Design2
15/33
SOFTWARE DESIGN DOCUMENT 11ARICENT CONFIDENTIAL
Chapter
22.High Level Design
2.1 Level 0 Design Description
2.1.1 Interface Description
User
Client Interface TFTP server
Client interacts with the TFTP server through the client interface.
Client generates the request to read\write a file.
Server processes the client request(update\retrive file), then generates an appropriate response forthe client.
-
7/30/2019 Template for Detailed Design2
16/33
- REL #.#.#.#
12 ARICENT:ARICENT CONFIDENTIAL
2.2 Level 1 Design Description
2.2.1 Module name (level 0)
Client interface
2.2.1.1 Decomposition Description
-
7/30/2019 Template for Detailed Design2
17/33
CHAPTER 2: HIGH LEVEL DESIGN
SOFTWARE DESIGN DOCUMENT 13ARICENT CONFIDENTIAL
Client interface forwards the user request in a format that can beprocessed by the server.
Client interface receives the servers response.
2.2.1.1.1 Module DescriptionClient Interface
User sends a request to read from a file(download data).The client interfacereceives the request and generates a read request packet(RRQ).
Server in response sends the data(DATA n) of the file.
The client interface on receiving the data further sendsacknowledgment(ACK n) corresponding to the data block received.
This continues until the server is done reading the file.
(Should we write the case where ack is not received(error cases)??)
(Should I include the frame formation by client interface??or should
that be in low level??)
Data Description
In our case, the data elements will be same for both level 1 and level 2DFD.Because the frame sent by the client interface will beforwarded(without any changes) to the tftp request handler..
1. RRQ
2. WRQ
3. DATA
4. ACK
5. ERROR
(Read Request)/ WRQ(Write request) :
This message type is used to read/write data from/to the server once a
connection is established between the server and a client. The format of these
messages is given below.
------------------------------------------------
| Opcode | Filename | 0 | Mode | 0 |
------------------------------------------------
The opcode field(2 bytes) differentiates between a RRQ and a WRQ in
that it is 1 for RRQ and 2 for WRQ.
Filename is a variable sized string which is the name of the file.
Mode defines the transfer mode used by TFTP. In general there are two types of
modes
i) (for an ASCII file)
-
7/30/2019 Template for Detailed Design2
18/33
- REL #.#.#.#
14 ARICENT:ARICENT CONFIDENTIAL
ii) octet (for binary file)
DATA message :
It is used by either of the client or server to send blocks of data.
----------------------------------
| Opcode | Block # | Data |
----------------------------------
Its 2 byte opcode field has a value 3. The Block number(2 bytes) is used
for sequencing purpose. The data block must be 512 bytes for all DATA
messages except the last block which indicates the end of file.
ACK message :
In a communication process knowing the stats of the no of data blocks received
correctly is important, which can be done by giving an ACKnowledgment to the
server by the client process. It is in whole 4 bytes long. It has 2 bytes for opcode
whose value is 4 for ACK message. It also has 2 bytes for Block number which
tells the number of blocks received.
If in case the ACK is after a WRQ(sent by server to indicate that it is ready for
data retrieval from client) then the block no is 0.
ERROR Message :
When a faulty communication occurs that is the connection is not formed or the
filename specified does not exist, then the program needs to declare about the
problem. This is done by giving an ERROR message by either the client or server.
It can be considered as a negative ACK.
-----------------------------------------
| Opcode | ErrorCode | ErrMsg | 0 |
-----------------------------------------
The opcode value is 5 in this case. The errorcode fields define the type of error
which stores an integer value between 0 -4 , each integer having a particular
error message associated to it.
-
7/30/2019 Template for Detailed Design2
19/33
CHAPTER 2: HIGH LEVEL DESIGN
SOFTWARE DESIGN DOCUMENT 15ARICENT CONFIDENTIAL
2.2.1.1.2 Process Description
Server can support multiple users simultaneously. Here we are creating newprocess to serve each user individually.
2.2.1.2 Interface Description
Should I copy paste the data description as it is??
2.2.1.2.1 Process Interface
Again repetition of process description??
2.2.1.3 Dependency Description
The Dependency Description is represented by Structure Charts, whichare used in design to show how software is decomposed into modules.
Derive the Structure Charts from DFD of this level. This will capture thedependency information.
2.2.2 Module 2 (level x-1)
This is the module identified in the previous level x-1, if this undergoesfurther decompositions.
All the subsections mentioned above, if applicable.
2.3 Level (x+1) Design Description
If any modules identified (as the result of decomposition) above furtherlevel decompositions. This level will be applicable (All the subsectionsmentioned above, if applicable).
2.4 Control Flow Scenario
Add the control flow from the earlier dfd doc(vishu).
-
7/30/2019 Template for Detailed Design2
20/33
-
7/30/2019 Template for Detailed Design2
21/33
SOFTWARE DESIGN DOCUMENT 17ARICENT CONFIDENTIAL
Chapter
33.Alternate Design
3.1 Alternate Designs
3.2 Design Evaluation Report
Following are the contents of the formal evaluation report
Identification of Alternatives
Criteria for identifying alternatives Expected Functionality and Keyconstraints
List of alternatives
Evaluation Criteria
Priority to categories and individual criteria
Evaluation method
Evaluation results (Plug Matrix, any other methodology specifiedcomparison)
Final Recommendation and any potential risk with the selection
3.3 Design Limitations
-
7/30/2019 Template for Detailed Design2
22/33
- REL #.#.#.#
18 ARICENT:ARICENT CONFIDENTIAL
-
7/30/2019 Template for Detailed Design2
23/33
SOFTWARE DESIGN DOCUMENT 19ARICENT CONFIDENTIAL
Chapter
44.Detailed Design
Describe the detailed design in terms of pseudocode & PDL
Give the detailed design information for data and modules identified inabove sections
List down the modules identified after Level 1 DFD
4.1 Module 1
4.1.1 Detailed Data Design
List down all the data elements in that module like constants & its values,data structures, its description of fields, and size of fields, globalvariables and their sizes, and also macros. As a summary also list downa table that indicates the memory requirement of the application. Thistable should contain the name of the Data, its size in bytes, the numberof instances that will be used by the application. Two sample tables onefor individual data structure and the other for the total memoryrequirement are illustrated below:
4.1.1.1 Data Structure ABC
-
7/30/2019 Template for Detailed Design2
24/33
- REL #.#.#.#
20 ARICENT:ARICENT CONFIDENTIAL
Table 4-1: Field Description Table
Field Name Field Description Size (bytes)
IP address The destination network IPaddress. IP address is stored as
4 byte integral value. The returnvalue of library call inet_aton() isstored in this field. If requiredplease specify if the data isrepresented in little or bigendian format.
4
MAC address High Upper 32 bits of the next hopMAC address
4
MAC address Low Lower 16 bits of the next hopMAC address
4
XYZ Something 2
PAD Padding bytes 2
4.1.1.2 Total Data Size
Table 4-2: Total Data Size
Data Name Size (bytes) # of instances Total Size (bytes)
Static Memory Requirement
DataStruct xyz1 64 1 64
DataStruct xyz2 4 10 40
GlobalVar gvar1 100 1 100
GlobalVar gvar2 2 5 10
StaticVar svar1 4 1 4
Dynamic MemoryRequirement
DataStruct dynDS1 8 200* 1600
DataStruct dynDS2 24 15 360
GRAND TOTAL 2178
* The maximum number of instances that will be allocated at runtime
-
7/30/2019 Template for Detailed Design2
25/33
CHAPTER 4: DETAILED DESIGN
SOFTWARE DESIGN DOCUMENT 21ARICENT CONFIDENTIAL
4.1.2 Detailed Module design
The detailed module design is described in module description.
The module description contains prototype, purpose, prerequisites,description, inputs, outputs, returns, list of called by modules & called
modules and also processing of the module is defined by pseudocode.
Output(s)
ReturnValue(s)
Called By This will be used to calculate stack buildup.
Calls
-
7/30/2019 Template for Detailed Design2
26/33
- REL #.#.#.#
22 ARICENT:ARICENT CONFIDENTIAL
4.2 Module 2
4.2.1 Detailed Data Design
4.2.2 Detailed Module Design
-
7/30/2019 Template for Detailed Design2
27/33
SOFTWARE DESIGN DOCUMENT 23ARICENT CONFIDENTIAL
Chapter
55.System Issues
5.1 Performance
If applicable, mention the level of performance as per this design.
5.2 Scalability
If applicable, mention the level of scalability.
5.3 System sizing
If applicable, mention the system-sizing parameters.
5.4 Logging
Introduce design information on logging.
-
7/30/2019 Template for Detailed Design2
28/33
-
7/30/2019 Template for Detailed Design2
29/33
SOFTWARE DESIGN DOCUMENT 25ARICENT CONFIDENTIAL
Chapter
66.System Management Design Considerations
6.1 MIB Design
6.1.1 Standard MIB
Mention the level of conformance ie., whether all scalar variables and tablesin standard MIB are supported.
Note: it is not required to mention the complete MIB.
6.1.2 Proprietary MIB
Mention the description of the new MIB.
Note: there is no need to mention the complete MIB.
-
7/30/2019 Template for Detailed Design2
30/33
- REL #.#.#.#
26 ARICENT:ARICENT CONFIDENTIAL
6.2 Configuration and control
6.2.1 Overview
Aricent XXX is designed to be fully configurable and....
6.2.2 Start-up
Describes the steps associated with bringing up a protocol
6.2.3 Shutdown
Describes the steps associated with bringing down a protocol...
6.2.4 Creation of < Table name > New Entries
Steps involved in creating table entries and its effects (necessary forcrucial tables only like iftable etc.) The title of this section can change asappropriate.
6.2.5 Deletion of < Table name > Entries
The template for the module/function description:
Effect of deleting a table entry. The title of this section can change asappropriate.
6.3 Error Handling
6.3.1 System Errors
Describes how errors like memory allocation failure, task spawn failuresare handled.
6.3.2 Interface Errors
Describes the error codes that will be generated to external entities.
6.3.3 Protocol Errors
-
7/30/2019 Template for Detailed Design2
31/33
CHAPTER 6: SYSTEM MANAGEMENT DESIGN CONSIDERATIONS
SOFTWARE DESIGN DOCUMENT 27ARICENT CONFIDENTIAL
Describes how situations, which are not addressed in the specs, arehandled (this may not be applicable to all protocols).
6.4 Resource Requirements1
In this section memory requirement & other OS resources (queues,semaphores) required should be specified.
1Note: (For products division, these details are given in a separate document on request by customer. But during
product design, this section must be filled. In the documents that will be sent to customer, these can be moved to
another document).
-
7/30/2019 Template for Detailed Design2
32/33
-
7/30/2019 Template for Detailed Design2
33/33
Revision History
Rev Date of Issue Author Approver Scope
2.0 18-Sep-07 AnjanaGangadharan
QG/SEPG Supersedes FS DP081