Development \w Devpark from scratch - based on WiemCoMam
Development / DevPark news

WiemCoMam launched

In September 2016 first version of WiemCoMam was launched. Below we include interview with a client which shows from the point of view of portal owners how cooperation with Devpark went as well as project’s manager thought about challenges which developer team have to face.


Izabela Grylewicz president of WiemCoMam sp. z o.o.
Tomasz Dobak vicepresident of WiemCoMam sp. Z o. o.

Briefly – what type of web portal WiemCoMam.pl is ?

Izabela: The idea for the portal is giving the customer possibility of getting the most tailored quotes in relation of his needs and the price. By  creating the auction, customer will receive offers without leaving his home from different insurance agents and he will be able to compare then in a easy, transparent way, choosing the best one that suits his needs. In another case it would require much more time to collect and compare offers from different insurance agencies.

Why did you choose DevPark?

Tomasz: While we were planning our project we knew that we have to focus on quality. We choose Devpark for several reasons, such as the fact they implement solutions for companies from US ( which is a market with opinion of the most demanding customers ) and we noticed good reviews about projects that DevPark completed.

What was the biggest challenges that you encountered while working on the project?

Izabela: There was lot of challanges. Since it was our first IT project implemented on this scale, we needed company that would  get involved and meet our needs. Company that would be able to support us in a wide range of services, both in terms of technology and in a way of effective project implementation.

Tomasz: Devpark Specialists Team helped us a lot. At a stage of preliminary discussion we received a lot of feedback information about what other things we have to take into account, what unexpected difficulties we may encounter and whats worth rethinking. There were a lot of things we have been made aware of but together we managed to solve everything.

Are you satisfied with the way how project was developed?

Izabela: Very much, what recognition the most is professional approach and keeping promises. It was important for us to meet the deadline for first version of the portal ( Sept 2016 ). Thanks to commitment and extensive team knowledge ( in particular Mr Marcin Nabialek and Andrzej Fenzel ) many important details which we did not realized was included in the project.

Tomasz: As you can see, the start-up deadline of our service was observed. We are pleased with the cooperation therefore future system development and technical maintance will be in DevPark hands. With that in mind we can focus on system improvements having assurance that technical part is in the hands of high-class professionals.

And any cons?

Izabela: Well.. DevPark Programmers ain’t the cheapest ones but for quality of the service and promptness of project implementation which we received – If I would have to choose again I would pick DevPark again.


Marcin Nabiałek – WiemCoMam.pl project manager

You have been responsible for project development from the beginning. What were biggest challenges from your point of view?

Marcin: In terms of project development – there were number of challanges. First of all insurance industry is a quite vast area, so for the start we had to understand how insurance agents work looks like and understand process of concluding insurance.

For example – in case of car insurance, all the informations which have to been acquired from the client before generating a quote for him may depend on many factors, including the insurance company which offer we want to present.

It was quite a challenge to design User Interface in a way that  creating auctions and all related operations would be easy to use and obvious for the user. I think we achieved success – thing that from project development point is complicated process – for the end user looks simple to use and work with.

Additionally, what is worth noting, application was created in phases and individual stages were made available for the Insurance Agents long before full system launch. This meant need for implementation of certain parts of the system right away, the same way as they will ultimately look like. This required on the one hand the need for testing and changes in already released functionality, taking care of its stability and at the same time working on the future system elements   yet to be made available.

How the development process of this project looked like?

Marcin:

One of the most important implementation stages was to determine the customer’s requirements for the functioning of the service. Although initially WiemCoMam team had a vision how all service should work like, from the point of view of the programmer and project manager it was a vision rather general, which was impossible to translate into a functioning application.

Therefore it was necessary to separate most important elements of the service, talks with a client, detect potential problems or specific cases in functionality, which will not be possible to notice at first glance,  propose solutions and re-conversation with a client.
The process of creating specification was itself heavily iterative. We put the emphasis for good documentation preparation, because at this scale of the project it is easy for misunderstandings. As you might guess, this was not a short process, but thanks to that at the very moment of service planning we were able to predict and solve many problems which at a later stage will be much harder and  labor-intensive to resolve. During this phase technologies in which service was implemented were chosen.

The holistic result of this phase of work is 150-page documentation with the assumptions of the functioning WiemCoMam service, which includes numerous diagrams and models of future service appearance – and that’s not all, because there is also technical documentation.

What kind of architecture you have chosen?

Marcin: Service was implemented in client-server technology what gives us the greatest potential expansion of the service in the future and if needed, possibility to add another applications, for example applications dedicated for mobiles. For a client layer we chose Angularjs and for a server side (API) – popular worldwide but still underestimated in Poland – Laravel framework operating on version PHP7.

Could you describe development process, how many developers  were  involved ?

Marcin:

After stage of dividing application development process into sprints (SCRUM) we have planned the work schedule. In whole process of service implementation from DevPark took part total of 8 people, which 5 of them where programmers.  Although the scope of work of each person was not the same it was necessary such tasks planning to be able to realize specific service stages within due time, at the same time we assigned each person some range of functionality without strict linking it with the other parts on which other programmers were working at. Owing to this division of labor each project member felt strongly responsible for their own tasks and implemented it with the utmost care, which resulted in the final effect – successful portal WiemCoMam, which you can see yourself live at this very moment.

The very process of implementation, as already mentioned, required to take into account the fact that some service elements will be launched even before the end of the overall work.
Therefore, it was necessary proper project technical preparation to be able to allow performing programming operations, testing, fixes application. For this purpose we prepared 3 independent environments – development, pre-production and production environment – completely independent from each other, with automatic uploading and updating project on server.

The same set of environments has been prepared for both backend (REST API in Laravel), as well as for frontend ( angularjs), which gives a lot of flexibility when it comes to project management process and and testing new features, for both –  DevPark and WiemCoMam team.

Process of portal expansion is still going. We already know about new types of insurances  that will appear on the site so if you need insurance – we invite you to WiemCoMam. We recommend ?

From the development point of view – what was the hardest part?

Marcin:

One of the biggest challenges was proper database structure preparation, which will prepare application for future changes and new features ( we know there will be plenty of them).

The same assumptions we had to adapt in case of application itself. Even the application code has been divided into independent modules to make it easier to manage. Each element of the application was also designed in such a way so changes can be made as easy as possible without interfering with other system components, whilst avoiding code duplication. An example could be user registration. In this service you can register several user accounts types ( not all are publicly available), and each account has its own subtypes. Thanks to proper application preparation, the code is still quite transparent end easy to maintain.

Due to  dynamics of changes the essential part of implementation was manual testing processes itself both by DevPark and WiemCoMam team. However, a very important element in the smooth implementation of the project, making changes and adding new features are automatic APIs testing, which are launched automatically always before changes publishing on any of the aforementioned servers. Fortunately Laravel framework is quite well prepared in this respect, thus  tests writing was relatively pleasant, although quite laborious.

It is worth mentioning that at this point is nearly 1200 tests, and new tests are added all the time with every new functionality. Those mentioned tests are very accurate  so that even a small – seemingly – harmless change in API functioning which results in error is caught. Thanks to this already in the implementation phase we could avoid many problems which normally would not be noticed.

Such a large amount of  thorough tests had an impact on the costs of the service. In DevPark we believe, however, that the most important thing is flawless application performance (and thus customer satisfaction), even if it means slightly higher costs than creating a project without testing, on which nobody really has control over.