dynamic tools for .net developers™  LaMarvin Home
home » constable » faq » history

CAZE background and history

The CAZE technology started its life back in 1998 as a brainchild of Palo Mraz. It was then in the form of a custom application framework named "Constable". Written mostly in Visual Basic 6, the Constable framework was a COM technology based on Microsoft Transaction Server (MTS) and using Microsoft SQL Server 7.0 for storage of authorization policies along with other, application-specific data. The core concepts of the Constable framework were:
  • Application (business) objects described by meta-data: roles, states, properties, actions (they were called commands at that time) and the associated authorization rules (called property and command access control lists after the Windows' ACL terminology).
  • A server-side, shared component understanding and interpreting the meta-data to implement common tasks, namely role resolution, authorization checking, command execution and state transitions. The component was called Constable Universal Server (CoUniSrv.dll) and it was also the only end-point clients ever connected to.
  • Server-side, application-specific plug-in components that were called by CoUniSrv.dll to perform application-specific logic (i.e. using the inversion of control pattern).
The following "artistic" image illustrates the early Constable architecture:

1st generation of the Constable technology

From 1998 to 2002, the Constable framework has been successfully used to build dozens of bespoke applications, such as Legislative Tracking System, Eurovoc Thesaurus Management System, Change Management Board Support System, Distributed Task Management System, HelpDesk System, Network Operator Support System, Network Prophylaxis Support System, Hardware Inventory System, etc.

For example if you look at http://www.nrsr.sk/, you can be sure that most of the .asp and .aspx pages have the Constable technology behind them.

At the end of 2003, we've started to design the next generation of the Constable technology for the .NET platform. Our main goal was not to simply port the old VB6 code base to .NET. Instead, we wanted to integrate the tried-and-true Constable features with the .NET framework seamlessly and intuitively. The result: Constable Authorization Engine Library. CAZE 1.0 was finished in October, 2004 and we've already used it internally with two pure .NET custom applications - a web-based Reporting system and a web-based Visit Planning and Management system.

The experience gained by developing the two applications has been used to fix some bugs, add some useful features (most notably support for non-deterministic authorization policies) and it also gave us the assurance that CAZE is ready for its prime time.

CAZE 1.1 has been released on Monday, 14th February 2005 and we're hoping that you'll find the technology useful for solving authorization and state management problems in your applications.

Feel free to contact us if you need more information about CAZE or you'd like to discuss how CAZE can help you sort out your particular design or implementation problem.

© 2002-2007 LaMarvin. All Rights Reserved.     [Terms of use]     [Privacy] This site doesn't open new browser windows.