• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Drupal 7 Architectuur
 

Drupal 7 Architectuur

on

  • 3,206 views

Drupal 7 Architectuur

Drupal 7 Architectuur
Overzicht, inzicht in mogelijkheden.

Statistics

Views

Total Views
3,206
Views on SlideShare
3,206
Embed Views
0

Actions

Likes
0
Downloads
30
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Drupal 7 Architectuur Drupal 7 Architectuur Presentation Transcript

    • DRUPAL 7 ARCHITECTUURConcepten, bouwblokken en praktijkDinsdag 11 januari 2011 Door: Maikel Mardjan 2010 cc Organisatieontwerp.nl
    • LEERDOELSchrijf voor jezelf vijf leerdoelstellingen op.
    • JIJ ÉN DEZE WORKSHOP  Maak je eigen aantekeningen  Stel vragen (gedurende de cursus én na afloop)  Iedere sectie heeft een preview en een review
    • LOGISTIEKEindtijdKoffie / theeSanitaire stop(s)PauzeCalamiteiten procedures / nooduitgang
    • WIE?  Wie ben je?  Wat is je ervaring met Drupal?  Bekendheid met OSS?  Bekendheid met WCM?  Bekendheid met „Web 2.0‟?  Bekendheid met technische werking WCM websites?
    • WIE IS ORGANISATIEONTWERP.NL Drs. Ir. Maikel J. Mardjan MBM Meer dan 20 jaar relevante kennis en ervaring op gebied van IT, management en organisatie. Sterk op het raakvlak tussen bedrijfsprocessen en IT.  Msc (ir) Elektrotechniek – Technische Universiteit Delft  Msc (drs) Bedrijfswetenschappen – Rijksuniversiteit Groningen  Master Business Management (MBM) – TSM Business School Belangrijkste aandachtsgebieden: Architectuur, (IT) ontwerpen, Open Source, Integratie (SOA), Open Innovatie, Nieuwe Management Concepten en Internet.
    • AGENDA  Inleiding Drupal7  Kosten en baten  Technische architectuur Drupal7  Open standaarden in Drupal7  Drupal7 SEO en het semantisch web  Gebruik, beheer en onderhoud  Bedrijfsspecifieke uitbreidingen maken in Drupal7  Beveiliging  Toekomst van Drupal
    • AGENDA  Inleiding Drupal7  Kosten en baten  Technische architectuur Drupal7  Open standaarden in Drupal7  Drupal7 SEO en het semantisch web  Gebruik, beheer en onderhoud  Bedrijfsspecifieke uitbreidingen maken in Drupal7  Beveiliging  Toekomst van Drupal
    • INLEIDING DRUPAL 7Preview  Wat is Drupal  Nieuwe functies in Drupal 7  Waarom OSS  Populariteit?
    • WAT IS DRUPAL 7Drupal 7 is de meest recente release van het open source contentmanagement systeem Drupal.Belangrijkste verbeteringen in Drupal 7:  Gebruikersvriendelijkheid  Beveiliging  Theme system  RDF ondersteuning  SEO optimalisatie  Performance  Architectuur (o.a. database abstractie laag, custom fields)(> later meer over de verbeteringen)
    • WAAROM EEN CMS?Gezamenlijk werken aan het maken en onderhouden van(web)content op een consistente manier.Door het gebruik van een CMS is het mogelijk om eenvoudiger zelfof door een bedrijf wijzigingen op een website neer te zetten of teonderhouden.CMS = Content Management System
    • STANDAARD WCM FUNCTIES INDRUPAL7De basis (core) is in Drupal 7 sterk verbeterd:  Een content repository (flexibel, schaalbaar en uitbreidbaar)  Authenticatie van gebruikers (auteurs, editors, reviewers etc)  Content creatie via web browser (Echter noodzakelijke wysiwyg editor zit NIET in core!)  Templates (look & feel / content templates)  Publicatie variatie (koppelen van content)  (Eenvoudige) web analytics en rapportages  Ontwerpmogelijkheden voor niet technische gebruikers  Internationalization and localization  Installatie / ConfiguratieVoor alle denkbare functionaliteit die niet in Drupal 7 „core‟ zit zijnmodules beschikbaar. (Al 895 modules beschikbaar voor D7, voorD6 5162 modules). Denk aan:  Workflow  Editors  CAPTCHA etc
    • WAAROM OSS?Open source is gebaseerd op drie concepten:  “A development methodology that defines a community approach to developing software, meritocracy of developers, and quality based on peer review.”  Een licentie structuur die vrije en directe toegang geeft tot de source code, conform een of meer “Open Source Initiative” licenses.  Een „community‟ (gemeenschap) van gebruikers en ontwikkelaars waarin open participatie centraal staat. Waarom OSS voor een Content Management Systeem?
    • VOORDELEN OPEN SOURCEVoordelen OSS:  Vrijheid van keus  Betrouwbaarheid  Stabiliteit  Mogelijkheid tot code inspectie (audit)  Kosten  Flexibiliteit en „vrijheid‟  Support mogelijkheden
    • POPULARITEIT DRUPAL
    • BEKENDE SITES
    • BEKENDE SITES
    • BEKENDE SITES
    • DRUPAL CMSDe basis:Content op een Drupal website is een „node‟.Een node kan van alles zijn:  Een tekst, een foto , een stuk tekst op een forum, een stukje blog tekst enzNodes kunnen eigenschappen hebben:Bijvoorbeeld een reactie of commentaar op een stuk tekst.„Comments‟ worden niet bewaard als nodes maar hebben dus eenlink met een „node‟.Door het behandelen van content als „nodes‟ is het mogelijk om zeereenvoudig nieuwe eigenschappen aan content (dus nodes) toe tevoegen.
    • NIEUW IN DRUPAL 7Eenvoudige mogelijkheid voor het creëren van CCT (Custom ContentTypes).  Deze functionaliteit wordt geboden door de Field module  De Field module is nieuw in Drupal 7.  In D6 en eerder werd voor het creëren van opmaat content types gebruik gemaakt van de CCK module. Dit was een add- on.  Verbetering op template structuur
    • DE MEEST ZICHTBARE VERNIEUWINGHet menu lint!(demo?!)
    • MENU KENT EEN MEER INTUÏTIEVESTRUCTUUR
    • INLEIDING DRUPAL 7Review  Wat is Drupal  Nieuwe functies in Drupal 7  Waarom OSS  Populariteit?
    • AGENDA  Inleiding Drupal7  Kosten en baten  Technische architectuur Drupal7  Open standaarden in Drupal7  Drupal7 SEO en het semantisch web  Gebruik, beheer en onderhoud  Bedrijfsspecifieke uitbreidingen maken in Drupal7  Beveiliging  Toekomst van Drupal
    • KOSTEN EN BATENPreview  Kwalitatieve winst bij gebruik Drupal  Kosten (indicaties) in EUR ?!  TCO model  Winst ?
    • KOSTEN INDICATIESStandaard hardware: Dell Dell PowerEdge (M910): EUR 4500 (ex housing)Software:  Drupal: 0 EUR (*)  IBM Portal: 3500 EUR (let op complexe pricing structuur: PVU‟s, authorized users, concurrent users, maintenance etc)  SDL Tridion: 5500 EUR (ook hier veel „verborgen‟ vendor lock-in kosten)  Sharepoint: 7000 EUR (ook hier een complexe ondoorzichtige prijsstructuur)Implementatie kosten:  Altijd voor 80% afhankelijk van bedrijfsspecifieke eisen/wensen!Beheerkosten:  Zelf beheren / Zelf hosten / Extern hosten / Managed Service(*) Drupal 7 werkt met op ieder gangbaar OS en met OSS databases.Voor professioneel gebruik is nodig: Een staging omgeving!Indicaties verschillen Drupal vs Commerciële omgeving voor „kleine site‟:  0 EUR vs 250k (!)Algemeen:Commerciële WCM pakketen kennen een zeer complexe en niet transparanteprijsstructuur, waarbij niet altijd kosten voor ‘triviale’ componenten zoals OS,Database beheercomponenten zijn meegenomen.
    • TCO MODEL Personal Cost License Cost Evaluation Operations Architecture and Development and and Design procurement Management TCO Influence Factors Manageability
    • OSS OF NIET?Bij een CMS selectie dient men goed te letten op de beheerskostenachteraf. Hier zit namelijk de grootste kostenpost.Factoren:  Eenmalige licentie kosten  Gewenste afhankelijkheid / onafhankelijkheid voor (eind)klanten  Hosting model  Realiseren „op maat‟ functionaliteit  Training / Consultancy
    • VOORDELEN VOOR KLANT (DRUPAL 7)Subjectieve kwalitatieve voordelen:  Niet afhankelijk van één bedrijf (voor realisatie / beheer / training).  Eenvoudig te wisselen van implementatie partner  Zonder externe partijen content beheer kunnen doen  Geen licentie kosten  Enorme installed base  Betrouwbaarheid  Regelmatige updates  Veel aanvullende functionaliteit beschikbaarGevaren:  Incompatabiliteit van modules  Duur beheer  Afhankelijkheid van implementatie partnerTips:  Maak goede (juridische) afspraken.  Borg code aanpassing via GPL of BSD licentie  Kijk of implementatie partner voor uw gemaakte functionaliteit ongewijzigd in OSS domein beschikbaar stelt.
    • WINST?  Hergebruik  Niet opnieuw uitvinden van het wiel  Gebruik maken van Drupal communityMaar vooral:  Flexibiliteit en  Snelheid Bijna duizend mensen van de hebben een directe bijdrage aan de core van Drupal 7 geleverd.
    • KOSTEN EN BATENReview  Kwalitatieve winst bij gebruik Drupal  Kosten in EUR ?!  TCO model  Winst ?
    • AGENDA  Inleiding Drupal7  Kosten en baten  Technische architectuur Drupal7  Open standaarden in Drupal7  Drupal7 SEO en het semantisch web  Gebruik, beheer en onderhoud  Bedrijfsspecifieke uitbreidingen maken in Drupal7  Beveiliging  Toekomst van Drupal
    • TECHNISCHE ARCHITECTUURPreview  Overzicht belangrijkste onderdelen Drupal 7  Basisbouwblokken  Technieken achter Drupal  Pagina ontwerp & Thema ontwerp
    • DRUPAL 7 OVERZICHT Modules Content Templates (nodes) Drupal 7 Core Middleware PHP ‘framework’ (PHP / WebServer API’s / Database)
    • DRUPAL 7 BASIS BOUWBLOKKEN Business Services (CMS, eCommerce) Drupal 7 Contributed Drupal 7 Framework modules Middleware (PHP, WebServer, Databases) Operating System Virtual Server(s) Physical Server(s)
    • TECHNIEK ACHTER DRUPAL7De belangrijkste componenten:  Webserver (IIS / Apache)  PHP  Jquery  Database  PostgressSQL  MySQL (of MariaDB)  SQL-LiteLet op versies van componenten.
    • DRUPAL 7: LOGISCH Web browser WebServer Drupal 7 Client (user) (Apache / IIS) Web browser Database Admin UI
    • PAGE DESIGNING AND THEMINGLet op: Theme afhankelijkheid!
    • CONFIGURATIE VAN EEN BLOCK
    • UX:VARIABELENZichtbaar en makkelijk aanpasbaar:Blocks (Bepaald welke block content waar op de site terug komt)Menus (Toevoegen, front-page, comment setting etc)Content typesBlocks zijn via drag-and-drop te plaatsen in Drupal 7
    • ZELF EEN THEME MAKEN?Kracht met Drupal 7:  Page, node, block and other template (.tpl.php) file inheritance  Sub themes(Zie:http://drupal.org/node/171194)
    • VOORBEELD STRUCTUUR THEMEname = Bartikdescription = A flexible, recolorable theme with many regions.package = Coreversion = VERSIONcore = 7.xstylesheets[all][] = css/layout.cssstylesheets[all][] = css/style.cssstylesheets[all][] = css/colors.cssstylesheets[print][] = css/print.cssregions[header] = Headerregions[help] = Helpregions[page_top] = Page topregions[page_bottom] = Page bottomregions[highlighted] = Highlightedregions[featured] = Featuredregions[content] = Contentregions[sidebar_first] = Sidebar firstregions[sidebar_second] = Sidebar second…
    • TECHNISCHE ARCHITECTUURReview  Overzicht belangrijkste onderdelen Drupal 7  Basisbouwblokken  Technieken achter Drupal  Pagina ontwerp & Thema ontwerp
    • AGENDA  Inleiding Drupal7  Kosten en baten  Technische architectuur Drupal7  Open standaarden in Drupal7  Drupal7 SEO en het semantisch web  Gebruik, beheer en onderhoud  Bedrijfsspecifieke uitbreidingen maken in Drupal7  Beveiliging  Toekomst van Drupal
    • WAT IS EEN ‘OPEN STANDAARD’Open vragen?  Verschil met OSS  Belang van een „open standaard‟  Kan Web 2.0 zonder open standaarden? Stelling: Een open standaard is niet nodig voor succesvolle OSS software!
    • DEFINITIE OPEN STANDAARDEen standaard is volledig „open‟ als:  De standaard is goedgekeurd en zal worden gehandhaafd door een non-profit organisatie  De standaard is gepubliceerd en over het specificatiedocument van de standaard kan vrijelijk worden beschikt.  Het intellectuele eigendom – met betrekking tot mogelijk aanwezige patenten – van (delen) van de standaard is onherroepelijk ter beschikking gesteld op een „royalty-free‟ basis;  Er zijn geen beperkingen omtrent het hergebruik van de standaard. Stelling: Een open standaard is niet nodig voor succesvolle OSS software!
    • BESCHIKBAAR IN DRUPAL7  OPML (Zit in de „core‟ aggregator module).  OPML is een op XML gebaseerd formaat om gestructuureerde informatie tussen verschillende applicaties uit te wisselen.  Resource Description Framework (RDF) and RDFa (W3c)  PURLs (Persistent Uniform Resource Locators) zijn Web addressen die als permanente identifiers fungeren voor dynamische website.  OpenIDDaarnaast gebruik van veel „standaard‟ componenten, zoals:  Jquery  Php-pdoEn natuurlijk:  Javascript  CSS
    • AGENDA  Inleiding Drupal7  Kosten en baten  Technische architectuur Drupal7  Open standaarden in Drupal7  Drupal7 SEO en het semantisch web  Gebruik, beheer en onderhoud  Bedrijfsspecifieke uitbreidingen maken in Drupal7  Beveiliging  Toekomst van Drupal
    • DRUPAL7 SEO EN HET SEMANTISCH WEBPreview  Voordelen semantisch web?  RDF  SEO  Nut / Noodzaak leesbare URL‟s
    • SEMANTIC WEBGebaseerd op paradigma shift: WWW Content & links WWW Relaties & betekenisvol (beschrijvingen)Internet transformatie naar universeel medio voor data, informatieen kennis uitwisseling
    • VOORDELEN SEMANTIC WEBVoor content makers / eigenaars:  Nieuwe mogelijkheden om zichtbaarheid van content te verhogen  Cross marketing voordelen doordat nieuwe routes naar jouw Drupal 7 content mogelijk zijn  Door verhoogde relevantie vanuit zoekresultaten meer terugkerende bezoekers naar de site.
    • RDFHiërarchie werkt niet meer: Ga voor „slimme‟ tags. Dus: Toevoegen slimme tags aan content (‘nodes’)In Drupal 7 zit standaard een verbeterde taxonomie ondersteuning.Gebruiken om:  Site beter te organiseren  Vindbaarheid van informatie drastisch te verhogen  Bij grote omgevingen (meerdere informatie stromen, eigenaren)(Voor techneuten:In Drupal 7 is taxonomy gebaseerd op de „Field‟module)
    • SEO
    • DRUPAL 7 SEODe basis principes blijven geldig, maar eenvoudiger wordt het wel:De „Drupal SEO module‟ is niet meer 100% noodzakelijk. (Ook nog nietvrijgegeven voor D7).Standaard:  Code is W3C compliant  Layouts zijn op CSS gebaseerd  Mogelijkheid om content te categoriseren  * <title> tags worden automatisch gecreëerd  Werkbare robot.txtModules zijn er om :  Meta tags toe te voegen  Xml map  Meer controle over <title> tag  Controle over meta tags zoals description, keywords  Uploaden van een Google XML SitemapGoogle lijkt eind 2010 gevoelig voor ‘snelheid’ en unieke content(<p>uniek</p>). Manipulatie wordt nog altijd niet gewaardeerd!
    • DRUPAL 7 EN KORTE URL’S?!(korte demo)http://sitename/?q=node#overlay=%3Fq%3Dadmin%252FreportsOfhttp://sitename/overzichtjes
    • DRUPAL7 SEO EN HET SEMANTISCH WEBReview  Voordelen semantisch web?  RDF  SEO  Nut / Noodzaak leesbare URL‟s
    • AGENDA  Inleiding Drupal7  Kosten en baten  Technische architectuur Drupal7  Open standaarden in Drupal7  Drupal7 SEO en het semantisch web  Gebruik, beheer en onderhoud  Bedrijfsspecifieke uitbreidingen maken in Drupal7  Beveiliging  Toekomst van Drupal
    • GEBRUIK, BEHEER EN ONDERHOUDPreview  Gebruik en grootschalig gebruik (heavy use)  LCM (ITIL, ASL, BISL?)  Testen
    • GEBRUIKBij het gebruik starten van een Drupal project zijn verschillendestakeholders betrokken:  GUI ontwerper / Interactie ontwerper  Ontwikkelaar  Themer (Ontwikkelaar voor style sheets)  Site eigenaar  Eindgebruikers  Business managers (marketing, verkoop, legal)  Webmaster(s) (m/v)  Beheerders (system administrators)  Trainers
    • GROOTGEBRUIK?Ook met Drupal is bewezen 20 miljoen page views verdeeld over 12uur gehaald!Technieken: - CDN (met of zonder de D7 module) - DB-Cluster (SQL-Cluster0 - Loadbalancing - Hadoop - performance process (profiling!) - Webserver optimalisation - Memcache - HipHopDenk aan session management bij schaling!(voor de technische mensen: Er is meer dan alleen het PHPSESSID)
    • GANGBARE CONFIGURATIE BIJGROOTGEBRUIK(plenair)Belangrijkste punten:  Pagina‟s per minuut  NFR‟s!  Loadbalancers  Proxies  SSL offloader(s)  Beschikbaarheid (99,998%)? (Single Points of Failue geaccepteerd?)  Extern laten hosten
    • LIFE CYCLE MANAGEMENT Software updates (security)fixes Onderhoud Toevoegen / wijzingen functionaliteit Monitoren gebruikKleine aanpassingen QA (QoS) Requirements Nieuwe node templates Implementatie Ontwerp Look &Feel Functioneel / Technisch AGILE! Regressie testen !
    • TESTEN!In Drupal 7 is het test framework aan de „core‟ toegevoegd (defaultuit natuurlijk)Drupal test framework is gebaseerd op het defacto PHP framework:SimpleTest (OSS Unit testing framework for PHP)Kijk naar de risico‟s:  Wat testen?  Waarom testen?  Hoe te testen?  Wie moet testen?
    • SCREENSHOT TESTEN IN D7
    • TEST RESULTATEN VIA ADMIN GUI
    • GEBRUIK, BEHEER EN ONDERHOUDReview  Gebruik en grootschalig gebruik (heavy use)  LCM (ITIL, ASL, BISL?)  Testen
    • AGENDA  Inleiding Drupal7  Kosten en baten  Technische architectuur Drupal7  Open standaarden in Drupal7  Drupal7 SEO en het semantisch web  Gebruik, beheer en onderhoud  Bedrijfsspecifieke uitbreidingen maken in Drupal7  Beveiliging  Toekomst van Drupal
    • DRUPAL7 ALS FLEXIBELE PORTAL Corporate Knowledge Specialized Ecommerce Portal BI Portal Portal Portal Portal Presentation Services Identity Data Search Workflow Personalization Management IntegrationCollaboration / Application ... Groupware Integration Application Services Data Storage Data Abstraction Backup/Restore Data Access Data ServicesExternal Internal Meta Customer data Data data data
    • MOGELIJKHEDEN VOOR EIGEN(UNIEKE) FUNCTIONALITEITEigen functionaliteit toevoegen:  Drupal 7 gebruiken als php-framework  API‟s  Hooks  Modules (uitbreiden)  Look & Feel!Best practices:  Requirements  Agile aanpak  CCT als optie?  Is het echt noodzakelijk  Voortbouwen op een module
    • AGENDA  Inleiding Drupal7  Kosten en baten  Technische architectuur Drupal7  Open standaarden in Drupal7  Drupal7 SEO en het semantisch web  Gebruik, beheer en onderhoud  Bedrijfsspecifieke uitbreidingen maken in Drupal7  Beveiliging  Toekomst van Drupal
    • VERVELEND?!www.crisis.nlScreenshot hieronder: $#@
    • OOK VERVELEND?
    • BEVEILIGING?!Traditioneel:  Betrouwbaarheid  Integriteit  BeschikbaarheidWat biedt Drupal 7 standaard?201x:  Imago  Privacy  Web 2.x?!
    • STANDAARD DRUPAL 7MOGELIJKHEDEN  Gebruikers  Rechten per rol  Rechten op content onderdelen  Rechten op (module) functionaliteit  IP-Blocking
    • RECHTEN OP FUNCTIONALITEIT
    • AGENDA  Inleiding Drupal7  Kosten en baten  Technische architectuur Drupal7  Open standaarden in Drupal7  Drupal7 SEO en het semantisch web  Gebruik, beheer en onderhoud  Bedrijfsspecifieke uitbreidingen maken in Drupal7  Beveiliging  Toekomst van Drupal
    • DRUPAL8 OF DRUPAL7++Wenselijke of noodzakelijke verbeteringen:  Caching  Plug-in framework (modules)  Performance (memory gebruik)  Afronden van niet-afgemaakte delen  Php6?  HTML5 (volledig)  API‟s (incl documentatie)Belangrijkste voor gebruikers:  Stabiliteit  Backwards compabiliteit
    • DRUPAL 8Nog meer nadruk op:  Gebruikersvriendelijkheid  Performance verbeteringen voor „standaard‟ installaties  Webmasters  Themers  Extensie ontwikkelaars (api‟s / modules)  TestbaarheidEn natuurlijk:  Ipad / Tables  Mobile devices integratie
    • SAMENVATTING  Inleiding Drupal7  Kosten en baten  Technische architectuur Drupal7  Open standaarden in Drupal7  Drupal7 SEO en het semantisch web  Gebruik, beheer en onderhoud  Bedrijfsspecifieke uitbreidingen maken in Drupal7  Beveiliging  Toekomst van Drupal
    • KANSEN!Organisatieontwerp.nl werkt samen met gerenommeerde bureaus dievoldoen aan de hoogste kwaliteitscriteria op gebied van kennis enervaring op gebied van organisatieadvies en architectuurondersteuning.Organisatieontwerp.nl is platinum partner van het innovatienetwerk vande Business Management Support Stichting. Meer informatie over dit innovatienetwerk is te vinden op: www.bm-support.org
    • CONTACT?Bel : +31 (0) 6 22869536 ofMail : info@organisatieontwerp.nl ‘Alleen is niemand wijs genoeg’ Plautus