I was asked what I normally would do in a process for gartering requirements for an integration assignment. I started to write about this question and it became a good blog post and I hope to get your feedback about what I have written or left out.
I have worked on many different projects for my clients. It is in an ideal situation that the business can hand over some information about what kind of integration it wants. Many times it is not always possible to get this level of information.
Therefore, there is confusion between what is required and what is delivered. The business has its own idea about what is needed. As PI developers we have other ideas. I wanted to share some of my ideas on what is needed before it is possible to start and integrate, or at least complete it.
Listed below is a checklist that I consider useful.
- What is the process supported by this integration?
- It helps to be able to understand what kind of process the system is using. It makes it easier to explain to other developers why this is an important method to work with.
- I have found that using the process for the naming convention is a good idea, so it makes sense to use the supported process.
- It will also help identify other areas of the process, which can be integrated in the same way. It may make sense to get all the areas implemented at the same time when you are using this process.
- Which system is used in the integration? It is crucial to know this before any integration starts.
- Know the available protocols for the systems. For SAP systems, there can be multiple options, and it may be the SAP PI Developer’s job to find the correct solution for it. For other systems there may be multiple options, and it helps to ask if any protocols that are SAP PI that supports native. If you can stick with the native protocols, you will save time developing or purchasing your own protocol.
- Should the PI developers have access to the systems or get contact information on people how can help solve the problem?
- Are there any test systems that can be used for the testing?
- It could be the WSDL/XSD descriptions of the involved messages.
- It can also be a SQL table specification or a CSV.
- Remember, there can be multiple messages.
- Is there a need to make an internal format to handle the request?
- How should the data be mapped between the data formats?
- This is often lagging and cannot always be provided by the business if they can make a mapping it does not cover. When this is missing, it is a job for the SAP PI developer to find a solution to start the mapping.
- Is there any process or orchestration required to make the process run smooth?
- Can it be avoided? Sometimes it is a good idea to ask if the process involved can be changed to make it even better than the way it is working.
- Are there any security concerns? If you are dealing with payment files, there may be a requirement to make some kind of encryption that may not be supported.
Monitoring Option or Criticality for the Integration
- How critical is the interface? There may be a solution that is more difficult to monitor and; therefore, it can make sense to find another solution that is easier.
- When you have gathered a great impression on how the process should be, can you (from the technical point) see a way to make the process even better than the way it is running?
Is Custom Development is required
- Is there any reason to develop adapters, modules or any java code to handle the mapping? If this is the case, then there is also a requirement to get the specification on how this should be working.
This list is not complete. Please help me gather more information, which can be used to make a better list for us to follow.
I’m currently working on creating a template for how to fill in this information in an efficient way. I need to test the document before I can release it. Please go to PIArchitecture and sign up for the mailing list—you’ll be the first to know when it is ready.