Development Process for Partners



Note: This page describes the development process for Ultimate Partners only.

Integration development activities for partners with UltiPro Connect are grouped into a 3 phase development process: Plan, Build, and Launch. While these phases may sound simple, the business of integration with UltiPro requires a disciplined approach to be a success and delight our customers.

Plan          Plan          Plan


Note: Be sure to email your acknowledgement of Terms & Conditions before beginning development.

Plan

To initiate the partner contracting process please fill out the Partner Request Form. After the contracting process is complete we will initiate planning by requesting the list of partner developers building integrations that need to have access to UltiPro Connect.

After contract signing the next step is to have a kickoff meeting where our team meets with your business & technical teams together to make introductions and begin setting high level goals together. It is important to have both of those groups together to make sure everyone is on the same page with our shared goals. We will define our progress checkpoints & iteration review cadence.

Once we have the kickoff & verify the list of developers, we will setup your access in UltiPro Connect & your UltiPro sandbox. Then, we will send you the login information. We will share interface documentation between parties so both sides have an understanding of the data elements & technologies involved in our potential integrations. We will formalize the details of integrations to be built later in a design specification. 

There is a task board we will use to track our project together that your team can access. The task board will be pre-populated with the baseline known tasks but will be used interactively by all teams to add & complete tasks throughout the development lifecycle. We will also use the task board's built in Comments feature to ask questions, track conversations, and cut down on the amount of email required.

Our preference is to follow an iterative integration approach similar to the Agile methodology. The goal is not to prescribe specific processes & deliverables of Agile but rather to encourage frequent communication and feedback loops. We will want to jointly agree on what is going to be in each iteration and how long iterations should last. Then we can agree on high-level timelines.

You will want to review the API docs & guides on this site for the API(s) your team will be developing with. Our API docs are delivered using Swagger, a specification for describing, documenting, visualizing, and consuming the APIs. It features an interactive list of the API operations and details of the specific operation parameters and return types. If API docs are like referencing an encyclopedia, then API guides are like a good novel. They take you through the flows, help you understand what is needed to build a great integration, and should leave you feeling ready to become an integration hero. After reviewing these materials you will be able to start mapping data flows, models, & attributes between UltiPro & your system.

Build

Now that you have an understanding of how your systems & data map to UltiPro, it is development time. We'll use Postman to share with you Hello World types of examples to get you off to a quick start. Postman is a GUI platform to build, test, document, and share API requests and we have created sample collections following the sequence you'll need to make your requests & be successful.

As you reach a level of comfort with each API integration you develop, we will want to verify & validate together that each one does what it was designed to do. Once that's approved, we'll also want to test that everything works as expected & integrates at acceptable performance levels. 

Once the integrations have been verified & validated as performant, secure, & reliable, we will want to conduct a controlled Beta with 2-5 joint customers. We will use findings & results of these test cases to improve the product/process, and to make a go/no go decision on launching the integration to the entire customer base.

Launch

At this phase, our teams have now successfully completed a controlled Beta, so it is time to launch the integration to market. This process contains a number of tasks that are not unique to developers so we've posted it here to share singularly with those stakeholders