Comme la plupart des développeurs ont travaillé sur certains modules au cours de leur carrière, il est difficile pour eux de comprendre et de mettre en œuvre une conception complète pour un logiciel, mais je crois que tout le monde peut apprendre !!
Note : Pour les questions d’entretien iOS , consultez ce lien – Top iOS Interview Questions You Must Prepare In 2018
Panel : S’il vous plaît dites-moi la conception pour un système d’ascenseur.
Vous : Suivez l’approche ci-dessous pour identifier si le panel est intéressé par la conception de la classe et sa relation ou intéressé par le backend comme il semble C’est une question assez large.
Du point de vue du développeur d’applications, nous devrions dire les classes et sa relation, les diagrammes de classe &Flux de séquence. Nous connaissons tous le manque de temps lors d’une discussion technique et parfois son difficile ce que l’autre gars attend de nous.
Dans une perspective générale, il est possible que votre panel soit intéressé par la conception de backend donc vous devez clarifier avec lui, ce qu’ils attendent de vous ?
Un instantané du système de contrôle de l’ascenseur
Notre ascenseur a la fonction de base que tous les systèmes d’ascenseur ont, comme monter et descendre, ouvrir et fermer les portes, et bien sûr, prendre des passagers.
L’ascenseur est censé être utilisé dans un bâtiment ayant des étages numérotés de 1 à MaxFloor, où le premier étage est le hall. Il y a des boutons d’appel de cabine(Ascenseur) dans la cabine correspondant à chaque étage. Pour chaque étage, à l’exception du dernier étage et du hall d’entrée, il y a deux boutons d’appel de hall que les passagers peuvent appeler pour monter et descendre. Il n’y a qu’un bouton d’appel de hall descendant au dernier étage et un bouton d’appel de hall montant dans le hall. Lorsque la voiture s’arrête à un étage, les portes s’ouvrent et la lanterne de la voiture indiquant la direction actuelle de la voiture est allumée afin que les passagers puissent connaître la direction actuelle de la voiture. La voiture se déplace rapidement entre les étages, mais elle doit être capable de ralentir suffisamment tôt pour s’arrêter à l’étage souhaité. Afin de certifier la sécurité du système, le frein d’urgence sera déclenché et la voiture sera forcée de s’arrêter dans toutes les conditions dangereuses.
Tous les systèmes interagissent avec des acteurs humains ou automatisés qui utilisent le système dans un certain but, et l’homme et les acteurs s’attendent à ce que le système se comporte de manière prévisible.
2. Déplacer/arrêter la voiture:
Figure 4 : Déplacement de la voiture de rapide à lent puis à l’arrêt
3. Indiquer la direction du mouvement :
Figure 5 : Indiquer la direction du mouvement
4. Déclencher le frein d’urgence : Il existe cinq scénarios pour ce cas d’utilisation :
1. Si la voiture est commandée pour s’arrêter mais qu’elle ne s’arrête pas à un étage souhaité, le frein d’urgence sera déclenché.
2. Si la voiture est commandée pour se déplacer mais qu’elle ne se déplace pas, le frein d’urgence sera déclenché.
3. Si on commande l’ouverture des portes lorsque la voiture s’arrête à un étage, mais que les portes ne s’ouvrent pas, le frein d’urgence sera déclenché.
4. Si les portes s’ouvrent lorsque la voiture se déplace, le frein d’urgence sera déclenché.
5. Si la voiture continue à avancer lorsque la limite de la voie de levage est atteinte, le frein d’urgence sera déclenché.
Je ne montrerai qu’un seul diagramme de séquence pour le cas 5.
Figure 6 : Frein d’urgence – L’ascenseur continue d’avancer lorsque la limite de la voie de palan est atteinte
Je m’attends à ce que la plupart des choses deviennent des images dans votre esprit et soient faciles à retenir ainsi qu’à expliquer. Pour la conception du backend, veuillez suivre la série de conception du système
J’espère que vous aimez l’explication. Pour plus de questions sur la conception, s’il vous plaît attendez et suivez-moi.