The following post was written by our summer interns Sunniva Johansen and Kristin Tønnesen:
This summer, we have been working with mobile application development for nine weeks. As summer students at eSmart Systems we were given a very interesting project, which was both educational and relevant to our study programmes.
By 2019, all private houses in Norway will have the new and smart electricity meters installed. AMS (Advanced metering systems) will give consumers the opportunity to manage their energy consumption. Consumers will be able to follow their energy consumption as the meter data are read more often than the regular meters are able to. If the smart meters are fully utilized, one could look at his or her energy consumption close to or in real time. This provides new opportunities for consumers to monitor their own energy consumption and makes it easier to implement austerity measures to reduce this. The summer project consisted in participating in the development of a mobile app for this purpose.
As a civil engineering student in computer science, Kristin had the primary responsibility for the programming part and the technical aspect. Sunniva, who studies energy and environmental engineering, worked mostly with the energy and environment-related content in the app.
For the summer project we chose something in between: the framework Xamarin, that creates an additional “layer” on top of the native code and gives the opportunity to program for both platforms in the programming language C#. The reason behind choosing this solution was to use a language and technology that both we and eSmart had experience with, in addition to hopefully saving some time by creating a shared code base. Code that was independent of the user interface was written to function on both type of operating systems. We then had to create separate user interfaces that were in accordance with the companies’ own design guidelines.
We have developed the Android application in Visual Studio, that has a built-in graphical designer for Android. One could also program for iOS in Visual Studio, but then without the graphical designer. To create screens for the iPhone one needs a Mac and the Apple software Xcode, with the tool Interface Builder. To develop the iOS version we used Xamarin’s own development environment, Xamarin Studio, which is synchronized with Xcode. We have used physical smart phones to test the applications, but both platforms offer their own simulator with support for different screens sizes and rotation.
There are a number of functions to include in such an app, and it will always be new opportunities for further development. The plan for this fall is to work on this app beside our studies in Trondheim. We are excited about the future for this project, and look forward to continue with the task!