Nway Service Platform - Versions

Release History

VersionDateDescription
0.02008-02-03Staring of the Project
1.02009The first Release
2.02010Rewriting in Java
3.02011Industrialization of the Platform
4.02012-02-01Creating the Web Console and the Command Line Tool
5.02012-06-01Providing the application as a freeware
5.32012-12-01Performance and Stability
5.42012-10-28Code Cleaning and Reviewing
5.52012-12-01Performance and Hot loading

Release 0.0 - 2008-02-03

TypeChangesBy

add

Our story started on the 3 of February 2008. I, Salim Elakoui (the founder), was on a plane to United States of America for a Professional matter. I had a lot of Web based applications that I needed to check, maintain, link, etc. I needed to automate that because it was taking me such a long time. So I wrote a skeleton of an Application that is supposed to handle repetitive tasks.Salim Elakoui

add

NwaySP was born with the idea to create a tool that facilitate the configuration and execution of Services. NwaySP wasn't its name though : AutomatatorSE (Like his brother terminator, original no ?). The term Services has to be seen as a tasks. A service takes a input and give outputs. Communication between services were made with the help of files. I introduced the architecture and two services (SQL and FTP Backup). I was used to develop with C, C++ or perl but this time I chose to make it in PHP, what an idea right ?Salim Elakoui

Release 1.0 - 2009

TypeChangesBy

?

PHP was used into command line mode. Every task was into a different script file that include the whole framework....No test would be found. AutomomatorSE was now based on a MySQL Database.Salim Elakoui

add

Very fast, the need to have task queues had appeared. We had then two solutions : Either we develop one by my self, or I use something dedicated to it. For the stack of curiosity, I have decided to implement it myself using a database and its locks. I soon realized that it was a waste of time since a lot of tools where doing the exact same thing, but faster.Salim Elakoui

?

This first version was released (painfully) for our first client that needed a tool that could automatically post into Blogs (more or less 50 Wordpress Blogs) from an input got regularly from an FTP server. I said painfully because I had no experience concerning project lifecycle management (I was learning it anyway), moreover I was alone on that.Salim Elakoui

Release 2.0 - 2010

TypeChangesBy

?

By Time, I realize my mistake. It wasn't really complicated but definitely not maintainable. AutomoatorSE was running OK, performance where OK too. But the problem was that every change that I was doing could break the whole thing without even knowing it. Moreover, I didn't realize the importance of logs and error management.Salim Elakoui

fix

Driss is an Java king. Well, he rewrote the whole tool in java in less than 5 months. Every thing was working right but still, we needed some tools to improve our efficiency. Driss is a Java Developer that passionate with low level programming. At that time, he came out of one of the most prestigious engineering school of France : EPITADriss Malhaoui

?

From 2010, we are two on this project. We have decided to name the project Nway Social Power, or NwaySP (Now it is called Nway Service Platform, which is far better). Rewriting wasn't a piece of cake. We even though sometime that we will use an ESB (as Mule Soft) to do all that. But no, an ESB is not NwaySP. An ESB connect services together and is not made to orchestrate (automate) them. At that time, we didn't use Database abstraction component nor fancy framework that would have ease our life after. Our aim was to get as fast as we can to the market, because we had few other customer willing to work with us.The Team

Release 3.0 - 2011

TypeChangesBy

?

No String attached, NwaySP has gained more clients that wants more kind of Services. In 2011, we were counting 10 clients with more or less 3 services each. The money wasn't our primary goal, really. Money was a way to make us continue the adventure (pay servers, machines, ...)The Team

update

We have decided to get the project to another level. I wanted to use all the latest framework (in stable versions of course) with the less code possible. We redesigned a part of the application to use Hibernate / Spring / PostgresSQL / Maven and other cool framework. The aim was really to get our developments industrialized : Make more with less, including make it easy of course.Salim Elakoui

update

It was time to be more professional. The use of Mule (ESB) has inspired a new type of Architecture with InBounds and OutBound. A new vocabulary was born along with new documentation.The Team

?

This Version was also the occasion to stress on stability. We needed to have a platform composed of separated engines (processes) on different machines that can run for months without being restarted.The Team

Release 4.0 - 2012-02-01

TypeChangesBy

?

Our pipe of Client was increasing significally. The platform, composed only of bunch of engines was stable and developments was handled right. Our client's were satisfied by the stability and performance. The only matter that made us sick was maintaining of the live platform. At that time, we were using log files (a mess) and the database (a real risk) to manage and supervise the platform. It has to change.The Team

add

Yannick joined the team and was responsible for the implementation of a Web Console and a Command Line Tools. We are still developing this interface that reveals to be a real Swiss Knife.Yannick Rival

update

Performance was quickly an issue, especially considering all the data that was going through our poor PostgreSQL database. We decided and implemented NoSQL paradigms by using Neo4j. This really changed the way we consider data. A bunch of services were updated to cope with that new vision.The Team

?

NwaySP has gained in stability a reliability. More services were born along with our Clients. The team has increased in size and in motivation due to it.The Team

Release 5.0 - 2012-06-01

TypeChangesBy

?

The software is now mature, and now this new version is to by used and applied to the needs to our clients. We can say a new type of offer was born. We has a lot of client asking us if it was possible to make NwaySP run on there machines at least to test it. We decided then to offer a blank NwaySP Engine to our customer or future customers. You can now test it FREE.The Team

Release 5.3 - 2012-12-01

TypeChangesBy

fix

Updating Misc LibrariesThe Team

fix

Tuning up Engine : The result is 10 % FasterThe Team

fix

Tuning up Session Management : No Synchronization point on SessionThe Team

fix

Logging modification : Putting common logs into wrapper Log and the other into target/server/default/log/ ...The Team

fix

Distribution files now include a common configuration for serversThe Team

fix

Correcting a bug into Import system of WEBThe Team

fix

Stop process is revised.The Team

fix

Logging more elements to enhance debugging and tracing experience.The Team

fix

Server configuration directories are modified. Introduction of a config/server/common folder.The Team

fix

Stability and Performance : Code ReviewThe Team

fix

New Services and New InBounds and OutBounds considering clientThe Team

Release 5.4 - 2012-10-28

TypeChangesBy

fix

Updating Misc LibrariesThe Team

fix

New Services and New InBounds and OutBounds considering clientThe Team

fix

Improve Test coverage and PerformanceThe Team

fix

Code Cleaning and Bug Correction on the Web ConsoleThe Team

fix

Using Aspects (AOP)The Team

Release 5.5 - 2012-12-01

TypeChangesBy

fix

Updating Misc LibrariesThe Team

fix

Reducing memory footprint and optimizing crucial processes: + 30% of speedThe Team

fix

Improve Test coverage and PerformanceThe Team

fix

Code Cleaning and Bug Correction on the Web ConsoleThe Team

add

Hot loading of Services. (Java hot-loading of Libraries in jar format)The Team

add

Implementing of security constraints via roles. (container.serviceRoles and container.containerRoles)The Team

add

Add screen allowing to send messages via the Web ConsoleThe Team

fix

Implementing of Cache into Engines and Web ConsolesThe Team