Académique Documents
Professionnel Documents
Culture Documents
LOGO DE L'ÉCOLE
ANNÉE ACADÉMIQUE :
2019-20
DE MORPION)
LOGO DE L'ÉCOLE 5
CERTIFICAT 5
ACCUSÉ DE RÉCEPTION
XI
L'INFORMATIQUE
083
6
INTRODUCTION 7
1
OBJECTIFS DU PROJET
7
SYSTÈME PROPOSÉ8
CYCLE DE VIE DU
DÉVELOPPEMENT DU
SYSTÈME (SDLC) 10
LES PHASES DU CYCLE DE
VIE DU DÉVELOPPEMENT
DU SYSTÈME11
PHASE D'INITIATION
11
L'objectif de la phase
d'initiation est le suivant :
11
PHASE DE
DÉVELOPPEMENT DU
CONCEPT DU SYSTÈME
12
PHASE DE PLANIFICATION
13
PHASE D'ANALYSE DES
BESOINS 14
Les objectifs de cette phase
sont les suivants14
PHASE DE CONCEPTION
14
PHASE DE
DÉVELOPPEMENT 16
PHASE D'INTÉGRATION ET
DE TEST 16
PHASE DE MISE EN
ŒUVRE 17
PHASE D'EXPLOITATION
ET DE MAINTENANCE
2
17
SORTIE 30
»> 30
II 30
I I 41516 30
I I 71819 30
II 30
I I 41516 30
TEST 31
LES MÉTHODES D'ESSAI
31
TESTS DE LA BOÎTE NOIRE
31
LES TESTS BASÉS SUR LES
SPÉCIFICATIONS 32
AVANTAGES ET
INCONVÉNIENTS 32
TESTS EN BOÎTE
BLANCHE 32
ÉVALUATION DE
L'EXHAUSTIVITÉ DU
CODE 33
EXIGENCES EN MATIÈRE
DE MATÉRIEL ET DE
LOGICIEL 34
GUIDE DE PROJET:
PGT (CS)
3
NOM DE L'ÉCOLE
LOGO DE L'ÉCOLE
CERTIFICAT
Travail intitulé "TIC-TAC-TOE GAME." dans la matière Computer Science (083) définie
dans le règlement du CBSE pour les besoins de l'examen pratique de la classe XI qui
( )
PGT Comp Sci
Maître IC
L'examinateur :
Nom : ________________
Signature :
Date :
4
TABLE DES MATIÈRES [ T O C ]
01 ACCUSÉ DE RÉCEPTION 04
02 INTRODUCTION 05
03 OBJECTIFS DU PROJET 05
04 SYSTÈME PROPOSÉ 06
07 DIAGRAMME DE FLUX 15
08 CODE SOURCE 16
09 SORTIE 19
10 TEST 20
12 BIBLIOGRAPHIE 24
ACCUSÉ DE RÉCEPTION
Outre mes efforts, la réussite d'un projet dépend largement des encouragements
et des orientations de nombreuses autres personnes. Je saisis cette occasion pour
exprimer ma gratitude aux personnes qui ont contribué à la réussite de ce projet.
5
mener à bien ce projet.
J'ai l'immense plaisir d'exprimer mes remerciements à ___ pour m'avoir fourni une
l'infrastructure et le soutien moral lors de la réalisation de ce projet dans l'école.
Les conseils et le soutien reçus de tous les membres qui ont contribué et qui
contribuent à ce projet ont été essentiels à sa réussite. Je leur suis reconnaissante pour
leur soutien et leur aide constants.
Xs and Os est un jeu de papier et de crayon pour deux joueurs, X et O, qui marquent à tour de
rôle les cases d'une grille de 3×3. Le joueur qui réussit à placer trois de ses marques dans une
OBJECTIFS DU PROJET
6
connaissances en programmation dans une situation/un problème du monde réel et de
logiciel.
moyenne envergure.
de logiciels.
SYSTÈME PROPOSÉ
faillibles de be really wants to stand against today's merciless competition where not to
wise saying "to err is human" no longer valid, it's outdated to rationalize your mistake.
Ainsi, pour suivre le rythme du temps, pour obtenir le meilleur résultat sans
Il faut utiliser le logiciel de gestion des données. Les logiciels ont joué un rôle de
sur les marchés de nombreux produits logiciels qui ont contribué à faciliter le travail des
7
la tenue d'un grand nombre de registres et la réalisation d'un grand nombre de travaux
sur papier, mais aujourd'hui, les logiciels de cette organisation ont rendu leur travail plus
rapide et plus facile. Il ne reste plus qu'à charger ce logiciel sur l'ordinateur et le travail
8
CYCLE DE VIE DU DÉVELOPPEMENT DU SYSTÈME (SDLC)
9
LES PHASES DU CYCLE DE VIE DU DÉVELOPPEMENT DU SYSTÈME
PHASE D'INITIATION
Une supervision attentive est nécessaire pour s'assurer que les projets
soutiennent les objectifs stratégiques de l'entreprise et que les ressources sont
effectivement mises en œuvre dans l'architecture d'entreprise d'une organisation. La
phase d'initiation commence lorsqu'une opportunité d'ajouter, d'améliorer ou de corriger
un système est identifiée et formellement demandée par la présentation d'une analyse
de rentabilité. L'analyse de rentabilité doit, au minimum, décrire l'objectif de la
proposition, identifier les avantages escomptés et expliquer comment le système
proposé soutient l'une des stratégies commerciales de l'organisation. L'analyse de
rentabilisation doit également identifier les solutions alternatives et détailler autant que
possible les exigences en matière d'information, de fonctionnement et de réseau.
1
0
PHASE DE DÉVELOPPEMENT DU CONCEPT DU SYSTÈME
1
1
PHASE DE PLANIFICATION
La phase de planification est l'étape la plus critique dans la réalisation des projets
de développement, d'acquisition et de maintenance. Une planification minutieuse, en
particulier dans les premières phases d'un projet, est nécessaire pour coordonner les
activités et gérer efficacement les risques du projet. La profondeur et la formalité des
plans de projet doivent être proportionnelles aux caractéristiques et aux risques d'un
projet donné. Les plans de projet affinent les informations recueillies au cours de la
phase de lancement en identifiant plus précisément les activités et les ressources
nécessaires à la réalisation d'un projet.
Une partie essentielle du travail du chef de projet consiste à coordonner les
discussions entre les utilisateurs, les auditeurs, les responsables de la sécurité, de la
conception, du développement et du réseau afin d'identifier et de documenter le plus
grand nombre possible d'exigences fonctionnelles, de sécurité et de réseau. Au cours de
cette phase, un plan est élaboré qui documente l'approche à utiliser et comprend une
discussion sur les méthodes, les outils, les tâches, les ressources, les calendriers de
projet et la contribution des utilisateurs. Les affectations de personnel, les coûts, le
calendrier du projet et les dates cibles sont établis.
Un plan de gestion de projet est créé avec des éléments liés à la planification de
l'acquisition, à la planification de la gestion de la configuration, à la planification de
l'assurance qualité, au concept d'opérations, à la sécurité du système, à la vérification et
1
2
à la validation, et à la planification de la gestion de l'ingénierie des systèmes.
Cette phase définit formellement les besoins fonctionnels détaillés des utilisateurs
en utilisant les besoins de haut niveau identifiés dans les phases de lancement, de
conception du système et de planification. Il définit également les exigences en termes
de données, de performances du système, de sécurité et de maintenabilité du système.
Les exigences sont définies au cours de cette phase à un niveau de détail suffisant pour
permettre la conception des systèmes. Ils doivent être mesurables, testables et se
rapporter au besoin ou à l'opportunité identifiés lors de la phase d'initiation. Les
exigences qui seront utilisées pour déterminer l'acceptation du système sont consignées
dans le plan directeur de test et d'évaluation.
PHASE DE CONCEPTION
1
3
identifient et relient des sous-systèmes et des connexions plus petits. En utilisant une
approche ascendante, les concepteurs commencent par identifier et relier les
composants et interfaces mineurs du programme, puis développent les schémas de
conception à mesure qu'ils identifient et relient des systèmes et des connexions plus
importants. Les techniques de conception contemporaines utilisent souvent des outils de
prototypage qui construisent des maquettes d'éléments tels que des écrans
d'application, des dispositions de base de données et des architectures de système. Les
utilisateurs finaux, les concepteurs, les développeurs, les gestionnaires de bases de
données et les administrateurs de réseaux doivent revoir et affiner les prototypes dans le
cadre d'un processus itératif jusqu'à ce qu'ils s'accordent sur une conception acceptable.
Le personnel chargé de l'audit, de la sécurité et de l'assurance qualité doit être impliqué
dans le processus de révision et d'approbation. Au cours de cette phase, le système est
conçu pour répondre aux exigences fonctionnelles identifiées lors de la phase
précédente. Étant donné que les problèmes rencontrés lors de la phase de conception
peuvent s'avérer très coûteux à résoudre à un stade ultérieur du développement du
logiciel, divers éléments sont pris en compte dans la conception pour atténuer les
risques. Il s'agit notamment de
1
4
l'entreprise. Parallèlement à l'élaboration de la conception du système, le
gestionnaire de projet de l'Agence commence à élaborer le plan de mise en
œuvre, le manuel d'exploitation et de maintenance et le plan de formation.
PHASE DE DÉVELOPPEMENT
1
5
4- Essais sur le site de développement par le contractant et éventuellement avec
l'aide des utilisateurs finaux.
4- Test en tant que système déployé avec les utilisateurs finaux travaillant en
collaboration avec le personnel contractuel
+ Test opérationnel par l'utilisateur final qui exécute seul toutes les fonctions.
Les exigences sont suivies tout au long des essais, une évaluation finale de
vérification et de validation indépendante est effectuée et toute la documentation
est examinée et acceptée avant la réception du système.
Cette phase débute après que le système a été testé et accepté par l'utilisateur.
Au cours de cette phase, le système est installé pour prendre en charge les fonctions
commerciales prévues. La performance du système est comparée aux objectifs de
performance établis au cours de la phase de planification. La mise en œuvre comprend
la notification et la formation des utilisateurs, l'installation du matériel, l'installation des
logiciels sur les ordinateurs de production et l'intégration du système dans les processus
de travail quotidiens. Cette phase se poursuit jusqu'à ce que le système fonctionne en
production conformément aux exigences définies par l'utilisateur.
1
6
4- Procéder à des évaluations périodiques du système pour s'assurer que les
exigences fonctionnelles continuent d'être satisfaites.
4- Déterminer quand le système doit être modernisé, remplacé ou mis hors service.
1
7
DIAGRAMME
DE FLUX
1
8
CODE SOURCE
import random
square_values = ["1", "2", "3", "4", "5", "6", "7", "8", "9"]
nombre_de_tours = 0
no_wins = True
player_1_pick = ""
player_2_pick = ""
vide pour
player_2 = input("Enter a name for player 2 and press enter, leave blank to
si (joueur_1 == "") :
si (joueur_2 == "") :
d'autre part :
1
9
passer
si (random.randint(1,2) == 1) :
si (player_1_pick == "X") :
player_2_pick = "O"
d'autre part :
player_2_pick = "X"
d'autre part :
si (player_2_pick == "X") :
player_1_pick = "O"
d'autre part :
player_1_pick = "X"
#makes a move
print("""
LOGO DE L'ÉCOLE................................................................................................................5
CERTIFICAT........................................................................................................................5
ACCUSÉ DE RÉCEPTION...........................................................................................6
INTRODUCTION..........................................................................................................7
OBJECTIFS DU PROJET.............................................................................................7
SYSTÈME PROPOSÉ...................................................................................................8
CYCLE DE VIE DU DÉVELOPPEMENT DU SYSTÈME (SDLC).........................10
LES PHASES DU CYCLE DE VIE DU DÉVELOPPEMENT DU SYSTÈME........11
PHASE D'INITIATION...............................................................................................11
L'objectif de la phase d'initiation est le suivant :.........................................................11
PHASE DE DÉVELOPPEMENT DU CONCEPT DU SYSTÈME............................12
2
0
PHASE DE PLANIFICATION...................................................................................13
PHASE D'ANALYSE DES BESOINS........................................................................14
Les objectifs de cette phase sont les suivants...............................................................14
PHASE DE CONCEPTION........................................................................................14
PHASE DE DÉVELOPPEMENT................................................................................16
PHASE D'INTÉGRATION ET DE TEST...................................................................16
PHASE DE MISE EN ŒUVRE..................................................................................17
PHASE D'EXPLOITATION ET DE MAINTENANCE.............................................17
SORTIE........................................................................................................................30
»>.....................................................................................................................................30
I I......................................................................................................................................30
I I 41516...........................................................................................................................30
I I 71819...........................................................................................................................30
I I......................................................................................................................................30
I I 41516...........................................................................................................................30
TEST............................................................................................................................31
LES MÉTHODES D'ESSAI........................................................................................31
TESTS DE LA BOÎTE NOIRE...................................................................................31
LES TESTS BASÉS SUR LES SPÉCIFICATIONS...................................................32
AVANTAGES ET INCONVÉNIENTS......................................................................32
TESTS EN BOÎTE BLANCHE...................................................................................32
ÉVALUATION DE L'EXHAUSTIVITÉ DU CODE..................................................33
EXIGENCES EN MATIÈRE DE MATÉRIEL ET DE LOGICIEL...........................34
{} | {} | {}
status = True
essayer :
int(choix)
2
1
si (valeurs_carrées[int(choix)-1] != "X" et valeurs_carrées[int(choix)-1] !=
"O") :
square_values.remove(choice)
square_values.insert(int(choice)-1, player_pick)
statut = Faux
d'autre part :
d'autre part :
except ValueError :
status_main = True
global status_main
global no_wins
square_values[value3] == "X") :
status_main = False
no_wins = False
if(player_1_pick == "X") :
d'autre part :
square_values[value3] == "O") :
2
2
status_main = False
no_wins = False
if(player_1_pick == "O") :
d'autre part :
d'autre part :
passer
global number_of_turns
global status_main
si (no_wins == True) :
nombre_de_tours = nombre_de_tours + 1
make_a_move(player, pick)
check_for_a_win(0, 1, 2)
check_for_a_win(3, 4, 5)
check_for_a_win(6, 7, 8)
check_for_a_win(0, 3, 6)
check_for_a_win(1, 4, 7)
check_for_a_win(2, 5, 8)
check_for_a_win(0, 4, 8)
check_for_a_win(2, 4, 6)
status_main = False
2
3
while (status_main == True) :
func_1(player_1, player_1_pick)
square_values = ["1", "2", "3", "4", "5", "6", "7", "8", "9"]
nombre_de_tours = 0
no_wins = True
player_1_pick = ""
player_2_pick = ""
si (joueur_1 == "") :
si (joueur_2 == "") :
d'autre part :
passer
2
4
si (random.randint(1,2) == 1) :
si (player_1_pick == "X") :
player_2_pick = "O"
d'autre part :
player_2_pick = "X"
d'autre part :
si (player_2_pick == "X") :
player_1_pick = "O"
d'autre part :
player_1_pick = "X"
LOGO DE L'ÉCOLE................................................................................................................5
CERTIFICAT........................................................................................................................5
ACCUSÉ DE RÉCEPTION...........................................................................................6
INTRODUCTION..........................................................................................................7
OBJECTIFS DU PROJET.............................................................................................7
SYSTÈME PROPOSÉ...................................................................................................8
CYCLE DE VIE DU DÉVELOPPEMENT DU SYSTÈME (SDLC).........................10
LES PHASES DU CYCLE DE VIE DU DÉVELOPPEMENT DU SYSTÈME........11
PHASE D'INITIATION...............................................................................................11
L'objectif de la phase d'initiation est le suivant :.........................................................11
PHASE DE DÉVELOPPEMENT DU CONCEPT DU SYSTÈME............................12
PHASE DE PLANIFICATION...................................................................................13
PHASE D'ANALYSE DES BESOINS........................................................................14
Les objectifs de cette phase sont les suivants...............................................................14
PHASE DE CONCEPTION........................................................................................14
PHASE DE DÉVELOPPEMENT................................................................................16
PHASE D'INTÉGRATION ET DE TEST...................................................................16
PHASE DE MISE EN ŒUVRE..................................................................................17
PHASE D'EXPLOITATION ET DE MAINTENANCE.............................................17
2
5
SORTIE........................................................................................................................30
»>.....................................................................................................................................30
I I......................................................................................................................................30
I I 41516...........................................................................................................................30
I I 71819...........................................................................................................................30
I I......................................................................................................................................30
I I 41516...........................................................................................................................30
TEST............................................................................................................................31
LES MÉTHODES D'ESSAI........................................................................................31
TESTS DE LA BOÎTE NOIRE...................................................................................31
LES TESTS BASÉS SUR LES SPÉCIFICATIONS...................................................32
AVANTAGES ET INCONVÉNIENTS......................................................................32
TESTS EN BOÎTE BLANCHE...................................................................................32
ÉVALUATION DE L'EXHAUSTIVITÉ DU CODE..................................................33
EXIGENCES EN MATIÈRE DE MATÉRIEL ET DE LOGICIEL...........................34
valeurs_carrées[7], valeurs_carrées[8]))
status = True
essayer :
int(choix)
"O") :
square_values.remove(choice)
square_values.insert(int(choice)-1, player_pick)
2
6
statut = Faux
d'autre part :
d'autre part :
except ValueError :
status_main = True
global status_main
global no_wins
square_values[value3] == "X") :
status_main = False
no_wins = False
if(player_1_pick == "X") :
d'autre part :
square_values[value3] == "O") :
status_main = False
no_wins = False
if(player_1_pick == "O") :
d'autre part :
2
7
print("Le joueur 2 a gagné !")
d'autre part :
passer
global nombre_de_tours
global status_main
si (no_wins == True) :
nombre_de_tours = nombre_de_tours + 1
make_a_move(player, pick)
check_for_a_win(0, 1, 2)
check_for_a_win(3, 4, 5)
check_for_a_win(6, 7, 8)
check_for_a_win(0, 3, 6)
check_for_a_win(1, 4, 7)
check_for_a_win(2, 5, 8)
check_for_a_win(0, 4, 8)
check_for_a_win(2, 4, 6)
status_main = False
func_1(player_1, player_1_pick)
func_1(joueur_2, joueur_2_pick)
2
8
SORTIE
»>
Jouons au Tic-Tac-Toe !
Entrez un nom pour le joueur 1 et appuyez sur la touche Entrée, laissez un blanc pour
laisser le joueur 1 : xyz Entrez un nom pour le joueur 2 et appuyez sur la touche Entrée,
laissez un blanc pour laisser le joueur 2 : abc xyz, choisissez X ou O : 3
I I
1|2|3
I I 41516
I I 71819
I I
xyz pick a square(3) 1
II3| 2| 3II
I I 41516
2
9
TEST
Le test de logiciel est une enquête empirique menée pour fournir aux parties
prenantes des informations sur la qualité du produit ou du service testé[1] , dans le
contexte dans lequel il est censé fonctionner. Les tests de logiciels fournissent
également une vision objective et indépendante du logiciel afin de permettre à
l'entreprise d'apprécier et de comprendre les risques liés à la mise en œuvre du
logiciel. Les techniques de test comprennent, entre autres, le processus d'exécution
d'un programme ou d'une application dans le but de trouver des bogues logiciels.
Elle peut également être décrite comme le processus de validation et de
vérification qu'un programme/application/produit logiciel répond aux exigences
commerciales et techniques qui ont guidé sa conception et son développement, de
sorte qu'il fonctionne comme prévu et puisse être mis en œuvre avec les mêmes
caractéristiques. Les tests de logiciels, en fonction de la méthode de test employée,
peuvent être mis en œuvre à tout moment du processus de développement, mais la
plupart des efforts de test sont déployés après que les exigences ont été définies et
que le processus de codage a été achevé.
3
0
LES TESTS BASÉS SUR LES SPÉCIFICATIONS
AVANTAGES ET INCONVÉNIENTS
Le testeur de boîte noire n'a pas de "liens" avec le code, et la perception d'un
testeur est très simple : un code doit avoir des bogues. S'appuyant sur le principe
"Demandez et vous recevrez", les testeurs de boîtes noires trouvent des bogues là
où les programmeurs n'en trouvent pas. D'un autre côté, on a dit que les tests en
boîte noire étaient "comme une promenade dans un labyrinthe sombre sans lampe
de poche", parce que le testeur ne sait pas comment le logiciel testé a été réellement
construit.
C'est pourquoi il y a des situations où (1) un testeur de boîte noire écrit de
nombreux cas de test pour vérifier quelque chose qui ne peut être testé que par un
seul cas de test, et/ou (2) certaines parties du back-end ne sont pas testées du tout.
Par conséquent, les tests en boîte noire présentent l'avantage d'un "avis non affilié",
d'une part, et l'inconvénient d'une "exploration à l'aveugle", d'autre part.
Les tests en boîte blanche, par opposition aux tests en boîte noire, sont
effectués lorsque le testeur a accès aux structures de données et aux algorithmes
internes (ainsi qu'au code qui les met en œuvre).
3
1
4- Couverture du code - création de tests pour satisfaire certains critères
de couverture du code.
Par exemple, le concepteur de tests peut créer des tests pour que toutes les
instructions du programme soient exécutées au moins une fois.
4- les méthodes d'injection de fautes.
Les méthodes de test en boîte blanche peuvent également être utilisées pour
évaluer l'exhaustivité d'une suite de tests créée à l'aide de méthodes de test en boîte
noire. Cela permet à l'équipe chargée du logiciel d'examiner les parties d'un système
qui sont rarement testées et de s'assurer que les points de fonction les plus
importants ont été testés.
Les deux formes les plus courantes de couverture du code sont les suivantes :
4- Couverture des fonctions : qui rend compte des fonctions exécutées et
4- Couverture des instructions : Elle indique le nombre de lignes
exécutées pour mener à bien le test.
Ils ont tous les deux une mesure de couverture de retour, mesurée en
pourcentage
3
2
EXIGENCES EN MATIÈRE DE MATÉRIEL ET DE LOGICIEL
512MB+
SATA 40 GB OU PLUS
IV. RAM
: (si une sauvegarde est nécessaire)
X. Imprimante :
3
3
BIBLIOGRAPHIE
***
3
4