What is the best way to build and deliver the app? Which service will handle code signing? How will usage and crashes be monitored? How will users be authenticated? The list goes on and on. And because of all of these complexities, we create a lot of assumptions and conflicting thoughts on what DevOps really is. We can relate this to the picture below of a twist on the classic parable of The Blind Men and an Elephant:

The Blind Scientists and the Elephant

This is a story where a group of blindfolded scientists come across an elephant. They start feeling the object in front of them but each only feels one part of the elephant. They then describe the elephant based on their partial experience and they disagree on what an elephant is. One says it is like a rope; another says it is like a tree. Because they are scientists, they become experts on their partial experiences with the elephant. So the moral here is that people become experts on their partial experiences, sometimes forgetting the big picture. We can relate this to DevOps, in that there are so many processes we have to do to achieve automation that we forget to see the whole picture. So in the current DevOps landscape,  each process depends on an expert that handles it. For example, someone creates a HockeyApp account and is in charge of monitoring and distribution since he owns the account. What if the person goes on leave? An iOS developer will take care of the build server for iOS – But what if the build server goes down and the iOS guy is not around?

In reality, DevOps is just the sum of these different processes where the main goal is to deliver products faster. Microsoft realises this and combines all these processes into one platform called Visual Studio App Center.

Visual Studio App Center: A One-Stop Shop for DevOps

Visual Studio App Center has everything one needs to manage the life cycle of mobile apps, from creating automated builds, to testing on devices in the cloud, to distributing to beta testers and uploading to app stores, as well as monitoring of your user’s usage through crash and analytics data. Visual Studio App Center is available for iOS, Android, Windows and even macOS apps. Xamarin, Objective-C, Swift, Java, and React Native are supported across all of the features.

To start using Visual Studio App Center, you can use your Github, Microsoft, or even your Facebook or Gmail account. After logging in, you can immediately see that the web-based portal is very straightforward and easy to use.

Build

Using App Center, you can connect to your Github, Visual Studio Team Services or Bitbucket repo, configure fields, upload the necessary keystore files and start building. All of this is done in the cloud, so you don’t have to think about setting up a server for your apps. You can enable your builds to “launch test” your apps to verify whether the app builds in real-world iOS and Android devices (albeit with longer build times). You can even add post-clone, pre-build, and post-build scripts to further customise your builds

Test

There are a ton of benefits in catching bugs in your app before distributing it to your users. The Test feature will let you run automated UI tests for your iOS and Android apps on real devices on the cloud. You can create tests using various test frameworks like Xamarin UI Test, Appium, Espresso, and XCUITest for iOS. You can set the tests to run on every commit or manually. There are also screenshots of every test step as well as logs and stacktraces so you can identify bugs and failures quickly.

Distribute

For distributing your builds, you can create different groups so you can send the right builds to the right users at the right time. App Center uses the distribution technology behind HockeyApp so you can also release your apps to internal users, public beta testers, and even to Apple’s App Store, Google Play or Microsoft Intune.

 

Analytics

App Center has integrated Analytics in their platform so developers can easily analyse their apps once it they have been distributed to their users. This helps us further understand our audience whenever they use our app. In this section, you can see active users, daily sessions per user, session duration, top devices used, and even the countries where the app was installed.

Crashes

Crash reporting is also included in App Center and is a very useful feature that makes it easier for developers to monitor the health of their apps. Whenever your app crashes, App Center will guide you to exactly where in the code the error occurred, with full symbolication, which is a huge timesaver in debugging. Crash reporting also lets you create tickets in your bug tracker whenever a crash in your app happens.

Visual Studio App Center is currently being used as the DevOps tool of choice in several mobile app projects in EPH. App Center not only helps us to easily set up and keep builds and releases streamlined and distributed to testers and customers but also provides services for automated testing and monitoring of multiple mobile applications across different platforms.

News from ERNI

In our newsroom, you find all our articles, blogs and series entries in one place.

  • 27.09.2023.
    Newsroom

    Unveiling the power of data: Part III – Navigating challenges and harnessing insights in data-driven projects

    Transforming an idea into a successful machine learning (ML)-based product involves navigating various challenges. In this final part of our series, we delve into two crucial aspects: ensuring 24/7 operation of the product and prioritising user experience (UX).

  • 13.09.2023.
    Newsroom

    Exploring Language Models: An overview of LLMs and their practical implementation

    Generative AI models have recently amazed with unprecedented outputs, such as hyper-realistic images, diverse music, coherent texts, and synthetic videos, sparking excitement. Despite this progress, addressing ethical and societal concerns is crucial for responsible and beneficial utilization, guarding against issues like misinformation and manipulation in this AI-powered creative era.

  • 01.09.2023.
    Newsroom

    Peter Zuber becomes the new Managing Director of ERNI Switzerland

    ERNI is setting an agenda for growth and innovation with the appointment of Peter Zuber as Managing Director of the Swiss business unit. With his previous experience and expertise, he will further expand the positioning of ERNI Switzerland, as a leading consulting firm for software development and digital innovation.

  • data230.08.2023.
    Newsroom

    Unveiling the power of data: Part II – Navigating challenges and harnessing insights in data-driven projects

    The second article from the series on data-driven projects, explores common challenges that arise during their execution. To illustrate these concepts, we will focus on one of ERNI’s latest project called GeoML. This second article focuses on the second part of the GeoML project: Idea2Proof.

  • 16.08.2023.
    Newsroom

    Unveiling the power of data: Part I – Navigating challenges and harnessing insights in data-driven projects

    In this series of articles (three in total), we look at data-driven projects and explore seven common challenges that arise during their execution. To illustrate these concepts, we will focus on one of ERNI’s latest project – GeoML, dealing with the development of a machine learning algorithm capable of assessing road accident risks more accurately than an individual relying solely on their years of personal experience as a road user, despite limited resources and data availability.

     

  • 09.08.2023.
    Newsroom

    Collaborative robots revolutionising the future of work

    The future of work involves collaboration between robots and humans. After many years of integrating technology into work dynamics, the arrival of collaborative robots, or cobots, is a reality, boosting not only safety in the workplace but also productivity and efficiency in companies.

  • 19.07.2023.
    Newsroom

    When the lid doesn’t fit the container: User Experience Design as risk minimisation

    Struggling with a difficult software application is like forcing a lid onto a poorly fitting container. This article explores the significance of user experience (UX) in software development. Discover how prioritising UX improves efficiency and customer satisfaction and reduces risks and costs. Join us as we uncover the key to successful software applications through user-centric design.

  • 21.06.2023.
    Newsroom

    How does application security impact your business?

    With the rise of cyber threats and the growing dependence on technology, businesses must recognize the significance of application security as a fundamental pillar for protecting sensitive information and preserving operational resilience.