Welcome to the home of picture perfect programming and the center of the known universe for Cogiton technology. We're glad you found us, and hope you'll want to learn more about our innovative software development approach where you can Picture the Code.
Cogiton technology, or Cogiton Software Circuits, encompasses a new visual programming language and development approach built from a bedrock concept underlying all of computer science: the state machine. Take a quick look at our demo to see what this looks like in action. Press the buttons and literally see what the software is thinking about.
Cogiton Software Circuits provide new graphical ways to quickly design and implement software systems and easily visualize the true essence of the systems being built. At the same time, it implements proven theory to ensure rock-solid, well-structured and scalable code accompanied with perfect documentation.
In the physical world, a building can only be built as tall as its foundation will allow. In an analogous manner, the foundation of today's software development technology is the object-oriented class. If these classes are a mess of convoluted and confusing logic, they will not scale well nor be cost effective in the long run.
Today's software tools focus on object interface, inheritance and relationship issues. They do not focus on making object-oriented classes internally well structured and therefore a strong foundation to build upon. Instead, developers are told to try to encapsulate complexity inside an "abstracted" interface and hope that deep knowledge of how an object works will not be necessary. This plan of action usually fails at some level of complexity for a project. Edge cases and ambiguously conflicting modes of operations emerge unexpectedly from these encapsulated boxes which must then be teased apart – usually at the last minute before shipping.
It is at this focal point, the object-oriented class, that Cogiton Software Circuits help to organize and simplify the software development process. By giving objects a regular and improved pattern to build from, software developers can focus more on the problem at hand and less on the code itself.
Through the power of declarative programming using Hierarchical State Machines or HSMs, Cogiton Software Circuits allow teams to work directly with the underlying logical "modes" in their software. HSMs are a marvelous innovation that allow for the visual creation of highly factored software. However, they are also traditionally very difficult to implement. Software Circuits improve existing HSM notation as well as introduce several new key innovations. From these improvements and innovations great new possibilities emerge.
At its core, Cogiton technology is really about three ways of looking at software that are all equivalent: the code, the pictures, and the shared schema. This statement is the key to understanding what makes Software Circuits different. Unlike in other systems, in Cogiton technology:
… in the most fundamental sense. There is no code without a picture. There is no picture without code. If you've drawn it, you've coded it!
THE CODE: From almost a decade of experimentation with existing techniques in creating software using state machines, a new organization for object-oriented classes has emerged that is powerful, clean and well-factored. Classes created using Cogiton technology are easy to maintain by hand, and in any object-oriented programming language. To find all the required dependencies for building Software Circuits – just take a look in your bathroom mirror. Only you are required in order to start building them!
Cogiton Software Circuit technology is first and foremost a coding methodology. You can do it yourself with a simple text editor or use our Open Source tool (currently under development). Software development teams can have confidence when adopting the Cogiton approach; they are not "stuck" with the latest technology investment from a tools vendor with an uncertain future.
THE PICTURES: Cogiton Software Circuits are expressed in a new visual language, called the Cogiton Graphical Notation, or CGN. CGN introduces newer and simpler notational mechanisms for drawing software – that is, pictures – than existing approaches provide. CGN is a true breakthrough in software visualization as it allows developers to begin to think in terms of creating these pictures rather than procedural code. Not only that, but the circuitry that is created is actually a complete and declarative statement about the behavior of the software system. No more hidden edge cases – it's all in the picture.
Pictures have a huge advantage for large software teams in that non-technical team members can understand what is going on in the code as well! The rigorous internal structure of OO classes built as Software Circuits provides a framework for these team members – such as designers, testers and project managers – to "hook" on to in order to accomplish their roles in the software development process.
THE SCHEMA: An XML schema serves as a format for representing both the code and the pictures. The Cogiton Architectural Language, or CAL, serves as an intermediate and technology independent format for the essence of your software. Using XSL transforms, developers can quickly regenerate Software Circuits to incorporate new universal behavior throughout the codebase. It is also the mechanism for porting Software Circuits to new languages – moving from C++ to Java or Ruby is a simple transformation away! This greatly reduces your exposure to and dependencies on underlying technologies such as programming languages, operating systems and software frameworks.
To begin discovering the promise of Cogiton Software Circuits, start with the Explore page as a jumping off point. We hope you will be intrigued by this new approach to software development, and join in our community to explore the possibilities!