RÔLE D’UNE SOCIETE DE DEVELOPPEMENT WEB
Le rôle d’une société de développement web est de développer sur mesure n’importe quelle fonctionnalité sur un site internet, intranet extranet ou une application mobile. Ozytis étant une entreprise de développement web, nos clients sont habituellement des PME qui viennent nous trouver lorsqu’ils ne trouvent pas de logiciel répondant exactement à leur besoin. Nos clients réalisent souvent un cahier des charges, ce qui nous permet d’estimer dans un premier temps le budget à consacrer pour le projet. Nous réalisons ensuite un cadrage du besoin, puis nous programmons et nous testons la solution. Une fois la solution développée, nous restons disponibles pour corriger les dysfonctionnements éventuels et effectuer des ajustements. Voici en résumé le travail d’une entreprise de développement web.
ETAPES D’UN PROJET DE DEVELOPPEMENT WEB
1- MAQUETTES FONCTIONNELLES
Cette phase est capitale pour une entreprise de développement web, car elle permet de vérifier que nous avons bien compris le besoin du client. Lors de cette phase de cadrage, nous dessinons les écrans des différentes pages du projet d’après les souhaits que le client nous a communiqué. Nous disposons ainsi les menus, les boutons et les différents éléments qui composeront la solution web. Une fois les premières maquettes réalisées, nous les soumettons au client et nous les modifions en fonction de ses retours.
2- SPÉCIFICATIONS FONCTIONNELLES
Les maquettes fonctionnelles ne permettant pas de définir le projet de développement web de manière exhaustive, nous les complétons par des spécifications fonctionnelles. Les spécifications fonctionnelles permettent de définir les différents rôles des utilisateurs de la solution, ainsi que les interactions entre les utilisateurs et la solution web. Les spécifications fonctionnelles permettent également de définir les données recueillies et stockées dans la base de données ainsi que les règles de gestion propres au métier du client ou le contenu des emails envoyés automatiquement…
3- MAQUETTES GRAPHIQUES
Si le projet le nécessite, nous sous-traitons la création de maquettes graphiques à un graphiste. Sinon, nous utilisons les composants standard ou des templates graphiques. Etant une société de développement web spécialisée dans les solutions de productivité, la formule la plus fréquemment choisie est l’utilisation d’un template graphique.
4- GESTION DE PROJET AU SEIN D’UNE ENTREPRISE DE DEVELOPPEMENT WEB
La gestion de projet est une composante capitale d’une société de développement web. Deux chefs de projets web sont chargés de ce travail chez Ozytis. Un Chef de Projets est dédié à chaque projet. Il est là pour tenir les délais et faire respecter le cahier des charges des développements web. Son rôle est de planifier les réunions, recueillir le besoin client, suivre la méthodologie, choisir les solutions techniques, planifier le travail, suivre le projet, coordonner les équipes pour tenir les délais et faire appliquer les requis des maquettes et spécifications fonctionnelles.
Il y a de nombreuses méthodes qui sont utilisées pour le développement web :
- les méthodes agiles (Scrum, Kanban, Extreme programming, …)
- les méthodes adaptatives
- les méthodes traditionnelles (en cascade, chemin critique, …)
Chez Ozytis, nous n’appliquons pas une des méthodes à la lettre, mais avons créé notre méthode, qui est adaptée à la taille des projets de développement web que nous réalisons. Nous nous sommes notamment inspirés des méthodes agiles pour des livraisons régulières et de la méthode en cascade pour son côté planification et exécution. Pour plus de détails sur les différentes méthodes de gestion de projets applicables aux développements web, vous pouvez consulter l’article du site TheDigitalProjectManager.com : méthodologies de gestion de projet.
5- DÉVELOPPEMENT SUR MESURE
Chez Ozytis, l’équipe de développement est 100% interne. Les développeurs travaillent souvent en binôme sur les projets. Leur rôle est de développer la solution en suivant les maquettes et spécifications fonctionnelles. Parfois, des problématiques non identifiées au départ apparaissent. Les développeurs proposent alors une solution au client pour respecter ses souhaits de départ tout en restant dans le périmètre défini. Notre cœur de métier est de développer des solutions web sur mesure. Pour cela, nous réutilisons des briques d’un projet sur l’autre, afin de réduire les coûts de développement pour les clients. Nous utilisons une plateforme de développement permettant de standardiser le code afin qu’il soit facilement exploitable par d’autres développeurs ou par une autre société de développement web.
6- TESTS ET MISE EN PRODUCTION
Les développeurs web testent leur travail eux-mêmes pour s’assurer que les développements n’aient pas de dysfonctionnements. D’autres collaborateurs d’Ozytis réalisent également d’autres tests proches du fonctionnement du client dans le but de corriger le plus possible de bugs avant de fournir la solution de test au client. Le client réalise enfin les derniers tests en associant si possible leurs utilisateurs. Une fois que le client juge la solution aboutie, nous basculons en production. Afin de centraliser les échanges, nous mettons à disposition un outil en ligne pour gérer les bugs et les évolutions de façon collaborative
7- MAINTENANCE ET ÉVOLUTIONS
Nous accompagnons les clients pour maintenir la solution en bon état de fonctionnement. Pour ce faire, nous assurons le support et la maintenance corrective qui consiste à intervenir dans un laps de temps prédéterminé pour corriger les dysfonctionnements éventuels causés par exemple par l’évolution des navigateurs ou un scénario qui n’aurait pas été testé. Nous accompagnons également les clients en réalisant des améliorations de la solution.
QUELLES SONT LES SPECIFICITES D’UN DEVELOPPEMENT WEB EN COMPARAISON A UN DEVELOPPEMENT DE LOGICIEL ?
- Un développement web est destiné à des sites internet ou des applications web, tandis qu’un développement de logiciel s’adresse à des logiciels qui fonctionnent sur différents types d’ordinateurs.
- Un développement web interagit avec d’autres systèmes via des API ou services web alors qu’un développement logiciel est le plus souvent appelé à fonctionné de manière indépendante sur un ordinateur ou un appareil mobile.
- Un développement web utilise des langages type HTML / CSS, Javascript, .NET alors qu’un développement logiciel utilise des langages de type C++, Java, Python.
- Un développement web nécessite d’être hébergé sur un serveur alors qu’un développement logiciel n’ont pas forcément besoin d’être hébergé sur un serveur.
- Un développement web est réalisé pour être compatible pour différents navigateurs alors qu’un développement logiciel doit être compatible avec différents OS (Operating Systems).
QUELLES TECHNOLOGIES SONT UTILISEES ?
Chaque entreprise de développement informatique a ses technologies favorites. Pour les applications web, nous utilisons principalement le framework « .NET » pour le côté back end (serveur). Sur cette partie, nous codons en « C# », langage de programmation orienté objet. En termes de framework front end (ce qui sert à réaliser l’interface utilisateur sur un navigateur), nous utilisons la technologie « Blazor » associée avec du « HTML » et du « CSS ». Pour faire le lien avec les bases de données, nous utilisons « Entity Framework ».
Côté back end (serveur) nous maitrisons aussi le développement en PHP (que ce soit avec Symfony ou Laravel) associé aux bases de données de type MySQL. Côté front end (navigateur) nous maitrisons aussi le développement en ReactJS.
Tous nos projets d’applications web sont compatibles avec les navigateurs Firefox, Chrome, Edge et Safari.
Pour les applications mobiles smartphones ou tablettes, nous utilisons principalement .NET (MAUI ou Xamarin) ce qui nous permet de n’avoir qu’une base de code pour Android ou iOS.
Mais nous maitrisons aussi React Native (sur tablette ou smartphone Android ou iPad ou iPhone iOS) ou bien du développement Android natif.
Pour stocker les données des projets, nous utilisons en fonction des besoins différents systèmes de base de données : SQL Server, SQL Lite, SQL Azure, MySQL, Cosmos DB…
Par ailleurs, nous maîtrisons entre autres les problématiques suivantes :
- Signature électronique
- Paiement en ligne
- Market places
- Personnalisation de produits en ligne
- Gestion de documents
- OCR / ICR (reconnaissance optique de caractères)
- SIG (Systèmes d’Informations Géographiques)
- EDI (Echanges de données entre des systèmes différents par exemple en xCBL, OCI…)
- Création et consommation de services et protocoles d’échanges web (REST, SOAP, ODATA…)
- Technologies WEB