|
Manuel Lemos, 2006-01-31 05:00 GMT
Metanews is a simple news publishing
system that is now made available with Metastorage. Its main goal is to help the
developers that want to learn in practice how to build Metastorage based
applications.
It comes with documentation that
provides detailed explanations on how Metanews was built. This
documentation also introduces a PHP Web application development
methodology named Use Case mapping.
- Use case mapping
Use Case mapping is a systematic methodology that defines how to
depart from UML use case diagrams to implement the application use cases
as PHP classes of objects.
For those that are not familiar with these concepts, use cases are the
different situations that a software system must handle. Use cases are
often referred to as the pages or screens, like for instance: the login
page, the subscribe page, the article submission page, etc..
The Use Case mapping methodology defines how to implement each use case
by writing classes of objects that implement a compact MVC approach to
separate aspects that concern the application logic processing
(Controller), application output (View) and application information access
and manipulation (Model).
The use case mapping methodology is not a new concept. The documentation about this subject that
is provided with Metastorage, is just a means to share knowledge and
encourage the use of proven best practices on how to develop PHP Web
applications. These practices have been in use to develop large scale PHP
sites since 1999, when Object Oriented Programming support was introduced
with PHP 3, and continue to be very effective with any subsequent PHP
versions.
- Metanews, the example Metastorage application
Metanews is a very simple application written with the help of
Metastorage generated code.
There is an demo of the
Metanews project accessible on the Web. It can be accessed by any user
that wants to try the application in practice.
The source code of the Metanews application may be browsed via the Web
interface of the MetaL project CVS repository.
Metanews is a very simple news publication system that implements just
three use cases: submit article, show the latest articles, show a single
article.
The submit article use case was implemented using the Metastorage
capabilities to generate form handling classes for creating new
objects.
The generated forms are outputted using configurable presentation
themes. This Metastorage release improved the theme design to generate
HTML 4.01 strict DTD compliant output.
The show latest articles and show article use cases were implemented using
Metastorage generated report classes. These use case classes take care of
the presentation output using the data extracted by the report classes.
The show latest articles use case class demonstrates how the data returned
by single call to the articles report class can be used to generate either
the latest articles page and the latest articles RSS feed.
|
|