As a guide for your choice of techology,
we will give an introduction of technologies running this site.
Mobinor itself is focusing on robust, modular technologies. Whatever
size of the application, technological choises are important. There is no
right tecnologies, but there is a difference between good and bad
technologies. Mobinor has selected a layered approach, with the following
technologies:
DATA LAYER
At the data layer, Mobinor is using different storage and directory
technologies:
- SQL databases
- LDAP catalog server
- Files
Mobinor is mainly using the MySQL
database server. MySQL is popular, open source, relational database, which
supports most common sql features. Sql is the dominating standard for
databases, and with well written java applications, the choice of database
does not matter much. With container based J2EE entity beans, you rarely
program any code directly towards the database.
For storage of catalog data, Mobinor uses OpenLDAP, an open source
directory server for Unix based operational systems. OpenLDAP follows the
LDAP standard, and can communicate with clients implementing the LDAP
standard. LDAP is the leading standard for LDAP directories. Netscape has
been one of the leading organizations developing LDAP solutions, and LDAP
has broad support from the internet world, and is also widely in use for
intranet use. LDAP is very well suited for information regarding
organisations, peple, network equipment and other information well suited
for directories. One of the key benefits of LDAP is fast lookup, much
faster than for sql databases. But nothing is for free, and this is also
the case for LDAP servers. The cost of getting fast lookup, is slow update.
Thus LDAP is well suited for data that is use often, but rearly updated.
Authentication is one example of such a service, well suited for LDAP.
For some cases information is stored in files. Some examples of this
can be configurationfiles for some programs, documents etc. And of cours
web pages, if they are not stored in a database based publishing system.
BUSINESS LOGIC
Many developers do not split business and presentation logic. This is
often the case for some web driven services, where html for presentation
and scripting business logic is combined in web pages. Mobinor use ejb
application servers, and most business logic is run on these servers. EJB
has the following main components:
- Entity beans
- Session beans
- Message beans
Entity beans are dataobjects, mapping data stored in databases. Bu
using container managed entity beans, there is almost no need to write sql
code to access data in the database. This is hanlded by the application
serer and the database. But if you wish to have tighter control of
database communcation, you can write sql commans, either complete by
writing bean managed entity beans, or to improve some queries.
Session contain business logic. By implementing the business logic on
an application server, the presentation level can be kept completely clean
of business logic. This way more than one client can connect to the
business logic.
The last type is message beans. This is quite new i ejb. By introducing
message beans, the application server can handle queues. If there is a
need to send messages between asynchronous systems, message beans will be
a good mechanism. Clients can then put messages in the queue for a message
been, and then continue doing something else, while the message bean will
process all the messages. Message beans can also handle situations where
communcation with other asynchronous systems are not available.
Mobinor uses JBoss, and open source
application server, as its application server.
PRESENTATION LAYER
At the presentation layer, Mobinor uses java servlets and java server
pages for web sites. Mobinor uses Apache web server for static files, and
Tomcat for java server pages and java servlets.
With these technologies, there can be dynamic intefaces. But there are
still some issues to be resolved. By usint scripting directly, the code
might be hard to maintain. To be able to create clean frontend code,
Mobinor has selected Struts.
Struts is a MVC framework (Model View Controller). Struts makes it
possible to have full control, even for large systems.
For wireless user interfaces, J2ME is the natural choice.
OPERATING SYSTEMS
All technologies above are based on open standards, and run on
most plattforms. Mobinor has selected Linux as a plattform for it's own
services. But because all applications are based on open standards, it is
easy to move to other platforms. The reason for using Linux, is the good
price/performance ratio.
MODELLING
To keep control of each system from its early age until it's funeral,
Mobinor is using Unified Modelling Language (UML). UML is a good modelling
concept giving a practical tool for modelling. Mobinor is using Enterprise
Architect from Sparx system, this tool gives good value for money.
|