How we made FrontlineSync

If You Build It, They Will Come

This year we deployed our Android SMS gateway app — FrontlineSync — to public beta. We decided to build FrontlineSync to make it easier for our users to connect the power of FrontlineSMS to the GSM network. Connecting to the mobile network can be a barrier to users, so we wanted to build a resilient and easy to use platform that would work everywhere.

In order to include our users in the development process as soon as was possible, we needed to bring out the first versions of FrontlineSync quickly. While we could have shortcut many of the usual gateway configuration options, we felt real-world use was no substitute even for the experienced. So how did we do it all?

FrontlineSync timeline
FrontlineSync timeline

A short answer is that we built it using our own flavour of the agile scrum methodology, as described previously on this blog by me and by Sitati last year. We started by compiling a backlog of ideas and requirements, and started to iterate. That was autumn 2013, by spring 2014 we had completed 51 tickets, 89 'effort points’ and our testers and product owners agreed that the app was good enough for initial public consumption...

The Challenge of a New Platform

It was September 2013 when work began on creating our ‘Android app’ product backlog. We went to our ‘blue sky balcony' and started to sketch the app’s user journeys and technical design. With everything mapped out we had to find where to start; prioritising the stories, picking the few most important ones and starting to break them apart into achievable user stories.

The dev team in one of our design meetings. Post-its, whiteboards, sun and debate.
The dev team in one of our design meetings. Post-its, whiteboards, sun and debate.

Once we’d established the new platform and QA process (it was our first app on the Android platform), we started working on registering Missed Calls or 'flash calls’; a user story defined the need for all calls that arrive on the Android phone to be grabbed by the app and sent to the connected FrontlineSMS workspace. We started here because of the one-way simplicity of the feature and the fact that we had a client who wanted to use and test this feature live in the field as soon as it was ready.

Now the app took its title ‘FrontlineSync' and we started to design and improve the method by which users connected the app to their FrontlineSMS workspace. Next was robustly handling the traffic between the app and workspace to ensure no data was ever lost in areas of poor GSM network and app connectivity. The version of FrontlineSync we were running in February 2014 was already proving much easier than any other gateway we had but we knew we could make the configuration options more powerful and this set up even easier. That, however, needed to wait as next up on the product backlog was the all important implementation of 2-way SMS messaging.

Building on our now stable architectural foundations we added intelligent buffered 2-way SMS queuing, and our unique Configuration Sync feature. This allows users to edit the communication settings on the Android app remotely from their FrontlineSMS workspace, as well as locally on the Android. FrontlineSync users can now check, edit and debug their gateway connection from different offices, countries or continents providing critical remote management.

FrontlineSync in the Field

March 2014, FrontlineSync was now being put through its paces by many project directors, World Vision projects and our technical QA team. The app was achieving its core goals in exposing the status of the calls and messages, and having a robustness that real world projects could rely on. Testing in simulated poor network conditions showed us there was a need for more configuration options and extra data streaming work, whilst we also added support for more Android versions and phone manufacturers.

Now that the development team was well and truly conquering our product backlog — still growing and changing daily — we headed up to our friends at the m:lab East Africa for hardware QA and sending 100s of SMS and Missed Calls on HTC, Samsung, LG, and other Android phones old and new.

Then 19th May 2014 saw us finally take FrontlineSync to public beta release and into the Google Play Store; available to anyone for free to plug into their FrontlineSMS and FrontlineCloud workspaces.

We are always working to improve all of our apps and always welcome feedback of any kind, being it a useful bug report or simply a confirmation that the app is working to solve your needs. If you would like to provide any feedback please send it to support@frontlinesms.com or fill in our easy to use FrontlineSync testing form!