Bricks Architecture Technical Whitepaper
|
|
- Regina Sutton
- 8 years ago
- Views:
Transcription
1 1 20steps Version: December 2014 Bricks Architecture Technical Whitepaper by Helmut Hoffer von Ankershoffen (Owner & CTO) Marc Ewert (Chief Software Architect & Co-CTO) Zimmerstraße 26 Aufgang B 8th Floor Berlin Tel. +49 (0) Fax. +49 (0) info@20steps.de
2 2 Overview Bricks by 20steps 1 offers a cloud based development platform for rapidly producing diverse kinds of digital products. This whitepaper explains a selection of the most relevant architectonical principles and features of the Bricks platform from a technical perspective. Bricks is tailored for use by digital agency networks and large digital agencies, facilitating their production of rapid prototypes, minimal viable products and full blown versions of digital products. From an agency perspective, Bricks can minimize technical risks and effort for the basic project setup, increase efficiency and speed and maximize strategic reuse. The digital products that can be produced using Bricks scale from simple landing pages and mobile single page apps, to full blown portals including e-commerce and search functionality, up to multi screen applications with custom workflows and a complex business logic. Every digital product based on Bricks provides integrated controlling features starting with simple web analytics and charting; personalized dashboards showing key performance indicators via connected marketing, accounting, CRM and VOIP services; up to custom reports including KPIs specific to the digital product itself. Bricks Architecture Diagram showing the selection of Bricks for a specific application 1 Hereafter referred to as Bricks
3 3 The inherent building block principle 2 of the Bricks architecture allows to construct complex digital prod- ucts 3 in an easy, fast and reusable way. The diagram shows that an application is being built just by injecting the required Bricks. There are many prebuilt Bricks that cover the commodities of any modern application such as content management, search, e-commerce functionality, controlling, workflow management, monitoring and many more. All technical wiring needed to setup and execute those functionalities is already done and ready to use. The application simply has to write it s own Custom Bricks for specific functionalities and business logic. The types of Bricks 4 will be explained in later sections of the document. The primary programming language for Bricks is PHP, and for good reasons: It is widely used in the field of agencies. Lots of open source libraries exist for common use cases. Wages for PHP developers are generally lower than those for J2EE developers 5 Modern versions of PHP provide all relevant features of modern object oriented languages. By using the HHVM 6 runtime, open sourced by Facebook, the performance is more than adequate. The SOA+MVC framework used by Bricks is Symfony2 7. It offers the same architectural design patterns as e.g. Java/Spring. The PHP language extension Hack 8, also developed by Facebook, enhances PHP with static type check- ing, thus allowing for very robust applications. In combination with Hack, HHVM and Symfony2, PHP is now fully enterprise ready. Bricks UI The Bricks platform offers a unified UI for all the Bricks contained in the system. The Bricks UI is used while producing or maintaining a digital product by the agency staff as well as by customers e.g. to look up current controlling data or for hands-on editorial work. 2 This is why we call them Bricks 3 Hereafter referred to as applications 4 Infrastructure, Basic, Partner and Custom 5 Which is why Facebook chose PHP as the primary programming language for facebook.com 6 Cp. 7 Cp. 8 Statically typed PHP-variant developed by Facebook Any Brick can provide a custom UI to be used by end users.
4 4 As shown in the following screenshot the UI supports whitelabelling. Agencies can use their own name and put some visual candy into the UX. The whitelabel configuration for an agency is called a Color in Bricks terminology. At start the user is being presented with a login dialog. The Bricks UI is only usable by authenticated users (agency staff or customer staff). Only the custom end user UI and public REST APIs may be accessed anonymously on demand. Screenshot 1: Login into the Bricks UI Depending on a user s roles/rights/access the navigation adapts accordingly. The fundamental structure of the navigation accommodates the different scopes a user may act in. The system scope allows for administrative work (such as adding new users, clients and projects). The client scope allows the setup for all the projects of a specific client. The project scope addresses issues belonging to a given project.
5 5 There is also personal scope where users can e.g. specify their preferences, change their profile picture or look up personal information that is being provided by any Brick. Screenshot 2: Dashboarding, notifications, personal scope The next screenshot shows the integration of the Found Brick in the UI for a universal search. Activated by clicking on the magnifying glass in the main navigation bar on the left, Found searches the entire system. The left main navigation contains a magnifier icon for executing a search over the whole system. Results are being retrieved from all Bricks and aggregated into a universal results view. The technical back- ground for extension points like the universal search will be described in later sections.
6 6 Screenshot 3: Universal Search via integration of the Found Brick Internal Architecture of a Brick As described above the Bricks is constructed of many individual elements - the Bricks. There are some fundamental Bricks generally used by all applications - the so called basic Bricks. But there are also specific Bricks, which are are relevant for some dedicated clients or projects only - the so called custom Bricks. All types of Bricks share the same internal architecture as shown below.
7 7 Brick Shell Diagram showing a Bricks architecture and it s connections to it s environment using the Pages Brick as an example Basically a Brick consist of a public interface, the so-called shell, and the kernel layer, consisting of one or multiple kernels. The shell of a Brick implements higher level functionality based on and complementing the low level functionality provided by the kernel layer of a Brick. Additionally the shell provides the custom User Interface for end users, as well as the User Interface for agency staff and customers - which is integrated into the Bricks UI as described above. A shell typically provides an API that other Bricks can call upon, allowing to easily implement complex behaviors and innovative features. The Pages Brick, for example, calls upon the SEO Brick to show indicators of the OnSite SEO quality of an article that was edited using the Pages UI. The shell API is meant to remain stable between software updates so as to ensure that Bricks may work together even after code refactorings of a Bricks internals.
8 8 Brick Kernel The kernel layer is encapsulated by the shell. Its interface is private to the shell 9 and may change during software updates. The kernel layer can provide one or multiple kernels. All kernels implement the same kernel interface. A kernel either implements the functionality required by the kernel interface itself or mediates to an existing basic technology - be it open source software such as Wordpress or Drupal, a SaaS solution such as the upcoming Google CMS or commercial products such as CoreMedia 10. Dynamic Kernel Injection Kernels can be activated and configured in the Bricks UI without having to change a single line of code. The Bricks platform automatically injects the kernel for the project as required. Via dynamic kernel injection the Bricks platform can easily adapt to the existing IT landscape of the customer. What is more, dynamic kernel injection allows for switching basic technologies without losing previous efforts when building the shell of a Brick. New kernels can be added if new basic technologies appear on the market or are required by a customer, but not yet implemented/wrapped in a Bricks kernel. Scoped Execution and Extension Points Beyond this fundamental principle of separating shell and kernel(s) there are further characteristics of a Brick. E.g. the code of both the shell and each kernel is provided as a Symfony2 Bundle 11. This way the dependencies and the offered functionality are defined in a standardized manner. A Brick may offer controllers, commands and web services. All those entry points are are executed in a scoped way, the scope being either system, client, project or user. The Bricks platform automatically rewires the application when entering a scope depending the configuration of the scope. Brick execution for a request resp. call 9 That means the interface of the kernel layer of a Brick cannot be executed by other Bricks. 10 Again the Pages Brick is used as an example - the same goes for other basic, partner or custom Bricks. 11 In Symfony2 the plugins or modules known from other frameworks are named bundles
9 9 Once Bricks detects and activates a scope all Bricks are wired up and ready to perform the given task. This can be e.g. the rendering of a Twig template or simply the JSON result of a REST API action. The web services that can be provided by a Brick are REST interfaces returning JSON (or XML) format. In the case of authenticated access to the REST API the needed API keys are managed and checked by the core Brick (and manageable in the Bricks UI). Additionally there are several standard extension points, which are called by the core or basic Bricks such as Pages, Found, Shop, Control and Workflow. By implementing these extension points it s easy for a Brick to e.g. provide key performance indicators for the Control Brick or make custom entities or other data searchable using the Found Brick. For the latter two examples there are so called Controlets resp. Foundlets which may be reused by the custom Brick. Another example would be a Workflowlet for registering custom workflows in the Workflow Brick. An in depth view of the internal architecture of a Brick is given in the developer manual and online documentation. The Brick types Bricks are structured in four different types. These are: Infrastructure: Fundamental Bricks offering the primary functionality of the Bricks platform. Bricks of this category are always activated and are used by all Bricks of the other types. Basic: This type offers standard Bricks, e.g. the Pages or the Workflow Brick. It s not mandatory that these Bricks are activated for a given project even though they are used by most applications. Partner: Partner Bricks are encapsulating external OpenSource applications or web services provided by partnering agencies or specialized IT service providers and specialists. E.g. the SEO Brick is provided by a partner company of 20steps specializing in SEO and SEA. Partner Bricks offer additional functionality for basic and custom Bricks. Custom: Customer specific Bricks are located in this category. These Bricks are generally only relevant for a given customer and project. If another customer of the same industry requires similar functionality a customer Brick is typically migrated to a basic Brick by stripping the customer specific functionality. The internal behavior of a Brick is independent from the Brick type. Brick types are simply a tool for structuring the Bricks code base and classifying them according the value and target audience of the Brick. Infrastructure layer The Infrastructure layer contains the corresponding Bricks (esp. the Core Brick) 12 but also the needed infrastructure for executing the Bricks platform. 12 Currently only the Core Brick
10 10 First of all there is the runtime environment. Currently 20steps and initial partner agencies use the regular PHP runtime on development stages and HHVM on Test, Pre-live and Live stages. HHVM is a virtual run- time environment for languages like PHP and Hack developed by Facebook, very similar to the JVM developed by Oracle. Above the runtime environment lays the SOA/MVC framework offering the infrastructure for building the Bricks platform. The framework used is Symfony2, the leading PHP framework for developing enterprise grade platforms or applications. It is highly scalable, well documented and backed by a large community. The Infrastructure layer contains the persistency of the Bricks platform used for storing all the information gathered by the Bricks. According to the nature of the information, a relational database is used - be it MySQL, MariaDB, Postgres or Oracle - or, when appropriate, a simple key/value store or document based NOSQL database system such as MongoDB. Brick integrates the Doctrine Object Relational Mapper (ORM) 13 to allow for the implementation of the model part of a Brick in a high level way without having to hassle with specifics of individual DBMS. Additionally the infrastructure layer provides basic libraries to further speed up the development of the required functionality. E.g. the AutoTables library enables the developer to render a dynamic HTML table for arbitrary entities. The table is automatically editable and will automatically persist the referenced enti- ties. Additional libraries wrap commonly used web services in an object oriented way. All basic libraries that are incorporated into the Bricks platform and that are not dependent on the Bricks architecture will be open sourced by 20steps. Core Brick The Core Brick offers the functionality needed by the rest of the Bricks platform. It is the glue for combining the multitude of Bricks to a running application and delivers the base classes for implementing various extension points by other Bricks. The following list shows the different modules that are covered in the Core Brick: Configuration: API for accessing and modifying properties. The properties correspond to one of the scopes user, project, client or system. The more specific scope will overwrite the more general one. So if a property cannot be found in the project scope it will automatically be searched in the client and system scope. Notification: Notifications may be triggered for any reason and scope and will be shown to the User (and sent via ) in the Bricks UI. 13 Cp.
11 11 Tasks: Tasks are assigned to a user and will appear in their personal task list in the UI.
12 12 Injection: The Core Brick is responsible for managing the Brick activation and kernel injection during scoped execution. Depending on the specific settings it rewires and prepares the Brick setup for each scoped request. Navigation: Each Brick may inject scoped routes to their controllers. The navigation module gathers the scoped routes and automatically injects them in different navigation sections of the Bricks UI. Personality: The personality module enables a Brick to enrich the profile of the current user with an additional personality provided by the Brick shell or a Brick kernel. E.g. the Pages Brick adds its personality to the current user including Access Control Lists of articles and webpages edited in the Pages UI. Monitoring: Bricks have to deliver health information on demand by implementing the Check interface. The monitoring module will gather the health of all Bricks and offers an endpoint for external monitoring services such as WeMonit, Nagios etc. The abstract superclasses for implementing the controllers and commands in the custom Bricks are located in the Core Brick. There are several different implementations handling each possible context and scope: public, authenticated, authenticated for a project, authenticated for a client, authenticated for the system and so on. By using the according superclass the custom Bricks doesn t have to care about the complex details going on in the background while wiring the Bricks during scoped execution. The controllers and views for rendering the general layout and base functionalities of the Bricks UI are also contained in the core Brick. E.g. project management functionalities including task management, bug tracking etc. are provided by the Core Brick. For authentication and authorization the Core Brick contains a client-/project- and user-management combined with a role and permission framework including ACLs for arbitrarily entities. Commands Additionally the Core Brick provides basic commands that can be executed on the command line by system administrators to setup a Bricks instance or check its configuration without having to use the Bricks UI. The following table gives an extract of all available commands provided by the Core Brick. A description of the command is shown by using the help option. Bricks:core:bootstrap Should be called for setting up a Bricks instance. Initializes the list of ACLs, creates an initial admin user, a first client and project and flags the system as being bootstrapped. Bricks:core:info Shows some general platform information about the Bricks instance such as the color (whitelabel variant) and stage (dev, test, pre-live, live).
13 13 Bricks:core:Brick:list Bricks:core:client:list Displays a list of all available Bricks with detailed information about them. Shows the list of clients known to the system. Bricks:core:client:info Shows the list of projects of a client with the specified id and a list of all its settings. Bricks:core:project:list Shows the list of projects known to the instance. Bricks:core:project:info Bricks:core:user:list Shows the list of Bricks enabled for the project with the specified ID and a list of all its settings. Shows the list of users known to the system. Bricks:core:user:info Shows the settings of a specified user. Bricks:generate:Brick Bricks:generate:kernel Generates a Brick stub with some example code to be used when developing a new Brick of any type. Generates an additional Brick kernel stub with some example code to be used when adding a new kernel to an existing Brick. Basic Bricks The following basic Bricks currently exist: Pages: Providing a user-friendly web content management system that can be integrated easily into custom applications, from building landing pages up to complex content driven portals. Shop: E-commerce functionality for digital products, from simple online shops to vertical online marketplaces. Found: A first-class search component for digital products like linguistic, semantic, instant, universal and guided search applications. From mobile applications up to vertical search engines for target audiences. Workflow: IT based implementation of flows of work, from production processes integrated into the platform to inter-departmental business specific workflows. Control: Holistic investigation, dashboarding, analysis and reporting of relevant key performance indicators: from web-tracking to performance monitoring of the customer care department. Cloud: Supplying a cloud based and secure file management for all Bricks. This may be used for example for the weekly transfer of a business report.
14 14 Deployment and Operations From the perspective of an individual agency Bricks is provided as a cloud service. The Bricks platform can run on any Mac OS X, Windows or Linux system. The Test stage is typically hosted on premise of the agency while the Pre-live and Live stages of the platform lie in an external datacenter. The Live stage is typically set up as a High Availability Cluster (HA-Cluster). For this 20steps designed a HA- Cluster dedicated for the needs of Bricks called Bricks Cluster 1. The Bricks Cluster consists of a redundant DBMS setup, redundant application servers and redundant loadbalancers, cache and SSL accelerators. 20steps currently manages two colors (whitelabel configurations) of the Bricks platform - one for itself, a second for the agency part of DocInsider GmbH (cp. pages.docinsider.de). Each color is hosted in a separate Bricks Cluster. Additional colors and corresponding Bricks Cluster can be setup easily via automated deployment procedures provided by 20steps. If required, HA clusters can be set up on the customer s premises. Brick Development The development of a new Brick starts with its creation - for which the Bricks platform provides a code generator, the Bricks:generate:Brick command. In a wizard-like dialogue the developer provides basic information (such as type and name of the Brick), afterwards the basic code of a Brick is generated (prefilled with some exemplary code). There are also generators for Brick kernels, commands and Twig extensions, which will be injected into the existing code base of a Brick. By using this generators the developer doesn t have to care about the concrete steps to wire the Brick code into the Bricks platform and is presented some exemplary code to ease the development of basic functionality of the given Brick. Experts at 20steps provide direct support for developers of cooperating agencies via trainings, co-development, documentation and request-based via live-chat, and phone. 1 More information about the Bricks Cluster architecture can be found in the Bricks Cluster - Technical Whitepaper
15 15 FAQ Has everything to be implemented in PHP? No. The shell and kernel of a Brick have to be implemented in PHP or Hack. Typically the kernel is thin mediating layer above an existing base technology, web service, commercial product or custom code which might be written in any programming language as needed. How do I integrate a self written custom Brick into the platform? The developer clones the Bricks platform from the GIT repository provided by 20steps into his local sandbox. Afterwards he will be able to generate a new Brick as described above. When he is done with the implementation and testing of a Brick the code is pushed into the GIT repository of the Test, Pre-live or Live stage that corresponds to the color of his agency (cp. Whitelabelling above). Automated deployment procedures at those stages automatically reinstall and reconfigure the new version of the platform on each push via a GIT Hook and activate the new version for execution.
glossary Zimmerstraße 26 Aufgang B Dachgeschoss 10969 Berlin Tel. +49 (0)30 9940 400 00 Fax. +49 (0)30 9940 400 03 www.20steps.de info@20steps.
glossary Zimmerstraße 26 Aufgang B Dachgeschoss 10969 Berlin Tel. +49 (0)30 9940 400 00 Fax. +49 (0)30 9940 400 03 www.20steps.de info@20steps.de 2 glossary DEC 2014 Strategic Reuse bricks platform Brick
More informationBricks Cluster Technical Whitepaper
1 20steps Version: December 2014 (Draft) Bricks Cluster Technical Whitepaper by Helmut Hoffer von Ankershoffen (Owner & CTO) Bastian Brodbeck (Lead Frontend Development) Zimmerstraße 26 Aufgang B 8th Floor
More informationEZ PLATFORM DESIGN AND DEVELOP CONTENT-DRIVEN WEBSITES AND APPLICATIONS
EZ PLATFORM DESIGN AND DEVELOP CONTENT-DRIVEN WEBSITES AND APPLICATIONS WANT TO BUILD CONTENT-RICH WEBSITES AND APPS BETTER, FASTER AND EASIER? ez gives you modern architecture and flexibility so you can
More informationMiddleware- Driven Mobile Applications
Middleware- Driven Mobile Applications A motwin White Paper When Launching New Mobile Services, Middleware Offers the Fastest, Most Flexible Development Path for Sophisticated Apps 1 Executive Summary
More informationWelcome The webinar will begin shortly
Welcome The webinar will begin shortly Angela Chumley Angela.Chumley@crownpeak.com 08.18.15 Engagement Tip Mute Button Listen Actively Ask Questions 2 AGENDA Getting Started Web Content Management (WCMS)
More informationSaaS & Cloud Application Development & Delivery
SaaS & Cloud Application Development & Delivery A Whitepaper by Ekartha, Inc. by Gurpreet Singh, Ekartha Inc. Raj Sethi, Ekartha Inc. Ekartha, Inc. 63 Cutter Mill Road Great Neck, N.Y. 11021 Tel.: (516)
More informationSisense. Product Highlights. www.sisense.com
Sisense Product Highlights Introduction Sisense is a business intelligence solution that simplifies analytics for complex data by offering an end-to-end platform that lets users easily prepare and analyze
More informationRFP# 027-1516. ADDENDUM No. 1 Questions and Answers
SPECIAL ADMINISTRATIVE BOARD OF THE TRANSITIONAL SCHOOL DISTRICT OF THE CITY OF ST. LOUIS Purchasing Department 801 North 11th Street Saint Louis, Missouri 63101 RFP# 027-1516 Website and Mobile App Development
More informationzen Platform technical white paper
zen Platform technical white paper The zen Platform as Strategic Business Platform The increasing use of application servers as standard paradigm for the development of business critical applications meant
More informationDonky Technical Overview
Donky Technical Overview This document will provide the reader with an overview of the features offered and technologies used with the Donky Messaging Network. This document will give a good base level
More informationChoosing a Content Management System (CMS)
Choosing a Content Management System (CMS) Document Version Revision History Date Document Version Description Created By: 10/Oct/2013 First draft Laraib Saad Table of Contents 1. Introduction
More informationLYONSCG ECOMMERCE ACCELERATOR (LEA) FOR MAGENTO. Discussion of Features
LYONSCG ECOMMERCE ACCELERATOR (LEA) FOR MAGENTO Discussion of Features Eric Marsh July 2015 1 AN INNOVATIVE ecommerce SOLUTION The LYONSCG ecommerce Accelerator (LEA) for Magento was developed for small
More informationDeveloping ASP.NET MVC 4 Web Applications
Course M20486 5 Day(s) 30:00 Hours Developing ASP.NET MVC 4 Web Applications Introduction In this course, students will learn to develop advanced ASP.NET MVC applications using.net Framework 4.5 tools
More informationPro<DOC/> e-commerce Technology An Introduction
Pro e-commerce Technology An Introduction From Rightangle Technologies Private Limited (www.rigthangle.co.in) 1 P a g e R i g h t a n g l e T e c h n o l o g i e s P v t. L t d. 1 Problem Statement
More informationENTERPRISE MOBILE BACKEND AS A SERVICE EVALUATION CHECKLIST
ENTERPRISE MOBILE BACKEND AS A SERVICE EVALUATION CHECKLIST Considerations for choosing a secure, scalable, and reliable enterprise mobile backend platform OVERVIEW Organizations often struggle with identifying
More informationClient Requirement. Why SharePoint
Client Requirement Client wanted a sharepoint system that could meet their document and record management needs. It should also improve client s information management systems. To support existing and
More informationStructured Content: the Key to Agile. Web Experience Management. Introduction
Structured Content: the Key to Agile CONTENTS Introduction....................... 1 Structured Content Defined...2 Structured Content is Intelligent...2 Structured Content and Customer Experience...3 Structured
More informationSOA REFERENCE ARCHITECTURE: WEB TIER
SOA REFERENCE ARCHITECTURE: WEB TIER SOA Blueprint A structured blog by Yogish Pai Web Application Tier The primary requirement for this tier is that all the business systems and solutions be accessible
More informationEnterprise Service Bus
We tested: Talend ESB 5.2.1 Enterprise Service Bus Dr. Götz Güttich Talend Enterprise Service Bus 5.2.1 is an open source, modular solution that allows enterprises to integrate existing or new applications
More informationSymfony2 and Drupal. Why to talk about Symfony2 framework?
Symfony2 and Drupal Why to talk about Symfony2 framework? Me and why Symfony2? Timo-Tuomas Tipi / TipiT Koivisto, M.Sc. Drupal experience ~6 months Symfony2 ~40h Coming from the (framework) Java world
More informationDeveloping ASP.NET MVC 4 Web Applications MOC 20486
Developing ASP.NET MVC 4 Web Applications MOC 20486 Course Outline Module 1: Exploring ASP.NET MVC 4 The goal of this module is to outline to the students the components of the Microsoft Web Technologies
More informationwww.expaway.com Offerte del 10 maggio 2013
www.expaway.com Offerte del 10 maggio 2013 On behalf of our client, a leading Internet Company in Berlin, we are currently accepting resumes for the following professional opportunity: PS007D SENIOR BACKEND
More informationIBM Digital Experience. Using Modern Web Development Tools and Technology with IBM Digital Experience
IBM Digital Experience Using Modern Web Development Tools and Technology with IBM Digital Experience Agenda The 2015 web development landscape and IBM Digital Experience Modern web applications and frameworks
More informationAssignment # 1 (Cloud Computing Security)
Assignment # 1 (Cloud Computing Security) Group Members: Abdullah Abid Zeeshan Qaiser M. Umar Hayat Table of Contents Windows Azure Introduction... 4 Windows Azure Services... 4 1. Compute... 4 a) Virtual
More informationAutomated Data Ingestion. Bernhard Disselhoff Enterprise Sales Engineer
Automated Data Ingestion Bernhard Disselhoff Enterprise Sales Engineer Agenda Pentaho Overview Templated dynamic ETL workflows Pentaho Data Integration (PDI) Use Cases Pentaho Overview Overview What we
More informationCategory: Business Process and Integration Solution for Small Business and the Enterprise
Home About us Contact us Careers Online Resources Site Map Products Demo Center Support Customers Resources News Download Article in PDF Version Download Diagrams in PDF Version Microsoft Partner Conference
More informationPervasive Software + NetSuite = Seamless Cloud Business Processes
Pervasive Software + NetSuite = Seamless Cloud Business Processes Successful integration solution between cloudbased ERP and on-premise applications leveraging Pervasive integration software. Prepared
More informationKaseya Traverse. Kaseya Product Brief. Predictive SLA Management and Monitoring. Kaseya Traverse. Service Containers and Views
Kaseya Product Brief Kaseya Traverse Predictive SLA Management and Monitoring Kaseya Traverse Traverse is a breakthrough cloud and service-level monitoring solution that provides real time visibility into
More informationFaichi Solutions. The Changing Face of Drupal with Drupal 8
Faichi Solutions The Changing Face of Drupal with Drupal 8 Whitepaper published on Dec. 17, 2014 Compiled & Written by: Team Drupal, Faichi Edited by: Payal Mathur, Communication Manager, Faichi CONTENTS
More informationAlice. Software as a Service(SaaS) Delivery Platform. innovation is simplicity
Ekartha, Inc. 63 Cutter Mill Road Great Neck, N.Y. 11021 Tel.: (516) 773-3533 Ekartha India Pvt. Ltd. 814/B Law College Road Demech House, 4th Floor Erandwane, Pune, India Email: info@ekartha.com Web:
More informationEBA Procurement Procedure for the Supply of Website Services 2016: Annex 1 System Architecture Document SYSTEM ARCHITECTURE DOCUMENT
EBA Procurement Procedure for the Supply of Website Services 2016: Annex 1 System Architecture Document SYSTEM ARCHITECTURE DOCUMENT Contents 1. Introduction 1 1.1 Purpose 1 2. Liferay Architecture 2 2.1
More informationKentico CMS 5 Developer Training Syllabus
Kentico CMS 5 Developer Training Syllabus June 2010 Page 2 Contents About this Course... 4 Overview... 4 Audience Profile... 4 At Course Completion... 4 Course Outline... 5 Module 1: Overview of Kentico
More informationLinux A first-class citizen in Windows Azure. Bruno Terkaly bterkaly@microsoft.com Principal Software Engineer Mobile/Cloud/Startup/Enterprise
Linux A first-class citizen in Windows Azure Bruno Terkaly bterkaly@microsoft.com Principal Software Engineer Mobile/Cloud/Startup/Enterprise 1 First, I am software developer (C/C++, ASM, C#, Java, Node.js,
More informationDEVELOPMENT OF AN ANALYSIS AND REPORTING TOOL FOR ORACLE FORMS SOURCE CODES
DEVELOPMENT OF AN ANALYSIS AND REPORTING TOOL FOR ORACLE FORMS SOURCE CODES by Çağatay YILDIRIM June, 2008 İZMİR CONTENTS Page PROJECT EXAMINATION RESULT FORM...ii ACKNOWLEDGEMENTS...iii ABSTRACT... iv
More informationDeveloping and deploying mobile apps
Developing and deploying mobile apps 1 Overview HTML5: write once, run anywhere for developing mobile applications 2 Native app alternative Android -- Java ios -- Objective-C Windows Mobile -- MS tools
More informationDeveloping ASP.NET MVC 4 Web Applications Course 20486A; 5 Days, Instructor-led
Developing ASP.NET MVC 4 Web Applications Course 20486A; 5 Days, Instructor-led Course Description In this course, students will learn to develop advanced ASP.NET MVC applications using.net Framework 4.5
More informationDeployment Guide: Unidesk and Hyper- V
TECHNICAL WHITE PAPER Deployment Guide: Unidesk and Hyper- V This document provides a high level overview of Unidesk 3.x and Remote Desktop Services. It covers how Unidesk works, an architectural overview
More informationHTML5. Turn this page to see Quick Guide of CTTC
Programming SharePoint 2013 Development Courses ASP.NET SQL TECHNOLGY TRAINING GUIDE Visual Studio PHP Programming Android App Programming HTML5 Jquery Your Training Partner in Cutting Edge Technologies
More informationDeveloping Microsoft SharePoint Server 2013 Advanced Solutions
Course 20489B: Developing Microsoft SharePoint Server 2013 Advanced Solutions Course Details Course Outline Module 1: Creating Robust and Efficient Apps for SharePoint In this module, you will review key
More informationHow to select the right Marketing Cloud Edition
How to select the right Marketing Cloud Edition Email, Mobile & Web Studios ith Salesforce Marketing Cloud, marketers have one platform to manage 1-to-1 customer journeys through the entire customer lifecycle
More informationPatrick Desbrow VP, Engineering patrick.desbrow@crownpeak.com
Denise Duncan Director of Enablement Services denise.duncan@crownpeak.com Patrick Desbrow VP, Engineering patrick.desbrow@crownpeak.com David Anthony UI/UX Designer david.anthony@crownpeak.com 2 CROWNPEAK
More informationNew Features of SharePoint 2013
With the recent release of the 2013 Preview, Microsoft has yet again improved its offering in enterprise content management, collaboration, social computing, enterprise search and the business intelligence
More informationCourse 20489B: Developing Microsoft SharePoint Server 2013 Advanced Solutions OVERVIEW
Course 20489B: Developing Microsoft SharePoint Server 2013 Advanced Solutions OVERVIEW About this Course This course provides SharePoint developers the information needed to implement SharePoint solutions
More informationSugar Professional. Approvals + + + + Competitor tracking + + + + Territory management + + + + Third-party sales methodologies + + + +
Professional Corporate Enterprise Ultimate List price / user / month $35 $45 $60 $100 List price / user / year (contractual term) $420 $540 $720 $1,200 Application or user limits no limits no limits no
More informationAdobe Experience Manager: Commerce
Adobe Experience Manager: Commerce Datasheet Adobe Experience Manager: Commerce Benefits of e-commerce capabilities Agile merchandising and marketing Rapid and flexible customization of the shopping experience
More informationOpen Source Multi-Cloud, Multi- Tenant Automation in the cloud with SlipStream PaaS
Open Source Multi-Cloud, Multi- Tenant Automation in the cloud with SlipStream PaaS A professional open source solution Robert Branchat, SixSq 5 July 2014 Lyon, France Based in Geneva, Switzerland Founded
More informationSPT2013: Developing Solutions with. SharePoint 2013. 4 DAYS AUDIENCE FORMAT COURSE DESCRIPTION STUDENT PREREQUISITES
SHAREPOINT 2013 FOR.NET DEVELOPERS 4 DAYS SPT2013: Developing Solutions with SharePoint 2013 AUDIENCE FORMAT COURSE DESCRIPTION.NET Developers Instructor-led training with hands-on labs This 5-day course
More informationDrupal CMS for marketing sites
Drupal CMS for marketing sites Intro Sample sites: End to End flow Folder Structure Project setup Content Folder Data Store (Drupal CMS) Importing/Exporting Content Database Migrations Backend Config Unit
More informationResco Mobile CRM Vision
Resco Mobile CRM Vision Vision for next 3 years & more Table of Contents Mission Statement... 2 Main Areas of Focus... 3 CRM Tool... 3 Communication... 3 Calendaring... 3 Cloud Storage... 3 Customer Apps...
More informationWorkshop on Using Open Source Content Management System Drupal to build Library Websites Hasina Afroz Auninda Rumy Saleque
Workshop on Using Open Source Content Management System Drupal to build Library Websites Hasina Afroz Auninda Rumy Saleque Funded by: INASP, UK October 7, 2012 Ayesha Abed Library http://library.bracu.ac.bd
More informationMicroStrategy Course Catalog
MicroStrategy Course Catalog 1 microstrategy.com/education 3 MicroStrategy course matrix 4 MicroStrategy 9 8 MicroStrategy 10 table of contents MicroStrategy course matrix MICROSTRATEGY 9 MICROSTRATEGY
More informationAppStack Technology Overview Model-Driven Application Management for the Cloud
AppStack Technology Overview Model-Driven Application Management for the Cloud Accelerating Application Time-to-Market The last several years have seen a rapid adoption for public and private cloud infrastructure
More informationDeveloping Microsoft SharePoint Server 2013 Advanced Solutions
Course 20489B: Developing Microsoft SharePoint Server 2013 Advanced Solutions Page 1 of 9 Developing Microsoft SharePoint Server 2013 Advanced Solutions Course 20489B: 4 days; Instructor-Led Introduction
More informationCreating Value through Innovation MAGENTO 1.X TO MAGENTO 2.0 MIGRATION
Creating Value through Innovation MAGENTO 1.X TO MAGENTO 2.0 MIGRATION AGENDA 1. Overview of Magento 2.0 2. Features and benefits of Magento 2.0 over Magento 1.x 3. Why should we upgrade to Magento 2.0
More informationQlik Consulting helps you accelerate time to value, mitigate risk, and achieve better ROI 1/35
Qlik Consulting helps you accelerate time to value, mitigate risk, and achieve better ROI 1/35 2/35 3/35 Introduction The Qlik Americas Consulting Catalog is a comprehensive collection of offerings, developed
More informationProduct Information. Sugar vs Zoho. Features Comparison
Product Information vs Zoho Features Comparison CRM Community Price / user / month $0 $35 $45 $60 $100 $0 $12 $25 Price / user / year $0 $420 $540 $720 $1,200 $0 $144 $300 User limits no limit no limit
More informationSugar Professional. Approvals + + + + Competitor tracking + + + + Territory management + + + + Third-party sales methodologies + + + +
Professional Corporate Enterprise Ultimate List price / user / month $35 $45 $60 $150 List price / user / year (contractual term) $420 $540 $720 $1,800 Application or user limits no limits no limits no
More informationDeveloping Microsoft SharePoint Server 2013 Advanced Solutions MOC 20489
Developing Microsoft SharePoint Server 2013 Advanced Solutions MOC 20489 Course Outline Module 1: Creating Robust and Efficient Apps for SharePoint In this module, you will review key aspects of the apps
More informationChristopher Zavatchen
Christopher Zavatchen chris@cnc137.com 330-558-1137 273 Bettie Lane Brunswick, Ohio 44212 Objective Seeking a career opportunity enabling me to fully utilize my web design and development skills while
More informationScienceLogic vs. Open Source IT Monitoring
ScienceLogic vs. Open Source IT Monitoring Next Generation Monitoring or Open Source Software? The table below compares ScienceLogic with currently available open source network management solutions across
More informationBusiness Process Management with @enterprise
Business Process Management with @enterprise March 2014 Groiss Informatics GmbH 1 Introduction Process orientation enables modern organizations to focus on the valueadding core processes and increase
More informationThe truth about Drupal
The truth about Drupal Why Drupal is great Large community of 3rd party developer Quality control over contributed code Most of the indispensable contributed modules are maintained by solid development
More informationG-Cloud Framework. Service Definition. Oracle Fusion Middleware Design and Implementation
Fusion Middleware G-Cloud Framework Service Definition Oracle Fusion Middleware Design and Implementation Prepared for: G-Cloud Document: Fusion Middleware Version: 0.1 Issue Date: 06/09/2013 1 OVERVIEW
More informationwww.coremedia.com CoreMedia 6
COREMEDIA 6 PRODUCT BROCHURE www.coremedia.com CoreMedia 6 COREMEDIA 6 PRODUCT BROCHURE CoreMedia 6: Because contextualization is about people CoreMedia 6 empowers your Marketing, Business and IT teams,
More informationShop by Manufacturer Custom Module for Magento
Shop by Manufacturer Custom Module for Magento TABLE OF CONTENTS Table of Contents Table Of Contents... 2 1. INTRODUCTION... 3 2. Overview...3 3. Requirements... 3 4. Features... 4 4.1 Features accessible
More informationVincent Gabriel. Summary. Experience. Senior Software Developer at Landmark Network vadimg88@gmail.com
Vincent Gabriel Senior Software Developer at Landmark Network vadimg88@gmail.com Summary Open Source Contributions: https://github.com/vinceg Results-oriented lead architect with a focus on delivering
More informationzevent Mobile Application
zevent Mobile Application Dr. Qais Noorshams, IBM DE noorshams@de.ibm.com 15. 18. September @ Zeit für z - z/os Kundentag und GSE z/os Guide in Böblingen The zevent Mobile Application And what about critical
More informationJOURNAL OF OBJECT TECHNOLOGY
JOURNAL OF OBJECT TECHNOLOGY Online at www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2008 Vol. 7, No. 8, November-December 2008 What s Your Information Agenda? Mahesh H. Dodani,
More informationBuild Automation for Mobile. or How to Deliver Quality Apps Continuously. Angelo Rüggeberg
Build Automation for Mobile or How to Deliver Quality Apps Continuously Angelo Rüggeberg Things to remember Publishing your App should not be painfull Angelo Rüggeberg Code Quality Matters Angelo Rüggeberg
More informationReporting Services. White Paper. Published: August 2007 Updated: July 2008
Reporting Services White Paper Published: August 2007 Updated: July 2008 Summary: Microsoft SQL Server 2008 Reporting Services provides a complete server-based platform that is designed to support a wide
More informationOracle Application Development Framework Overview
An Oracle White Paper June 2011 Oracle Application Development Framework Overview Introduction... 1 Oracle ADF Making Java EE Development Simpler... 2 THE ORACLE ADF ARCHITECTURE... 3 The Business Services
More informationHow We Did It. Unique data model abstraction layer to integrate, but de-couple EHR data from patient website design.
EHR Accessibility The Big Idea: Provide a standardized and improved user experience for ALL disabled and abled patients while interacting with their providers Electronic Health Records System (EHR). The
More informationAspire Systems - Experience in Digital Marketing and Social Media
Case Study Aspire Systems - Experience in Digital Table of Contents 1. Digital agency s email marketing platform goes on-demand 2. Social media launch for a major apparel company 3. Mobile CRM empowerment
More informationPower Tools for Pivotal Tracker
Power Tools for Pivotal Tracker Pivotal Labs Dezmon Fernandez Victoria Kay Eric Dattore June 16th, 2015 Power Tools for Pivotal Tracker 1 Client Description Pivotal Labs is an agile software development
More informationCRM. itouch Vision. This document gives an overview of OneTouch Cloud CRM and discusses the different features and functionality.
itouch Vision CRM This document gives an overview of OneTouch Cloud CRM and discusses the different features and functionality. For further information, about implementation and pricing please contact us.
More informationCommuniqué 4. Standardized Global Content Management. Designed for World s Leading Enterprises. Industry Leading Products & Platform
Communiqué 4 Standardized Communiqué 4 - fully implementing the JCR (JSR 170) Content Repository Standard, managing digital business information, applications and processes through the web. Communiqué
More informationSERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) SERVICE-ORIENTED SOFTWARE ARCHITECTURE MODEL LANGUAGE SPECIFICATIONS
SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) VERSION 2.1 SERVICE-ORIENTED SOFTWARE ARCHITECTURE MODEL LANGUAGE SPECIFICATIONS 1 TABLE OF CONTENTS INTRODUCTION... 3 About The Service-Oriented Modeling Framework
More informationSAP HANA Cloud Platform
SAP HANA Cloud Platform SAP Forum 2015 César Martín 12 de marzo de 2015 SAP HANA Cloud Platform Build, extend, and run next-generation applications on SAP HANA in the cloud The in-memory cloud platform-as-a-service
More informationHow SITEFORUM provides you with main components to build and run an innovative cloud computing service for an industry or special interest group
Status: June 2011 How SITEFORUM provides you with main components to build and run an innovative cloud computing service for an industry or special interest group tags: software, social business, online
More informationWeb Content Management (Web CMS) for Internal or External Sites Request for Proposal (RFP) Template
Web Content Management (Web CMS) for Internal or External Sites Request for Proposal (RFP) Template Thank you for participating in this Web Content Management platform review. This RFP presents detailed
More informationDE-20489B Developing Microsoft SharePoint Server 2013 Advanced Solutions
DE-20489B Developing Microsoft SharePoint Server 2013 Advanced Solutions Summary Duration Vendor Audience 5 Days Microsoft Developer Published Level Technology 21 November 2013 300 Microsoft SharePoint
More informationGSA2013: The Great SharePoint Adventure 2013
SHAREPOINT 2013 FOR.NET DEVELOPERS 5 DAYS GSA2013: The Great SharePoint Adventure 2013 AUDIENCE FORMAT COURSE DESCRIPTION.NET Developers Instructor-led training with hands-on labs This 5-day course explores
More informationCloud Lifecycle Management
Cloud Lifecycle Managing Cloud Services from Request to Retirement SOLUTION WHITE PAPER Table of Contents EXECUTIVE SUMMARY............................................... 1 CLOUD LIFECYCLE MANAGEMENT........................................
More informationEditions Comparison Chart
Sugar Professional Sugar Enterprise Sugar Ultimate List price / user / month $35 $60 $150 List price / user / year (contractual term) $420 $720 $1,800 Application or user limits no limits no limits no
More informationNýjungar í webmethods 9.x. Ingólfur Þorsteinsson
Nýjungar í webmethods 9.x Ingólfur Þorsteinsson Main Drivers for webmethods 9 2 2013 Software AG. All rights reserved. Mobile/Web webmethods Suite Automated Processes Integration Backbone High Performance
More informationRed Hat Mobile Application Platform
Red Hat Mobile Application Platform A mobile application platform for your mobile-first strategy Jarosław Stakuń Senior Solution Architect Red Hat CEE The World is Mobile FeedHenry At a Glance FeedHenry
More informationowncloud Architecture Overview
owncloud Architecture Overview owncloud, Inc. 57 Bedford Street, Suite 102 Lexington, MA 02420 United States phone: +1 (877) 394-2030 www.owncloud.com/contact owncloud GmbH Schloßäckerstraße 26a 90443
More informationOracle Identity Analytics Architecture. An Oracle White Paper July 2010
Oracle Identity Analytics Architecture An Oracle White Paper July 2010 Disclaimer The following is intended to outline our general product direction. It is intended for information purposes only, and may
More informationGetting Started Guide
Getting Started Guide Table of Contents OggChat Overview... 3 Getting Started Basic Setup... 3 Dashboard... 4 Creating an Operator... 5 Connecting OggChat to your Google Account... 6 Creating a Chat Widget...
More informationIntroduction to IBM Worklight Mobile Platform
Introduction to IBM Worklight Mobile Platform The Worklight Mobile Platform The Worklight Mobile Platform is an open, complete and advanced mobile application platform for HTML5, hybrid and native apps.
More informationWeb project proposal. European e-skills Association
Web project proposal European e-skills Association LUCISMEDIA WEB DESIGN PROPOSAL CONTENTS Lucismedia... 3 Building enterprise social communities... 3 project objective... 4 Project scope... 6 Interface
More informationManage all your Office365 users and licenses
Manage all your Office365 users and licenses Delegate 365 White Paper Authors: Toni Pohl, Martina Grom Version: 1.2 of December 2014 atwork information technology gmbh. All rights reserved. For information
More informationCLOUD COMPUTING & WINDOWS AZURE
CLOUD COMPUTING & WINDOWS AZURE WORKSHOP Overview This workshop is an introduction to cloud computing and specifically Microsoft s public cloud offering in Windows Azure. Windows Azure has been described
More informationJAVASCRIPT CHARTING. Scaling for the Enterprise with Metric Insights. 2013 Copyright Metric insights, Inc.
JAVASCRIPT CHARTING Scaling for the Enterprise with Metric Insights 2013 Copyright Metric insights, Inc. A REVOLUTION IS HAPPENING... 3! Challenges... 3! Borrowing From The Enterprise BI Stack... 4! Visualization
More informationPhilip Klauzinski. Summary. Experience. Senior UI Engineer at Rightside pklauzinski@gmail.com
Philip Klauzinski Senior UI Engineer at Rightside pklauzinski@gmail.com Summary I am a senior web UI/UX architect, engineer and designer specializing in RESTful SPA (single-page application) development.
More informationHEAT DSM 2015.2 Release Overview. Andreas Fuchs Product Management November 16th, 2015
HEAT DSM 2015.2 Release Overview Andreas Fuchs Product Management November 16th, 2015 HEAT DSM 2015.2 Highlights HEAT Discovery Integration Patch Management Enhancements HEAT PatchLink Integration HEAT
More informationIT Insights. Using Microsoft SharePoint 2013 to build a robust support and training portal. A service of Microsoft IT Showcase
IT Insights A service of Microsoft IT Showcase Using Microsoft SharePoint 2013 to build a robust support and training portal June 2015 The Microsoft IT team that is responsible for hosting customer and
More informationData Integration Checklist
The need for data integration tools exists in every company, small to large. Whether it is extracting data that exists in spreadsheets, packaged applications, databases, sensor networks or social media
More informationIBM API Management Overview. 2014 IBM Corporation
IBM API Management Overview Please Note IBM s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM s sole discretion. Information regarding potential
More informationBuild Your Mobile Strategy Not Just Your Mobile Apps
Mobile Cloud Service Build Your Mobile Strategy Not Just Your Mobile Apps Copyright 2015 Oracle Corporation. All Rights Reserved. What is is it? Oracle Mobile Cloud Service provides everything you need
More information