Design IT for co-operation

We added ”Better and better stories, together” to the mission statement for business development as storytelling is what is all about for us. - Enterprise Architecture for a start-up.

This is why we need to design for co-operation between individuals in film productions.

Generic sub-processes for film production.png

Every production we do is project based and the people involved in the work are mostly from other organisations, hired to work as contractors or employed on a project basis. The number of people in a production can range from a few persons up to several hundred persons in large movies with lots of extras.

In order to have IT supporting the business, we need some guidelines for selection and implementing your IT-solutions. This is why we need to define some architecture principles.

The suggested principles are:

  • Ease of use as we often have new users and very little time to learn

  • Affordable so all users who need the tool can have access to it

  • Device agnostic as we can’t control devices the type of device the users have access to

  • Secure as we manage both personal information and confidential information

  • Scalable so we can grow and do large productions

  • Flexible, so that we can use same tools for different types of productions

  • Agile, so we can change to new tools if needed

The catch is that the priority of those principles differ between business processes as the need for collaboration and number actors are not the same. Let’s give three examples with three different applications.

Pre-production and Production with StudioBinder


Creating a call sheet (dayplan) is a collaborative effort between a few roles in the production, but everybody on set that day need this information.

We use StudioBinder as it lets a few individuals (who pays a license) work together on a project, but all involved persons in the project can view the information on-line without a license.

Post production with


We use to let clients review the edited films as part of the production process. A few persons in post-production can share copies per production with clients and get feedback.

Both these two applications are cloud based and could be used on any device supporting a modern browser.

Post production with PostLab


A third collaborative tool, PostLab, is used by editors when they are working together in a project.

The applications is partly in the cloud, but the other part requires us to use Mac OS and FCP/X. We have to pay the same license fee for all users, regardless of how they use the application.

Ain’t we breaking our principles then?

Yes, but there are only very few editors that need to work together in a project, and they need to be very skilled with their tools. We have also said that our computers for post production are running Mac OS, and FCP/X is the main editing program.


Security level differs between applications, but so does the need. We don’t store sensitive personal information in StudioBinder, so the controls there should be adequate.

But original media and working copies of film can include sensitive data and/or be confidential. This is why we must have a much higher level of security in compared to other applications.

PostLab doesn’t store actual media, only files with links to them, so there is much less of a privacy concern compared to FCP/X. However, the projects could be confidential and only be shared with a small team.

How do you design your IT to support your mission statement?

Masterdata for film produktion

With a number of different systems to support your business, you need to find out where both your master data and transactional data are located and how to integrate between the systems.

An application landscape can partly show how it looks, but in order to develop the integrations, you need to know the business processes, main workflows, business rules, information model, data volumes and constraints.

Initial application landscape for cloud part, without integrations

Initial application landscape for cloud part, without integrations

Our Visma and Microsoft applications are cloud based and have public API’s for integration, including push notifications from Visma if it’s data is modified. But albeit StudioBinder is run in the cloud, it doesn’t yet have public API’s for integrations.

The information model used to manage individuals in film production differs between applications, which makes integration more complex.

The most simple is where you have users of the applications, where you pay a license fee, in order to have full functionality.

Individuals doing work in the production are either an employee or a contractor. A contractor, who is working for a supplier, could be talent, cast or extra. Employees often have project based contracts for their roles in the production, either as crew, talent or extras.

However, Visma only support one contact person for a supplier and one contact person per customer at a time.

You have one or more roles in a single production, and the roles could differ between productions. You have to keep track of the roles when invoicing, as the price and terms & conditions differs. I.e. a role is a service in an invoice .

The positive side is that Visma time reporting, for employees, supports an individual to add different number of hours per day in different roles per project. But it doesn’t manage contractors as standard.

Looking at the sales process things are pretty straight forward.

You get a request for a production, one or more individual resources and/or equipment rental, normally from an individual at a company, as we mostly do business to business work.

If it’s a production, and the requests qualifies, we create a project number in Visma. Otherwise, we create a project number before sending the order confirmation in the same system.

The challenge in the sales process is the integrations for customers, contacts, individuals with roles in the production and orders between Microsoft Customer Manager, Microsoft Bookings and Visma modules. It can be done, but its it worth the cost?

So in the end, we have to decide which system is the master for each type of data, and take into account referential integrity between different information objects and life-cycle management of them.

Small and complex business

Our film business may be small, but to produce and publish film is more complex then you think of at first sight.

Foto: Adobe Stock image

Foto: Adobe Stock image


The client is one type of customer want to have a film produced and/or published. A client is normally an organization, but could be a individual. When the customer is an organisation, we need to keep track of contact persons within the organisation.  We also have the situation where we are a subcontractor to another company who in their turn have clients.

The viewer is the end customer who sees the film. If we are the publisher and we have the customer interaction, this type of customer also needs to be managed.

One type of product we deliver to clients are films, or to be more exact one or more master copies of a film. Each film is unique, but the process is similar for films in the same category.

Another type of product is an individual person with one or more roles in a film production. The roles in a film production is more or less standardized by Hollywood, so we don’t try to invent something new.

The third type of product is raw or edited media, that in the end will be used to create a film.

The individuals in a film production are actors, extras and crew. They are either employees or contractors, with many different types of contracts.

We also have products and services, from suppliers, used in creating a film, that will be part of the project, e.g. as bill of material and as essentials.

In addition to this, a film production is always done in several locations

With this complexity in mind, we need to find an IT-support for our processes that is not to expensive, scalable and flexible.


Our main financial system, Visma e-Ekonomi, handles our articles, customers, suppliers and employees. We create orders, invoices and manages the ledgers. It also has a time module so we can keep track of time for all employees in each project.

Visma artiklar.png

It’s possible to import & export registers to Excel and the service have REST-API’s to integrate with. 

Our challenge now is to find a good workflow and IT-solution to schedule individuals, with separate roles, to projects and customers, in different locations.

We recently migrated our mail to Office365 and we then got access to two other Microsoft applications, Customers and Bookings.

The question is now if we can use these applications and if so, how. Our Visma solution doesn’t have booking functionality, so in that case, we need to change our main system.

Within Microsoft Bookings, we can add services to book. The application also give the possibility to say which individual, from the AD, that can provide this service. By using a web-page, it’s possible for a customer to book an available person with a certain role (product) in a calendar.

Skärmavbild 2019-08-19 kl. 14.03.31.png

We can limit this booking functionality to internal users if we don’t want to expose the information externally. The service have public API’s that makes it possible to integrate to other applications via Azure.

This means that we can have a simple solution where we can book individual persons as roles in several productions. Initially a very manual process, but with possibility to integrate to our other solutions, e.g. Visma, later on using Azure.

EA for a very small organisation

Tom Graves made an episode about one person Enterprise Architecture and we continue to use Enterprise Architecture mindset for a small film production company.

We have our business processes defined on a high level, and we are gradually documenting them in more detail, step by step when implementing new products to clients or new IT-systems.

Generic sub-processes for film production.png

The approach we take is to make the changes that gives most business benefit each time, but still support the long term direction and high-level plan.

This summer, we implemented a cloud solution called PostLab for collaboration between editors, e.g. a GitHub kind of solution to manage post-production workflow.

Screenshot from PostLab in actual production of a feature film

Screenshot from PostLab in actual production of a feature film

The reason behind this solution was a client project where two editors had to collaborate to make six corporate films in a short time period. The editors were located in different cities, so we couldn’t use a local IT-solution and we neither had a high-speed VPN connection.

We know that these type of projects will be more common, therefore, this is a case where we need a good solution. But good solutions can be dependent on timing and availability for new products.

Two months earlier, I joined an early access program for PostLab in Cloud, without knowing which next client project would be. PostLab had been running for several years as local installations, but the cloud implementation this spring was new. When joining the program, I had no knowledge of this upcoming film project, but EA is also about preparing for need before they arise from the business.

The next caveat was that PostLab only supported one NLE, i.e. FCP/X. Not a problem for us, as we took a decision more than a year ago that our main editing software will be FCP/X. But still, we had to set up a new edit suite for the other editor as he had used Premiere before.

The implementation went smooth, and we were able to collaborate in post-production in a controlled manner.

Next step in our cloud journey was to migrate to Office365, as the contract for the old mail solution expired in August. We needed a more scalable solution, as well as more functionality for larger film productions and other projects in the future.

Why choose Microsoft for this services? We had a lengthy internal discussion about the pros and cons with both Microsoft and Google as office platforms, and in the end Office365 won

With Office365, we have an AD in the cloud that makes it easier to manage all people involved in a large film production in the future. However, Azure AD doesn’t natively support MacOS and mobile devices, so there are still some issues to solve.

We also get additional possibilities to support our sales process with Customers (lightweight CRM) and Bookings (resource scheduling). Plans for this to be described in a later post.