27
ANALYSER UN SYSTÈME D’INFORMATION - REVISIONS LA METHODE MERISE LE MCD LE MR LE LANGAGE SQL L’ALGORITHME 1 BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

S1 ANALYSER UN SYSTÈME D’INFORMATION - …cours-bts-informatique-gestion.e-monsite.com/medias/files/s1... · Il peut arriver que l'on ait besoin de plusieurs propriétés pour

Embed Size (px)

Citation preview

ANALYSER UN SYSTÈME D’INFORMATION - REVISIONS

LA METHODE MERISE

• LE MCD

• LE MR

• LE LANGAGE SQL

• L’ALGORITHME

1

BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

LE SYSTÈME D’INFORMATION (SI)• I La notion de système d’information

Un système est un ensemble d’éléments fonctionnant en interaction et ayant une finalité. Le système d’informationest communément décrit comme un triptyque composé :

● de moyens humains : c’est l’ensemble des individus qui reçoivent, manipulent et émettent del’information ;

● de moyens matériels et immatériels : c’est l’ensemble des outils ou machines plus ou moinscomplexes permettant de recevoir, manipuler et émettre de l’information, on parle de la dimensiontechnologique du SI ;

● de procédures et de méthodes : il s’agit des règles suivies et appliquées.

Le SI permet le stockage et le traitement des informations d’origine interne ou externe (environnement) et lesrestitue sous une forme utilisable au moment opportun pour faciliter la prise de décision et le fonctionnement del’organisation.

ATTENTION: Il ne faut pas confondre le système d’information avec le système informatique composé d’élémentstechniques (ordinateurs, câbles, logiciels, applications…). Le système informatique n’est qu’une partie descomposants matériels et immatériels du système d’information.

2

BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

• II Les fonctions du SI

Un système d’information remplit quatre fonctions essentielles:

3BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

LE MCD1.1 DÉFINITIONS (MERISE, MODÈLE "STANDARD" OU MERISE1)

• Entité : tout groupe d'individus, d'objets, de concepts retenus par le SI

• Association : lien logique entre les occurrences de 2 ou + entités

• Propriété : caractéristique d'une entité ou association

• Collection : liste des entités d'une association

4BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

Le Modèle Conceptuel de données est composé d'entités et d'associations.

Ces objets contiennent des propriétés (au moins une). Dans les entités, on trouvera toujours (au moins) une

propriété qui permettra d'identifier de façon unique chaque occurrence de l'entité ; c'est l'identifiant.

Il peut arriver que l'on ait besoin de plusieurs propriétés pour distinguer les occurrences. On est alors en

présence d'une propriété identifiant concaténé, composé de plusieurs propriétés élémentaires.

Les entités sont toujours reliées directement aux associations (zéro ou plus).

Les associations sont toujours reliées directement aux entités (une ou plus).

Les associations ont toujours au moins deux liens vers des entités. Les différents cas de figure élémentaires

d'associations:

5BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

LE MCD1.2 CARDINALITÉS

• Les cardinalités représentent les nombres minimum et maximum auquel une occurrence d'une entité peut

participer à une association

• EXEMPLE: Un salarié appartient à un et

un seul service. Cardinalité salarié Appartenir service 1,1

Un fournisseur livre aucun ou plusieurs

articles.

Cardinalité fournisseur

Livrer article 0,n

Une voiture est louée à un client.

Cardinalité voiture Louer voiture 0,1

Une voiture est louée à un client à

une date. Cardinalité voiture Louer voiture 0,n

6BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

Note importante : on utilise n pour signifier un nombre >1 mais indéfini. Si le nombre

d'occurrences de l'asso est fini (2, 5, 10) on peut éventuellement mettre ce nombre. Cependant,

dans le doute, préférer mettre n, ce sont les règles de gestion qui le précisent.

Une cardinalité mini 1 signifie que quelque soit l'occurrence de l'entité, il existe au moins une

occurrence de l'entité associée qui lui est associée.

Une cardinalité mini 0 signifie qu'il existe au moins une occurrence de l'entité qui n'est pas

associée à une occurrence de l'entité associée.

Une cardinalité maxi 1 signifie qu'il y a au plus une occurrence associée à l'occurrence de

l'entité.

Une cardinalité maxi n signifie qu'il peut y avoir plusieurs occurrences associée à l'occurrence de

l'entité.

7BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

Le tableau des cardinalités peut être utile pour la compréhension :

• Exemple descriptif :

Soit deux entités A et B avec les occurrences respectives an et bn (n de 1 à n) et l'association "Associer".

Je me place sur l'entité A et je regarde l'entité B au travers de l'association

Entité-association Card. Description

A - Associer 0,1 Pour une occurrence de A est associé 0 à 1 occurrence de B

A - Associer 1,1 Pour une occurrence de A est associé 1 et 1 seule occurrence de B

A - Associer 0,n Pour une occurrence de A est associé 0 à plusieurs occurrences de B

A - Associer 1,n Pour une occurrence de A est associé 1 à plusieurs occurrences de B

A - Associer x,y Pour une occurrence de A est associé x à y occurrences de B

8BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

• Le tableau des cardinalités se défini entre une entité et une association (pas entre deux entités). Il reprend la cardinalité considérée et on construit une phrase (en français) qui définit la cardinalité. Cette phrase reprend les noms de l'entité et de l'association et les relies par les valeurs de la cardinalité.

Ce tableau ne constitue pas une justification de l'association !

Pour justifier une association, il faut indiquer quels éléments du sujet vous ont conduit à créer l'association (et ses cardinalités).

• Exemple : un fournisseur livre une certaine quantité d'articles.

On a ici deux entités (fournisseur et article) et une association (livrer). La cardinalité fournisseur-livrer mini est indéfinie dans le sujet, la maxi est n car article est au pluriel. Un fournisseur n'a pas d'intérêt d'être mémorisé s'il ne livre pas et, lorsqu'un fournisseur est obsolète, a-t-on le droit de le supprimer ? (je répondrai respectivement oui, s'il a déjà livré et plutôt non)

L'association livrer est porteuse de la quantité livrée par article. La somme de ces quantités est celle évoquée dans le sujet.

On ne connaît pas les cardinalités de article-livrer car il n'est pas dit combien de fois un article peut être livré par un fournisseur. Cependant, la connaissance de la gestion commerciale nous fait dire qu'il peut exister des articles non livrés (ceux qui sontfabriqués) et qu'un fournisseur (ou plusieurs) peuvent effectuer plusieurs livraisons sur un même article.

D'où :

9BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

C'est bien connu, pour créer une association, il faut lui donner un nom.

Soit deux entités A et B reliées par une association. Observons ses cardinalités.

Cardinalités type Sous type Description

A B

1,1 *,n

Association fonctionnelle DF typique

(non porteuse)

DF forte, Hiérarchique (A ne peut exister sans B)

L'entité A appartient au groupe B

Verbe d'appartenance (être, possède…)

Appelée aussi Contrainte d'intégrité

fonctionnelle (CIF)

0,1 *,n DF faible

1,n *,n

Assoc. non fonctionnelle (peut être porteuse

d'attributs)

Obligatoire Si non porteuse, invisible dans le GDF. Généralement verbe

d'action.

Appelée aussi Contrainte d'intégrité

multiple (CIM).

0,n *,n Facultative

0,1 *,1 Cas mixte exceptionnel Non hiérarchique 10

BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

•Pour repérer les entités, trouver les individus (catégories d'), les objets et concepts du

sujet (employé, article, département, …).

Pour repérer les propriétés, rechercher et catégoriser les caractéristiques des entités

(code article, description, nom, … ).

Pour repérer les associations, rechercher les verbes qui relient les entités entre elles.

Les valeurs des cardinalités sont le nombre de "ficelles" que l'on peut "tirer" en

passant au travers d'une association.

11

BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

LE MODELE RELATIONNEL

Le modèle relationnel représente la structure

de base de données que le concepteur a

utilisée pour concevoir la base.

Derrière une table, une relation…

Chaque relation du modèle relationnel

correspond à une table dans la base de

données.

Chaque attribut est un champ dans une table

12

BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

RELATIONUne relation décrit des objets ou des faits.

Exemple : la relation COMMANDE décrit les bons de commande grâce à leur numéro, la date de passation de la commande et le numéro du client concerné par cette commande.

ATTRIBUT

Un attribut est une colonne qui a un type et qui à ce titre ne peut contenir que des valeurs de ce type de données.

Exemple : « NomCli » (nom des clients) est un attribut de la relation CLIENT qui est de type « chaîne de caractères » et qui permet d’associer un nom au client.

ATTRIBUT CLÉ PRIMAIRE

La clé primaire est un des attributs d’une relation. C’est celui qui permet systématiquement de retrouver les autres de manière sûre.

Exemple : si l’on recherche un bon de commande, connaître uniquement la date de commande ne suffit pas car l’entreprise peut passer plusieurs commandes le même jour… Par contre, connaître le numéro de la commande suffit pour la retrouver de manière sûre car toute commande est numérotée

d’un numéro unique.On notera également qu’une clé primaire contient forcément une valeur et que cette valeur ne peut

être présente qu’une seule fois dans une table.13

BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

• Un ensemble de tables correspond à un modèle

relationnel…

Un modèle relationnel est une représentation logique

et rationnelle des données que le concepteur a

utilisée pour concevoir la base de données

permettant ainsi de la rendre exploitable par un

logiciel de type SGBDR. Il est composé de plusieurs

lignes. Chaque ligne s’appelle une relation. Les

champs communs qui permettent de relier les tables

entre elles sont appelés « clés primaires » et « clés

étrangères ».

14BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

CLÉ ÉTRANGÈRE

La clé étrangère est un attribut d’une relation qui fait référence à la clé primaire d’une autre relation.

Exemple : dans la relation COMMANDE, « NumCli » correspond à un numéro de client dans la relation CLIENT.

Toute valeur de l’attribut clé étrangère est obligatoirement présente dans les valeurs de l’attribut clé primaire. Par exemple, un bon de commande ne peut pas faire référence à un numéro de

client ne figurant pas dans la relation CLIENT.La clé étrangère a un rôle déterminant : elle établit les liaisons entre les relations.

CLÉ PRIMAIRE CONCATÉNÉE

Il s’agit d’une clé primaire composée de deux ou plusieurs attributs.Exemple : pour trouver le nombre de produits « alpha » commandés, il faut connaître à la fois le

numéro de la commande concernée et le code du produit concerné.

15

BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

LE LANGAGE SQL : REQUÊTES SUR UNE SEULE TABLE

SQL est l’acronyme de Structured Query Language : langage structuré de

requêtes. Ce langage permet d’interagir avec tous les SGBDR. Sa syntaxe se

présente sous la forme d’un pseudolangage prenant appui sur des mots de la

langue anglaise et reprenant la logique des opérateurs relationnels. C’est avec

ce langage que les PGI fonctionnent.

16

BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

• Les requêtes de projection

Les instructions nécessaires à la construction d’une requête projection sont :

SELECT sur les champs à afficher lors du résultat de la requêteFROM sur les tables sources; pour terminer la requête

Exemple: On souhaite connaître les noms des clients et la ville où ils sont domiciliés

17BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

• Les requêtes de projection et de restriction

Les instructions nécessaires à la restriction sont :

WHERE permet d’annoncer la première restrictionAND / OR permet d’annoncer les autres restrictions

LIKE NOT = != > >= < <= BETWEEN IS NULLsont des exemples d'opérateurs permettant de préciser la restriction

ExempleOn souhaite connaître… les noms des clients domiciliés à Avignon ou Pernes

18BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

… les noms des clients domiciliés dans le Vaucluse (84)[…] WHERE AdresseCPCli LIKE“84%“ ;LIKE permet de faire une comparaison approximative. LIKE est toujours accompagnée du caractère joker (%) qui permet de remplacer n’importe quelle chaîne.

… les numéros des commandes passées entre le 01/01/2016 et le 15/01/2016[…] WHERE DateCom BETWEEN “01/01/2016“ AND “15/01/2016“ ;BETWEEN permet de définir un intervalle. AND est utilisée ici avec BETWEEN et n’est pas le départ d’une nouvelle restriction.

… les noms des clients domiciliés dans le Vaucluse (84) mais pas Avignon[…] WHERE AdresseCPCli LIKE “84%”

AND AdresseVilleCli != “Avignon“ ;AND est le départ d’une nouvelle restriction, d’où l’obligation de remettre le nom du champ sur lequel on veut appliquer la restriction. L’opérateur « différent de » (!=) permet de ne retenir que les enregistrements où le champ AdresseVilleCli ne contient pas « Avignon ».

APPLICATION 1 : L’OFFRE D’UNE AGENCE IMMOBILIERE

19

BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

ALGORITHME ET PROGRAMMATION

• Le besoin de solutions informatiques personnalisées

Certains besoins spécifiques non couverts par les fonctionnalités de base d’un tableur nécessitent dedévelopper une solution informatique personnalisée grâce à la programmation. La réflexion préalablenécessaire, consistant à décomposer les traitements à effectuer permet de rédiger l’algorithme, c’est-à-dire l’ensemble des opérations élémentaires (instructions) exécutées dans un ordre précis utilisant desdonnées en entrées, les transformant afin de produire d’autres données : les sorties.

Un algorithme comportant un début et une fin, est dans un premier temps rédigé en pseudo- code(rédaction proche du langage naturel), puis ensuite traduit dans un langage de programmation. Lesprogrammes conçus dans les suites bureautiques sont souvent appelés des « macros » ou « macro-commandes ». Dans les principales suites bureautiques que sont Microsoft Office et LibreOffice, leslangages utilisés sont relativement proches :

• VBA (Visual Basic for Applications) pour Microsoft Office ;

• LibreOffice Basic pour LibreOffice.

20BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

• De l’algorithme au langage de programmation

Afin de faciliter sa conception et sa compréhension,

l’algorithme doit être structuré. Tout algorithme comporte

donc un titre, une déclaration des données manipulées

(variables, constantes : voir FR 2), un début et une fin. Cette

structuration se retrouve ensuite dans le programme qui

découle du pseudo-code. L’ensemble des instructions dans le

langage de programmation est appelé « code source » du

programme informatique.

21BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

LA DÉCLARATION DES DONNÉES ET LA NOTION D’AFFECTATION D’UNE VALEUR

On distingue dans un algorithme des données variables et données constantes. Il faut les lister par

avance. Ensuite l’algorithme prévoit la manière dont elles seront renseignées.

La déclaration des variables

Une variable est un espace dans la mémoire de l’ordinateur dans lequel sera stockée une valeur

susceptible de changer au cours de l’algorithme.

Pseudo-code VBA ExplicationVariables

Les données manipulées seront stockées dans des variables que l’on désigne souvent comme une « boîte ».Chaque variable est identifiée par un nom qui correspond à une suite de caractères alphanumériques (lettres, chiffres, sans espace, par ex. : MontantTVA).Une donnée correspond à un type précis, en fonction de la nature de la valeur à laquelle elle correspond (ex. : nombre entier).

PU : réel Dim PU as SingleQTE : entier Dim QTE as IntegerMontantHT : réel Dim MontantHT as SingleRemise : réel Dim Remise as Single

MontantTVA : réelDim MontantTVA as Single

MontantTTC : réelDim MontantTTC as Single

22

BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

• Quelques types de variables couramment utilisés :

Type de la donnée en pseudo-code Exemples En VBA

Entier : nombre positif ou négatif sans partie décimale.

–5, –3, 0, 12, 254… Integer

Réel : nombre positif ou négatif comportant une partie décimale. Le séparateur n’est pas

la virgule mais le point.–56.74, 10.7458, 9458.2 Single

Booléen : type de donnée logique ne pouvant correspondre qu’à deux états.

VRAI/FAUX, OUI/NON Boolean

Chaine de caractères : suite de caractères incluant nombres, lettres, espaces et

ponctuation.

« Bonjour », « Processus 7 », « 15, rue de la Paix »…

String

Date : date ou heure ou les deux, dont on précise le format. Exemple : JJ/MM/AA

23/12/16 Date23

BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

• La déclaration des constantes

Certaines données ne changent pas au cours de l’algorithme : les constantes.

L’affectation d’une valeur à une variable

L’affectation désigne l’opération qui consiste à attribuer une valeur à une variable. Elle peut être réalisée

par le biais d’une instruction d’entrée (voir FR 3) ou résulter d’un calcul (expression).

Pseudo-code VBA Explication

TauxTVA=0.2 Const TauxTVA=0.2Le taux de TVA est une donnée qui ne sera pas modifiée. Elle est donc déclarée en constante et sa valeur est directement attribuée dans le

programme.

Pseudo-code VBA Explication

MontantHT← PU*QTEMontantHT=PU*QTELe symbole ← symbolise l’affectation et signifie que lavariable MontantHT prendra pour valeur le résultat de« PU*Qte », qui correspond à l’ « expression » du calcul.

24

BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

LA MISE EN ŒUVRE DES ALGORITHMES DANS UN TABLEUR

• Accéder à l’éditeur de macros du tableur

Pour Microsoft Office, il faut tout d’abord afficher l’onglet Développeur dans le tableur Excel.

1. Cliquer sur l’onglet Fichier, puis sur Options, Personnaliser le ruban.

2. Sous Personnaliser le ruban et Onglets principaux cocher Développeur.

Un nouvel onglet « Développeur » sera accessible, permettant d’accéder aux différents outils et

notamment « Visual Basic » pour saisir les instructions du programme.

BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

25

• L’intérêt d’un éditeur de macros

L’éditeur de macros est utilisé afin de saisir les instructions en BASIC (VBA). Cet outil facilite la rédaction du

programme grâce à la coloration syntaxique (mise en évidence automatique des instructions et de la

syntaxe du langage grâce à des couleurs), l’accès à l’aide interactive sur certaines instructions saisies, et

l’utilisation d’outils de débogage permettant de déceler les erreurs de programmation et de les corriger.

BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

26

• La notion de fonction

Un tableur propose de nombreuses fonctions (SOMME, MAX, MIN, etc.). La programmation en VBA permet de développer des

fonctions personnalisées afin pouvoir répondre à des besoins non prévus par les fonctions proposées par défaut. Une fonction

renvoie une valeur déterminée grâce à des arguments. Pour l’utiliser, il suffira ensuite de l’appeler par son nom.

Exemple

La fonction suivante permet

de traiter les résultats des

élèves à un examen en

affichant l’obtention ou non

d’une mention selon la note

obtenue. Il suffira de l’utiliser

dans une feuille de calcul avec

une formule

=RESULT(Cellulecontenantlanote).

APPLICATION 2

BTS CG 2ÈME ANNÉE - SYSTÈME D'INFORMATION COMPTABLE & DE GESTION - AURÉLIE DURET

27

Pseudo-code VBAFonction RESULT(N : réel) : ChaineSi N < 10 AlorsResult ← "Echec"Sinon Si N < 12 Alors•Result ← "Réussite sans mention"•Sinon Si N < 14 Alors

• Result ← "Réussite mention AB"• Sinon Si N < 16 Alors

• Result ← "Réussite mention B"• Sinon Result ← "Réussite mention B"• FinSi

• FinSi•FinSiFinSiFin Fonction

Fonction RESULT(N As Single) As StringIf N <10 ThenResult = "Echec"•ElseIf N<12 Then

• Result = "Réussite sans mention"•ElseIf N<14 Then

• Result = "Réussite mention AB"•ElseIf N<16 Then

• Result = "Réussite mention B"Else: Result = "Réussite mention TB"End IfFin Fonction