ELISAVA Beta. Cas d'èxit desenvolupat per Ymbra

798 views

Published on

Cas d'èxit presentat a la sessió de drupal.cat on expliquem quina és la nostra metodologia de desenvolupament (a grosso modo) tot usant el cas d'èxit de la Beta del web de l'ELISAVA.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
798
On SlideShare
0
From Embeds
0
Number of Embeds
71
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

ELISAVA Beta. Cas d'èxit desenvolupat per Ymbra

  1. 1. ELISAVANou web institucional de lescola de disseny
  2. 2. http://ymbra.com
  3. 3. http://www.elisava.net
  4. 4. Característiques no tècniques● Cadascú és expert en la seva part ● Estratègia web, UX i disseny gràfic per Optimyzet● Projecte realitzat amb pseudo-SCRUM ● Per la beta, 5 sprints de 2-3 setemanes (2 mesos i mig) ● Equip de comunicació i sistemes implicat des del primer dia
  5. 5. Característiques tècniques● Drupal 7● Alguns mòduls: ● Project core: Views, Pathauto, i18n ● Semi project core: Menu block, Menu position ● Camps: Link, Field group, Field collection, References ● Multimèdia: Wysiwyg, Insert, Video filter, Vimeo link formatter● Custom: RSS link formatter, Menu images● Tema personalitzat des de zero.
  6. 6. Nou model de desenvolupament (I) “Si el Drupal barreja contingut i configuració(*) a la base de dades, com ho faig per passar els meus canvis a producció?”● Solució 1: mode manual. Paper + llapis + molta sort● Solució 2: passar tota la configuració a codi i pujar aquest codi a lentorn que pertoqui(*) Configuració: definició de tipus de contingut i camps, variables,vistes, regles, estils dimatge, etc.
  7. 7. Nou model de desenvolupament (II)● En un model clàssic, això shauria dhaver fet via codi, implementant hook_update, però no volem morir en lintent.● Gràcies al “nou” paradigma dexportables, això és una tasca “trivial”.● Features + Strongarm permet exportar múltiples configuracions via UI, i generar un mòdul amb aquesta informació.● Context ens ajuda a gestionar la distribució dels nostres blocs i poder-ho exportar tot a codi.
  8. 8. Nou model de desenvolupament (III)● És bo agrupar els features en funcionalitats. Per exemple, un feature “News” que agrupa el tipus de contingut, els seus camps, els seus estils dimatge, les seves vistes, etc.● Si ho fem bé, podem crear un banc de Features i així reaprofitar aquesta feina per a futurs projectes.● Ah, i com és codi, tot pot anar cap al nostre sistema de control de versions (Git per descomptat :) )
  9. 9. Nou model de desenvolupament (i IV)● Per cada projecte creem un perfil dinstal·lació.● En aquest perfil, a part de gestionar altres temes, generem un makefile amb tots els mòduls i biblioteques que fem servir, especificant versions, pegats a usar, i directoris destí.● Això ens facilita el treball col·laboratiu
  10. 10. projects[boxes][version] = "1.0-beta6"projects[boxes][subdir] = contribprojects[google_analytics][version] = 1.2projects[google_analytics][subdir] = contribprojects[metatag][version] = 1.0-alpha3projects[metatag][subdir] = contribprojects[draggableviews][subdir] = contribprojects[draggableviews][download][type] = gitprojects[draggableviews][download][url] = http://git.drupal.org/project/draggableviews.gitprojects[draggableviews][download][revision] = 24e6ce2cf603bbb5bad008ad14b7a1fedd91e674projects[vimeo_link_formatter][version] = 1.0projects[vimeo_link_formatter][subdir] = contribprojects[vimeo_link_formatter][patch][1350642] = "http://drupal.org/files/settings-summary-doesnt-works.patch"; LIBRARIESlibraries[ckeditor][download][type] = "get"libraries[ckeditor][download][url] ="http://download.cksource.com/CKEditor/CKEditor/CKEditor%203.6.1/ckeditor_3.6.1.tar.gz"libraries[ckeditor][destination] = "libraries"libraries[jquery.cycle][download][type] = "get"libraries[jquery.cycle][download][url] ="https://raw.github.com/malsup/cycle/master/jquery.cycle.all.js"libraries[jquery.cycle][download][filename] = "jquery.cycle.all.min.js"libraries[jquery.cycle][destination] = "libraries"
  11. 11. Conclusions● D7 és obligat per a tots els nous desenvolupaments● No podem seguir treballant amb un model Drupal-clàssic. Cal treballar amb exportables!● Proveu mòduls sense por, i si alguna cosa falla, mireu de solucionar-ho. Molta gent que vindrà darrera us ho agrairà● Ah! I si la interfície és en anglès, traduïu-la al català :)

×