We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8
{Workstream}
FUNCTIONAL SPECIFICATION ABAP custom development – Workflow
{WRICEF ID Description} {Organisation / Project Name}
Role and Reason for Approval
Role Reason for Approval
Author The author is signing to confirm that this document has been prepared in accordance with the programme document management process, that relevant input from any contributory authors has been included and that an appropriate review/editing process has been conducted. SAP Solution The SAP Solution Lead or Architect is signing, on behalf of the Lead or Workstream, to confirm that this Functional Specification meets the Architect Acceptance Criteria expected of it and assigned to it in the Deliverable Quality Log. SAP The SAP Development Lead or Manager is signing, on behalf of the Development Development Team, to confirm that this Functional Specification Lead or meets the Acceptance Criteria expected of it and assigned to it in Manager the Deliverable Quality Log.
Note. Master copy of this document, with signatories, is held on Solution Manager
DATE: 14/09/2022
https://www.linkedin.com/in/mickaelquesnot/ FS {WRICEF ID Description} {Workstream} {Organisation / Project Name}
Version Date Name Alteration Reason
1 14/09/2022 Roger Sainsbury Initial draft
Table of Content 1 Context 3 1.1 Business Background 3 1.2 Why is SAP standard not appropriate or sufficient? 3 1.3 Alternative Approaches Considered 3 1.4 Out of Scope 3 1.5 Assumptions 3 1.6 Dependencies 3 1.7 Links 3 2 Solution Design 4 2.1 Existing Form to Copy 4 2.2 Print Program and Data Model 4 2.3 Form Layout 4 2.4 Styles 5 2.5 Paper and Printing 5 2.6 Long Texts 5 2.7 Legal Requirements 5 2.8 Follow-on Activities 5 3 How to Test 6
FS {WRICEF ID Description} {Workstream} {Organisation / Project Name}
1 Context
1.1 Business Background
Explain the business scenario that requires the development.
1.2 Why is SAP standard not appropriate or sufficient?
Generally we want to keep the system as standard as possible, so each custom development requires a justification.
1.3 Alternative Approaches Considered
Sometimes a number of different approaches are possible to meet a requirement. If that is the case, outline what the other options were, and why they were rejected in favour of this one.
1.4 Out of Scope
If functionality has been considered and decided to be out of scope for the development, then please record it here.
1.5 Assumptions
If the proposed design relies on any assumptions, please state them here.
1.6 Dependencies
If the proposed design has dependencies on other developments or configuration, please state them here.
1.7 Links
Provide any links here to further relevant information (e.g. from SAP Help, SCN, SAP Notes).
FS {WRICEF ID Description} {Workstream} {Organisation / Project Name}
2 Solution Design
2.1 SAP Standard Workflow
Workflow developments are typically based on an existing, standard Workflow. If such a Workflow is known, then name it here. E.g.
WS 03100019 - General Notification Process.
2.2 Triggers and Start Conditions
What Transactions and Batch Programs trigger the workflow?
Are Start Conditions required? E.g. ‘Purchase Order workflow should trigger only for PO Types XYZ'.
2.3 Process Overview
Provide a high-level description of the required workflow process and/or a flow diagram. The individual steps should then be defined in detail below.
If starting from a standard workflow, then it may be possible to get a flow diagram of that process and then make any changes.
Please specify any conditions which will make the workflow approval invalid. For example, if a leave request is in approval; then the employee decides to retract it, this will make the ongoing leave request approval process obsolete.
2.4 Data Model
If any custom configuration tables are required, which will be read by the workflow logic, then specify them here.
FS {WRICEF ID Description} {Workstream} {Organisation / Project Name}
2.5 Step by Step Process Description
Specify requirements for each step in the process. Repeat and complete the example steps below, as many times as needed to describe all the steps.
2.5.1 Example user decision or dialog step
Step Description e.g. ‘PO Approval level 1’
Approve / Reject Specify any custom text for the Approve and Reject buttons. texts and actions Which step should follow an approval? E.g. a higher level approval step, or a (for user decision background task to complete an action? steps) Should a rejection cause the workflow item to be closed, or should it revert to the person who raised it? Functionality to The step could call a SAPGUI transaction or web application. call (for dialog steps) Subject Text e.g. ‘PO Approval level 1’ (Work Item Text) Body Text e.g. ‘PO Approval level 1’ (Task Description) Possible Describe here any rules to determine the pool of possible approvers. This Approvers could be some restriction based on the Org Structure, on configuration, or on (Possible Agents) Authorisation Roles. E.g. a rule might say that only Managers can approve leave requests. Alternatively, define the step as a General Task, meaning that anyone could potentially approve it. Approver Describe here the rules to determine who, from the possible approvers, Selection should actually perform the approval. Typically this will be based on the data (Selected Agents) in the Workflow item. For example specific people or roles may deal with approvals for particular org units or countries; senior executives may need to approve payments of a higher value. If there are multiple valid approvers, then specify if ALL of them need to approve the item, or if only one approval/rejection is sufficient to move ahead. Also specify what to do when an approver cannot be determined. E.g. • Fall back on all possible approvers OR • Workflow goes into error (so that the workflow administrator can pick it up during his/her daily activity run) OR • A notification should be sent out to particular recipient. Escalation What should happen if the workflow item is not processed in a timely fashion? Various events can be used to trigger escalation actions, e.g. • Latest Start – e.g. you may wish to send the selected approvers a reminder if the approval process has not started within a given time.
FS {WRICEF ID Description} {Workstream} {Organisation / Project Name}
• Requested End – after this time the workflow item would be considered to be late. You may wish to notify the selected approver’s manager. If so, should the manager also be able to approve or reject? • Latest End – at this point you may wish to skip the standard approval process and go directly to a super user for urgent action.
For each escalation event clearly specify:
• How is the time of the event determined? (E.g. x working days after the item was raised; y working days before some deadline date from the document.) • Who should receive the workflow escalation? • What should the escalation Subject and Body text be? Preferred Inbox If the user is expected to find and process this item from an inbox, where should that be? E.g. • Fiori ‘My Inbox’ app • SAPGUI Business Workplace • SAP Portal UWL • NetWeaver Business Client (NWBC), e.g. in a Power List (POWL) Alternatively it may be that the user will be notified by email, and is expected to process the item from a link in the email. Email Notification Is email notification required? If so, should it be: • Collective Mail, sent nightly OR • Mail per work item sent hourly, with URL or Work Item attachment? Note that email addresses will be taken from user master data (transaction SU01) where Communication Method is set to 'Internet'; or from HR Communication Info type 0105. Please note: if both of them are maintained, then either may be picked up by the workflow runtime – so the addresses should be the same.
FS {WRICEF ID Description} {Workstream} {Organisation / Project Name}
2.5.2 Example Background Step
Step Description e.g. Release approved PO
Functionality to The step would run some code such as calling a BAPI. call Error handling Are there known errors that could occur? For example on an update step, could the object be locked by another user? If an error does arise what should happen? E.g. • Retry up to x times. OR • Workflow goes to an error status with details available in workflow log. OR • Notification email is sent (to whom?) and workflow processing ends? Subject Text E.g. ‘BCKGRD: Release document <document number>’ (Work Item Text) Body Text E.g. ‘Document has been approved, this message is for information only.’ (Task Description) Escalation Not normally required for background steps, but possible. The same advice applies as for a dialog step.
FS {WRICEF ID Description} {Workstream} {Organisation / Project Name}
3 How to Test
Please provide some guidance and/or test data to help the developer unit test the workflow. This can be included here or in a separate document. The developer will need to test repeatedly, so where appropriate provide instructions to reverse the actions performed so the test may be run again, or explain how to create new input data to the test. In particular, the developer will need logons for test users representing the various roles within the approval process.