vendredi 10 avril 2015

Un site web ASP.NET MVC 5 de A à Z - Projet et cahier de charges

<== Article précédent : Comment faire un site asp.net MVC 5 de qualité

Chose promise lors de mon dernier article, je commence donc ma série d'articles consacrée au développement d'une application web ASP.NET MVC 5 de qualité (je sais c'est prétentieux :) mais vous allez voir ça va être sympa !).


Le projet

Etant donnée que je n'ai pas de sujet en particulier, j'ai donc penser à faire quelque chose de classique. Au fur et à mesure de mon avancement j'enrichirai le projet avec des idées nouvelles selon mon humeur, ou si vous m'en proposez (et oui, je suis joueur).

Le cahier des charges

Voici mon idée : je vais imaginer Monsieur X comme étant le commanditaire de ce projet.
Monsieur X vient me voir et me dit : je veux monter une affaire (un business quoi !) et j'aimerai pour cela une application Web qui proposera mes services. Je vais également faire du commerce et vendre des produits sur ce site. Je ne sais pas trop par quelle activité je vais commencer mais je suis sûr que je ferai les 2 (sous entendus offre de services et ventes de produits). Par contre j'aimerai tout gérer directement sur le site, c'est à dire ajouter, modifier et supprimer moi même les articles et services que je propose, ainsi que la gestion des commandes, etc. J'aimerai aussi avoir une page de statistique avec des graphes pour suivre l'évolution de mes activités.J'aimerai pouvoir également renseigner mes clients directement, suivre leurs commandes, etc

Monsieur X n'a pas beaucoup de temps car il démarre à peine ses activités et il est très pris. Par contre il serait très content si le développement de son application avançait rapidement. Aussi, il reste très disponible au téléphone, donc je peux l’appeler quand je veux.
J'explique à Monsieur X qu'il est vrai qu'on est en 2015 et qu'on a pas besoin d'un roman pour démarrer les développements mais que son expression de besoins reste assez incomplète. Je lui propose donc que l'on travaille en "Agile", afin qu'il puisse me faire des retours au fur et à mesure de l'avancement des développements. Je le contacterai donc très fréquemment (tous les jours), afin qu'il me donne des informations sur des éléments qui ne me sont pas clair pour avancer.
Attention, j'ai bien expliqué à Monsieur X que s'il ne se rendait pas disponible pour répondre à mes questions, moi j'arrêterai de travailler : bon je lui ai dis ça de façon diplomatique bien-sur, c'est quand même lui le client (lol)).

On attaque par quoi ?

Heu... je sais pas ? y'a une réponse type ? je ne crois pas. Moi je dirai qu'il faut commencer par bien comprendre le besoin, même si de nature le besoin est très changeant (surtout de nos jours). Cependant, avoir une compréhension globale du besoin est indispensable. C'est comme faire un fonction mathématiques sans domaine de définition...


Comment aborder le sujet ?

Moi pour bien comprendre, j'aime bien prendre le hauteur (ou du recul si vous préférez). Pour cela, j'utilise des schémas. 
Nous allons donc faire quelques diagrammes UML pour représenter e façon macro ce qu'il y a à faire concrètement.

A très vite !

Article suivant : Modélisation UML (à venir) ==>


mercredi 1 avril 2015

Comment faire un site web ASP.NET MVC 5 de qualité ?

Si vous voulez savoir la réponse à cette question, merci de laisser un commentaire sur ce billet. A partir de 5 réponses je démarrerai un série d'articles concernant la conception de A à Z d'un site Web exemple en ASP.NET MVC 5 avec Visual Studio 2013.

Voici ce qu'il y aura au menu (grosse maille ):
- de l'architecture
- de la modélisation Uml,
- de l'organisation de code
- de la qualité (sécurité, maintenabilité, évolutivité, robustesse)
- de la performance (rapidité)
- du responsive
- du javascript
- de la Poo
- du Sql server
- du Dapper
- du jquery, bootstrap, ajax...
- du test u
- le code partagé sur github
- etc...




Avec l'arrivé prochaine d'ASP.NET 5 alias vNext, il serait intéressant de revoir nos bases sur l'actuel version d'ASP.NET MVC. Aussi le retour de chacun ne serait que bénéfique afin de comparer nos différentes approches, de comprendre certains choix techniques et d'en tirer l'essence.
Alors ? qui est intéressé ? vous pouvez même proposer un sujet d'étude pour ce site d'exemple ! proposer de voir une implémentation de votre choix !
Et non ce n'est pas un poisson d'Avril :) ! plus de 10 articles prévus au programme.
J'attends vos retours pour démarrer !!!!!!!!!!!!!!!!!!!