Vous êtes sur la page 1sur 12

EPREUVE 1

EPREUVE PROFESSIONNEL DE SYNTHESE

Partie 1 : Initiation au développement (25 points)

1. Qu'est-ce qu'un système d'exploitation ? Expliquez son rôle dans un environnement


informatique. (2 points)
2. Définissez le terme "génie logiciel" et expliquez son importance dans le développement
d'applications. (2 points)
3. Quelles sont les principales différences entre les logiciels propriétaires et les logiciels open
source ? (2 points)
4. Expliquez l'importance de la sécurité informatique dans le développement d'applications. (3
points)
5. Quelles sont les mesures de sécurité courantes pour protéger un système informatique
contre les attaques externes ? (3 points)
6. Qu'est-ce qu'un pare-feu et comment fonctionne-t-il pour assurer la sécurité d'un réseau
informatique ? (3 points)
7. Quels sont les différents types de logiciels d'application utilisés dans le développement
d'applications ? Donnez des exemples pour chaque type. (3 points)
8. Quelles sont les compétences essentielles pour un développeur d'applications dans un
environnement Windows ? (2 points)
9. Expliquez les principaux avantages et inconvénients de l'utilisation du système
d'exploitation Linux. (2 points)
10. Décrivez les étapes de base dans le processus de développement d'une application
informatique. (3 points)

Partie 2 : Systèmes d'information et bases de données (30 points)

1. Qu'est-ce que la méthode MERISE en développement de bases de données ? Expliquez ses


principes de base. (3 points)
2. Quelle est la différence entre un MCD (Modèle Conceptuel de Données) et un MLD
(Modèle Logique de Données) ? (2 points)
3. Expliquez les concepts de base d'une base de données relationnelle. Qu'est-ce qu'une table,
une clé primaire et une clé étrangère ? (4 points)
4. Décrivez les principales étapes pour la réalisation d'une base de données en utilisant un
SGBD (Système de Gestion de Base de Données). (4 points)
5. Quelles sont les opérations courantes du langage SQL pour interagir avec une base de
données relationnelle ? Donnez des exemples. (4 points)
6. Qu'est-ce qu'une requête SQL SELECT ? Comment l'utilise-t-on pour récupérer des
données spécifiques d'une table ? (3 points)
7. Expliquez le concept de jointure en SQL et donnez un exemple d'utilisation. (3 points)
8. Quelles sont les principales contraintes d'intégrité que l'on peut définir sur une base de
données relationnelle ? (2 points)
9. Qu'est-ce qu'un SGBDR (Système de Gestion de Base de Données Relationnelles) ? Citez
quelques exemples de SGBDR populaires. (2 points)
10. Quelles sont les différentes formes normales en théorie des bases de données ? Expliquez
brièvement chaque forme. (5 points)

Partie 3 : Programmation (25 points)

1. Qu'est-ce qu'un algorithme ? Expliquez son rôle dans le développement d'applications. (2


points)
2. Décrivez les étapes de base pour la réalisation d'un algorithme. (3 points)
3. Quelles sont les structures de données les plus couramment utilisées en programmation ?
Expliquez chaque structure brièvement. (4 points)
4. Expliquez la différence entre une boucle "for" et une boucle "while". Dans quelles
situations utilise-t-on chacune d'entre elles ? (3 points)
5. Qu'est-ce qu'une procédure dans le contexte de la programmation ? Quelle est son utilité ?
(2 points)
6. Qu'est-ce qu'une fonction dans le contexte de la programmation ? Quelle est sa différence
avec une procédure ? (2 points)
7. Décrivez l'importance de la modularité dans la programmation et comment elle est réalisée
à l'aide de procédures et de fonctions. (3 points)
8. Qu'est-ce qu'un langage de programmation orienté objet ? Donnez quelques exemples de
langages orientés objet. (3 points)
9. Expliquez le concept de récursivité en programmation. Dans quels cas est-il approprié
d'utiliser une fonction récursive ? (3 points)
10. Qu'est-ce qu'une exception en programmation ? Comment les exceptions sont-elles gérées
dans différents langages de programmation ? (3 points)
Partie 4 : Hygiène - Sécurité et Environnement (20 points)

1. Définissez le terme "anatomie et physiologie humaine" et expliquez son importance dans le


contexte professionnel. (2 points)
2. Quels sont les risques professionnels courants auxquels un développeur d'applications peut
être exposé ? (3 points)
3. Expliquez les principaux moyens de prévention des risques professionnels dans un
environnement de travail informatique. (3 points)
4. Quels sont les gestes de premiers secours de base que tout employé devrait connaître ? (3
points)
5. Quelles sont les principales pollutions et nuisances sur l'environnement causées par
l'industrie informatique ? (3 points)
6. Quelles sont les mesures que les développeurs d'applications peuvent prendre pour
contribuer à la protection de l'environnement ? (3 points)
7. Expliquez l'importance de la gestion des déchets électroniques dans le secteur de
l'informatique. (3 points)
MISE EN SITUATION PROFESSIONNELLE

Contexte :
Vous travaillez en tant que développeur d'applications chez TechElectro, une entreprise de
vente en ligne de produits électroniques. Votre mission consiste à concevoir la base de
données et à écrire des requêtes SQL pour le nouveau système de gestion des commandes en
ligne.

TechElectro souhaite améliorer son système actuel en raison de la croissance rapide de son
activité. Le système actuel présente des problèmes tels que des erreurs de suivi des
commandes, des retards dans le traitement des paiements et des difficultés à gérer les stocks.
Afin de résoudre ces problèmes, l'entreprise a décidé de mettre en place un nouveau système
de gestion des commandes plus efficace.

Dans le cadre de votre mission, vous utiliserez le système MERISE, une méthodologie de
modélisation des données, pour concevoir une base de données adaptée aux besoins de
gestion des commandes. Cette base de données devra inclure des entités telles que les clients,
les produits, les commandes, les paiements et les stocks. Vous travaillerez en étroite
collaboration avec les équipes opérationnelles et commerciales pour comprendre les processus
existants et identifier les améliorations nécessaires.

Une fois la conception de la base de données terminée, vous serez chargé d'écrire des requêtes
SQL pour la gestion des données. Ces requêtes vous permettront de créer, modifier, supprimer
et consulter les informations liées aux commandes, aux clients et aux produits. Votre expertise
en développement d'applications et votre connaissance du langage SQL seront essentielles
pour mener à bien cette partie de la mission.

En tant que développeur d'applications chez TechElectro, votre contribution à la conception


de la base de données et au développement des requêtes SQL sera cruciale pour assurer le bon
fonctionnement du nouveau système de gestion des commandes en ligne. Votre capacité à
fournir des solutions efficaces et innovantes vous permettra de mettre en valeur vos
compétences techniques et d'aider l'entreprise à maintenir son avantage concurrentiel.

En résumé, en tant que développeur d'applications chez TechElectro, vous jouez un rôle clé
dans la conception de la base de données et le développement des requêtes SQL pour le
nouveau système de gestion des commandes en ligne. Votre expertise technique et votre
capacité à résoudre les problèmes de manière efficace seront des atouts précieux pour
l'entreprise dans sa quête d'amélioration de ses processus de gestion des commandes.
Travail à effectuer :

Partie 1 : Systèmes d’information et bases de données (60 points)

1. Étude de l'existant (15 points)


En vous basant sur les besoins de l'entreprise, identifiez les entités principales et les
relations entre ces entités. Réalisez le modèle conceptuel des données (MCD) à l'aide du
système MERISE.

2. Modèle logique des données (MLD) et modèle organisationnel des traitements (MOT) (25
points)
Convertissez le MCD en modèle logique des données (MLD) en spécifiant les tables, les
attributs et les relations. Ensuite, réalisez le modèle organisationnel des traitements (MOT) en
décrivant les différentes étapes du traitement des commandes.

3. Langage SQL (20 points)


Rédigez les requêtes SQL suivantes :
a) Créez une table "Clients" avec les colonnes suivantes : ID (entier, clé primaire), Nom
(chaîne de caractères), Adresse (chaîne de caractères).
b) Insérez un nouveau client dans la table "Clients".
c) Sélectionnez tous les clients de la table "Clients".
d) Mettez à jour l'adresse d'un client spécifique.
e) Supprimez un client de la table "Clients" en utilisant son ID.

Partie 2 : Programmation (40 points)

1. Algorithmique (24 points)


Résolvez les exercices suivants :
a) Écrivez un algorithme pour trouver le plus grand nombre parmi trois nombres saisis par
l'utilisateur.
b) Écrivez un algorithme pour calculer la somme des entiers de 1 à N, Où N est un nombre
entier saisi par l'utilisateur.
c) Écrivez un algorithme pour vérifier si un nombre entier saisi par l'utilisateur est pair ou
impair.

2. Programmation (16 points)


Implémentez les exercices précédents en utilisant le langage de programmation de votre
choix (Pascal, Langage C ou le PHP). Assurez-vous de respecter les consignes données dans
les énoncés.

Exemple de script SQL pour la création de la table "Clients" :

```sql
CREATE TABLE Clients (
ID INT PRIMARY KEY,
Nom VARCHAR(50),
Adresse VARCHAR(100)
);
TASK 1
PROFESSIONAL SYNTHESIS TEST

Part 1: Introduction to Development (25 points)

1. What is an operating system? Explain its role in a computer environment. (2 points)


2. Define the term "software engineering" and explain its importance in application
development. (2 points)
3. What are the main differences between proprietary software and open-source software? (2
points)
4. Explain the importance of computer security in application development. (3 points)
5. What are common security measures to protect a computer system against external attacks?
(3 points)
6. What is a firewall and how does it work to ensure the security of a computer network? (3
points)
7. What are the different types of application software used in application development?
Provide examples for each type. (3 points)
8. What are the essential skills for an application developer in a Windows environment? (2
points)
9. Explain the key advantages and disadvantages of using the Linux operating system. (2
points)
10. Describe the basic steps in the process of developing a computer application. (3 points)

Part 2: Information Systems and Databases (30 points)

1. What is the MERISE method in database development? Explain its basic principles. (3
points)
2. What is the difference between an MCD (Conceptual Data Model) and an MLD (Logical
Data Model)? (2 points)
3. Explain the basic concepts of a relational database. What is a table, primary key, and
foreign key? (4 points)
4. Describe the main steps for creating a database using a Database Management System
(DBMS). (4 points)
5. What are common SQL operations to interact with a relational database? Provide examples.
(4 points)
6. What is an SQL SELECT query? How is it used to retrieve specific data from a table? (3
points)
7. Explain the concept of join in SQL and provide an example of its usage. (3 points)
8. What are the primary integrity constraints that can be defined on a relational database? (2
points)
9. What is a Relational Database Management System (RDBMS)? List some popular RDBMS
examples. (2 points)
10. What are the different normal forms in database theory? Briefly explain each form. (5
points)

Part 3: Programming (25 points)

1. What is an algorithm? Explain its role in application development. (2 points)


2. Describe the basic steps for creating an algorithm. (3 points)
3. What are the most commonly used data structures in programming? Briefly explain each
structure. (4 points)
4. Explain the difference between a "for" loop and a "while" loop. In what situations would
you use each of them? (3 points)
5. What is a procedure in the context of programming? What is its usefulness? (2 points)
6. What is a function in the context of programming? How is it different from a procedure? (2
points)
7. Describe the importance of modularity in programming and how it is achieved using
procedures and functions. (3 points)
8. What is an object-oriented programming language? Give some examples of object-oriented
languages. (3 points)
9. Explain the concept of recursion in programming. In which cases is it appropriate to use a
recursive function? (3 points)
10. What is an exception in programming? How are exceptions handled in different
programming languages? (3 points)

Part 4: Health, Safety, and Environment (20 points)


1. Define the term "human anatomy and physiology" and explain its importance in the
professional context. (2 points)
2. What are common occupational hazards that application developers may be exposed to? (

3 points)
3. Explain the main methods of preventing occupational hazards in an IT work environment.
(3 points)
4. What are the basic first aid gestures that every employee should know? (3 points)
5. What are the main environmental pollution and nuisances caused by the IT industry? (3
points)
6. What measures can application developers take to contribute to environmental protection?
(3 points)
7. Explain the importance of managing electronic waste in the IT sector. (3 points)
Professional Situation Assignment

Context:
You work as an application developer at TechElectro, an online electronic products retailer.
Your mission is to design the database and write SQL queries for the new online order
management system.

TechElectro wants to improve its current system due to rapid business growth. The current
system has issues such as order tracking errors, payment processing delays, and difficulties in
managing inventory. To address these problems, the company has decided to implement a
more efficient order management system.

As part of your mission, you will use the MERISE system, a data modeling methodology, to
design a database that meets the order management needs. This database should include
entities such as customers, products, orders, payments, and inventory. You will work closely
with operational and sales teams to understand existing processes and identify necessary
improvements.

Once the database design is complete, you will be responsible for writing SQL queries for
data management. These queries will allow you to create, modify, delete, and retrieve
information related to orders, customers, and products. Your expertise in application
development and knowledge of SQL language will be crucial to successfully complete this
part of the mission.

As an application developer at TechElectro, your contribution to the database design and


development of SQL queries will be crucial in ensuring the smooth operation of the new
online order management system. Your ability to provide efficient and innovative solutions
will showcase your technical skills and help the company maintain its competitive advantage.

In summary, as an application developer at TechElectro, you play a key role in designing the
database and developing SQL queries for the new online order management system. Your
technical expertise and problem-solving abilities will be valuable assets for the company in its
quest to improve its order management processes.

Work to be done:

Part 1: Information Systems and Databases (60 points)


1. Study of the existing system (15 points)
Based on the company's needs, identify the main entities and the relationships between
these entities. Create the conceptual data model (CDM) using the MERISE system.

2. Logical data model (LDM) and organizational processing model (OPM) (25 points)
Convert the CDM into a logical data model (LDM) by specifying tables, attributes, and
relationships. Then, create the organizational processing model (OPM) by describing the
different steps in order processing.

3. SQL Language (20 points)


Write the following SQL queries:
a) Create a table "Clients" with the following columns: ID (integer, primary key), Name
(string), Address (string).
b) Insert a new client into the "Clients" table.
c) Select all clients from the "Clients" table.
d) Update the address of a specific client.
e) Delete a client from the "Clients" table using their ID.

Part 2: Programming (40 points)

1. Algorithms (24 points)


Solve the following exercises:
a) Write an algorithm to find the largest number among three numbers entered by the user.
b) Write an algorithm to calculate the sum of integers from 1 to N, where N is an integer
entered by the user.
c) Write an algorithm to check if an integer entered by the user is even or odd.

2. Programming (16 points)


Implement the previous exercises using the programming language of your choice (Pascal,
C language, or PHP). Make sure to follow the instructions given in the statements.
Example SQL script for creating the "Clients" table:

```sql
CREATE TABLE Clients (
ID INT PRIMARY KEY,
Name VARCHAR(50),
Address VARCHAR(100)
);
```

Vous aimerez peut-être aussi