Qualité Nos points forts

Documentation

Vos besoins définissent le projet

Gestion de projets informatiques
Humour, ou réalité ? (source: http://www.gestion-projet-informatique.vivre-aujourdhui.fr/images/gestion-projet-informatique.jpg)

Qui aurait l'idée de passer commande pour un meuble, sans informer le vendeur de ses besoins ? 

  • Quelle est la couleur désirée ?
  • Quelle est la grandeur de la pièce où le client souhaite mettre le nouveau meuble ?
  • Est-ce une armoire, un bureau, une table ?
  • Quel budget a-t'il pour ce meuble ?

 

Inversément: quel vendeur de meubles aurait l'idée de proposer une armoire à chaussures, alors que le client souhaite une étagère pour ranger ses livres ?

 

Cette métaphore n'est pourtant pas loin de la réalité dans le monde du développement informatique.

Sans pouvoir identifier un besoin clair, on arrive généralement à la situation illustrée ci-contre.

C'est la raison pour laquelle nous ne commençons jamais un projet
sans définir clairement les besoins.

Notre méthode est la suivante: 

  • Plusieurs interviews du client sont faites pour connaître au mieux ce qu'il imagine pour son site ou son application
  • Un document de spécifications est créé et partagé avec le client: les différents interviews y sont consignés, travaillé et validés par le client (cf. Mode collaboratif)
  • Ce document est utilisé tout au long du projet, pour y consigner les propositions d'améliorations ou les demandes de modifications
Exemple de wireframe, dans le document de spécifications
Exemple de wireframe, dans le document de spécifications
Code propre et documenté
Code propre et documenté

Wireframes

Durant le développement, des maquettes d'écrans (wireframes) sont construits, afin que vous puissiez rapidement vous rendre compte du rendu visuel de votre site ou application.

Un code propre

Nous mettons un accent tout particulier sur la création de code (PHP, Javascript, ...) soigné, clair et commenté.

Ainsi, la maintenance d'une application est beaucoup plus aisée.

Documentation de projet

Documentation de projet
La documentation de projet est précise

Lors de la saisie initiale du contenu d'un site, suite à une formation, tout est encore "frais" dans la tête.

Mais que se passe-t'il quelques mois après ?

Avec nous, les questions suivantes n'existent pas: 

  • "C'est déjà quoi la taille des images à mettre pour les news ?"
  • "On fait déjà comment pour l'envoi de la newsletter ?"
  • "C'est où déjà la gestion de la galerie d'images ?"

L'utilisation de chaque fonctionnalité de votre site est décrite point à point dans un document - dans votre langue - intégré directement dans TYPO3. Il n'y a même plus besoin de se rappeler où la documentation se trouve, mis à part se souvenir du mot de passe ;-)

Tests

Quoi de plus frustrant qu'une mise à jour du site entrainant des dysfonctionnements sur des modules qui fonctionnaient parfaitement avant ?

Les techniques actuelles de tests permettent de définir des tests automatisés, assurant une non-régression des fonctionnalités suite à une mise à jour.

Différents outils standards sont utilisés pour implémenter ces tests.

Le framework de test Behat, accompagné par la suite Mink, permet de définir des tests d'acceptance dans un language très lisible.

Ainsi, les spécifications d'une fonctionnalités sont vérifiées par un jeu de tests, pouvant être lancés sur les différents serveurs (développement, tests, production), afin de vérifier le bon fonctionnement suite à une mise à jour.

Feature: Agenda Leisure

  @javascript
  Scenario: Lance une recherche par "category"
    Given I am on "/en/seeing-doing/whats-on/cultural-agenda/?no_cache=1"

	Then I open the category block
	Then I check the "#cat-551" radio button
	Then I wait 3 second
	Then I should see "escalade"

	#Test de la vue de détail
	Given I follow "Course de l'escalade"
	Then I should see "Sport"

	When I click on ".menu2"
	Then I should see "www.escalade.ch"
Résultats d'un test Behat
Résultats d'un test Behat

Lors du développement d'applications, principalement lors de création d'algorithmes de calculs, il est nécessaire d'assurer que les résultats attendus par une fonction soient toujours identiques, pour parer à une régression lors de modifications sur cette fonction.

Les tests unitaires permettent de vérifier qu'un résultat attendu soit identique tout au long du cycle de vie de l'application, même suite à des mises à jour.

/**
 * Test case for class Tx_GtcModel_Service_TranslationService.
 *
 * @version $Id$
 * @copyright Copyright belongs to the respective authors
 *
 * @package TYPO3
 * @subpackage GTC Model
 *
 */
class Tx_GtcModel_Service_TranslationServiceTest extends Tx_Extbase_Tests_Unit_BaseTestCase {
	/**
	 * @var Tx_GtcModel_Domain_Model_Category
	 */
	protected $fixture;

	public function setUp() {
		$this->fixture = new Tx_GtcModel_Domain_Model_Category();
	}

	public function tearDown() {
		unset($this->fixture);
	}

	/**
	 * @test
	 */
	public function translateCategory() {
        $translationService = new Tx_GtcModel_Service_TranslationService();

        $GLOBALS['TSFE'] = new stdClass();

        $GLOBALS['TSFE']->sys_language_uid = 1;

        $this->fixture->setLanguageOverlay('language1|language2');

        $translatedTitle = $translationService->translateCategoryTitle($this->fixture);

        $this->assertEquals($translatedTitle, 'language1');
    }


}
Exemple de test unitaire simple

Gestion de projet

Nous privilégions un partage collaboratif des documents du projet, en utilisant différents outils dans le Cloud.

Selon la nature de confidentialité des document, la suite Google App convient parfaitement.

Ainsi, tout est à une même place pour la durée du projet: plus de pièce-jointes aux mails, plus de mails avec 27 réponses (!)

Sur la base d'une documentation standard, ainsi que de la documentation établie tout au long du projet, nous vous donnons une formation efficace, adaptée aux particularités de votre site ou application.

Mots-clés: 

  • Efficace: pas de théorie inutile
  • Documenté: nous veillons à ce que les éléments enseignés lors de la formation soient documentés dans la documentation du projet
  • Orienté résultats: les exercices faits lors de la formation sont basés sur des contenus qui seront utilisés directement sur le site du client
Pivotal Tracker
Pivotal Tracker

Pivotal Tracker est un outil collaboratif de type "Agile".

Il permet de:

 

  • Avoir une vue d'ensemble sur l'état d'avancement du projet
  • Définir une planification par semaine
  • Affiner les tâches de chacun des intervenants sur le projet (graphiste, client, techniConcept, ...)

Il va de soi que l'utilisation d'un tel outil n'est pas contradictoire avec la communication "conventionnelle": parfois, un problème est plus vite réglé par téléphone que via de tels outils !

Retour