Workflow – Technical Design
<Project Name>
Document Status: Draft / Final
Date: mm/dd/yyyy
Version: vx.x
Page 1 / 19
Revision History
Date Version Description Author
Page 2 / 19
Template instructions
The text within the body of the document is color-coded:
Text marked in blue needs to be deleted, as it contains instructions and guidance to the author only
Text marked in red is showing an example how to fill in the template and needs to be replaced by the
final content
Text marked in black (the rest of the document) needs to be kept as this provides the framework and
chapters of the template.
Delete this instruction section before finalising your document.
A final document will have no blue or red text
Page 3 / 19
TABLE OF CONTENTS
1 Technical Design ...........................................................................................................6
1.1 Document Information ........................................................................................................................6
1.2 Related Documents ............................................................................................................................6
2 Sign-off Checklist ..........................................................................................................7
3 Document History ..........................................................................................................8
3.1 Revision History ..................................................................................................................................8
3.2 Quality Review ....................................................................................................................................8
3.3 Approval / Sign-off ..............................................................................................................................8
4 Development Overview .................................................................................................9
4.1 Requirements Summary .....................................................................................................................9
4.2 Assumptions .......................................................................................................................................9
4.3 Dependencies / Constraints ...............................................................................................................9
4.4 Objects or Transactions Affected .......................................................................................................9
4.5 Transaction Volume ............................................................................................................................9
4.6 Standards ...........................................................................................................................................9
4.7 Security, Integrity, and Controls .........................................................................................................9
4.8 Error Messages ..................................................................................................................................9
4.9 Estimation of Effort .............................................................................................................................9
5 Detailed Technical Specifications ..............................................................................10
5.1 Technical Flow Diagram .................................................................................................................. 10
5.2 Technical Flow Description .............................................................................................................. 10
5.3 Workflow .......................................................................................................................................... 10
5.4 Trigger Events ................................................................................................................................. 10
5.5 Transactions and Batch Programs that trigger the workflow ........................................................... 10
5.6 Start Conditions ............................................................................................................................... 10
5.7 Rules and determinations ................................................................................................................ 10
5.8 Standard Rules ................................................................................................................................ 10
5.9 Other Rules ...................................................................................................................................... 10
5.10 Security and Authorization ............................................................................................................... 11
5.11 Processing and Operational Considerations ................................................................................... 11
5.12 Dependencies .................................................................................................................................. 11
5.13 Batch Requirements ........................................................................................................................ 11
5.14 Restart / Recovery Procedures ....................................................................................................... 11
5.15 Data Maintenance Requirements .................................................................................................... 11
5.16 Re-use Details ................................................................................................................................. 11
5.17 Multi-Company, Multi-Jurisdiction Considerations .......................................................................... 11
5.18 Other ................................................................................................................................................ 11
6 Technical Requirements .............................................................................................12
6.1 Database Tables .............................................................................................................................. 12
6.2 External Programs ........................................................................................................................... 12
6.3 Development Class .......................................................................................................................... 12
6.4 Message Class ................................................................................................................................ 12
6.5 Program ID ...................................................................................................................................... 12
6.6 Program Type .................................................................................................................................. 12
6.7 Module ............................................................................................................................................. 12
6.8 Transport Number(s) ....................................................................................................................... 12
7 Detailed Design ............................................................................................................13
7.1 SAP Objects .................................................................................................................................... 13
Page 4 / 19
7.2 Request Mechanism/Trigger ........................................................................................................... 13
7.3 Configuration (optional) ................................................................................................................... 13
7.4 Pseudo code .................................................................................................................................... 13
7.5 ABAP Development ......................................................................................................................... 13
7.5.1 Workflow ............................................................................................................................... 13
7.5.2 Dialog Program .................................................................................................................... 14
7.5.3 Custom Table Development ................................................................................................. 14
7.5.4 Table Validation Rules ......................................................................................................... 14
7.5.5 User Exit ............................................................................................................................... 15
7.5.6 Field Exit ............................................................................................................................... 15
7.5.7 Technical Design Constraints .............................................................................................. 15
7.5.8 Programmers Notes ............................................................................................................. 16
8 Testing Requirements .................................................................................................17
8.1 Key Unit/Assembly Test Conditions ................................................................................................ 17
9 Outstanding Issues .....................................................................................................18
10 Appendix ......................................................................................................................19
10.1 Glossary of Terms ........................................................................................................................... 19
10.2 Additional Supporting/Reference Documentation ........................................................................... 19
Page 5 / 19
1 Technical Design
Start Date End Date
1.1 Document Information
Document Location
Application
Team
Business / Process Owner
Functional Designer
Developer
Status Not Started / In Progress / In Review / Completed / Approved
Priority High / Medium / Low
Complexity Simple / Medium / Complex / Very Complex
1.2 Related Documents
Blueprint Document Link to Blueprint Document
RICEFW Inventory Insert a link to the RICEF inventory
Conversion Approach To be defined
Functional Design Link to Functional Design
Page 6 / 19
2 Sign-off Checklist
Use the following checklist to guide your completion of the Functional Design Document
Standards and Consistency
Has the correct template been used and all sections been completed as required?
Are the correct details (Business Owner for sign-off, status etc) displayed on the front page?
Have all the assumptions been documented properly so that there are no open issues in the document?
Has the document history been continuously updated?
Integration and Dependencies
Have all inputs and outputs been identified and confirmed?
Have all referenced documents been listed (other business process designs, sub process designs,
spreadsheets, information papers, etc.)?
Design
Has the report development technique been identified?
Has an example of existing RICEF object been included?
If the report is of type modification (custom development), has it been approved?
Have all areas of impact been identified?
Performance
Have the performance implications, metrics and targets been documented?
Has the performance and volume usage of the report development been considered?
Exceptions and Error Handling
Have the exceptions and likely errors been defined and listed?
Does the document describe what steps (if any) need to be taken after an exception has been raised?
Have all the applicable business scenarios been considered, along with the corresponding test conditions?
Usability – From the user perspective
Has the report attempted to maximize the efficiency of the user (i.e. simple to use, intuitive, quick to use)?
Are any manual steps clearly defined and carefully designed?
Flexibility – From a business perspective
Have all steps been clearly identified and documented so new functionality can be added in the future?
Additional information
Has security been considered (e.g. authority checking considered, target group of users who should be
given access to the report etc)?
Are the test conditions sufficiently detailed to enable a full test of all required functionality?
Page 7 / 19
3 Document History
3.1 Revision History
Author Version Rev. date Summary of Changes Section Page
3.2 Quality Review
The following have been nominated as quality reviewers for this Product:
Name Title Date of Issue Versions
3.3 Approval / Sign-off
This document requires approval from the following individuals:
(Signed approval forms are filed in the quality section of the project files)
Name Role Date Signature
Page 8 / 19
4 Development Overview
4.1 Requirements Summary
<< Provide a high-level description of the development requirement that will be addressed.>>
4.2 Assumptions
<< Describe any assumptions made in the process of completing this design. What functionality is expected of
configuration or other developments that pass information to this development and/or retrieve the information
processed by it (e.g., performance, triggers, exceptions, etc.)?>>
4.3 Dependencies / Constraints
<< Indicate any dependencies or constraints that may impact development, in terms of requirements from
internal or external applications or teams, limited access to legacy system, time constraints or data
restrictions. Also, please specify schedule dependencies (e.g., interface or batch jobs that must run prior to
execution).>>
4.4 Objects or Transactions Affected
<< Provide a list of SAP objects or transactions which will be affected by the development>>
4.5 Transaction Volume
<< Provide an indication of the expected number of records that will need to be read and displayed using this
extension.>>
4.6 Standards
<< Detail any programming, error handling and archiving standards, which will be utilized in development of
the extension.>>
4.7 Security, Integrity, and Controls
<< Detail the security requirements for processing this extension, any data integrity issues associated with the
extension and the teams responsible for processing the extension.>>
4.8 Error Messages
<< Include all error messages to be used within this development object.>>
Error Number Error Message Corrective Action
4.9 Estimation of Effort
Estimated Hours
Comments
Page 9 / 19
5 Detailed Technical Specifications
5.1 Technical Flow Diagram
<<Insert a technical flow diagram depicting the extension procedure including screen sequences, any drill
down options, and navigation through the extension screens.>>
5.2 Technical Flow Description
<<Provide a detailed description of the technical flow. Where appropriate, include selection criteria,
initialization routines, data retrieval, validation, processing, and manipulation.>>
5.3 Workflow
< Provide detailed description for the workflow. e.g., purchase order approval process and authority levels
etc.>
Workflow
WRIC Description Business / Data Object (Sales Engaged Parties Owner
EF-ID Order)
XX-xx-
W001
5.4 Trigger Events
5.5 Transactions and Batch Programs that trigger the workflow
[Please provide the details if any concerning the transaction or other batch programs that will trigger the
workflow]
5.6 Start Conditions
[Please provide the details about any special condition that has to be met for the workflow to initiate ]
5.7 Rules and determinations
5.8 Standard Rules
[Please provide the standard rules to which the workflow will abide by]
5.9 Other Rules
Page 10 / 19
[Please provide details about other rules for example Latest End, Latest Start, Requested End and Requested
Start]
5.10 Security and Authorization
<<List all security/authorization checks that should be included for the extension.>>
5.11 Processing and Operational Considerations
5.12 Dependencies
<<Provide details of any dependencies for the extension to process correctly and perform at its
optimum.>>
5.13 Batch Requirements
<<Include details required for batch processing (e.g., variant set-up, reconciliation requirements,
etc.).>>
Submission
Scheduling Considerations
Run Frequency
Start Date
Start Time
Estimated Volume Per Run
Parameters / File Dependencies
Job Dependencies
Constraints
Variant Required
o Field Text
o Suggested Value
o Description
5.14 Restart / Recovery Procedures
5.15 Data Maintenance Requirements
<<List any requirements for the maintenance of data, if required.>>
5.16 Re-use Details
<<Include any information regarding the re-use of code from other developments on other projects or even
within the same project, such as sample code or relevant documents/references.>>
5.17 Multi-Company, Multi-Jurisdiction Considerations
5.18 Other
Page 11 / 19
6 Technical Requirements
6.1 Database Tables
<<Detail all database tables that will be accessed.>>
6.2 External Programs
<<List all external programs and function modules called.>>
6.3 Development Class
<<Name of development class to be defined .>>
6.4 Message Class
<<Name of message class used in the report .>>
6.5 Program ID
<<Name of Development ID to be defined .>>
6.6 Program Type
<<Type of program needs to develop .>>
6.7 Module
<<Name of relevant module of report .>>
6.8 Transport Number(s)
CTS Request Number CTS Task Number
Page 12 / 19
7 Detailed Design
7.1 SAP Objects
<<List the program name, function module, transactions, etc. created for this development (e.g.,
workflow, business object, and standard task).>>
Name Type Transport No. Description
7.2 Request Mechanism/Trigger
<<Detail the process by which this development is initiated or can be called which may be a transaction code
to run the program, call from a menu tree, or a configuration trigger for a field exit/user exit.>>
7.3 Configuration (optional)
<<In the case of a customer extension describe any configuration required on the technical side to trigger this
development.>>
7.4 Pseudo code
<<Include a high-level description of the program broken down into relevant sections depending on
development type being used. For mainstream ABAP programs, the processing flow must include the main
events used. Use pseudo code to explain each step in detail and/or a Visio diagram may be used to convey
the processing flow.>>
7.5 ABAP Development
<<Complete the following section using the relevant headings depending on the development type. Delete
sections which are not applicable.>>
INITIALIZATION.
START-OF-SELECTION.
END-OF-SELECTION.
SELECTION-SCREEN-VALIDATION
TOP-OF-PAGE.
END-OF-PAGE.
AT USER-COMMAND.
AT LINE-SELECTION. (Point at the user selects a line)
TOP-OF-PAGE DURING LINE-SELECTION. (top-of-page for 2ndary lists)
AT PFNN. (Point at which the user presses the function key with the function code PFnn key with the
function code PFnn.)
(Add other events as required)
7.5.1 Workflow
<<Include a high-level description of the program broken down into relevant sections depending
on development type being used. Use pseudo code to explain each step in detail.>>
Import Parameters
Page 13 / 19
Export Parameters
Container Elements
Transactions Called
Exception Conditions
Workflow Task Breakdown
7.5.2 Dialog Program
<<Enter events and processing for the screen layout where relevant. Use pseudo code to explain
each step in detail.>>
INITIALIZATION.
START-OF-SELECTION.
END-OF-SELECTION.
SELECTION-SCREEN-VALIDATION
SCREEN NO. XXXX
7.5.3 Custom Table Development
Table Field Definitions
Detail the field definition used in the development. The following table is the table definition for the
table ZBT001.
Field Name Character Key Description
INTPER NUMC(2) Yes Interval length in
minutes
DATE FROM DDMMYYYY Yes Data from which the
settlement interval
period length is effective
DATE TO DDMMYYYY No Date to which the
settlement interval
period length is effective
7.5.4 Table Validation Rules
Detail the validation used in the table development (e.g., using table maintenance transaction
SM30 the following events are raised for table ZBT001).
Event Form Routine Include
01 - Prior to Update ZBT001_PRIOR_UPDATE LZBTABF01
03 - Prior to Delete ZBT001_PRIOR_DELETE LZBTABF01
05 - Create Record ZBT001_CREATE_RECORD LZBTABF01
07 - Change Field ZBT001_CHANGE_FIELD LZBTABF01
19 - Initialization ZBT001_AFTER_INIT LZBTABF01
See the example text below.
Prior to Update
Form Name : ZBT001_PRIOR_UPDATE
Page 14 / 19
A check is performed in Form chk_chged_sip_data_reset to see if the user has updated an
existing Dateto, on the table. If they have an information message (Message Class ZDA -
Message number 015) is output. Text of the message is as follows:
‘You are not allowed alter the entries in table ZBT001 using this method ’.]
Data Dictionary Objects
o Field name
o Key
o Data Element
o Domain
o View
o Type
o Length
o Check table
o Short text
o Search Help
o Index
Cardinality[Detail the dictionary objects used in the table development if necessary. Ensure
adherence to the development standards see document TD.SD ABAP Coding Standards]
Initial Population Strategy
Maintenance Strategy
7.5.5 User Exit
<<For user exits that require significant ABAP code, the processing flow could include the main
events used. Use pseudo code to explain each step in detail.>>
User exit name
Project name
Trigger/calling mechanism
Inputs (where appropriate)
Processing
Outputs (where appropriate)
7.5.6 Field Exit
<<Include a high-level description of the processing involved. Use pseudo code to explain each
step in detail. Include a screen shot of the screen incorporating the field exit extension.>>
Field exit name
SAP program name and screen number
Trigger/calling mechanism
Inputs (where appropriate)
Processing
Outputs (where appropriate)
7.5.7 Technical Design Constraints
<<Describe any limiting factors/dependencies/expectations of this development.>>
Page 15 / 19
7.5.8 Programmers Notes
Page 16 / 19
8 Testing Requirements
8.1 Key Unit/Assembly Test Conditions
Use the test scenario excel template for SAP
Unit Testing.xls
Page 17 / 19
9 Outstanding Issues
Issue Description Assigned To Status Impact Resolution
No
Page 18 / 19
10 Appendix
10.1 Glossary of Terms
Term Definition
10.2 Additional Supporting/Reference Documentation
Page 19 / 19