The Benefits of Cogility
Provides products to commercial organizations and government projects seeking to improve their application delivery and development timelines and resource load
1. COGILITY SOFTWARE The Leader In Model Driven Complex Event Processing Cogility Studio: Product Differentiation Cogility Studio Conceptual Background 1 2010 Cogility Software Corporation1 All Rights Reserved. Proprietary and Confidential. 2. When the Model is Not the System Most modeling software is like the Legotm H2 Hummer The Model creates a facsimile of the real thing The Model is not executable like the real thing Nobody mistakes the model for the real thing The Model has value because it helps you understand the high- level components of the real system by using high level abstractions In other words, if you actually want a Hummer that you can drive, you still have a lot of work to do 2 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 3. The Real System is MUCH More Complex An actual system is like theGeneral Motors H2 Hummer It requires much more effort to build There are many other actual sub- systems that need to be designed and implemented, beyond the high level abstractions provided by the model It takes an enormous amount of effort to actually realize the modeling abstractions It actually needs to operate in a real environment Nobody mistakes the GM H2 for the Lego H2 Most normal people do not attempt to build their own equivalent of the GM H2, even though this is theoretically possible3 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 4. What if It were possible to build a model of a system using a much superior modeling environment with rich semantics that allowed you to describe the most complex artifacts of a real Hummer Such a model, after it was built, could actually become the system it represents by animating the model semantics It could be operated in a manner indistinguishable from the desired real system(except that it is much easier to maintain and repair) This is the fundamental difference between Cogility and other modeling tools: Cogility enables the Hummer model to operate like a real Hummer!4 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 5. Cogility Studio: The Model is the System A model of an IT system built within Cogility Studio is not afacsimile of the system being modeled, with staticrepresentations of desired behavior The model specified semantics will actually execute exactly asspecified, enabling the model to become the system When the Model is the System, as the model is maintained thesystem follows, automatically The executable model can be easily extended to encompassnew capabilities as business requirements change The model executes in a high-performance, scalableenvironmentThis is the fundamental difference between Cogility and other modeling tools: Cogility enables the system model to run likethe real system, because the Model becomes the System!5 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 6. Cogility Studio: Architecture BigCogility Studio: Architecture Big PictureStudio EAIEIIBPMEDA: Event Driven Architecture SOA: Service Oriented Architecture WebWebDataEventDataSchemaProcesses Service ServiceSchema TransformsHandlers TransformsDeploymentOrchestration J2EE: Application Abstraction LayerJDBC: Storage abstraction Layer IBMBEAJBossOracleIBM SQLWebSphere Weblogic 9iDB2ServerWindowsLinuxSolarisAIXMacOS OS400 6 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 7. Conventional MDA Approach: Model Translation Conventional approachto an MDA basedexecutable model is viatranslation. The UML UML System Modelmodel is translated bysome means to a 3GLlanguage, which is thenexecuted aftercompilation anddeployment in a VirtualModel Execution Virtual ModelEnvironment.Execution Environment Problems: Deployment, 3GL Formtestability, debugging, Modelinteraction, divergence,using pre-existing 3GLlibraries, disjoint dataand behavior. Data7 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 8. Translation: An Evolutionary Approach Model Driven systems are a paradigm shift in the way in whichsystems are generated. MDA with translation is an evolutionary change, since what isultimately executing is the compiled 3GL code, just as in thehand-coded systems. The translation is inherently lossy, because the execution environment does nothave the capacity to understand the model semantically Furthermore, there is a varying degree of completeness in the translation A paradigm shift cannot be effected by evolutionary changes. Too easy to fall back into the previous paradigm 8 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 9. Cogility Studio: Model Driven Execution (MDX) Cogilitys approach is more akin to programming with objectsthan object oriented programming, while offering full benefitsof the latter. Each model artifact has predefined executable behavior that implements auseful capability Generic model artifacts can be combined to create systems that could not havebeen conceived when the class of model artifacts was created Software Legos Cogilitys MDX approach keeps the model and the implementationtightly synchronized by maintaining the model as an invariantfrom high-level abstraction to the lowest level of implementationdetail. Simply put, it is WYSIWYG when it comes to model and implementation 9 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 10. Cogility Studio: Model Driven Execution Cogility does not dependConfiguration Managed Modelupon model translationProcessinto 3GL code forServicesexecution. Behavior Information Instead, CogilitysXForms extensible Model Action Messaging TransactionSemantics are directlyexecutable within a ModelExecution Environmentwith integrated executiondata, which alleviates theDirect Modelproblems associated withExecution Environmenttranslation techniques.Auto-deployment, directdebugging, direct ExecutableModelinteraction, nodivergence, direct usageof pre-existing 3GLCogility Managerlibraries, integrated dataand behavior.Integrated Execution Data and Behavior10 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 11. Cogility Studio: Execution ArchitectureCogility Modeler Repository Authoring Interface Logic + DataRepositoryExecCogilityApp Action ManagerSemanticsServerWS/JMS Interface 11 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 12. Cogility Studio: Automated J2EE Model Interface Generated BrowserViewDBEDAActivation Messaging Direct Model Execution Environment SOAExecutable Timing ServicesModel Daemon Cogility Manager 12 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 13. Cogility Studio: Directly Executable Model-Driven Action Semantics Database Access ServiceMessageInvocationPublish Direct Model Execution Environment Action ActionSemanticsExecutableSemanticsTestsModelReports Cogility ManagerAction ActionSemantics Semantics Scripts Extracts 13 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 14. Cogility Studio: Highly Accessible Execution Data DatabaseBackupsRestores Direct DatabaseDatabaseTuningCleanup ExecutionDataFederatedSQLModelData ReportsMetadataSolutions 14 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 15. Cogility Manager: Model Aware Execution Environment Cogilitys execution environment has complete semanticawareness of the model, with the full richness of the modelingenvironment The system is self aware and has a semantic understanding of the system information model, as well as the interfaces to it and to any other system it communicates with The system is aware of the Model Action Semantics it can execute and how these relate to specifics in the system model Every row of data in the execution database is self-aware and knows how it relates to others and the business processes and behaviors it provides within the system System data structures are aware of behaviors they provide 15 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 16. System Command Console: Cogility ActionPad 16 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 17. Limits of Human Comprehension Research in cognitive science indicates that on average we canintegrate 7 2 unrelated concepts at a time without error Beyond that, we use a technique called chunking to groupsimilar, well understood concepts together to reduce complexity These chunks can then be used as building blocks for higherlevel concepts Thus, even highly detailed, extremely complex concepts can besuccessively aggregated into a finite number of high levelbuilding blocks that can be intuitively understood 17 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 18. Chunking and Evolution of Computer Languages The concept of aggregating low-level detail into a reusable chunkis common in the evolution of computer languages Converting Binary to Hex is a form of chunking Every generation of computer language provides a higher levelunderstanding of the domain, which allows a single command todefine a complex sequence of lower-level commands 1GL (Machine Language): every instruction is at the machine level 2GL (Assembler): created for specific processors, has a set of structured commands that reflect many machine language instructions RISC processor does more chunking 3GL (C, Java etc): general purpose higher level language that is not processor specific and allows for more general commands than 2GL Each higher level language aggregates details of the lower level intoreusable chunks 18 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 19. Applying Chunking to a Typical IT SystemParse InputCommandTransform? Do WorkRead/Save Stuff Response Talk to Other 19 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 20. Cogility Studio: Reducing IT Complexity by Chunking Cogility defines an IT System using a combination of powerful,executable, system scaffolding modeling artifacts, which can beinstantiated as necessary to represent the functional chunks Model Driven Smart Persistent Objects, exhibiting Automatic transacted database CRUD behavior with association traversal Inheritance Behavior Definition Process Definition (state full, long-lived) Model Driven Smart Data Structures, exhibiting Inheritance Behavior Definition Model Driven Communication Artifacts, exhibiting Synchronous input/output using SOA Asynchronous input/output using EDA Model Driven Data Activation Artifacts, exhibiting Remote database input/output Ability to respond to remote data triggers Model Driven Transformation Artifacts, exhibiting Common Warehouse Metamodel based transforms XSLT based transforms 20 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 21. Cogility Studio: Executable Action Semantics Further, Cogility provides a number of powerful, executable, system logic modeling artifacts in the form of Model Action Semantics keywords Each Action Semantic keyword has inherent executable capability and does notneed to be decomposed further and translated to 3GL code to execute It would take many lines of 3GL code to implement equivalent capability effectively and consistently for every usage Action Semantics can be safely and easily expanded if required. Action Semantics artifacts can be combined in arbitrary ways and embeddedinside the scaffolding modeling artifacts, allowing them to behave in a mannerthat is completely new and directly representative of system requirements Programmable Software Legos Modeling constructs are like a RISC system, making them easier to grasp andretain based upon rules of human cognition, resulting in a flatter learning curve Repetitive use of well understood, well tested, automated patterns can build highly complex solutions while drastically reducing hand-coded low-level artifacts 21 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 22. Cogility Studio: Action Semantics Chunks The Action Semantics itself can be chunked as follows Basic (Declaration, Assignment, Arithmetic, Logical Operators) Database Control Structure Behavior Invocation Communication Exceptions 22 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 23. Conclusion: Model Driven Execution With Cogility Studio Cogility Studio provides essential executable modeling artifacts which can be used to model and execute the required system. System is much easier to develop Each type of modeling artifact provides useful executable capability in the domain where Cogility is used It would take an extensive, systematic and expensive coding effort to reproducethe execution capability provided by the modeling artifacts in a 3GL language Modeling artifacts are directly executable, and auto deploy to a scalable, cross platform execution environment in a manner that closely integrates execution data with system behavior Shields users from technological complexities of the execution environmentwhile maintaining interaction at the system model level Modeling artifacts do not require translation into 3GL form, either manually or through code-generation System is easier to manage, test, document, certify and maintain With Cogility, the Model Is The System, and the two never diverge The model becomes the single source of system information and organizationalcompetitive advantage 23 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 24. Additional Reading Some of the concepts that have been discussed here have been discussed by others. Some practical books that provide useful concepts Business Engineering With Object Technology by David A. Taylor. Published byJohn Wiley & Sons. Old book, but extremely easy to understand and easy to read. Good for model- based concepts. The Object Primer, by Scott W. Ambler. Cambridge University Press. Parts of this are aimed at hands-on developers, but others are relevant for just about anyone, to understand the modeling process. See www.agilemodeling.com CAVEAT: These books assume that the modeling effort will be followed by coding, which is NOT the case in Cogility since Cogility models are executable. 24 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential. 25. Cogility Studio: The Model Is The System Cogilitys unique abilities Cogilitys unique capability is Model Driven Execution, which goes beyond justbeing MDA compatible. Cogility Studio uniquely provides a directly executable, auto-generated end-application, unlike other MDA approaches that generate code stubs that have tobe manually hand-coded to conform to the system model and then manuallysynchronized as the system model changes. Cogilitys unique features: Model Driven Transacted Persistence, allowing model action semantics toautomatically control low-level database operations. Model Driven Durable Messaging, allowing model action semantics to controllow level messaging operations. Model Driven Behavior Specification using executable action semantics. Model Driven Process Execution, allowing high level business process modelsto directly execute at the physical level. Model Driven Data Transformation, allowing for model action semantics toseamlessly control the access of similar data in dissimilar formats. Model Driven Service Specification and Orchestration, allowing the model todirectly specify complex services and orchestrate complex remote services withfull control over the associated data flow. Model Driven Data Activation, allowing the system model to react to changes indata in remote databases. Model Driven Test Scenarios, with executable action semantics based tests thatcan interact directly with the low level physical layer. Model Driven Documentation, by exploiting the detailed system metadatainherent in the model. Comprehensive Model Configuration Management, from high level abstraction tolow level implementation artifact within the execution environment. 25 2010 Cogility Software Corporation All Rights Reserved. Proprietary and Confidential.