Your SlideShare is downloading. ×
iKen Studio™
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

iKen Studio™


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide


  • 1. An IIT Bombay Research Project Spin-off
  • 2.
    • A SaaS (Software as Service) Delivery Platform ( )
    • An online development environment to develop web-based enterprise applications, decision support systems, knowledge-based websites and BI (Business Intelligence) applications backed by expert system, case-based reasoning and Hybrid AI technologies.
    • It is a research spin-off of IIT Bombay
    iKen Studio Live
  • 3. Contents
    • iKen Studio Features
    • Generic Applications of iKen Studio
    • System Development Interfaces
      • Core Engines
      • Presentation Interfaces
      • Database Management Interfaces
      • System Parameters and configuration
      • System Controls
    • Comparing iKen Studio with other Expert System/CBR Tools/Shells
    • Business Intelligence using iKen Studio
    • iKen Studio Projects
    • iKen Studio Web Services
    • Accessing iKen Studio and Apps
    • Case Studies and Demos
  • 4. iKen Studio: Core Engine and Interfaces
  • 5.
    • Completely Web-based
        • Access, management and configuration through Web
        • No desktop installation and management
    • Minimal coding
        • Generate automatic DHTML scripts and HTML web pages
        • No explicit database programming required
        • Various development interfaces
        • Use of simple language for writing rules
        • Support large number of operators, functions and data types
        • Existing C/C++ APIs can be used
    • Database integration
        • Support popular databases: MS-SQL Server, MYSQL, MS-Access, Excel, Text, etc.
        • Simultaneously connects and accesses data from multiple databases
        • In-built extraction, mapping and transformation engine
        • Data access and manipulation through flexible external dynamic queries
    iKen Studio Features
  • 6. iKen Studio Features
    • XML and Web services
        • All components and interfaces use XML
        • SQL-XML and XML-SQL transformation
        • Access to APIs and intelligent systems through web services
    • AI Techniques
        • Powerful expert system engine supporting large number of data types including matrix, trend, XML etc. and various SQL, matrix, list, chart, session management, report etc. functions
        • Use of scripting language for implementing procedural logic
        • Powerful CBR engine supporting structured and conversational CBR applications
        • Applications can be developed using hybrids of expert system and CBR
    • Security features
        • Role-based access to various development interfaces
        • Role and user based access to applications, databases and data
        • Encryption to prevent unauthorised changes
        • System tracks changes made by the users and save change history for later investigation
  • 7. Generic Applications using iKen Studio
  • 8.
    • Manage dynamic business rule
    • Retain and reuse in-house expertise
    • Maintain and assure regulatory compliance
    • Enforce decision rules: make them consistent and objective
    • Make transaction and reporting systems intelligent by incorporating knowledge
    Generic Applications Knowledge Automation
  • 9.
    • Move from information delivery to knowledge delivery
    • Automate and deliver expertise on-line: virtual consultant
    • Save experts’ time and serve large user/customer base 24x7 days
    • Understand user, customers and employees well. Recommend them the right products, deliver customized advice and information
    • Lightweight, less crowded user interfaces
    • Intelligent product advisory and selection
    • Smart Intranets
    Generic Applications Knowledge-based Websites and Intranets
  • 10.
    • Advanced decision support system using rule-based, case-based systems and analytical methods
    • Data Analysis, detect Inconsistencies
    • Reuse experience: like dealing with customers
    • Analyse, match profiles and predict behaviour
    • Identify up-selling and cross-selling opportunities
    Generic Applications Decision Support
  • 11. Generic Applications Automated Help-desks and Support
    • Reuse maintenance, support etc. experience
    • Self-service Interfaces
    • Intelligent help and troubleshooting
  • 12. Generic Applications Monitoring and Reporting
    • Monitor and report fraudulent, suspicious and abnormal activities
    • Generate alerts and early warning signals
  • 13. Generic Applications Information Search and Retrieval
    • Flexible and guided quick information retrieval from databases
    • Set individual’s retrieval criteria and requirements
    • Retrieval based on context and conceptual similarity
  • 14. Applications: Demo Screenshots Product Selectors
  • 15. Applications: Screenshots Advisory Applications
  • 16. Applications: Screenshots Advisory Apps
  • 17. Applications: Screenshots Intelligent Exams
  • 18. Applications: Screenshots Intelligent Matching
  • 19. Applications: Screenshots Decision Support
  • 20. Applications: Screenshots Monitoring
  • 21. Applications: Screenshots Knowledge Automation
  • 22. Applications: Screenshots Personalization
  • 23. iKen Studio Layered Architecture iKen Studio SQL-XML Mapping and Transformation Engine Variable Database Mapping Interface SQL Builder & Rule Filter Dynamic Query Interface Access Rights Management Data Access layer Rule-based Expert System Engine Case-Based Reasoning Engine Rule Manager CBR Configuration Interface Intelligent Systems Layer Session Management Domain Vocabulary Interfaces Common Session Data (XML) Session layer Report Designer Form Designer XML-HTML Transformation Engine Presentation Transformation Layer File Upload Database Database Database Client Browser Client Browser Client Browser Web Services API HTTP Access Other business Systems
  • 24. System Development Interfaces Data Services XML<-> SQL Transformation System Interfaces Domain Vocabulary Intelligent Techniques (Core Engines) Presentation Services (Input/Output)
  • 25. Core Engines Expert System Engine (Rule Engine)
    • Rule-based Reasoning
    • Web-based, XML-based Expert Systems can easily be developed and deployed.
    • Easy to use and understand IF...THEN...ELSE rule format
    • Supports rules for multiple expert systems, which are logically separated into application groups.
    • Rules are stored in intermediate format at run time rather than interpreted each time. Rules are checked for various syntax and semantic errors. Rule Manager facilitates interactive environment to manage the rules.
    • Supports
      • Backward as well as forward reasoning
      • Various data types: number, real, text, date, list, dynamic list, trend, matrix, boolean, document, URL, etc
      • Various mathematical, string, list, date, matrix, trend, graph, database, session management and report functions.
      • Special operators and functions like INCLUDE, IS BETTER THAN, SCORE_OF, PROFILE_OF etc. to reduce number of explicit rules eg : expressions like :
          • Customer.Education IS BETTER THAN Diploma ,
          • STATUS_OF Customer.Age IS Young
          • Customer.Income Documents INCLUDE [PAN,Form16] etc .
  • 26.
    • User defined functions can be created to be invoked in expert system rules
    • Supports many databases simultaneously, no explicit database programming is required: like opening database connections, executing SQL command, opening record-sets, populating data etc. The database interfaces manage extraction, mapping and transformation of data. The data in response to SQL queries is populated into session data and vise-a-versa at run time.
    • Use of JavaScript for WHEN NEEDED and WHEN ADDED methods. Expert system variables can directly be accessed directly in JavaScript for client-side as well as server-side functionality. This helps to implement procedural component to be implemented using scripting languages that are relatively easier and widely used.
    • System can run in Debug mode to dump the data and know process status at run-time.
    • An expert system can be invoked through URL and Web services
    • System Interfaces like Form Designer and Report Designers are used to create HTML input templates and sessions reports to enter, validate data and get formatted output in HTML format.
    • Existing C/C++ APIs can be used by wrapping them in DLL files
    • Expert system engine can work as host system for accessing and controlling case-based reasoning systems or to develop hybrid systems
    Core Engines Expert System Engine (Rule Engine)
  • 27. Core Engines Case based reasoning engine
    • Domain independent Web-based CBR systems can be developed. The engine is tightly connected to expert system engine. Expert system engine can act as host. Expert system can be used to enter query or problem case (through Q&A or Forms). Run-time format of case format is XML, cases are stored in the database/s.
    • No restructuring of database contents, existing contents can easily used and converted to cases on the fly (by mapping SQL-XML)
    • Supports for all phases (Retrieve, Reuse, Revise and Retain) of CBR
    • Uses combination of rule-base, SQL and nearest neighbour method for retrieval.
    • Powerful rule-based engine for adaptation of cases.
    • It can address structural as well as conversational CBR thereby supporting wide-range of applications from intelligent help desk to complex decision support.
    • The engine supports taxonomy, hierarchy of CBRs and logical grouping of features.
    • It supports large number of similarity functions and custom functions can be added.
    • It can be configured to set similarities from databases based on criteria or procedural logic (query results), also to learn and adjust similarities automatically from the past transactions or examples.
  • 28. Presentation Interfaces Form and Report Designer
    • Create DHTML web pages for Input and Output
    • Support all major HTML controls, tags, fonts, colors etc
    • JavaScript code is automatically inserted into forms and reports for validation, formatting etc.
    • Form designer interface: used for designing and building inputs forms
    • Report designer interface: used for designing and building report templates. The system populates and calculates appropriate values at run-time when invoked or displayed.
    • Studio supports default report templates with lot of client side functionality and navigation aids
    • Support two basic types of reports:
      • Session Report : to display session data at run-time
      • Query Report : to display dataset in multiple rows e.g. result of SQL query
  • 29. Presentation Interfaces Example: Form Preview
  • 30. Presentation Interfaces Example: Runtime Form
  • 31. Presentation Interfaces Example: Session Report Preview
  • 32. Presentation Interfaces Example: Runtime Session Report
  • 33. Presentation Interfaces Example: Default Reports
  • 34. Domain Vocabulary Global Variables, Menus, Range Conversions and Lookup Table
    • It facilitates to maintain global dictionary of domain terms (parameters/variables and their descriptions)
    • These variables are used in various intelligent systems like in expert system, forms, reports, etc.
    • Supports various variable types based on usage in the system
    • Interface facilitates to enter detailed variable description like HTML formatting, validation criteria, WHEN NEEDED and WHEN ADDED scripts, linked intelligent systems and so on. Web pages are automatically for input type variables based on HTML formatting parameters selected.
    • Various data types are supported
    • Menu objects hold the information about various possible options (list of values) a variable can take.
    • Symbolic values and numeric values (including) can be converted into numeric and qualitative respectively using range-list objects. These can be used to transform values. It helps to reduce the writing of explicit rules to convert values at run-time in expert system.
    • Lookup table interface is used store table of values in memory at run-time instead of fetching them from database each time. Especially if taxonomy or abstract features for generalization is to be stored in memory instead fetching them each time from databases. e.g. to fetch Education Level, Education Discipline, etc. from Degree.
  • 35. Data Services Database Connection
    • This interface is used for setting up database connections. It can also be used to add, remove, and update database connections.
    • The system maintains the list of database connections as an application object. Each connection has a logical ID
    • Supports databases: SQL Server, Oracle, MS-Access, MS-Excel, MySQL, Text Files etc.
    • System supports OLEDB or ODBC connection type
    • One of the databases (core db) in the system is treated as core database. The core database is used by the system to store the user list, session tracking, database access queries etc.
  • 36. Data Services Dynamic Queries
    • Dynamic query facilitates retrieval of data at run-time by just using their IDs and filters (by populating filter values at run-time)
    • Queries can be predefined to bring datasets for lists, dynamic lists, collaborative filtering, content filtering, clustering etc.
    • These queries save lot of explicit coding inside Rule-base.
  • 37. Data Services Database Variable Linking
    • Mapping between variables and database fields can be set to exchange the data between database and system.
    • Data can be transformed on the fly after retrieval and before updates to database/s.
    • Mapping can be set for read or update access.
    • Variable linking can be done for fields from different databases.
    • Mapping and transformation is applied to all queries sent to database/s.
    • It helps to populate data into variables automatically and vice-a-versa without explicit data population in rule etc.
    • Because of mapping, cursors can be simulated and used in expert system coding
  • 38. Data Services Database Access Configuration
    • Query objects hold the information about database links to various components of the systems. Database access can not be done unless query objects are defined.
    • Query object can have multiple queries with respect to role, goal, intelligent system, etc.
    • Access to data can be controlled based role, application, read or write, etc.
  • 39. Data Services SQL-XML Mapping and Transformation Engine
    • Responses from SQL calls are converted into XML and XML data is converted to SQL requests
    • Fields are mapped to variables and data is transformed at the time of retrieval from database/s and vice-a-versa.
    • Engine can fetch data from multiple databases or update to many databases simultaneously.
    • Various access rights can be set to access data based on user, role as well as type of intelligent system accessing data.
    • Frequently required data can be stored in look-up tables, this data is populated in every record based in key-field value return from the SQL call
    • Table data can be converted into multi-valued fields for analysis through option of child query.
  • 40. Data Services SQL-Builder and Rule Filter
    • A SQL interface to build SQL queries interactively
    • Data from multiple queries can be in integrated or merged from different databases
    • Data retrieved from queries further filtered using logical rules involving complex criteria making it database independent. Large number of date, string, trend analysis, list, math functions available to be included in rule filter
    • Filters are saved with logical names
  • 41. Data Services Example: Rule Filter
  • 42. System Interfaces Load Application and File Upload
    • Interface to load required applications in the project
    • Backup and restoration of selected applications at client location
    • Shows application load status and errors while loading and building applications
    • Files can be uploaded to server from client location
  • 43. System Interfaces Access Rights and Roles
    • Access rights to roles, users can be defined.
    • It allows to set different options to roles. Each role includes access to system interfaces, applications, databases and variable groups.
    • An user can have multiple roles
  • 44. System Interfaces System Parameters & Configuration
    • Various project level parameters can be set which are applicable to all applications in that project
    • Applications and linked variable groups can be defined with some applications can be loaded as default applications when iKen Studio starts
    • These include: parameters for connecting to SMTP server, use navigation button names, virtual directory path, script files path, default formats, max number of rules, max number of tokens in expression etc.
  • 45. iKen Studio Project
  • 46. iKen Studio Project: Example
  • 47. iKen Studio Generic Solution Architecture
  • 48. iKen Studio Web-Services
    • Web Services are designed to
      • access iKen Studio components, applications and live sessions
      • configure iKen Studio projects at run-time
      • synchronize data transfer between external applications and iKen Studio application databases
    • All of the objects of application such as expert systems, CBRs, rule-filters, user-defined functions, session, databases are accessed using unique ID. Which helps to implement business logic in iKen Studio and executing functionality just using object ID and data in XML format and limited number of webs services.
    • Supports XML and text data transfers
    • External parameters can be mapped to iKen Studio application variables to facilitate data exchange between external applications and iKen Studio applications
  • 49. iKen Studio App and Web Services iKen Studio Core Framework Project: Objects (External App Params<->iKen Studio App Var Mapping) Expert Systems, CBRs, UDFS, Session, Rule Filters, Databases… iKen Studio Web Services (accessing objects through their IDs) Models & Config.Files Databases Databases Databases External App External App External App
  • 50. Web Services: Examples
  • 51. Accessing iKen Studio and Apps Interactive Mode: iKen Studio based applications can be invoked through URL and run interactively. It can embedded in other applications through iFrame. e.g. Through URL iKen Studio based applications can be invoked through URL. Initial parameters can be passed to the application using URL get method e.g. http:// = Transaction.Scan&Action = RunUsingURL&Trans_ID =15 Web Services: Applications can be accessed and run through Web Services e.g. APIs Applications can also be invoked by including iKen Studio DLL with live instances.
  • 52. Accessing Web Services: Adaptive Framework using iKen Studio <string><Case No=&quot;1&quot;><CD><N>MovieMart.NextPushCID_HID</N><V> [22298:212,23424:212,24696:212,24988:212,24348:212,24362:140,24157:212,22490:212,23399:212,24685:212,22027:212,23583:212,24008:212,24477:212,24943:212,22083:140,22233:140,22501:140,24582:140,24691:212]</V></CD><CD><N>SystemInterface.Solution_Matching</N><V>|64.29 64.29 64.29 64.29 59.04 56.78 56.38 55.6 55.2 55.2 54.83 54.83 54.83 54.83 54.83 54.8 54.8 54.8 54.8 54.6 54.3 53.85 53.55 53.08 53.08 53.08 52.55 52.33 52.33 |</V></CD></Case></string> /iKenStudio.asmx/UDF_ExecuteUsingList?p_FunctionID=MovieMart.GenerateGlobalUserProfile&p_ArgumentList=1 /iKenStudio.asmx/UDF_ExecuteUsingList?p_FunctionID=MovieMart.GenerateUserProfile&p_ArgumentList=[1,212] Generating Global User Profile Generating Local User Profile / iKenStudio.asmx / UDF_ExecuteUsingList ? P_FunctionID =MovieMart.AddTransaction& p_ArgumentList =[1,21925,212,B,Sanjay%20Dutt,KY] seq. [U_ID,C_ID,H_ID,D_Type,Keyword,Key_Type] Notifying download iKen Studio Web Services Web Service UDF_ExecuteWithList List of function parameters and values Name of Internal UDF defined in iKen Studio List of values passed to UDF MovieMart.AddTransaction returns status OK:1 returns status OK:1 returns status OK:1 WebService ExpertSystem_RunWithData p_GoalVariable =MovieMart.iPushGoal p_xmlData =<Case><CD><N>MovieMart.Action</N><V>NextPush</V></CD><CD><N>MovieMart.User_ID</N><V>1</V></CD></Case> p_OutputVariableList =[MovieMart.NextPushCID_HID,SystemInterface.Solution_Matching] Calculating Best Recommended
  • 53. Case studies: demonstrating iKen Studio capabilities and integration models WAP Contents, Meta-Content, Business and User Rules and Knowledge iKen Studio Intelligence Middleware (Adaptive Framework: Personalization and Recommendation) WAP Server Mobile VAS iKen Studio as Intelligence Middleware for Mobile VAS WAP Customer DB iKen Studio (SaaS) Intelligence and Decision Support Back-end (AI-based Rating Model) WAP Server Online Credit Rating On Mobile iKen Studio as AI-end for Intelligence and Credit Rating Customer DB and Conversion iKen Studio (SaaS) Rule-based Engine (Decision rules and reporting specific to Investor, Servicer and Insurer) Mortgage Financial Portal (Intelligent Conversion and Reporting) iKen Studio as a one of the component of overall mortgage portal
  • 54. Accessing iKen Studio e.g. iKen Studio App embedded in portal
  • 55. Comparing with other Expert System Tools/Shells Other expert system tools iKen Studio These provides standard expert system functionality. For other extensions, client has to customize explicitly or pay for additional add-ons to the software vendor Lot of extensions and customizations done to address specific kind of applications like personalization, recommendation, intelligent exams, surveys etc. Concentrate on expert system development interfaces rather than components to generate reports, forms, XML support etc. It is complete high productive development environment which includes form generators, report designers, SQL builder etc. These tools are not offered in SaaS mode. A completely web-based expert system shell environment to be offered in SaaS model. Most of the tools have desktop development and web-based deployment. Which makes development environment distributed. Completely web-based development framework, brings advantages of web-based systems such as centralised system development and deployment, scalability, access from anywhere etc.
  • 56. Comparing with other Expert System Tools/Shells Other expert system tools iKen Studio May be limited to standard data types Support for data types like matrix, trend, XML etc. Do not include CBR systems. So address limited applications of expert systems. Need to integrate with other CBR tools and can be tedious. CBR is tightly integrated with expert system engine. Hybrid systems can be developed easily having advantages of explicit knowledge system + case-based (data driven) systems These tools have their own language for writing procedural logic which user needs to learn Interfacing with JavaScript helps to have procedural logic implemented using popularly used scripting languages like JavaScript Developers need to do lot of explicit database coding: opening database connections, populating data sets into variables, updating variable values to databases etc. Code may vary from database to database. Saves lot of explicit database coding: has built-in SQL-XML mapping and transformation engine.
  • 57. Comparing with other CBR Tools/Shells Similarities has to be defined explicitly. Has built-in mechanism for learning similarities from the transactions etc. Other CBR tools iKen Studio Case management and indexing mechanism is explicitly part of CBR shell Coupled with databases, it relies on database indexing mechanism (for retrieval) which is powerful instead of having explicitly implemented in CBR tool. May have to define case structure and cases explicitly. Because of SQL-XML mapping and transforming engine, existing database contents are treated as cases without explicit case presentations etc. Most of the CBR shells are limited to retrieval (and reuse) phase only. Applications requiring all R-4 (Retrieve, Reuse, Revise, Retain) cycles can be developed. Only CBR engine (expert system is not part of it) which sometimes limits type of applications that can be developed and addressed CBR engine is integrated with expert system engine, thereby facilitating development of hybrid CBR systems supported by expert system
  • 58. Business Intelligence Using iKen Studio
    • Effective and powerful combination of human intelligence (business rules and logic through rule-based expert systems and filters) and domain knowledge-aided machine intelligence (content filtering, intelligent matching, knowledge-based clustering and collaborative filtering using CBR technology)
    • On-the-fly intelligence using lazy learning
    • Self-learning and adaptive intelligence
    • Intelligence can be programmed, customized and configured. It can integrated into existing operational systems using web services or APIs.
    • No need to restructure existing database for BI applications
    • Can be programmed to support micro-level intelligence (what an individual user or customer does, likes etc.) and macro-level intelligence (what specific group of users or customers do, like etc.)
    • Can address classification, clustering, associations and sequence problems effectively
    • KM and decision support components can be implemented
    Data retrieval, mapping and transformation (on-the-fly) Domain Knowledge, Rule-Filters, Rules ( business, decision support and customization ) and Models BI Applications Database Database Database Client Browser Client Browser Client Browser
  • 59. For Case Studies and Demo Applications
    • Log-on
    • To
  • 60.
    • Thanks