Media Assets Marketplace

From SAM
Jump to: navigation, search

A marketplace is a place where users and resellers can find different products that are published by providers to offer it in a platform. Therefore an user can obtain assets that are published by assets providers in an assets marketplace which allow also features like finding related assets, commenting or recommending.

Introduction

The growth of Internet access has enabled new markets to emerge online. One example is eBay, a globally available virtual auction house for products. The Internet has also enabled other marketplaces to thrive by connecting buyers and sellers from disparate locations. The formation of online marketplaces often occurs quickly in response to social or economic trends. Craigslist [1],Pricefalls [2], LLC and Markets Central are other websites that allow the public to trade goods and services. Internet marketplaces can further be categorized as business-to-business (B2B)[3], consumer-to-consumer (C2C)[4] and Consumer-to-consumer[5] marketplaces.

Online Marketplaces [6] also have been created focusing on different product niches, for example: viagogo [7] and StubHub [8] for event tickets, EeBria [9] for craft alcohol producers, Made.com [10] for furniture designers and Etsy.com [11] for designers.

Relevance to SAM

In general, an objective in SAM Project is to establish a marketplace for contents and services which can be linked to published content in order to extend and enrich these assests. It is therefore an online content marketplace where content providers and resellers can find the different content assets that can be published. The marketplace will also allow searching for related assets, classifications and to comment or to recommend them. When composing complex assets, the content providers can also include existing services, embeddable into content to provide a richer experience. These services can be, e.g. social recommendation plugins, shopping cart plug-ins, rating plug-ins and more.

SAM therefore proposes the creation of federated content marketplaces so that the different content providers, especially SMEs, can designate and allow discovery of their specific contents, both through user interfaces and via APIs. Federation implies that individual “SAMs” can be linked such that content providers using one marketplace can allow their content to be exposed to other market places if they so wish. Different business logic will be implemented at the marketplace (e.g. pay per consumption, advertising linked strategies, etc.) so that the existing contents can be easily used and distributed among the different media actors or users. The Asset description will also allow layered services over the content (e.g. add specific rating services, 3D renderers...). These services will allow further data representation techniques, and immersive experiences without affecting the basic architecture of the solution.

In this way assets can be combined with diverse services to allow additional possibilities such as:

  • Social Media sharing
  • Reputation measurement of Assets
  • Translation-services
  • Further asset services can be easily developed and plugged-in.

State of the Art Analysis

B2B Online Marketplaces

Online B2B marketplaces are connecting sellers and buyers from every part of the world and providing them the opportunity to enhance their business. Some of the popular names are included in the following list:

Requirements for SAM

The Marketplace should provide an online web application where users can publish and access existing Assets. Therefore, it is very important to take into account the graphical aspects and the client-side rendering. The technology should mainly be focused on the client side, offering support of the latest HTML5 and CSS3 features and providing an asynchronous communication with the server side in order to facilitate the development of user-friendly interfaces.

The technology should incorporate features to support the main patter design patterns such as MVC (Model-View-Controller), MVVM (Model-View-ViewModel) or DI (Dependency Injection) and should be easily testable by unit tests, taking into account that testing is a critical issue in applications. Also, the technology in the server side should allow the development of applications in order to provide communication through web services with the client side and the possibility to connect with a wide set of databases sources including NoSQL Systems such as MongoDB or using search engines such as ElasticSearch.

Tools, Frameworks and Services

Marketplace technologies are split in frontend technologies and backend technologies. For the frontend, the Marketplace will follow the general SAM consortium decision to use AngularJS. For the backend development there are a lot combinations and possibilities, the following selection will describe some of these:

  • IIS7 + WCF Services: Windows Communication Foundation (WCF[17]) is a framework for building service-oriented applications. Using WCF, it is possible to send data as asynchronous messages from one service endpoint to another. A service endpoint can be part of a continuously available service hosted by IIS7 (Internet Information Server[18]), or it can be a service hosted in an application. An endpoint can be a client of a service that requests data from a service endpoint. The messages can be as simple as a single character or word sent as XML, or as complex as a stream of binary data. WCF enables creating SOA applications boosting design applications loosely-coupled. Messages can be encrypted to protect privacy and can be required users to authenticate themselves before being allowed to receive messages. Security can be implemented using well-known standards such as SSL or WS-SecureConversation. WCF offers AJAX and REST support due to it can be configured to process "plain" XML data that is not wrapped in a SOAP envelope. WCF can also be extended to support specific XML formats, such as ATOM (a popular RSS standard), and non-XML formats, such as JavaScript Object Notation (JSON).
  • Play Framework + Scala: Play[19] is an open source web application framework, written in Scala and Java, which follows the model-view-controller (MVC) architectural design pattern. It aims to optimize developer productivity by using convention over configuration, hot code reloading and display of errors in the browser. Play supports REST, JSON/XML handling, non-blocking I/O, WebSockets, asset compilation (CoffeeScript, less), ORM, NoSQL support, and so on.
  • JBOSS + Spring: JBoss Enterprise Application Platform[20] is an Open-Source platform used for building, deploying, and hosting highly-transactional Java applications and services. The JBoss Enterprise Application Platform is part of the JBoss Enterprise Middleware portfolio of software. Because it is Java-based and it operates cross-platform, it is usable on any operating system that supports Java. The Spring Framework is an open source application framework and inversion of control container for the Java platform. The framework's core features can be used by any Java application, but there are extensions for building web applications on top of the Java EE platform.

SAM Approach

The Marketplace is the area where Information Brokers and Content Providers can publish and access existing Assets. In this way, they can make them available to the End Users or to allow other Content Providers and/or Information Brokers to use/enrich/buy these Assets and potentially monetise them. The Marketplace will be the main User Interface for the business user roles such as the Content Providers, Information Brokers and 3rd party Software Providers. It will provide a unified interface to access the main editors in SAM (such as Linker, Ontology Editor, etc.).

Architecture and Dependencies

The Marketplace component aims to provide an online web application where Information Brokers and Content Providers can publish and access existing assets. Therefore, it is very important that the client-side will be clear, concise, intuitive and efficient. The selected technology should offer support for the latest HTML5 and CSS3 features and provide an asynchronous communication with the server side in order to facilitate the development of user-friendly interfaces. The Marketplace will be the entry point for the user interfaces of several components in the production scenario. Through the Marketplace, the end user will be able to access the Linker, Content Gateways, Analytics and Multi-Device Representation user interfaces (See D3.2.2 Component Mock-ups section 3.4) The technology should incorporate features to support the main design patterns such as MVC (Model-View-Controller), MVVM (Model-View-ViewModel) or DI (Dependency Injection) and should be easily testable by unit tests, taking into account that testing is a critical success factor in application development. Also, the technology in the server side should allow the development of applications in order to provide communication through web services with the client side and the possibility to connect with a wide set of databases sources including NoSQL Systems such as MongoDB or using search engines such as ElasticSearch.


Marketplace Architecture

Implementation and Technologies

Frontend Technologies

The Marketplace will be the entry point for the user interfaces of several components in production scenario. As already mentioned in Section 3.1 the Marketplace frontend will be implemented using AngularJS to provide a common look and feel

Backend Technologies

The backend comparison analysed one particular combination for every important technology in the market. It shows that the technologies perform quite similar in terms of the general parameters. However, regarding the specific parameters, it shows that the Play Framework behaviour with NoSQL systems such as MongoDB is superior to the rest. This is very important since MongoDB is the selected technology in the Cloud Storage for semi-structured data storage .

Subcomponents

A summary of the tasks carried out for each subcomponent of the first version of the prototype is shown in the following table.

Subcomponent Task
Actors Media Broadcasters, Information Brokers and Software Providers will use the Marketplace to find assets and services and compose complex assets based on other assets and services
Marketplace UI This user interface provides the necessary interface to search/enrich/buy assets and services that Actors may need. Besides using this interface the Actors will be also able to define the different Business Rules. As it is explained in the introduction, the Marketplace will be the main User Interface entry for the business user roles, therefore it will be possible to have an access the following user interfaces from here:
  • Linker (S4.11). The Actors will be able to access the Linker GUI user interface from the Marketplace in order to compose complex assets, link services to assets and/or edit the assets themselves
  • Content Gateways (S4.5). Semantic Integrator Editor UI and Mapping Repository UI will be accessible through Marketplace UI.
  • Analytics (S4.12). Marketplace UI will be also the entry point to the Report Manager user interface
  • Asset Profiler(S4.2). The Actors will be able to add and edit assets using the Asset Profiler user interface through the Marketplace.
Business Rules Manager This subcomponent provides the methods to allow the definition of the specific business rules implementing the different business models to potentially monetise the published asset. For instances, the assets could be obtained free of charge or not, depending on what has been defined for each content provider and their corresponding assets.
Payment Gateways This subcomponent is in charge of supporting the different payment methods (credit card or bank transfer) and managing the communication with the different Payment Services, for instance, PayPal or iDeal
Payment Services This external service represents the different payment services that SAM Platform will support. For instance, PayPal,iDeal, WorldPay, Payxpert, etc
Asset and Service Manager This subcomponent is in charge of providing the necessary methods to support the different functionalities implemented in Marketplace UI in order to search/enrich/buy assets and services that Actors may need. On the other hand this subcomponent acts as central component in order to communicate with the rest of the components which interacting with the Marketplace
Publisher Once the assets and services have been edited/adapted/received from the Asset and Service Manager, the publisher will publish them in the marketplace making them potentially available and retrievable by the SAM components (with the right authorisations or credentials) and the different federated instances

Functionality and UI Elements

This section explains how to execute the SAM Marketplace in order to use the features adapted.

Login

Through this interface different End Users can enter their credentials. Once validated the End Users are logged into the system. The same interface also provides access to register new End Users or give a reminder of credentials

Marketplace Login

Create Account

This user interface allows entering the necessary information in order to register a new End User. The basic information is: username, password, email, and company and industry sector

Marketplace Create Account

Dashboard

The dashboard contains different widgets in order to provide different kinds of searches and to view/edit/link/sell SAM Assets

Marketplace Dashboard

Shopping Cart

The End Users can buy Assets and services published in the SAM Marketplace. These will be shown in the tab “All Assets” in the Dashboard. The End User should click on the Asset shopping cart to add it to the final list

Marketplace Shopping Cart

The details of the Shopping Cart will be shown by clicking on the View Cart button.

Marketplace Shopping Cart Details

View/Edit Asset

This interface provides an area where the End User is able to enter the basic Asset features. There are boxes for setting restrictions (age constraints, validity time limitation), type, owner, source, license, logo, features and status of the Asset. In addition, a preview of the widget can be obtained at any time regardless of the selected tab

Asset Profiler

Link Asset

This interface provides an area for aggregating and composing SAM Assets based on the preferences of the End User. In that sense, the End User is able to enrich his Assets with additional information coming from other assets, web or social network sources.

Marketplace Linker

Asset Import

This interface provides an area for End Users to interact in order to list/create/edit/schedule the different imports

Marketplace Asset Import

Brand and Consumer Protection

This interface provides an area for End Users to interact in order to list/create/edit the different Brand and Consumer Protection rules

Marketplace Brand And Consumer

Widgets

This interface allows the End Users to create, edit or delete presentation templates for every asset the End User owns

Marketplace Widgets

Analytics

This interface provides an area for providing business-related reports to the different stakeholders

My SAM

This area offers the functionalities to configure the personal information of each End User and contains the following subsections:

  • Company Details
  • Invoice History
  • Payment Gateways
  • Order Information
  • Sales Information
Company Details

The User Account contains all personal information for End Users. The End User is able to update the information such as changing the password

Invoice History

This user interface permits functions such as list/filter/export for the different End User invoices

Payment Gateways

This interface allows list the different user payment methods (Figure 91) and functions such as add a new payment (Figure 92), edit payment (Figure 93) or delete payment for the different payments methods

Order Information

End Users can view all the orders, which were carried out. The End User is able to sort the listing and also view the status of every order. This guarantees a transparency about the orders. It is possible to see both the received and placed orders

Sales Information

This interface provides an area to define the business models for any asset or service. Its various screens are:

  • Sales Information. In this widget, both a list of uploaded assets (Figure 96) and a list of acquired assets (Figure 97) are shown
  • Asset Information
  • General. The general information about the selected asset is shown
  • Distribution. The asset business models information is shown. This tab contains 2 widgets. The first one shows the business models itself, and the second one the different payment methods accepted (Figure 98)
  • Usage. In this tab, a list with the usage history of the asset is shown (Figure 99)
  • Content. In this tab, the asset content is shown (Figure 100)

Articles

References

  1. Craigslist http://en.wikipedia.org/wiki/Craigslist
  2. Pricefalls http://en.wikipedia.org/wiki/Pricefalls
  3. business-to-business (B2B) http://en.wikipedia.org/wiki/Business-to-business
  4. consumer-to-consumer (C2C) http://en.wikipedia.org/wiki/Business-to-consumer
  5. Consumer-to-consumer http://en.wikipedia.org/wiki/Consumer-to-consumer
  6. Online Marketplaces http://en.wikipedia.org/wiki/Online_marketplace
  7. viagogo http://www.viagogo.co.uk
  8. StubHub http://www.stubhub.com
  9. EeBria http://www.eebria.com
  10. Made.com http://www.made.com
  11. Etsy.com http://www.etsy.com
  12. Alibaba.com http://www.Alibaba.com
  13. Indiamart.com http://www.Indiamart.com
  14. Made-In-China.com http://www.Made-In-China.com
  15. EC21.com http://www.EC21.com
  16. toocle.com http://www.toocle.com/
  17. http://msdn.microsoft.com/en-us/vstudio/aa496123
  18. www.iis.net
  19. https://www.playframework.com/
  20. http://www.redhat.com/en/technologies/jboss-middleware/application-platform