|
![]() |
Software design & implementationOur expertise lies in building advanced distributed applications. Distributed applications are information systems whose parts can be distributed across different machines. Several databases, components with business logic and client applications can live on networked machines and interoperate as if they were one single, large system. Such distributed systems are by nature complex. A lot of time is spent in creating the technical infrastructure, needed as a foundation for the application logic. The Askesis Application Server Development Distribution is meant to alleviate these problems. It is built on the J2EE specification and provides a pluggable, extensible framework for all kinds of business applications. The business logic is component-based and therefore easily expandable with new functionality. The system offers expandability, performance and fault-tolerance through clustering and it connects to a multitude of databases and legacy systems, such as ERP systems like SAP or Baan/ERP. The application server can also be accessed by all kinds of client-server communication protocols. Clients can connect directly through either RMI-IIOP (the J2EE protocol) or Corba to communicate with the server, but you can also use web-based clients (e.g. for e-commerce applications) or even use the newest webservices through SOAP. Typical applicationsTo give you a better understanding of the usability of an application server, we have compiled a list of some common types of applications, that can benefit from being built on our Askesis Application Server Development Distribution. Groupware
E-Commerce
Knowledge systems
High availability
LicensesAskesis uses, unless requested otherwise by our customer, Open Source software. We prefer Open Source software for several reasons:
The advantages of no licensing costs are obvious. Software licensing can take up the better part of the project budget. In fact, together with the cost of customization, it may mean that the project cannot start at all: the initial investment is simply too large. The advantages of having access to the source code may not be immediately obvious, but they are in the areas of:
TechnologiesDistributed technologiesAskesis uses three technologies in creating advanced distributed applications:
Development technologiesGosis uses modern technologies to develop applications. Keywords in our developement are:
SoftwareAskesis uses Open Source software. Because there is no one-stop solution available (neither open source, nor closed source), we developed the Askesis Application Server Development Distribution. This is a suite of Open Source applications that we configured to work seamlessly together. All though we prefer Open Source applications, depending on the customer's wishes, we also use other applications if they work just as seamlessly together as their Open Source counterparts. The suite is modular by nature: all applications can be replaced by other applications. This can be done at the customer's request, if e.g. the customer already has another brand of application and wants to use it's own software instead of learning and maintaining new software. In most descriptions of the software we will mention both our prefered Open Source and our prefered closed source solution. Feel free to contact us whether we support your choice of software. J2EE application serversThe core of the Askesis Application Server Development Distribution is a J2EE Application server. A Java application server is a software system that provides a run-time environment for executing components written in Java. The application server complies to the J2EE specification, which ensures that a well written component can be deployed without additional development work in almost all Java application servers. Different brands of application servers differ in their implementation and tools, but not in their specifications. Askesis uses the following J2EE application servers:
PlatformsThe Askesis Application Server Development Distribution is platform independent. The core of the suite is a Java based J2EE application server, JBoss, which runs everywhere where a Java 2 Runtime Environment or Developer's Kit version 1.3 or higher is available. This covers almost every platform you can think of. Askesis uses the following operating systems:
DatabasesAll databases that have a JDBC or ODBC driver can be used. For optimum performance a native JDBC driver is prefered. There are two major open sourced databases available, PostgreSQL and MySQL, which we both support. The choice for a specific database depends on the demands of the application. If the system has modest requirements and is to be run on limited hardware, we often use MySQL, for example when both application server and database back-end are to run on a single, moderately powerful machine. If the demands are higher and especially when a separate machine is available for the database, we will always use PostgreSQL, because it is offers much more. Askesis routinely uses the following databases:
Web serversAn important front end for the communication with your customers is your webserver. Askesis uses the following web servers:
CORBACORBA is a key element in both J2EE application servers and in Enterprise Application Integration (EAI). Askesis uses the following ORBs:
Programming languagesWe have experience in a wide range of languages. The choice of programming language is important: if the software must be maintained within your organization it must be written in a language that is known or available within your organization. Askesis also has several courses available for your staff to make it possible to maintain or adapt the software. Askesis uses the following programming languages:
|