Case Study: How We Improve Blockbuster Video Streaming App And Make It Bug-Free

218 Views
|
31 Aug 2018
|
10 min
author avatar
Sergey L.
Copywriter

What can be better than just enjoying an interesting film using your favorite online streaming service? When you work hard from early morning to late, I bet this pastime may seem something impossible at the moment. However, when the time of relax finally comes, you can choose a streaming service you like and immerse in the world of TV series and movies. Do you agree that the main condition for streaming service is a stable and proper functionality? Our customer completely shares our views and he wants to provide his users only with first-rate services, so he contacted us to help them fix the current situation.

But first things first.

About the project

Our customer is TDC Group company and its CTO contacted our sales department to describe challenges they have and find out whether we could find an appropriate solution.

TDC Group is one of the largest Danish telecommunication services provider. The company provides local market and other Nordic countries with home entertainment solutions like the Internet, mobile voice services and communication like mobile and landline services, broadband etc. Apart from this, TDC Group offers cloud-based and other IT solutions like YouSee (play service), Fullrate (broadband services), Blockbuster (streaming service).

!

See what you need to build an app like Netflix. Read How much does it cost to build app like Netflix?

Blockbuster is a subsidiary company that was acquired by TDC Group in 2013. A streaming service that offers people to watch films and TV series, shows on a paid basis both online and offline. Service has the main website along with mobile iOS and Android versions. First, it is necessary to register on Blockbuster website. Service is oriented on Scandinavian countries, so its website is available only in the Danish language.

Main challenges to solve

What was wrong with Blockbuster service on iOS and Android? Service provider described our specialists main troubles they would like to solve and improve their app. Despite the fact that apps were available in app stores, a large number of bugs and specific defects became the reason for improper app functionality and users' dissatisfaction.

Long homepage loading

Due to a large amount of data on a homepage, the app on both mobile operating systems was overloaded and it was lagging too much.

Bugs and improper functionality

The app's functionality had some holes in code, and due to a tangled code apps were functioning improperly.

UX logic was imperfect

Our customer had a few complaints concerning UX logic and they wanted to fix it and improve.

Lack of some necessary features

In addition, the customer decided to add a few features that enrich the app and make it more attractive.

Now let's proceed to the app development process and how our developers fixed old bugs.

Blockbuster app improvement: how we did it

The main goal of Cleveroad specialists was to improve and fix bugs in already existing apps, enhance it with some new features. Apart from smartphones, Blockbuster app is also available on Chromecast, Apple TV, iPad and Android tablets.

Later customer decided to rebuild Android app, using new technologies. Initial Android app version was written in Java, and Kotlin was used by our developers to rebuild the app. iOS app remained written in Swift.

The development process was arranged in a bit different way, we had no project manager from our side - everything was controlled by TDC Group manager.

What we have implemented so far

App architecture optimization. In both apps our developers changed and optimized the architecture. Programmers made severe changes in architecture, so it led to the reduced lagging since they removed unnecessary elements. Also, the number of requests sent upon triggered action was reduced to one request. Thus, the app started loading faster and homepage loading was optimized as well. In addition, streaming quality was improved as well. To show you how architecture was changed, see below iOS and Android architecture types modification.

Android app architecture before:

Android app architecture before

How Android app architecture was working befor

Android app architecture after:

Android app architecture after

Android app architecture after we made upgrades

As we noted above, architecture was changed both in iOS and Android app versions, so pay your attention to the following scheme of how we changed Blockbuster app architecture on iOS:

iOS app architecture before

Blockbuster app architecture before

iOS app acrhitecture after:

iOS app architecture after

Current architecture of Blockbuster app on iOS

Self-documenting code integration. Due to problems with unoptimized architecture, iOS developers rewrote the code and made self-documenting code. This is a code type that is clean, easy-to-read, any third-party developer can deal with it without troubles. As a result, the app works like a clockwork.

Animations. More animated icons were added to the description of movies, TV shows, and TV series. The goal was to make a content more vivid and brighter.

Optimization of content description. Before, when you loaded the app, all content on the homepage was presented with a description below each icon and it led to lagging and overloading of the app. Our developers changed the structure, now you can click on the movie icon, for example, and movie description will pop up on the screen. Such optimization makes loading homepage faster since redundant elements are removed.

!

Check it out how we built MetKnow app to connect people. Read How we created MetKnow app for business relationships building

Subtitles fixing. There was a trouble with subtitles functionality on Chromecast, it didn't load upon request, so this bug was fixed and improved by developers.

Blockbuster subtitles

Subtitles in Blockbuster app on Smart TV

Movies downloading. Older Android app version didn't have a feature to download a movie on your mobile device. Now you will be able to download it and watch later when you want.

Downloading feature Blockbuster app

Movie downloading process

That is what was implemented by our specialists, but there are a few tasks that they plan to implement in the future as well. Expected features you will find in the last section of the article.

Testing process

The testing process is fully performed by customer's QA engineers. After each bug fixing/feature added customer tested it, and then, if everything worked properly, our developers rolled out upgraded version. So we have a very tight collaboration with a customer and he keeps an eye on all things.

What about other Blockbuster features?

Apart from new features added, there are other integrated features we want to share with you to show all Blockbuster app capabilities.

Sign-up

Users can sign in via Facebook or use Blockbuster website to register and use all capabilities of the app without limitation.

Social sign-in Blockbuster

Sign-in or registration

Payment plan

There are two payment plans - rent (you can rent a movie, TV series or show, and it will be downloaded to your mobile device where it will be stored 48 hours) or purchase (you buy a film and it is stored on your device until you remove it at your will). By the way, payment is made via the website, you should link your banking card and when you click a payment button in your iOS or Android app, it redirects you to the website.

Purchase scheme Blockbuster

Buy or rent a film via Blockbuster app

!

Find out how we build right mobile development team. Read Mobile development team: aspects and steps to build a first-rate app at Cleveroad

Search

Searching by genres, type and actors can be made using a search bar integrated into the app. Everything is simple.

Search bar Blockbuster

Search bar to find a movie or TV show

Collections and wishlist

 Users can create collections of their favorite movies and shows, add new content to wishlist to buy or rent it later. Also, in My collection section all bought and rented content will be listed.

Rating

A feature that is available in almost all apps. Simply rate the movie you watched - it will help other users make their decision concerning whether they should spend their money on this movie or it'd be better to find something more interesting.

Settings

Depending on user's requirements, in settings he/she can change the account and language, activate HD mode, find FAQ and help guide, terms & conditions of use.

Technical background

The main task of Cleveroad is to upgrade and improve mobile app versions, we didn't intervene in back-end part, so we used tools only for mobile app development.

Android app

  • Kotlin. New language was used to rewrite and upgrade the app that was built using Java before. Kotlin has more simple and clear syntax that helps build apps faster;
  • RxJava 2. Library for a quick composing of the programming code; 
  • Retrofit 2. HTTP-client for working with API in client-server apps; Jackson. Library for conversion of Java objects to JSON files; 
  • SQLite/Room. SQLite is a relational database management system, and Room framework was used as an add-on with SQLite for storing all app data; 
  • Glide. Open source library for loading images, videos, and GIFs; 
  • Exoplayer. Media player for Android; 

iOS app

  • Swift 4.1. The most recent Swift programming language version was used to upgrade the app;
  • Fabric. Modular development suite for different platforms; 
  • Crashlytics. Delivery of interactive and detailed crash reports in a real-time mode; 
  • Alamofire. HTTP networking library to simplify general networking tasks;  
  • Youbora. Advanced suite of integrated video analytics and business intelligence for broadcasters; 
  • AirPlay. Apple proprietary protocol for wireless streaming between audio and video devices; 
  • AVFoundation. Apple framework for working with time-based audiovisual media; 
  • CoreData. Framework for the interaction with a database. 

Also, Chromecast SDK and Facebook SDK were used for both Android and iOS app version.

The future of the project

The development process of Blockbuster app is not over yet, and our developers plan to work on the following features:

#1. In iOS app, developers will work on the improvement and optimization of the logic of content displaying.

#2. In Android app, our programmers will need a feature of video quality selection.

The project has started in March, and customer plans to release updated apps in the of September - beginning of October. It is possible that some other upgrades will be implemented in the app as well within this period.

!

How Agile methodology helps us build first-rate apps. Read Agile application development methodology: how we ensure app quality

As with any other project, Blockbuster app helps our development team use their skills and build high-class software. Do you need any consultation or you plan to build your own app? Contact us and get a free estimate on your product. Also, if you subscribe to our blog, you will not miss interesting articles and other case studies about our successful projects.

Rate this article!

An image An image
Bad!
An image An image
Strange!
An image An image
Boring!
An image An image
Good!
An image An image
Love it!
(201 ratings, average: 4.54 out of 5)
Latest articles
Article preview image
Top 5 cybersecurity frameworks in healthcare field
Calendar icon
18 Jul 2019
Clock icon
10 min
Article preview image
15 software outsourcing companies by size
Calendar icon
16 Jul 2019
Clock icon
10 min
Article preview image
Estimating web application development cost
Calendar icon
11 Jul 2019
Clock icon
9 min
Back to top
As s part of our team, be ready for:
An image
Competitive Base Salary
An image
Comprehensive Benefits
An image
Great Work Environment
An image
Drug Free Workplace
Tell us more about yourself