Développement d'applications web
Application web?
Nous réalisons des applications web, c'est-à-dire des logiciels conçus pour être utilisé à partir d'un navigateur internet comme Internet Explorer, Firefox ou Safari. Un des avantages de ce type de logiciel, comparativement aux logiciels conventionnels, est qu'il ne nécessite aucune installation sur votre ordinateur. Vous pouvez l'utilisez d'où bon vous semble; méme à partir de votre téléphone!
Méthodes conventionelles
Si vous allez voir une grosse firme de consultants, voici le scénario classique:
Vous allez conjointement procéder à l'élaboration de vos besoins, et la firme se chargera d'écrire un document qui décrit tout ce que doit faire l'application (functional specs). Vous allez signer un contrat (très coûteux) qui confirme que c'est bien cette application dont vous avez besoin. Ensuite, vous les perdrez de vue pendant un certain temps, et ils vous reviennent avec une application qui répond aux besoins établis lors de l'étude préalable. Bonne nouvelle, non?
Dans les faits, lorsque cette application est livrée, le client se rend souvent compte qu'il avait oublié un détail lors de l'étude préalable, simplement parce qu'il n'avait pas pu voir ou toucher le logiciel avant d'avoir reçu la version finale. Alors, pour ajouter ou modifier les fonctionalités, la firme dit qu'elle a respecté le contrat, et devra charger pour le travail supplémentaire.
Le résultat: une application coûteuse, qui répond mal aux besoins.
Le développement agile
Cette nouvelle façon de travailler rend pratiquement obsolète les piles de documents préparées avant de commencer à coder.
Des schemas de base sont élaborés, et l'application commence à être développée. Le travail est divisé en itérations les plus petites possible. Chaque itération est un cycle qui ajoute une fonctionalité au logiciel, qui fonctionne déjà même s'il est loin d'être complété. Aprés chaque cycle, le resultat est évalué par le client pour s'assurer que la direction dans laquelle le développement se dirige est la bonne.
Le résultat: une application qui répond aux besoins du client.
Technologies utilisées
Les technologies utilisées sont, entre autres:
- Adobe Photoshop
- Adobe Illustrator
- XHTML
- CSS
- PHP
- MySQL
- JavaScript
- Ruby on Rails
- Linux
- Apache
