Corporate directories, also referred to as “electronic directories”, are a specialised type of database designed to contain hierarchically arranged information on a company’s organisation.
Most of the time, the data pertain to people (users) and/or resources (printers and the like). But the use of corporate directories is not limited to text searches; they can also be used as address books, for user authentication, to define the company’s security policy and more.
There is a standard used in most corporate directors to perform queries (LDAP protocol).
In the open source universe, OpenLDAP has the best reputation, even if tools like 389 Directory Server also boast a strong functional scope.
Databases have become key components of the IT landscape. They are used to store a batch of information in a pre-defined structure. Current technologies make it possible to organise and structure a database such as to be able to easily handle its content and efficiently store very large volumes of information.
Databases like MySQL and PostgreSQL are relational DBs that use SQL to query their data.
Since 2009 a new trend has appeared: NoSQL, which is an alternative to SQL and the relational model and which provides a high level of scalability (expandability).
The major DBMSs today are open source solutions like MySQL and PostgreSQL.
The emergence of the big data phenomenon is intrinsically linked to the fact that information and the capacity to process it have become key factors in a company's success.
With these issues of large volumes and different typologies, the technologies of the past quickly reached their limits and it was necessary to reinvent a number of tools so that they could be adapted to these new constraints: storage and processing of decentralised data, collection of heterogeneous data from multiple sources, and data returns.
It is noteworthy that most of the basic bricks in the big data movement are open source, structured around Hadoop. Moreover, some actors who had historically been hostile to open source (e.g. Microsoft) are now abandoning their proprietary solutions and rallying around the Hadoop banner
Leave requests, document validation and paperless customer relations: these processes are at the core of the information systems used by companies and government agencies.
BPM (Business Process Management) solutions offer a modern approach in which users are largely released from technical constraints when modelling, deploying and optimising their processes.
BPM solutions provide for graphic process modelling, form generation and adaptation, and online request monitoring.
In the world of open source solutions, quality tools are available, such as Bonita, the flagship open source BPM product.
This section presents the tools useful in the development of applications, particularly web applications.
It includes project management tools like Redmine and Maven, automation tools like Ant and Phing, development environments like Eclipse, ticket managers like MantisBT, source code management tools like Subversion and Git, and collaboration and software engineering solutions like Tuleap.
As we will see, there are also excellent open source development bricks that can be used to build ambitious projects under optimal conditions.
Continuous integration is a set of practices designed to improve the quality of application deliveries by checking that the result of each source code change does not lead to any regressions (i.e. additional errors relating to the added code).
To implement continuous integration platforms, many quality open source tools exist, such as Continuum and Hudson. Graphics rendering (results display) solutions can also be found in connection with these tools.
ESBs (Enterprise Service Buses) allow applications to communicate with one another, where these do not already include services or interfaces designed for that purpose.
ESBs are often presented as new architectures that use different techniques like transformation, information transfers and routing, and web services.
ESBs act as “mediators” between clients and service providers (applications).
Benchmark solutions in the open source universe include the likes of Talend ESB, Mule and Petals.
A framework can reduce application development times by effectively responding to the most common problems encountered by developers. Frameworks typically include a wide range of ready to use functionalities with well polished implementations, and use standard, well implemented design models. The time saved on more general issues can then be devoted to the custom aspects of the application.
Most modern applications are based on web frameworks or libraries.
With the advent of the smartphone, mobile applications have increased exponentially in recent years. Many mobile operating systems now exist, engendering a corresponding increase in development work.
To avoid duplicating development work, cross-platform open source mobile frameworks have been created, enabling porting to X operating systems from the same source code.
This is the case, for example, with PhoneGap/Cordova, which runs on the iPhone, Android, BlackBerry, Symbian and Palm, among others.
In the world of open source solutions, three frameworks stand out far above the rest: PhoneGap/Cordova, as mentioned above, as well as Rhodes and Titanium. These frameworks use different techniques to obtain relatively similar results.
PKI-style solutions are used to make electronic relationships (i.e. email) secure by guaranteeing their confidentiality, authentication, integrity and non-repudiation, whether via signature certificates (email or web access) or encryption (using two keys).
In making identity management secure, PKI tools simplify the development of transactional activities, whether external (contractual and commercial relationships) or internal (staff accountability).
The available open source solutions include OpenSSL, OpenCA, OpenTrust and EJBCA.
In this category, we will present the various identity authentication, federation and management solutions now available.
These tools are relatively similar but their end goals may differ in some cases. For example, the Shibboleth system provides unique multi-domain authentication. This makes it possible to include third party applications in its federated identity management system in order for users logging onto their unique identification system to gain access to the application in question.
LinOTP is also presented here. This is an OTP solution allowing for the use of passwords generated at a given time, which are valid over a short period of time and only usable once.
Other open source solutions like CAS, FederID, LemonLDAP and OpenAM are also described.
As the name suggests, load testing tools are applications that simulate heavy loads on a service.
This could be a website, but also a database, LDAP directory, web service, etc. The possibilities are many.
A graphical interface is usually available for entry of the test scenarios: a path via a specific page, clicks on a given menu, completion of a particular form, form submission, etc. The scenarios themselves can be extremely complex, with loops, conditions, extraction and reuse of variables, variable loading from an external file, etc.
These applications generally offer load testing output in the form of a large number of exportable graphs and statistics generated in reports.
The open source tools in this category include JMeter, Tsung and FunkLoad.
Search engines, like operating systems and databases, are the cornerstones of our daily lives.
They allow us to locate and access resources (in the broadest sense of the term – web pages, images, videos, files, etc.) indexed with a series of keywords.
Search engines usually consist of two services: indexing and searches.
They can generally be differentiated by their indexing capacity (format, speed and relevance algorithm) and by their linguistic processing functions (plurals, conjugations, phonetics, etc.).
In the world of open source, the market is dominated by the search engines Lucene and Solr. These two are quite often associated with the best web applications.
In this category, we will present the open source HTTP and JEE application servers currently available on the market.
HTTP servers (also referred to as HTTP daemons and web servers) serve web users’ queries (often pages or images) in accordance with HTTP protocol.
In the world of HTTP servers, the Apache server is largely dominant, thanks to its outstanding reputation. It will not be hard to find service providers to meet your consulting or integration needs.
Regarding application servers, although JBoss AS and Tomcat share the spotlight, many other names have also cropped up on the scene, namely GlassFish.
Message Oriented Middleware or “MOMs” are particularly invaluable tools in the implementation of exchanges between all types of applications.
Middleware allows different applications to communicate and interoperate. This interoperation can occur even when the applications are running on different servers, so long as they are interconnected by a network. Middleware is a high level tool, given that it provides its services to applications, but the resulting exchanges are based on a whole stack of network protocols.
Middleware is more than a mere protocol for calling the services offered by an application, and RPC, RMI and SOAP, all of which are also asynchronous, are usually considered to be real middleware.
In this final category of the “Development and intermediate layers” dimension, we will present other open source tools that can be of benefit to companies, although it was difficult to define a separate category for them.
In particular, we will be presenting Drools (an amazing rule engine) and ESIGate (which makes it possible to build pages on the fly from fragments taken from different technologies).
ETLs often serve as a business intelligence brick, although they can also be used outside that context.
ETL stands for "Extract, Transform, Load". The term designates tools used to perform massive information synchronisations from one data source to another. In practice, ETL tools can be used for much simpler extraction, transformation and/or loading scenarios.
They usually include connectors for data imports and exports to and from third party applications. Transformations can be performed by means of existing plug-ins or through programming.
Open source ETL solutions include Talend and Pentaho Data Integration (formerly Kettle).
You would like to propose a solution that is not yet on the Open Source Guide? Please fill out the following fields to share the details of your proposed solutionStep 1 : Information on the proposed solution/ source