AWA uses Ada Server Faces for the web framework. This framework is using several patterns from the Java world such as Java Server Faces and Java Servlets.
AWA provides a set of ready to use and extendable modules that are common to many web application. This includes managing the login, authentication, users, permissions.
AWA uses an Object Relational Mapping that helps in writing Ada applications on top of MySQL or SQLite databases. The ADO framework allows to map database objects into Ada records and access them easily.
AWA is a model driven engineering framework that allows to design the application data model using UML and generate the corresponding Ada code.
The new version of AWA provides:
New jobs plugin to manage asynchronous jobs,
New storage plugin to manage a storage space for application documents,
New votes plugin to allow voting on items,
New question plugin to provide a general purpose Q&A.
Dynamo is a tool to help developers write some types of Ada Applications which use the Ada Server Faces or
Ada Database Objects frameworks. Dynamo provides several commands to perform one specific task in the development process:
creation of an application, generation of database model, generation of Ada model, creation of database.
The new version of Dynamo provides:
A new command build-doc to extract some documentation from the sources,
The generation of MySQL and SQLite schemas from UML models,
The generation of Ada database mappings from UML models,
The generation of Ada beans from the UML models,
A new project template for command line tools using ADO,
A new distribution command to merge the resource bundles.
The most important feature is probably the Ada code generation from a UML class diagram. With this, you can design
the data model of an application using ArgoUML and generate the
Ada model files that will be used to access the database easily through the Ada Database Objects library. The tool will also generate the SQL database schema so that
everything is concistent from your UML model, to the Ada implementation and the database tables.
The short tutorial below indicates how to design a UML model with ArgoUML, generate
the Ada model files, the SQL files and create the MySQL database.