J'aime le Smalltalk

Aller au contenu | Aller au menu | Aller à la recherche

Création d'un scénario pour les jeux de tests

Nous utilisons des méthodes de développement agile nous travaillons sur le code du programme en même temps que sa conception.

Nous travaillons donc par itération, nous réfléchissons à la conception d'un morceau du programme, nous le développons et nous le testons tout de suite. Nous essayons de le faire marcher, si on se rend compte que la conception pose problème on laisse le code tel quel et on revient sur la conception.

Comme cela la conception s'adapte aux contraintes techniques réellles (qu'on a rarement en tête au début du projet) et le programme est structuré car il a été conçu proprement sur le papier.

Nous avons besoin de pouvoir tester le programme, pour cela nous avons besoins d'un (ou plusieurs) jeux de tests. Ce sont des morceaux de code qui simulent l'utilisation du programme.

Nous nous sommes répartis les tâches, pendant que l'un développe le coeur du programme, l'autre travail sur les jeux de tests.

J'ai donc commencé à réfléchir à un scénario pour tester le fonctionnement de notre programme Smalltalk.

Voici notre premier scénario :

Scénario 1

Scénario avec 3 OF :

Nous souhaitons fabriquer des étagères (toutes identiques). Nous avons deux matériaux : des planches de bois, des barres de métal. Nous avons deux outils : "scie-circulaire" et "tourneuse"

Nous devons usiner les planches de bois à la bonne taille avec la "scie-circulaire", et usiner les barres de métal pour avoir des vis à bois avec la "tourneuse".

Il faut deux opérateurs pour la scie circulaire et un opérateur pour la tourneuse.

Matières première pour 1 étagère : - 2 planche en bois. - 1 barre en métal.

Temps machine pour 1 étagère : - 2h sur la scie circulaire. - 1h sur la tourneuse.

Nous somme le 1er février 2010. Nous avons en commande 6 étagères à livrer pour la fin du mois (le client vient chercher son produit directement dans le stock, on ne gère pas la livraison).

Les commandes sont divisées en deux lots de 2 étagères et deux lots de 1 étagère. La production décide de fabriquer 3 lots de 2 étagères.

L'approvisionnement du stock se fait automatiquement quand le niveau des stock atteint le seuil minimum.

Je mettrais à jours le billet avec le code correspondant dès qu'il fonctionneras.

A bientôt, Pierre

Au commencement ...

Bienvenue sur ce blog.

Nous allons utiliser ce blog pour publier nos rapport de projets Smalltalk le plus régulièrement possible.

Nous c'est Romain Verduci et Pierre Ammeloot, actuellement étudiant en Licence 3 Economie Gestion option Système d'Information au département Technologie et Management de l'IMUS Annecy.

Notre projet est basé sur un sujet donné en cours de "Conception et Programmation Orienté Objet" d'Hervé Verjus.

Voici le sujet :

1. Gestion d'un OF

Un Ordre de Fabrication contient l'ensemble des informations relatives à la production/fabrication d'une pièce (référence, matières/matériaux, nomenclature, quantité, ressources mobilisées, etc.). L'ensemble des OF est géré au sein d'un système logiciel. On peut créer des OF, lancer un OF (au sens, lancer la fabrication), suspendre un OF, annuler un OF, solder un OF (terminer l'OF)...voire supprimer un OF.

Les OF doivent, après avoir été créés, être planifiés (planification de la production). La planification consiste à l'affectation réelles des ressources en fonction de leurs disponibilités pour la période de production souhaitée (date de début et date de fin). Cette planification va donc mobiliser des ressources (opérateurs, machines, matériaux/matières,...). Cette gestion a également des conséquences sur la gestion des stocks de matières et, leurs réapprovisionnement. Les matières sont réapprovisionnées par un fournisseur qu'il est possible de contacter pour effectuer une demande de réapprovisionnement. On fait l'hypothèse que toute demande de réapprovisionnement est satisfaite (pas de rupture de stock au niveau du fournisseur).

Une fois fabriquée, la pièce est elle-même stockée.

Travail par binôme à réaliser:

* faire le programme Smalltalk supportant la gestion des OF;

* donner le diagramme de classes UML correspondant.

Le travail se fera en « pair-programming ». Vous pouvez vous documenter sur la notion de gestion des OF dans le domaine de la production...et/ou discuter avec des camarades ayant des compétences dans le domaine !

2. Question

Que se passe-t-il si une machine tombe en panne alors que la machine est requise pour la fabrication d'une pièce et si l'OF a été lancé ? Que proposez-vous ?

3. Extensions - Bonus

Pour celles et ceux qui le souhaitent...développez un petit simulateur illustrant, avec des objets graphiques, la production d'une pièce au sein d'une petite usine.

Nous avons commencé par analyser le sujet pour le comprendre au mieux.

L'ensemble du développement du projet a pour objectif de faire au plus simple et de mettre en oeuvre des méthode de développement agile (pair-programming).

Nous réfléchissons donc au développement (la partie conception) tout en jetant les bases du programme dans Visual Works.

A bientôt, pour plus d'informations.

Pierre