Enterprise Data Integration
Yonyx Enterprise Data Integration architecture extends the power of Yonyx guides from interactive presentation of information, to creating business process flows that integrate tightly with third party applications and databases from each step in the guide.
Yonyx guides are embedded within an Enterprise app called the Container app. This may be a website, a CRM system, a Mobile app, an Order management system or a custom designed web-app. The Container app may be an on premise app running within the private network of the Enterprise or a cloud-based app. It communicates with the embedded Yonyx guides through cross domain web-messaging protocol.
This architecture protects the proprietary data of an Enterprise, as such data is only accessed by the Container app, or code-fragments added to the Container app that are invoked when a user traverses through a step of the embedded Yonyx guide.
This integration is performed using three elements that are defined by Admins and included by Authors in various guides: Commands, Auto-traverse conditions and Placeholders.
A command is an instruction embedded in a guidance step that is transmitted to the Container app when a user traverses through the step. This communication is enabled using cross-domain web messaging protocol. Commands are implemented using code-fragments added to the Container app, for performing actions such as:
- a. Display custom designed forms to capture & validate data when a guide user traverses through a specific step.
- Capture data in variables in some steps and make branching decisions based on such variables in subsequent steps
- Call APIs, Web services or update database fields from within Yonyx guidance steps
- Display information looked up from a database within a guidance step
- Any read, write, or read-modify-write interaction with a database
These conditions are added to the User response nodes of a Yonyx guide. Auto-traverse conditions cause a guide to automatically traverse in a given direction based on the return value of the command included in the preceding guidance step. This helps users skip some step(s) that otherwise would require choosing from among multiple user responses.
Placeholders are variables added to a guidance step in the body section, that can be replaced with a value looked up from a database or calculated from components captured earlier during a user’s traversal through a guide.
Add code fragments to Container app
Step 1: Finalize the customer interaction flow – Business Analyst
- Identify the right title for your customer interaction flow(s) or guide – e.g.
- Doctor apt booking process
- Home buyer lead gen process
- New mobile service plan process
- E-Commerce guided sales process
- Guided procurement process for employees
- Job application process for Web applicants
- Return materials authorization (RMA) process
- “Contact Us” – Interactive redirection
- Order entry and acceptance process
- Field Tech troubleshooting & ticket close process
- Identify the sequence of questions to be posed to the customer. Some questions may provide multiple options for the user to choose from, others may require customer to enter information such as a phone number, a URL, product model number etc.
- Draw a rough sketch of the flow – including branches in the flow based on customer responses.
Step 2: Build the Yonyx Guide for the process flow – Business Analyst
- Build the guide
- Define commands and placeholders
- Embed commands in various guidance steps
- Add auto-traverse conditions to user responses, where applicable.
- Test out the flow in Yonyx Enterprise Test Harness
Step 3: Database design – Developer
- Identity main database tables
- Identify attributes (columns) for each table
- Define relationships (keys) between tables
- Add a few rows of data to the table
- Validate design
- Upload all product catalog data to this database.
Step 4: Develop code fragments to implement commands and placeholders – Developer
- Download template code from Yonyx Enterprise Test Harness
- Review template code comments
- Review Yonyx REST API documentation (http://corp.yonyx.com/api-v2/) for server side integration.
- Complete html UI design for any forms required.
- Add code to stubs provided for commands and placeholders in the template code.
- Coordinate developer support assistance from Yonyx. Contact firstname.lastname@example.org
- Embed the completed template code to an existing Website, Mobile App, CRM system or a custom app etc.
Step 5: Unit Testing – Developer
- Setup developer test environment
- Create test data
- Create test cases for commands & placeholders
- Test commands & placeholders individually
- Bug fixing as required
- Ready for Integration testing by QA
Step 6: Pre-deployment Integration Testing – QA in Staging environment
- Setup stage environment
- Create staging data
- QA develops test cases
- Perform end to end testing with the following elements:
- Container app
- Any 3rd party app(s) involved
- Bug fixing
- Ready for production deployment
Step 7: Production Deployment – Developer
Repeat Step 6 in production environment as per company policies and procedures.
Step 8: Post-deployment Testing – QA in Production environment
- Smoke test the production deployment.
- Rollout deployment to a small group of users
- Gather user feedback
- Address urgent bug fixes & capture feature requests
- Scale up to all users
- Gather user feedback for additional features
Develop next release as per user requests.