Monday, June 29, 2015

K2 Interview Questions: SmartObjects

All K2 Interview Questions

When NOT to use SmartObjects
Very high-volume or high-load scenarios
(e.g. high-volume OLTP)
- Very low-latency processing requirements
(e.g. real-time control systems, ultra-low latency trading, guaranteed millisecond execution times)
- Enterprise Data Model Design
(SmartObjects is an execution mechanism and implementation more suited for execution rather than design)
- Message Bus/Transformation Engine for transactional data processing or ETL
              A good rule to apply is to use the approach that makes the most sense. Using SmartObjects to allow workflows to integrate with external providers does not imply that you have to use SmartObjects for Forms and Reports as well. You could define SmartObjects and use them in workflows where response times are not as critical, but use native data access in user interfaces when very low latency is required.

What are the Common uses for SmartObjects
Data access in forms and reports
- Primary data integration mechanism for K2 smartforms
- Interact with external systems from workflows
- Interface between K2 SmartWizards and data sources
- Standardize data access mechanisms for development projects
- Create a catalog of reusable business entities
- Combine disparate data sources into logical, abstracted business entities
- Externalize workflow business rules
- Dynamic rules in workflows (destinations, start rules etc.)
- Expose SmartObjects on SharePoint lists using BCS
- Expose disparate external systems through standard APIs (e.g. K2 APIs and Web Services)

Expose SmartObjects on SharePoint lists using BCS
It has been possible to expose K2 SmartObjects on SharePoint lists using SharePoint’s Business Connectivity Services (BCS) technology. This makes it possible to expose almost any data source as a read or read-write SharePoint list.

Expose disparate external systems through standard APIs (e.g. K2 APIs and Web Services)
The K2 SmartObjects Services and the available K2 SmartObject APIs also make it possible to expose almost any data source consistently through the same interfaces. Imagine how much easier it is for developers to write code against a consistent API, regardless of the source of the data, rather than having to learn different APIs and access methods for different data sources. 

What are the service broker
The connector which exposes a data provider to the SmartObject subsystem is called a “Service Broker”. These service brokers are hosted in the K2 application server and are responsible for translating the provider’s native objects, properties and methods into the common “language” that K2 SmartObjects can understand. K2 ships with several Out-of-The-Box Service Brokers that can expose common enterprise systems as SmartObjects without requiring any code. At most, it is only necessary to configure the providers to access a specific data source, after which SmartObject developers can create logical SmartObjects that interact with the data source.

What are the standard K2 service broker/Connectors to LOBs
Microsoft Products
 - Active Directory (Write and Read)
 - SharePoint (On-premise and Online)
- K2 user Role M anagement
- SQL Server databases
- SQL Server Reporting Services
- Exchange Server
- SmartObject Service Description
- Dynamics CRM (On-Premise and Online)
K2 Services
- K2 SmartBox
- K2 Task Allocation
- K2 Workflow Reporting (Generic and Exchange Server Solution-specific)
- K2 User Role Management
- SmartObject Service Description
- K2 Workflow Runtime Interaction
Other Products
- Salesforce_corn
- Oracle databases
- SAP (When using K2 connect)
Generic Brokers
- .NET Assemblies
- WCF Services
- Web Services
- PDF Converter

4 comments: