1 - Preamble
Application integration is a development activity which, as such, should go through a typical Software Development Life-Cycle from specification to implementation.
From our experience, we advise following an iterative approach as it is beneficial both on quality and overall integration cost.
A typical build sequence is:
- First Iteration: Build SSO, Single billing and map core data Entities
Core data entities are the ones essential to your business like the Contacts for CRM application or the Accounts for an accounting package
- Second and subsequent Iterations: Add additional entities to the integration
Once the first iteration is developed and stable you can then add more data types to broaden the scope of the data you will share with other apps
2 - App integration overview
2.1 - Standard plan
Each iteration can follow this typical plan structure. Our recommendation is to keep it simple and pragmatic, as App integration is a fairly straightforward process. You can of course use any methodology you are familiar with, our objective here is more to focus on activities which needs to be performed.
Just keep in mind that at some point, coordination will be required with our QA and Marketing teams to validate the integration and launch marketing campaign. A schedule will be defined jointly with Maestrano.
2.1.1 - Plan
Objective | The plan phase objective is to design the broad scope of integration, align teams (yours and ours), share your tentative planning and align resources |
Activities | - Contact Maestrano Marketing team to notify us you wish to integrate with our Marketplaces, tell us what you want to share and ask for guidance!
- Design the broad scope of integration, and what you expect from it, eg. do you want to share your data with other apps, enable advanced reporting on your solution, or both.
- Build a tentative project plan highlighting development and testing phases, so that we can plan time accordingly on our side.
|
Inputs | |
Outputs | - Your key business objectives and timelines
- Broad scope of integration
- Tentative project plan
|
Responsibilities | - It is your responsibility to contact Maestrano in order to inform us that you intend to integrate with us. We will then work together on the project plan to make sure resources are properly allocated
|
2.1.2 - Design
Objective | The design phase objective is to refine the scope and establish the details of what is going to be integrated in Maestrano |
Activities | - Understand Connec!™ data-model and decide which entities are going to be integrated
- Read the UKB articles of other apps of the same nature to understand what can be done and what are the potential limitations.
- Document what is going to be integrated and the acceptance criteria, eg.
- Entities are replicated in Connec!™ and each field is properly mapped
- Relevant entities are being replicated in other applications and each field is properly mapped
- Impac!™ widget display the correct data
- etc...
|
Inputs | - Connec!™ documentation, app integration documentation, UKB
- Outputs from plan phase
|
Outputs | - Detailed scope of integration
- Acceptance criteria
- Refined project plan
|
Responsibilities | - You define the scope of your integration and document it
- Maestrano team answers any question you might have on integration, guide you on how to maximise the value of your integration and confirms that your integration is achievable
|
2.1.3 - Build
Objective | The build phase objective is to actually build the integration |
Activities | - Code the integration by itself
- Test the integration on your side (Single Sign-On, Data sharing, Reports). Single Billing will be tested with Maestrano during the Test phase
- Fill the marketing material on the dev platform (App description, logo, categories etc...)
|
Inputs | - Outputs from design phase
- Connec!™ API documentation
|
Outputs | - App integration code
- Confirmation that Acceptance criteria are met
- Marketing material filled in
|
Responsibilities | - You are responsible to code the integration and to test it on your side
- Maestrano team supports you during this process, answering any question you might have and providing technical guidance
- Maestrano will also test the integration before validating the app during the Test phase
|
2.1.4 - Test
Objective | The test phase objective is to validate the integration and to publish it on our Marketplaces |
Activities | - Maestrano Test the app integration (Single Sign-On, Single Billing, Data sharing, Reports) and checks that the marketing material is present
- Bug fixing
- Publish online !
|
Inputs | - Outputs from design phase
- Acceptance criteria
|
Outputs | - Confirmation that Acceptance criteria are met
- App published
|
Responsibilities | - You are responsible to fix the bugs found during the test phase
- Maestrano provides a QA team to verify that acceptance criteria are met
|
2.1.5 - Support
Objective | The support phase objective is to keep the app working and customers happy |
Activities | - Re test the integration on a regular basis
- Support customers with their issues and queries
|
Inputs | - Acceptance criteria
- Support requests
|
Outputs | - Confirmation that Acceptance criteria are still met
- Answers to support queries
|
Responsibilities | - Maestrano is the Level 1 point of contact for all queries related to integration issues and questions on our Markteplace
- If needed we will contact you for technical enquiries and you will provide answers and bug fixes as needed
- Maestrano will retest on a regular basis that acceptance criteria are still met, but we encourage you to do the same on your side
|
2.2 - Standard team & prerequisites
Team
Maestrano have a comprehensive team to help you building a successful integration:
- Marketing support to help you plan you release and prepare the marketing material you will need
- Business analyst to help you with the design phase
- Solution Engineers to answer to your technical queries and guide you in the integration process
- Support Level 1 to answer user queries on our Marketplace (please note that enterprise clients may have their own support teams for their Marketplace)
Integrating with Maestrano and Connec!™ is a straightforward process so the typical team involved from our app partner is usually quite limited:
- Someone in charge of liaising with our marketing team and business analyst (typically the CTO of your company) for the initial Plan and Design phases, and then to follow-up on integration progress
- A tech lead, usually in charge of programming the integration
- Ideally a QA lead on your side if have one, separated from the engineering team
Prerequisites
As soon as you have a development team in place, or a software development contractor working with you, you should already be setup to integrate with our Marketplaces.
Our SDKs fit most of the typical development environments with Java, PHP, .Net, and of course Ruby versions available. If you are working with a different technology, you can still build a SDK free integration, as explained here: SDK free integration
2.3 - Good practices
- Get in touch with Maestrano's team (applications@maestrano.com) before starting developments, so that we can coordinate activities for the testing and deployment phase
- Ask yourself what you expect from the integration to better focus efforts
- Do your integration in phases, start with an MVP followed by the complete integration, especially if you intend to integrate a lot of different entities
- Don't hesitate to reach out if you need help!
3- Typical timelines
3.1 - Iteration #1
Considering a first iteration for building a MVP, composed of SSO, single billing and a simple entity (contacts for example) a typical timeline would be:
Phase | Duration (calendar) | Comment |
---|
Plan | 1 week | Not a lot of things to do for this phase which is more focused on establishing communication between teams |
Design | 0.5 day | Typically with the help of a business analyst |
Build | 1 week | For a full time developer with a minimum prior knowledge of SSO and APIs topics |
Test | 1 week | Considering you will test developments on your side, and our QA team will confirm |
In total, 3 to 4 weeks is a reasonable duration for building a first integration, considering the team is dedicated to that, and that the use cases implemented are standard.
3.2 - Iteration #2
A complete integration will very much depend on the number of entities you want to integrate.
- Initial phases of plan and design will be shorter, or will even be skipped if you planned and design the complete integration during the MVP.
- Build and test phases will be more efficient as you already know the technology from iteration #1
- Depending on how much data is to be integrated, and of course the resources you will commit on your side, a comprehensive build phase could last between 10 days and 3 weeks