|
![]() |
Software-ontwerp & -implementatieOnze expertise is het maken van geavanceerde gedistribueerde applicaties. Gedistribueerde applicaties zijn informatie-systemen wier onderdelen verdeeld kunnen worden over meerdere machines in een netwerk. Veschillende databases, webservers, client-applicaties en ander software kunnen draaien op verschillende machines in het netwerk en werken samen als ware zij een grote applicatie. Gedistribueerde applicaties zijn van nature complex. Vaak wordt heel veel tijd en geld besteed aan het in orde maken van de technische infrastructuur die nodig is als fundering voor de applicatie zelf. De Askesis Application Server Development Distribution is deze technische infrastructuur. Zij is gebouwd op de J2EE-specificatie en bied een modulair raamwerk dat makkelijk uit te breiden is met nieuwe functionaliteit. De distributie biedt uitbreidbaarheid, prestaties en fault-tolerance door clustering en heeft verbindingen met allerlei databases en "legacy"-systemen zoals-ERP Systemen (bijvoorbeeld Sap, Baan of Exact). De applicatie-server kan benaderd worden met behulp van allerlei client-server communicatie-protocollen. Clients kunnen direct verbinden met RMI-IIOP (het J2EE-protocol) of met Corba, maar ook webbrowser-gebaseerde clients (bijvoorbeeld voor e-commerce toepassingen) zijn mogelijk. Uiteraard is het ook mogelijk met de nieuwste technieken als webservices op basis van SOAP contact te maken met de server. Typische applicatiesOm u een beter inzicht te geven in de bruikbaarheid van een applicatie-server, hebben wij een lijst gemaakt van de typen applicaties die gebruik zouden kunnen maken van onze Askesis Application Server Development Distributie. Groupware
E-Commerce
Kennissystemen
High availability
LicentiesAskesis gebruikt, behalve als u andere wensen hebt, Open Source software. We gebruiken bij voorkeur Open Source software omdat:
De voordelen van het ontbreken van licentiekosten zijn vanzelfsprekend. Licentiekosten zijn vaak een groot gedeelte van het automatiseringsbudget. Vaak is het zelfs zo dat de licentiekosten in combinatie met de overige kosten betekent dat het project in het geheel niet uitgevoerd kan worden : de initiële investeringen zijn gewoon te groot. De voordelen van toegang tot de broncode zijn missschien niet onmiddelijk duidelijk, maar liggen bijvoorbeeld op de volgende terreinen:
TechniekenGedistribueerde techniekenAskesis gebruikt een drietal industriestandaarden bij het ontwikkelen van geavanceerde gedistribueerde applicaties:
OntwikkeltechniekenAskesis gebruikt moderne technieken bij het ontwikkelen van haar applicaties. Kernbegrippen in onze software-ontwikkeling zijn dan ook:
SoftwareAskesis gebruikt Open Source software. Omdat er geen "one-size-fits-all" oplossingen bestaan (niet Open Source en niet Closed Source), hebben wij de Askesis Application Server Development Distribution ontwikkeld. Dit is een verzameling van Open Source applicaties die wij zo geconfigureerd hebben dat zij naadloos samenwerken. Hoewel wij Open Source prefereren kunnen wij op uw verzoek ook andere applicaties net zo naadloos laten samenwerken. De distributie is modulair van opzet. Alle applicaties kunnen naadloos vervangen worden door andere, vergelijkbare, applicaties. Dit kan bijvoorbeeld op uw verzoek gebeuren als u al een bepaald programma gebruikt. Zo hoeft u geen nieuwe programma's te leren en te onderhouden. In de beschrijving van de door ons gebruikte software zullen we voor de door ons gebruikte Open Source software ook de door ons geprefereerde Closed Source software noemen. U kunt natuurlijk altijd contact opnemen met ons als uw software er niet bij staat om te bezien of wij uw software ondersteunen. J2EE applicatie-serversDe kern van de Askesis Application Server Development Distribution wordt gevormd door een J2EE Applicatie-server. Een Java applicatie-server is een softwarepakket dat een run-time omgeving biedt aan componenten geschreven in Java. De applicatie-server voldoet aan de J2EE specificatie, zodat gegarandeerd wordt dat alle volgens de specificatie geschreven componenten gebruikt worden in alle applicatie-servers die ook voldoen aan de J2EE-standaard. De verschillende servers verschillen immers in hun implementatie, niet in hun specificatie. Askesis gebruikt de volgende J2EE applicatie-servers:
BesturingssystemenDe Askesis Application Server Development Distribution is platformonafhankelijk. De kern van de distributie is een op Java gebaseerde J2EE applicatie-server, JBoss, die op alle besturingssystemen draait waarvoor een Java 2 runtime environment of Developer's Kit versie 1.3 of hoger beschikbaar is. Dit betekent dat de distributie op vrijwel alle besturingssystemen draait. Askesis gebruikt de volgende besturingssystemen:
DatabasesIn beginsel kunnen alle databases die een JDBC- of een ODBC-driver hebben gebruikt worden. Voor een optimale prestatie is een JDBC-driver gewenst. Er zijn twee grote Open Source databases beschikbaar, PostgreSQL en MySQL, die wij beiden ondersteunen. De keuze voor de database hangt af van de applicatie. Bij bescheiden eisen en wanneeer de applicatie op bescheiden hardware moet draaien, gebruiken wij vaak MySQL. Als er hoge eisen aan de betrouwbaarheid en performance gesteld worden en er met name een aparte machine ter beschikking is voor de database gebruiken wij altijd PostgreSQL. Askesis gebruikt gewoonlijk de volgende databases:
Web serversEen belangrijke schakel in de communicatie tussen u en uw klanten wordt gevormd door de webserver die u gebruikt. Askesis gebruikt de volgende web servers:
CORBACORBA vormt een essentieel onderdeel van zowel J2EE applicatie-servers als de z.g. "Enterprise Application Integration" (EAI). Askesis gebruikt de volgende ORB's:
ProgrammeertalenWij hebben ervaring met een heel scala aan programmeertalen. De keuze van een programmeertaal is belangrijk: als de software onderhouden moet worden binnen uw organisatie moet een programmeertaal gebruikt worden die men in de organisatie kent. Askesis heeft verschillende cursussen beschikbaar om uw personeel te training in het onderhouden en aanpassen van de software. Askesis gebruikt de volgende programmeertalen:
|