ServoyWorld 2014


ServoyWorld 2014, our ninth conference just finished and wow! What a great event again. Our biggest announcement was Servoy 8, arguably our biggest release since the first version of Servoy. Servoy 8 takes our web technology into the next generation and makes it seamless to create powerful HTML5 applications.

Our next generation web client is called ng client and builds on AngularJS and Bootstrap. This combined with our +12 years of experience of delivering RAD (Rapid Application Development) tools creates the most advanced html5 platform on the planet. To learn more about Servoy 8 visit the main Servoy 8 page.

With over 30 sessions and trainings ServoyWorld 2014 was a great place to learn more about Servoy and share knowledge with other developers. Our engineers enjoyed getting feedback from customers directly in the sit down sessions during and between conference sessions.

If you couldn’t attend the conference and want to learn more about Servoy 8 make sure to attend the launch webinar. If you are interested in downloading the ServoyWorld presentation have a look in this forum thread for the slides.

I look forward to meeting you at ServoyWorld 2015!


Automated UI Testing

Automated testing is a must in order to build a maintainable codebase and staying agile while writing code. Automated testing is a core procedure of a modern software factory where continuous builds and continuous integrations are widely used practices; testing your software manually every time a new build is prepared requires a lot of effort. Running automated tests will help developers to spot errors in the new build and correct them immediately. During this webinar we will show how automate testing for the Web Client by using Selenium. The automated UI script generated by Selenium will reproduce the user interactions with the browser and will validate the UI state.

How Can Customized Software Development be Successful?

I won’t deny that a customized software solution designed from scratch will cost you more money than your basic off-the-shelf software solution if the performance of the two is going to be identical. Having said that, software projects can end up costing you a bundle, even with standard solutions if the software needs to be optimized and tweaked and the user interface needs to be changed in order to meet the client’s requirements. Changes made to off-the-shelf software solutions tend to be more expensive than similar adjustments to customized solutions.
It’s also very common for the costs involved in implementing standard software applications to get out of hand, where a solution that appeared solid and competitively priced at the outset, ultimately ends up costing you a small fortune.

Why Customized Software?

Many standard solutions include additional, customized features that have been specifically added for an individual client. These add-ons can end up causing major aggravation if they are not compatible with the basic software. This is related, not only to the actual software technology used, but also, to a large extent, to the strategy, and processes and procedures of the manufacturer. Software companies with an international focus tend to have a highly complex organizational structure, including a strict division of duties.

The Developer’s Tools

The software development environment provides developers with the elements they need in order to be able do their job, including a programming editor to simplify the coding process, and a compiler – a program that takes source code and translates it into more basic language so as to create an executable program. The development environment typically also defines the programming language and, in some cases, the database. It also performs a large number of other duties, including version control. An essential part of the programming process is the documentation used. What are the ideas underlying the code? Here, too, users have access to powerful functionality. In some cases, specific development methods – such as Scrum – are supported or even required. This may lead to a situation where the people who locally implemented and developed the manufacturer’s basic development strategy are none the wiser and are caught by surprise when a new release comes out whose underlying technology may differ radically from the previous version of the software. Along with their client, they are then faced with the reality that the software add-ons no longer work in the new release and may have to be readjusted at great cost and effort – and in some cases even reprogrammed altogether. What you believed to be a one-off investment ends up weighing down your bottom line.

Tools Can be Customized Too

In addition to the actual development work, modern software development environments offer extensive libraries of functional software building blocks, where differences in basic functions – recognizable to users – are defined. Let me give you a simple example: if you open a file on a PC, the operating elements can look very different depending on the software used. They might be indicated with yellow folder icons, plus signs, or small triangles. Understandably, software developers don’t want to redefine the user interface for opening files each time they develop a new application. The development environment should enable them to define and store these parameters. Gartenmann Software AG requires that these seemingly minor details be managed identically on all the various devices – PCs, tablets, and smartphones – and that they look the same to users on each device. Like in the example above, this means that an additional layer is added to the development environment that transforms the manufacturer’s specific development strategy.

Frameworks Ensure Consistency

Today’s clients simply want to be able to launch a software application and use it anywhere, anytime and on any platform. Both the software and the user interface should always look the same, regardless of the basic technology (including the hardware and operating system) they’re using to access the application. In order to achieve this, special frameworks are used that are designed specifically for this purpose, including SERVOY.
Our new solutions are based on SERVOY technology and enhanced by an “intermediate layer,” if you will, which helps us ensure an identical look and identical use for the software.

The additional framework we developed is based on Java/JavaScript technology and enables us to efficiently offer our clients modules and software applications with identical graphical user interfaces across all platforms and devices. Based on what we refer to as our “core” – a central solution containing all the required basic software modules and functionalities – we can create client-specific, customized applications at a reasonable cost, without needing to reinvent the wheel each time. The main benefit is that we can continue to issue new releases without any problem, as the customized elements are developed outside the main “core.”

The Core Is Already in Place

Clients want to be able to use software anywhere, anytime and on any platform. To accommodate them, a specially designed framework is required – like the djooze.crm solution developed by Gartenmann AG.

Depending on clients’ needs and requirements, we can use the available core modules to cover 30 to 70% of the project. We can use these components right off the bat to develop a standard software solution. You know exactly how much it’s going to cost, and you can be secure in the knowledge that there’ll be no budget changes along the way. The focus in terms of project security is therefore on the customized part of the software.
How do we ensure that the solution will do the job at the agreed cost?

One essential condition for success is that the provider and the user(s) work closely together, and it is precisely this aspect that tends to be overlooked a lot of the time.

Can We Control the Success of a Project?
Clients are all too often driven by fear of failure and underlying distrust in the software development process, preventing them from achieving the desired result. They typically want to attempt to define the software parameters themselves by presenting a very narrow list of specifications and requirements to the developers and having it all laid down in a contract. This means that, while the features, price, and penalties are all pre-defined, no actual workable solution is available yet. More often than not, the underlying problem – that is, the actual solution part of the software – is not even described in a comprehensible (or even measurable) way.
The client actually sees themself as the developer in the project, which has at least two fundamental disadvantages:

  • It stifles any kind of creativity in the software development process, with the developer’s role being reduced to that of a mere operative, whose own input is only needed to a limited extent. However, the intellectual and creative process involved in software development can actually lead to elegant solutions, which could end up reducing rather than increasing cost.

  • It prevents developers from responding to external changes. Good business software is not a static product – its technology and functionality continues to evolve, and it must be adapted to clients’ needs. Particularly during long-term projects, various factors in the organizational environment tend to change, and these changes must be incorporated into the software. For example, changes in a company’s structure may also change the software requirements, or, alternatively, the focus of the software might change following a change of staff.
    Clients must grant developers a certain amount of freedom so as to be able to create genuinely effective solutions. To avoid any complaints that this way of working involves too much uncertainty, trust between the client and the developer is essential. Is a series of reliable references available? Are the methods used solid and effective?

Collaboration Determines Success

There’s always a chance of differences of opinion arising between developers and clients, particularly when it comes to project methods. At Gartenmann, we know from our many years of experience that there’s really no need for conflict if you do things right. We use Scrum and Agile Software Development to achieve our purpose in a series of small steps. However, tools and consistent procedures are most important when working closely with clients throughout the long development period. We have seen a lot of changes in this field in recent years. Gartenmann currently uses Cloud Blogs and Wikis to describe all the various facets of the project. In addition to ensuring transparency, this also includes the client in the development process. This is clearly illustrated by the following example: If you want to benefit from customized software solutions, you need to become involved in the process yourself. Your own resources are indispensable when it comes to defining the processes and requirements and continuously testing and challenging them, and you must make yourself available to the developer for discussion.
In order to gain an edge over the competition, it’s important to know that customized software is not bought and sold like so many crates of beer, and even airtight contracts won’t prove to be of much use in the end.
The increase in the supply of customized software solutions has also increased the number of “soft” factors involved, which must all be considered as well. All of this could definitely make the unbiased opinion of an independent consultant worth your while.


Continuous Build integration using Jenkins

As more and more development projects are moving towards agile, development iterations are getting shorter. This usually means that more manual work is required to deliver (unit tested) builds for end user testing. The existence of a well-defined software factory helps to automatically execute the required steps, without additional effort from the development team.

This webinar focusses on the process to automatically deliver such builds, starting from codebase commits by the development team. And where Servoy has adopted Jenkins to play a key role within this architecture.


Servoy Release Policy update

It has been approximately 8 months since Servoy 7 .0 was released, which brought us the Servoy Mobile Client. Since that release we’ve adopted a quicker release cycle, which so far has resulted in the release of Servoy 7.0.1, 7.1, 7.2 and 7.3.

Our goal with the faster release cycle is to bring new features, bug fixes and improvements to you, our customers in a more agile fashion. It is also a logical result of adopting the Agile Development approach over 2 years ago throughout our organization.

The faster release cycle has changed  our policy with regards to supported versions and maintenance releases slightly. As before, Servoy still actively supports 2 previous versions besides the latest. Currently those versions are:

  • Servoy 5.2.x
  • Servoy 6.0.x
  • Servoy 7.x

As the Servoy 7.x branch can be considered Servoy 6.1 + Servoy Mobile, we hereby announce that the 6.1 branch will be merged into the 7.x branch as of November 8th 2013. This means that from that day onward, existing installations of the Servoy Application Server 6.1.x or Servoy Developer 6.1.x can be upgraded to Servoy 7.3 through the auto-update mechanism and the 6.1.x branch will be archived.
For the Servoy 7.x branch, the supported version is always the latest release, currently 7.3. Maintenance releases on the supported 7.x release will only be provided in case of blocking issues in production environments.

With more and more rapid releases, there is the obvious need to even more tightly control the quality of the releases. To assure this we’ve:

  • launched our Beta Customer Program
    The Beta Customer Program is for customers that have formal testing procedures in place for their Servoy Solutions. Member of the Beta Customer Program get advanced notice of upcoming releases, in order to anticipate in their planning for the time needed to execute their test suite against the upcoming release candidate. To join the Beta Customer Program please contact your Servoy sales representative or email
  • changed our release procedure to always provide at least a public Release Candidate 2 weeks prior to the planned release
  • intermediate builds available on request
    Besides official alpha, beta, release candidates and final releases, is is possible to request so-called intermediate builds. This is build based on the latest code in a certain branch, with a big disclaimer that the build has not gone through our full Q&A cycle. To request an intermediate build, please contact your sales representative or email
    Note: our goal is to automatically provide intermediate builds at regular intervals, but at this moment we don’t have an ETA for that.
  • extended support for automated testing
    Servoy has had UnitTesting support in the IDE for many year, including support for running the UnitTests automatically on a build server each time a change was made to the codebase of a solution.
    Over the last few months we switched to Jenkins instead of CruiseControl for Continuous Build integration, which takes care of automatically running of all UnitTests when changes are mode to the codebase.
    Additionally, support was added to perform UI Tests in both the Smart and Web Client and currently work is underway to add UI Testing support for the Mobile Client. Next step after that is integration of the UI tests into the Continuous Build integration.
    For the latest documentation on Automated Testing support, see our Automated Testing Guide

Through these initiatives we solicit the Servoy Community to actively participate in helping us test upcoming versions to make them rock solid releases.

Paul Bakker
Product Manager

Servoy & Jaspersoft Roadshow – 4 Cities in the UK

Making Decisions on the Move!

Join us for our 4 city Roadshow in the UK. The first stop of our UK Roadshow is at Old Trafford, Manchester, the home of the Manchester United Football Club, on September 26th.

During this half day seminar, which starts at 9.00AM till 13.00AM you will learn how to ensure your organisation is taking advantage of the latest technologies in Cloud and Mobile BI, in order to make more informed decisions on the move. The Servoy & Jaspersoft Roadshow will also be visiting:

  • London, October 24th, 2013
  • Dublin, November 14th, 2013
  • Edinburgh, December 5th, 2013

Read more and registration.

Servoy is Platinum Sponsor EMEA PUG CHALLENGE CONFERENCE 2013

Servoy is proud to announce to be Platinum sponsor of the PUG Challenge 2013. This year’s conference will be held in Brussels on November 7th and November 8th. We will not just sponsor this conference, our CEO Jan Aleman will also be presenting. During his presentation “Build great mobile business applications on your existing Progress Applications” you will learn how to create mobile applications on top of you existing Progress applications. You are welcome to join this session!

Find the event