 So Okay My name is Maxine. I'm the co-founder of adiacs, and I'm Working with this. I'm kind of CTO of adiacs more or less So thank you for coming here today we're gonna talk about What I would call enterprise business app with Drupal Usually you probably know using Drupal for a CMS content management websites, but actually what we do We don't do websites almost no more So what we do at adiacs today is more or less e-commerce enterprise apps and site factories so that's why I'm we'll talk about the middle one because it's actually half of the business and and It's not all it's not natural to using to think about Drupal when you think about some kind of critical Enterprise business app because usually when you talk to the IT responsible guys, they will tell you Java net Symphony if they are open source maybe they will talk about not GS something like that and But the actually Drupal is quite a good platform. We'll see why so first of all what What I call enterprise apps because there's like a lot of definition of it So from from my point if interrupt me if I'm wrong But the idea is everything any in a digital asset that will try to optimize the usage of resources of an enterprise like Like optimizing sales person or optimizing stocks or optimizing anything Or even it's for providing better service like for for your clients or for your for your providers vendors Partners whatever so anything that will will optimize the overall service your company is doing or to enhance like better sales sell more I Don't know whatever and usually what we see today is like It's because of the globalization everybody is is every big enterprise. They are core business It's quite optimized like if you if you're building cars your BMW or Porsche. They're doing very well in cars so to gain New clients over very hard competition They need like providing something more and this something more It's your digital transformation if you prefer, but there is something that will optimize the overall customer journey So it may be very there very wide area of apps that you can create maybe digital asset management system Maybe reporting logistics polls planification order management serum or whatever So and the idea is probably to To get rid of your jobs within the company so replace them all by robots and automation But before that Let's see what's how different the web project is from an app project So if you take if you take a web project, it's usually something that it's pilot by the CMO chief marketing officers CDOs communication officers something like is Without evident arrow if when you're building a new website, you cannot say like building your website will Make you like 30% growth of your sales. No, you can never say that usually it's done by agencies like design agency LBI digital as publicist, whatever and The key words you have in there that's content management to commerce social walls careers HR Presbytes you all know that if you build websites, you all have this teacher problem when you see on the app project is more an IT project or CDO project and Here the area is important and easy to calculate if you for example reduce the time spent on contracts And you have thousands of contracts to manage per year You can reduce your headcount by half. It's it's immediate area, right? And then if you go in deep into details, you will more talk about workflow internal apps integration content data synchronization Active directory single sign-on etc. And with quite complex business rules and a lot of reporting forms capture of data So how usually it happens so the client usually what happens? It's almost every single app project. Oh We noticed that 50% of this is from real clients, right? So it's a sales manager in a large Agriculture group in France. They provide 75% of oil not Not oil, but the oil you put in your food, right a worldwide So it's quite these six billion of revenues and they notice that 50% of their time They spent on contracts representing 7% of their revenue. So there are big clients like for millions of years of Contracts and then you have small clients buying for like thousands, but they spend half of the time because it's the same Time you spend on the contract. So this they ask for the it guys like look you could optimize everything and The it the CIO says okay Oracle is robust X is the auto-generated forms. We can do it. No problem and then they build a project it cost them half a million in and That's actually when you come back and ask the guys So how it doing but we don't use Oracle as nobody and this is how it works. So we continue using Excel This is a you should have and when you see why Oracle is a so beautiful product you see why because it looks like that and Again, this is actual captures not from 90s. So What we noticed that there are a lot of new needs within enterprise apps inside the companies We they need to be user centric So guys are all using iPhones and androids. Well, most of them are using our phones And so UX and UI are quite important. They want something that works And more and more services. Everybody talks about UX on the Client-facing side you bear whatever all apps are shiny works all the time Never inside, right? So they want also a job project because Because more and more application if you are Using and stick to the UX Approach you need to work with the end users and end users are not able to validate it 800-page specific requirements documents So that means that you need to have an not the waterfall approach but more an agile approach with short iteration and user feedback and Obviously, you need to be mobile because the enterprise app cannot be used only on your lab Up within your company, but you can be used on your iPhone on your on your Android at home Well, it's not very good, but you should so Sorry, so why Drupal so some so it's well, you all know Drupal So so you will see slides and you know how it works. It's not a surprise But this is actually what I use to sell Drupal it within enterprise this and my clients to sell them against everything else So it's quite hard and it's usually addressed through the IT services So you can reuse those ideas or whatever so first of all you say Drupal uses symphony We all know that only part of it, but it's it it's installs something like okay Drupal is something on top of symphony I know symphony, so it's calm down. It's it's not it's not a big huge system Well, it is but again, it's using symphony. So it's it's it's you have thousands of model That's kind of important to say that because he will immediately see the Reusability and and not reinvent wheel things and you can see that many different That is the same Drupal can run many different kind of websites then You have to explain that the difference between the classical framework out you can see in work press Magenta whatever take framework. They all have their API core API And then a lot of models around Drupal have this wonderful system of small low-level models that can connect to each other So you can end up building something like seems complicated on the paper like you have a web services API going to dig and capture data from apache solar or from views or from Amazon S3 or or sparkle so if you write down this it may be quite complicated Actually, it's very easy to build up with a little bit glues or models. You can go fast building this kind of stuff of course you have to talk about structured content because CMS they think HTML pages actually Drupal don't deal with HTML pages don't deal with entities and fields So this is very important to explain that you manage content not pages forget about pages Then you have to talk about data migration because every single enterprise app will Synchronize data from and send data somewhere so you need to be able to deal with millions of lines of data Quite quickly. So this is there. You can talk about Magrid API and how you can connect to the PIM ERPs Sierra and whatever But this is just like everybody else you take symphony you take Java.net They all do that right when it starts to be interesting is how you can actually manage the layout of your app Because if you build your app in terms of design and UX with an atomic approach, you know, this idea of widgets Insert it into blocks blocks insert it into Bigger blocks inserted into templates. So this idea of reusable widgets or reusable forms or whatever It's important because then you can say using penalizer paragraph widget engine or or there are a lot of new initiative doing Layout management you can actually rearrange your apps and you rearrange your screens based on their user feedback and then you can achieve something like like a drag-and-drop stuff of widgets and Well, just an example here forum. It's a it's a press release factory So the idea is like what Hennessy you probably drink met Hennessy one day in your life. It's really not crew Hennessy Wet etc. And they they have a we've built for them a small press release factory. So you actually have something like Something like that you can you already seen this With penalizer stuff so you can edit items you can scroll But if you if you show them this the demo like look, this is a structured content This is a file actually attached to entity, but you can change the name without even Knowing all the complexity workflows and revision system behind it works So this is something very impressive for the end users So make sure that you have key users in the room when you're presenting this because they want that and Oracle will not do that Then if they talk about business process management because there's a lot of workflows and a lot of Things to do you have we have rules, but rules is is is a very good thing to create a complete business process management system You can work out with a lot of a lot of cod and evens But you can build powerful things when you can define property events and triggers. So it's it's it's a good tool Same all enterprise apps. It's about building dashboards at some point reporting How many contracts how many users how many whatever stocks with use bulk operation You can go and create your your dashboard custom dashboard very easy and finally With Drupal distribution because apps never are never alone So once you build your interconnection with the PIM with the ERP with the Sierra with the dam With whatever other application they have inside those modules have can be reused with other apps So each time you build a new app you can reuse using distributions So you can create a real ecosystem and try to start to eating all the other technologies that are inside So to show you the the the thing is that on our support I have some discretion discretion to so on our support ticketing system we get a blocker tickets saying that the guy say that actually there is a Screaming dinosaur running around his each time he connects to the To his back office. We was like in the support like like it's a joke. He's drunk. It was 2 a.m. In the morning No problem. We'll see to him in the morning. We actually he updated the ticket in the morning And it's a big company French company and actually he's he finally captured the dinosaur And we was like how it's possible We was digging into the code all the time all the time and actually there is a model for that It's Konami code you can and somebody in style. So if you put your Code you can actually in the back office had your dinosaur. So well, this is a good example So, okay, this is why Drupal is good. So now how we do that So how we concretely can create this enterprise application? Well, this is easy you have to to mix The users because without them you will build shit and Try to avoid the IT guys as much as possible But they are here too because without them you cannot interconnect you cannot deploy you cannot manage the High availability, etc. And the visual design the the beautiful thing if you build up a nap It looks like Drupal back office. It will be exactly the same shit as Oracle So try to create something beautiful I will show you some example then and the most important stays the users are the most important thing so if you work with users not with the bosses you will create beautiful thing and try to resist because we had every time The the the guys who has the client says oh, I know my users. I work with them 15 years I know exactly what they need for no say no get out of the room I want your users here because every time they they they change the The small details the small wording things that makes the app feeling and working better and Know your admin your enemy isn't actually Oracle SAP sales force Symphony or whatever your real enemy is this Email word SharePoint we transfer PowerPoint Excel because this is used all the time in Replacement of enterprise apps. So if you are providing something like I don't know marketing plan system to create new products They are using Excel probably If you try to optimize the presence of vendors based on their languages and air traffic They are using Excel if you create a digital asset management sharing system They are using we transfer and those are very efficiently They those are very efficient systems that work and everybody knows them and you have to be better than them It's complicated. Everybody knows Excel. Everybody knows we transfer and you have to be better and add value so the idea is to Define a complete user journeys that usually start offline and end up with Offline to so I get an order. I had a phone call. I get the mail I get whatever and then what happens and try to optimize all the screens all the stages then Obviously, you have to work with desktop and mobile and try to go very deeply in terms of Wireframing and initial stages of definition. You have this is examples a real example for business applications We built for Sephora. So here you have Wireframes, it's not actual design. So you can see that the actual wireframes are quite precise Everything is it's almost designed, but it's still wireframes Why are you doing that because when you work with users with complex business rules? It's it's easy to understand a website based on the wireframes But if your wireframes are not precise enough and enterprise app is way impossible to understand So you have to go deep into details and you can build your your pages and every interaction and your Prototype have to be interactive. Let the users play with them and observe them Check the time they take to to to interact with your app try to see how they interact so Well, and then you have to build code whatever and you build up your your theming whatever it's not it's not important So I give you some examples of what you actually can achieve so the first one is imagine you have a Retail network of thousands of boutiques all around the world and you have a 5000 employees company and You want to manage those boutiques actually today? Before the enterprise app was created they were using email and this is inefficient because The guys in the boutiques are working are selling stuff to the clients. They don't check emails all the time You don't know if they actually check the email. So there was a lot of Problems so we build an app Actually working in like a progressive web app working on iPads and iPhones to manage everything like Merchandising plan Leaves sick leaves KPI's From the business intelligence news Tools links furniture ordering everything what happens out of the cash of a cash desk, right? So you have the cash desk payments and everything else is managed through the app So it's an app installed on iPads and iPhone on every single employee working within the company they Reduced the email usage by 97% Implementing this so it's tremendous gain in terms of productivity in terms of Image also because there was a lot of problems with partners So this is an example of most internet thing though You have AD SS single-sided and etc. And they decide well, it's okay. It's quite good another example is The same thing but you have a little bit more complicated because it's duty free boutiques all around the airport so if you go to You probably met one of this brand. It's all the same group. So if you go to Paris, it will be by Paris It may be either duty free, whatever you probably meet them So it's 500 boutiques in 220 airports across four continents 31 countries and they were using Actually x-weekly so they already had some internet style the idea was there was a competition between CGI and side core versus us and Drupal obviously we won so this is example again, so this is an Gmail like app front-end with offline mode support and Things to do you can actually see what have to be done You can say that I actually perform the the thing you can attach images for example. They ask you can you install Your perfumes in front of the entrance. Yes, I did you actually do it? Yes Yes, look I took the picture and I attached it you have a complete notification center You should have so you get notification obviously what happens It's exactly like in every apps and you have also Statuses for each store so we have an overview of all stores and what happens of all stores So on the headquarter level you had seen overview of everything that happens and you can see also The some KPIs Yeah, so you have no, so this is this is the usage of offline mode support because in inside the airports There is almost well the Wi-Fi is not good so you have to be able to continue working with the app within the Connection loss so you classical HTML 5 webcatch indexed DB if you want I will send you the codes Well, not very useful slide, but anyway and finally the most important one cognac because everybody loves cognac Right, so this is a number one company of cognac in the world 50% of the market You have to know that you cannot produce cognac out of cognac. So well, so they have a problem if you if Everybody sells cognac. There are no no problem with sales you sell 100% of your production The problem comes with how to get cognac because you cannot create cognac in champagne. You cannot create cognac in Germany or in England so You have to deal with wine yards because you can you have to buy Wine and cognac and then sell it. So they work with about 2,000 of wine yards. Oh, sorry. It's in French. Oh Sorry Okay, so you will have French lessons for free So, yeah, so what actually they do contracts Engagement samplings Payments in voices every all the relationship between the wine yards and this company is now digitalized And this is extremely important for them because the wine yards are quite grumpy guys They don't have problem with selling their cognac So if you fuck up for example with a bug and you gave a A and a B note for a a cognac They have ABCD their difference is about 200 Thousands of euros for the wine yards. He will say nothing He will say okay fuck off. I will go to the competition and then you lose money because actually without cognac You cannot sell it So we build an application To manage and the and the business rules are extremely complex because they have their own language You don't understand even for in Britain in French. They have a very complex usage You have courtiers. You have guys who has buying who has distilling everybody. It's a complex ecosystem, right? So we built something very Simple we have Drupal managing all the complex stuff We have Angular GS front-end because we want this app to go fast And we want to to say in conferences that we use on geologists because it's so fancy so and we have some data data platform API and some ERP SAP actually for for the For the contracts, right? So actually it looks like you can you can manage contracts You have see you see the sampling stages. So you you actually print a Small badge you put on the bottle you scan the bottle with a barcode you deposit your bottle it tested with a 50 guys testing it like Okay, and then they gave you a note and you get the money So but this is on the paper but actually you have engagement of three years of different parcels of Surface of alcohol how how much is the quality which one it's very complex and you can also go through Creating your your samplings and you can even organize the the distribution with the trucks because you cannot Infinite amount of alcohol within a truck, right? So everything is managed now with Drupal With a quite nice design despite the complexity of this app So you can see all the contracts filtering you see actually Classical Drupal stuff you see views bulk operation you see views You see a content type You see not add create a shantel actually create a sample you can create just an entity you have fields nothing very complicated from a Drupal point of view and Here again, you can organize your tours of distribution And you can drag and drop your deliveries within trucks and then say which date it will be delivered so This they actually already tried to build it with symphony and They spend around a million and a half and three years With a big company and we did it for a half a million and within a year So it's three times faster. Maybe the provider was bad. I don't know but it's not about symphony It's just because we reuse components from Drupal and enables us to go faster final Another example, it's transactional e-learning platform. So if you are a company selling I don't know cognac the e-learning is not really important because okay except very fancy bottles from Louis Louis Trez, which is about two thousand years The cognac is why 50 years but so the e-learning is not important But if you are selling jewelry for two million zeros the selling part in the train and Learning of your sales person is quite important because well two millions is two millions Right. So this is an example of again a Drupal Design App so it's beautiful. I don't know. Well, you can recognize who is this so it's for Managing the e-learning system. So train the sales person from your to actually Learn how to sell right so news about brands what I like evens important events and obviously Learning part I think it will stop. Yeah, so you can go training Okay, you have statistics you have quite beautiful design again front-end all apps And maybe you will get some so you can filter by countless. It's just taxonomies It looks like wow the fact that it's just taxonomies views again Post it's just a classical entity create. Okay. You created a post man But looks how it's different when you are putting UX and design on top of Drupal. It looks shiny. Okay, so then you have Your courses training products so you can go and You can start the program of all the training right? Sorry, well one video Also you have search engine. Sorry. Yeah search engine. So you get quite good French courses So yes again autocomplete solar nothing exceptional just beautiful design again, it shines but the good thing is we started doing this and We actually think it was thinking saying to the to the to the IT guys Look, we have now iPads installed with an application used daily by most of your stuff Why not adding another thing and so actually we implemented inside things the CRM And the digital install from others we already demonstrated So we now we have a quite big application with e-learning CRM and all this managing stores So this is how we grow from Just like look try Drupal and after you eat everything and you remove your dot net Java everything So this is how you do business. Okay, so if you have questions don't hesitate and ask me Yeah, the idea was to make it interactive. That's why I finished early Not because I lack of slides and I finished them this morning, but okay Any questions? Yeah, I will point them with Lazar Well, this is There is a there is a method for that so the idea is First you start with key Key bosses without users to define the overall shape of your backlog product So feature matrix what we use is what we call feature matrix. We actually put the feature down And we are there the value for business the value for each persona So you have to create first who has the create the personas who are who will be actually Virtually using this app and then based on the personas you select the key users and What we used to do is to take one user from each persona one very Fun guy active looking for change digital native and one like conservative Donald Trump stuff like So we mix them together because you have to get this dichotomy to get the right and the backlog So you take the guys who want to change and the one who doesn't want to change So you mix them together and you end up with quite good average product So so so how many it depends of number of personal it may be three it may be five it may be ten but usually you cannot Run up UX workshop with more than five six people. It's not possible. So the UX workshop is five to six percent maximum otherwise you have to split and Then the focus group and the user testing then you can open to many people we did for example user testing for the Cognac portal with about 200 people So it depends off of off of the your business, etc other question No, ah, yeah Yeah, yeah, it's it's rest well actually we the Drupal 8 have some Basic support of rest API. So we use that and then you build up your your your custom custom methods the good thing is to What we actually start it at your is to saying like if you have a lot of API think some of them may be used only for the app like features or Everything that layout related But there are other like get client by ID search client by whatever or other that may be used By other app too. So then we add up some API management level if they all don't already have it like APG mule soft or whatever and then you connect Also those API to offer them to other Application that might use it. So yes, it's basically a rest API standard. Yeah Yeah Drupal have more control in certain places Yeah, well the idea is to say Full full headless full so there is no HTML served by by by Drupal at all But the idea is to say that you can still rearrange layout blocks The only thing is like you assign your it's it's just data So you assign your blocks and your entity your your IDs with blocks You are signed with them some IDs and then on the angular side if The order of blocks or the placement of the block in the regions can be replicated on the templating engine of Angular It's a little it's other little bit of headache, but Obviously you can you can deal with that actually what we do to be honest is to sell them the ability of play out Dragon drop and then say you don't really need it because it isn't it isn't in the backlog, right? So now nobody asked for it. So so forget about it. So this is something like more like, okay You can do that, but you don't really want it You know, we all do that All the questions Well, so so thank you. Sorry for being so quick. I'm on vitamin