From: Ilias Lazaridis Date: 2005-02-20T00:54:44+09:00 Subject: Re: [EVALUATION] - E02 - Nitro, a Ruby Based WebFramework Ilias Lazaridis wrote: [...] to boost the process, I'll fill the given answers: http://rubyforge.org/pipermail/nitro-general/2005-February/000022.html into the template. The discussed technology is this one: http://rubyforge.org/projects/nitro/ - > jamStack - Technology Collection > > [V0.4 - draft] > > This is the main page of the fictive technology collection jamStack, > which serves as an evaluation template for real live technology and > tools collections. > IDE > > An IDE is not contained in this technology stack. An IDE supports this > technology stack (and possibly adds/enhances some of the functionality). Nitro/Og does not provide or require an IDE. You can use the IDE that suits you. > Analysis&Design > > * OOAD - Think, Analyze and Design in a straight Object [or > component] Oriented way Supported > * Use of metadata within the design (on text level [code file]) Supported > * Fully synchronized Code level and/or Visual design. Not available > > Code Generators > > * Use of predefined and user defined code generators Supported at run time or development time, Nitro/Og generates most of the code for you. > > Deployment > > * Initial design runs on local client. Supported (Webrick, SQLite3) > * Ability to transform design to run on higher grade systems > o High Load Systems (load balancing, clustering ) > o large scale OODBMS Supported (FastCGI, Postgresql, Oracle) > * Ability to transform design to run on embedded devices. Partially supported (Webrick, Ruby on WinCE) > > Persistency > > [An evaluation template for ObjectRelationalMapper (ORM) can be found > within jamORM.] > > * Persitency layer results directly out of the Object Model Supported (Og) > * No need to deal with persitency tools, xml-config-files etc. No configuration at all, use standard Ruby objects. > * Provides persistence-design-metadata > o accessible by code-generators > o accessible by runtime Supported (prop_accessor mechanism) > * Flexible Technology usage > o RDBMS or OODBMS > o Embedded within app > o or on seperate server Supported, Og uses RDBMS backends to emulate an OODB environment. > * Easy migration mechanisms > o Technology A to B > o Vendor A to B You can switch backends (for example go from Mysql to Postgres) by changinf a single line. > > Security > > * Flexible security system > o Security inheritance > o Plugable security systems > * Supports several encryption strengths > > GUI / Webinterface > > * Exchangeable GUI System > * GUI is decoupled from Business Objects > * Automated creation of Objects [Components] webinterfaces > o display Objects > o create Objects > o edit Objects > > Visual Modeling > > * Use of UML to model the design > * Code level defined metadata is available/editable within UML tool > * Uses same code-generators that are used within IDE / Command-Line > > Automation > > * All production steps should be automated or semi-automated. > * Automation is based on user-defined rule-systems. > * Manual processing can always override automations. Automation / Code generation is the main feature. > License and Standards Requirements BSD licence > The combined technologies include one or more programming languages and > should fulfill whenever possible the following prioritized basic > requirements: > > [For programming languages: at minimum the "execution environment" or > "runtime".] > > * Based on Open Source (FSF freedom, OSI extensibility) > * Based on Open Standards > * Platform independent > * Language neutral > > Examples > > * ODMG - object persistence > * CORBA - distributed systems > * ... .. -- http://lazaridis.com