INFO-H-403 / INFO-F-301 : Bases de données Projet : Outil d'analyse nancière



Documents pareils
INFO 364 : Bases de Données Projet Professeur : Esteban Zimányi Assistants : Pierre Stadnik et Mohammed Minout Année Académique :

Raja Bases de données distribuées A Lire - Tutoriel

Compte-rendu de projet de Système de gestion de base de données

Bases de données cours 1

Mercredi 15 Janvier 2014

Soutien technique en informatique

THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL

Poursuivre ses études à l'université de Rouen Masters professionnels en Informatique et en Mathématiques. UFR Sciences et Techniques /18

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Information utiles. webpage : Google+ : digiusto/

Hébergement MMI SEMESTRE 4

Serveur de travail collaboratif Michaël Hoste -

MailStore Server 7 Caractéristiques techniques

NOUVEAUTES de Microsoft Dynamics CRM 2011 REF FR 80342A

Conception des bases de données : Modèle Entité-Association

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

Conception d'un système d'information WEB avec UML Par Ass SERGE KIKOBYA

Guide de la documentation des produits BusinessObjects XI

Les bases de données Page 1 / 8

THOT - Extraction de données et de schémas d un SGBD

GOL-502 Industrie de services. Travaux Pratique / Devoir #7

Bases de Données. Stella MARC-ZWECKER. Maître de conférences Dpt. Informatique - UdS

Communiqué de Lancement

Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION

1 Introduction et installation

Février Novanet-IS. Suite progicielle WEB pour l Assurance. Description fonctionnelle

INF 1250 INTRODUCTION AUX BASES DE DONNÉES. Guide d étude

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel.

Hébergement de site web Damien Nouvel

contact@nqicorp.com - Web :

les techniques d'extraction, les formulaires et intégration dans un site WEB

Modèle conceptuel : diagramme entité-association

Programmation Web. Madalina Croitoru IUT Montpellier

Présentation du module Base de données spatio-temporelles

Business Intelligence avec Excel, Power BI et Office 365

Types de REA produites dans le cadre de la séquence pédagogique

PostgreSQL, le cœur d un système critique

Mise en oeuvre d'une base de données mono-utilisateur avec SQLite

CONCEPTION Support de cours n 3 DE BASES DE DONNEES

Catalogue des Formations

Chaîne opératoire de réalisation d une base de données. ANF «Comment concevoir une base de données» (29-30/01/2015)

TRAAM STI Acquisition et exploitations pédagogiques des données sur un système pédagogique

CONCEPTION ET IMPLANTATION DES SI PROJET : GESTION DU FOYER DE L ENIT

SECTION 5 BANQUE DE PROJETS

PROJET DE PORTAIL INTRANET YNNA

Qu est-ce que ArcGIS?

TP 1 : 1 Calculs en binaire, octal et hexadécimal

Fiche technique Les fonctionnalités selon les versions de Sage CRM. Introduction

Bases de Données. Le cas des BD relationnelles ouverture sur les BD relationnelles spatiales Séance 2 : Mise en oeuvre

Année Universitaire 2009/2010 Session 2 de Printemps

Introduction aux Bases de Données

Initiation aux bases de données (SGBD) Walter RUDAMETKIN

CATALOGUE FORMATION 2015

DOSSIER D'ACTIVITES SUR LE PHP N 03 Créer une base de données MySQL avec PHPMyAdmin

TP2_1 DE BUSINESS INTELLIGENCE ISIMA ZZ3 F3

Ecole Polytechnique de Louvain INGI Fichiers et bases de données

MOTEUR DE WORKFLOW Mise en oeuvre d'openwfe Version septembre 2006

Outil de gestion et de suivi des projets

SweetyPix, mode d'emploi

IFT3030 Base de données. Chapitre 2 Architecture d une base de données

Bases de Données. Plan

Concepteur Développeur Informatique

Introduction aux Bases de Données

Bases de données relationnelles

Visual Paradigm Contraintes inter-associations

Séance 1 Introduction aux bases de données

DOSSIER SOLUTION CA ERwin Modeling. Comment gérer la complexité des données et améliorer l agilité métier?

Module Web Service Amazon

Cours Base de données relationnelles. M. Boughanem, IUP STRI

Formats de fichiers adaptés à l'archivage électronique à moyen et long terme

Hébergement de sites Web

MySQL. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada

LAMP : une nouvelle infrastructure LAMP. Une architecture modulaire. Installation

Hadoop / Big Data. Benjamin Renaut <renaut.benjamin@tokidev.fr> MBDS

Master Technologies numériques appliquées à l'histoire Deuxième année

Télécom Nancy Année

Paiement sécurisé sur Internet

TRACcess ekey. Référence rapide

M Études et développement informatique

Spécifications du logiciel. Mise à jour : 24 février 2011 Nombre total de pages : 7

Conception d'applications de base de données ios plus rapides Guide Pratique FileMaker

Auguria_PCM Product & Combination Manager

Présentation du Programme Régional de Formations Qualifiantes

Chapitre 1 Introduction

Configurer son courrier électrique avec votre compte Abicom

GC Soft. Carnet de fonctionnalités

PGI EBP Openline

Termes de référence pour le recrutement d un Assistant pour la gestion des bases de données

Présentation de l'architecture QlikView. Livre blanc sur la technologie QlikView. Date de publication : octobre

CATALOGUE DE FORMATIONS BUSINESS INTELLIGENCE. Edition 2012

Date de diffusion : Rédigé par : Version : Mars 2008 APEM 1.4. Sig-Artisanat : Guide de l'utilisateur 2 / 24

Comparatif fonctionnel des offre Saas d'igsi Easy CRM, Pro CRM, CRM On Demand

Module SIPS/ATOS pour Prestashop

DÉPARTEMENT FORMATIONS 2015 FORMATION-RECRUTEMENT CATALOGUE. CONTACTS (+226)

Suite Jedox La Business-Driven Intelligence avec Jedox

Cours: Administration d'une Base de Données

CHEF DE PROJET - DÉVELOPPEUR SENIOR DELPHI. 50 ans - 16 ans d'expérience

Transcription:

INFO-H-403 / INFO-F-301 : Bases de données Projet : Outil d'analyse nancière Professeur : Esteban Zimányi Assistants : Frédéric Servais et Boris Verhaegen http://cs.ulb.ac.be/public/teaching/infoh403 Année académique 2007-2008 Étude de cas Félicitations! Vous avez été engagés par Goohoo!, un portail Internet prometteur, pour développer un module d'analyse nancière, Goohoo! Finance. Un analyste a compilé ci-dessous le résultat des diverses interviews. Le patron de Goohoo! nous livre les informations suivantes : Il s'agit d'une application graphique permettant d'analyser des actions et des indices. Pour chaque produit nancier, on veut pouvoir consulter des informations générales comme son nom, son code et le marché auquel il appartient. Le code détermine univoquement le produit nancier et se compose de maximum quatre caractères. L'application devra également permettre de consulter l'historique des cours d'un produit nancier : le volume, le cours à l'ouverture et à la fermeture ainsi que le cours minimal et maximal pour chaque séance. On devra aussi être capable de consulter les actualités liées aux produits nanciers. De plus, l'application devra permettre de créer, modier ou supprimer un produit nancier. Un consultant spécialisé dans la nance nous donne plus de précisions sur les produits nanciers : Un produit nancier est soit une action, soit un indice. Tous les deux appartiennent à un marché. Un marché est identié par son nom, sa ville et son pays et travaille avec une seule devise. Un indice est un produit nancier qui est un panier pondéré d'actions d'un même marché. Par exemple, l'indice "Big Three" contient 1000 actions dont 500 de Microsoft, 300 de Google et 200 d'apple. Le cours d'un indice est la somme pondérée des cours des actions dont il est composé. Le volume du jour d'une action représente le nombre d'actions échangées ce jour. Un informaticien de Goohoo! nous donne quelques informations d'ordre technique : Les cours des actions sont reçues en chiers CSV. Le nom du chier est composé du code de l'action suivit de l'extension du chier. Par exemple, pour l'action Apple, le chier s'appellera "AAPL.csv". Le séparateur de champs est la virgule et le symbole décimal est le point. La date est au format "AAAA-MM-JJ". La première ligne du chier contient uniquement des méta-données et chaque ligne est structurée de la manière suivante : Date,Cours ouverture,cours maximum,cours minimum,cours fermeture,volume,cours fermeture ajusté Les actualités des produits nanciers sont disponibles au format XML et suivent le modèle ci-dessous. Une actualité est composée d'un titre, des codes des produits nanciers concernés, de la source de l'information, d'un texte descriptif, d'un lien et d'une date. Cette date est au format RFC 822, par exemple "Wed, 10 Oct 2007 13:05:02 GMT". 1

<news> <item> <title>titre de l'actualité</title> <code>code du produit financier 1</code> <code>code du produit financier 2</code>... <source>nom de la source</source> <description>texte</description> <link>lien vers l'article original</link> <pubdate>date au format RFC822</pubDate> </item>... </news> Ces données devront être importées dans votre base de données. Déroulement du projet Première partie Pour cette partie, on vous demande de modéliser le problème à l'aide du formalisme entité-association et de préciser les contraintes d'intégrité nécessaires. Ces contraintes doivent être exprimées en français et utiliser les mêmes noms d'entités, d'associations ou attributs que dans votre modèle conceptuel. Vous pouvez également exprimer et justier des hypothèses sur votre modèle. Ces hypothèses peuvent résulter par exemple d'incomplétudes ou d'ambiguïtés dans l'énoncé du problème. Déduisez ensuite de ce modèle conceptuel le modèle relationnel correspondant ainsi que ses contraintes. N'hésitez pas à justier vos choix de modélisation. Deuxième partie Création On vous demande tout d'abord de déduire de votre modèle relationnel un script SQL DDL de création de la base de données et de ses diérentes tables ainsi que de créer cette base de données. Initialisation Les informations concernant les produits nanciers nécessaires pour initialiser votre base de données sont disponibles dans les annexes. On vous demande d'écrire à partir de ces tableaux un script SQL d'insertion de données dans vos tables. En ce qui concerne l'historique des cours et les informations relatives aux produits nanciers, nous vous fournissons : plusieurs chiers CSV contenant l'historique des cours pour les actions un chier XML représentant les actualités concernant certains produits nanciers On vous demande d'écrire des scripts permettant d'importer ces chiers dans votre base de données. Ces données devront être présentes dans votre base de données lors de la défense. Les chiers CSV et XML seront disponible le 8 novembre sur la page web du projet. Application Ensuite, nous vous demandons de développer une interface graphique pour votre base de données permettant au minimum de réaliser les opérations ci-dessous : visualiser les actions et les indices, leurs actualités et l'historique de leurs cours éditer un produit nancier créer un produit nancier supprimer un produit nancier

Pour ce dernier point, nous vous demandons d'expliquer et de justier vos choix de stratégie de suppression. Votre application devra bien entendu veiller à ce que la base de données reste cohérente. Vous pouvez bien sûr ajouter des fonctionnalités à votre application comme par exemple un graphique du cours en fonction du temps. Ces apports personnels seront valorisés. Requêtes Nous vous demandons également d'écrire en algèbre relationnelle et calcul relationnel tuple les requêtes R1, R2 et R3 ainsi que toutes les requêtes en SQL : R1 : Les actions du marché X qui ont monté pendant toutes les 5 dernières séances. R2 : Les noms des actions qui sont associées à toutes les actualités auxquelles est associée l'action portant le nom X. R3 : Le nom des actions qui sont associées à au moins trois actualités provenant de la source 'Le canard du Solbosch'. R4 : La moyenne du cours d'un produit nancier X sur les 30 derniers jours. R5 : Le minimum et le maximum du cours d'une action X depuis 12 mois. R6 : Les 5 actions ayant monté le plus et les 5 actions ayant baissé le plus au cours des 12 derniers mois ainsi que le pourcentage de leur hausse/baisse. Enn, un rapport devra être rendu aux assistants et vous devrez présenter vos scripts d'insertions et votre application pendant 10 minutes selon un scénario que vous déterminerez. Rapports Pour la première partie, on vous demande les documents suivants : un diagramme entité-association modélisant le projet ainsi que ses contraintes une traduction relationnelle de ce diagramme et ses contraintes vos hypothèses et vos choix de modélisation justiés Le formalisme utilisé doit être un de ceux vu au cours ou au TP. Pour la deuxième partie, vous rendrez un rapport contenant : les documents de la première partie tenant compte des remarques des assistants le script SQL DDL de création de la base de données des scripts d'importation pour : les données d'initialisation (en SQL) les historiques des cours les actualités des produits nanciers les requêtes demandées les instructions d'installation de votre application un scénario de démonstration de votre application les explications et justications de vos choix et hypothèses le tableau des responsabilités complété équitablement (voir annexes) Le code source de votre application devra être rendu par mail à ulb.code@gmail.com avant votre défense.

Informations pratiques Le projet se fera obligatoirement par groupes de deux. La première partie, en version papier, devra être rendue aux assistants pour le 6 novembre entre 10h et 16h au UB4.129 (bureau de Boris Verhaegen) et être présentée aux assistants le 8 novembre entre 14h et 18h suivant l'horaire établi sur la page web du projet. Le rapport de la deuxième partie devra être rendu en version papier et une archive contenant tous les codes sources devra être envoyé à l'adresse ulb.code@gmail.com avant votre défense suivant l'horaire établi sur la page web du projet les 17 et 18 décembre. Le projet comptera pour 25% de la note nale du cours. Les apports personnels au projet seront valorisés à hauteur de 4 points sur 20. En d'autres mots, un projet parfait sans apport personnel aura une valeur de 16 points sur 20. Sauf mention explicite, vous pouvez utiliser les langages et outils de votre choix (MySQL, PostgreSQL, Java, Python, PHP, C++, Ruby,...). Vous pouvez développer sur votre propre machine et présenter vos projets sur un ordinateur portable que vous apporterez lors de la défense. Au besoin, nous mettrons à votre disposition une base de données MySQL ainsi qu'un espace web PHP sur un serveur de l'université. Annexes Marchés Les marchés suivants devront être encodés dans votre base de données. Actions Code Nom Ville Pays Devise NASD NASDAQ New York City United States USD EURO EURONEXT Paris France EUR Les actions suivantes devront être encodées dans votre base de données. Indice Code Nom Marché MSFT Microsoft Corporation NASDAQ AAPL Apple Inc. NASDAQ GOOG Google NASDAQ DELL Dell NASDAQ RIMM Research in Motion NASDAQ VIV Vivendi EURONEXT FTE France Telecom EURONEXT EN Bouygues EURONEXT AF Air France - KLM EURONEXT EAD EADS EURONEXT L'indice "Big Three" devra être encodé dans votre base de données. Son code est "BIG3" et appartient au marché "NASDAQ". Cet indice est composé de 1000 actions réparties de la manière suivante : Code Quantité MSFT 500 GOOG 300 AAPL 200

Historique et actualités Les chiers CSV et XML contenant respectivement l'historique des cours et les actualités seront publiés sur la page web des TP le 8 novembre 2007. Ceux-ci suivront les spécications données dans cet énoncé. Tableau des responsabilités Dans votre rapport nal, nous vous demandons d'insérer le tableau suivant rempli équitablement. Module Script DDL de création Script d'insertion des données d'initialisation Script d'insertion de l'historique Script d'insertion des actualités Requêtes Visualisation des produits nanciers Visualisation de l'historique Visualisation des actualités Édition d'un produit nancier Création d'un produit nancier Suppression d'un produit nancier Responsable Les deux membres du groupe Bon travail!