
Historically, the market for professional
broadcast equipment has been rather vertical, with
large vendors providing complete “silo” solutions.
As in other markets, it is anticipated that the
professional broadcast market will become more
horizontal over time, and thus be more compatible
with the SOA vision.
In order to assess the value of SOA for media
production, some workflows in a selected use case
were automated using a Business Process
Management System (BPMS) that orchestrates
distributed services and allows people to get
involved in the automated processes through human
tasks. The architecture was designed, technical and
technological choices were considered, services
were designed and implemented, the infrastructure
was built, and the processes were designed and
implemented. The primary goal of this work was to
evaluate whether automating workflows in an SOA
yields increased efficiency and control, shorter setup
times and increased flexibility. Another goal was
designing and building an SOA reference
architecture and reference infrastructure for media
enterprises. A third goal was the identification,
design and implementation of required services for
media. Because of the limited scope of the
implemented use case, only very basic
functionalities have been realised. More complex
use cases are needed to drive the development of
services with more added value.
Although the prime target audience for this work
are professional media production enterprises such
as broadcasters and production houses, the work is
relevant to non-media enterprises also because of the
generic architectural challenges and the use of
generic technologies.
2 USE CASE DESCRIPTION
The use case deals with the intake, review,
transcoding and publishing of user-generated
content, and was defined together with the Vlaamse
Radio- en Televisieomroep (VRT, the public
broadcaster of the Flemish part of Belgium). The
term "User-generated Content" refers to different
kinds of contributions of non-professional end users
to an online medium. Popular examples of websites
based on user-generated content include YouTube,
MySpace and Flickr. User-generated content is used
at VRT in multiple contexts, f.e.
http://www.16plus.be and http://www.toyinima.be.
VRT’s current automation framework is an ad-hoc
solution and is very brittle. As user-generated
content becomes increasingly popular, and multiple
VRT websites need similar functionality, it is
expected that a more professional automation
infrastructure will be required.
VRT was specifically interested in shorter setup
times, increased operational efficiency, a higher
level of control, and increased flexibility. Extra
constraints put forward at the beginning of the work
in this use case were the use of open source or free
products, and the targeted developer role of so called
“empowered developers” who have both good
technical and business knowledge.
The automation infrastructure we have built
allows end users to upload their own video material
intended for publication on a user-generated content
website. An uploaded video item will be prepared
automatically for publication, except that in some
cases human intervention will be necessary to
successfully finalize the publication. With respect to
these human interactions, we can identify two roles
participating in our process. The first role is the
process administrator who is responsible for
approving the format of the uploaded item in case
the format was not accepted or refused automatically
by the system. The process administrator thus deals
with exceptions on a technical level. The second
role, the reviewer, is responsible for checking
whether the uploaded item is suitable for publication
w.r.t. the item’s content. This can be useful in those
cases where the targeted website is aimed at a
specific audience (e.g. children), and content
moderation is required.
Figure 1 shows a functional overview of the
demonstrator that has been built. The end user
uploads video content through the Upload Servlet
that stores the uploaded file on a local drive and
triggers the business process. The business process
subsequently calls the FileInfo and FileHandling
services in order to retrieve technical information for
the video file and to move the file between the
different storage locations in the setup, respectively.
It calls an e-mail notification service at the end of
the publishing process. The business process also
coordinates human interaction for exception
handling and content approval. The specific business
rules for transcoding are isolated in a sub-process
TranscodeHandling. A second sub-process deals
with the technical particularities of the invocation of
the Vodtec transcoder. A façade component is
required to translate the SOAP/HTTP call into
XML-RPC/HTTP to the transcoder. The
FileHandling and FileInfo services both call the
RemoteFile component that can access local and
remote files and that can copy and move those files.
ENASE 2008 - International Conference on Evaluation of Novel Approaches to Software Engineering
32