Exporter la page au format Open Document

DSI

Ou Directeur des Systèmes d'Informations

Bluetooth 802.15.1

IEEE 802.15 is a working group of the Institute of Electrical and Electronics Engineers (IEEE) IEEE 802 standards committee which specifies Wireless Personal Area Network (WPAN) standards. Task group one is based on Bluetooth technology. It defines physical layer (PHY) and Media Access Control (MAC) specification for wireless connectivity with fixed, portable and moving devices within or entering personal operating space.
Pairing obligatoire…
2.4/2.5 GHz
Cryptage possible (pas en RFID)

NFC Near Field Communication ISO/IEC 18092 et ISO 18000-3

La communication en champ proche (en anglais near field communication, NFC) est une technologie de communication sans-fil à courte portée et haute fréquence, permettant l'échange d'informations entre des périphériques jusqu'à une distance d'environ 10 cm. Cette technologie est une extension de la norme ISO/CEI 14443 standardisant les cartes de proximité utilisant la radio-identification (RFID), qui combinent l'interface d'une carte à puce et un lecteur au sein d'un seul périphérique.
Débits de communication : 106, 212 ou 424 kbit/s (le débit 848 kbit/s n'est pas compatible avec la norme NFCIP-1) ;
Gamme de fréquence : 13,56 MHz ;
Distance de communication : maximum 10 cm (aucune normalisation à ce jour - aucune limite haute ou basse) ;
Mode de communication : half-duplex ou full-duplex.
Paiement sans contact 20 EUR par transaction max 80 EUR.

NFCIP-1 (ISO/CEI 18092) définit l'interface et le protocole de communication entre deux périphériques NFC ;
ISO/CEI 14443-1 à ISO/CEI 14443-4 définissent la communication avec des circuits intégrés sans contact ;
NDEF (NFC Data Exchange Format) définit le format d'échange logique des données.

ITIL http://fr.wikipedia.org/wiki/Information_Technology_Infrastructure_Library

Gouvernance http://fr.wikipedia.org/wiki/Gouvernance_des_syst%C3%A8mes_d%27information

Méthodes

Roue de Deming PDCA méthode de gestion de la qualité

Analyse du problème:
Que s'agit-il d'analyser : un problème, une situation, un processus, une solution ?
L'erreur par omission : « faire correctement et complètement le tour » de son objet d'analyse QQOQCCP Qui fait quoi ? Où ? Quand ? Comment ? Combien ? Et pourquoi ? Who, What, Where, When, Why ?

Recherche des causes:

fiabilité, maintenabilité, disponibilité, qualité et testabilité. AMDEC

Informatique décisionnelle

Info décisionnelle , Business Intelligence L’informatique décisionnelle (en anglais : BI pour Business Intelligence1) est l'informatique à l'usage des décideurs et des dirigeants des entreprises.

  • Les données opérationnelles sont extraites périodiquement de sources hétérogènes
  • Les données sont restructurées, enrichies, agrégées, reformatées, nomenclaturées pour être présentées à l'utilisateur sous une forme sémantique
  • Ces données sont livrées aux divers domaines fonctionnels (Direction stratégique, Finance, Production, Comptabilité, RH, …) à travers un système de sécurité (rôles,…) et/ou de datamart spécialisés à des fins de consultations, d'analyse, d'alertes prédéfinies, de datamining,…

Ces données sont extraites, transformées et chargées dans un entrepôt de données généralement par un outil de type ETL (Extract-Transform-Load) ou en français ETC (Extraction-Transformation-Chargement).

Classement en n dimensions: en tableau, cube, hypercube

BYOD

http://fr.wikipedia.org/wiki/BYOD

  • Juridique et Social: télétravail occasionnel, double tranchant
  • Sécurité: développement d’opérations frauduleuses, visant à récupérer les données personnelles et professionnelles (logiciel malveillant, vols des terminaux, écoutes téléphoniques…).
  • Ercom, Thales, Mc Afee, Look Out
  • Agence nationale de la sécurité des systèmes d'information (ANSSI) s'est déclaré fermement opposé au BYOD, affirmant qu’il n’existe pas sur le marché de solution satisfaisante pour accompagner cette tendance en toute sécurité

Design Pattern

http://fr.wikipedia.org/wiki/Patron_de_conception

Les patrons servent à documenter des bonnes pratiques basées sur l'expérience.

La description d'un patron de conception suit un formalisme fixe :

  • Nom
  • Description du problème à résoudre
  • Description de la solution : les éléments de la solution, avec leurs relations. La solution est appelée patron de conception.
  • Conséquences : résultats issus de la solution.

Les patrons de conception les plus connus sont au nombre de 23. (=patrons Gof = Gang Of Four)

Modèle-Vue-Contrôleur (MVC) est une combinaison des patrons Observateur, Stratégie et Composite

Design Pattern = patrons de conception

3 types: Création, Structure, Comportement

Création

  • Fabrique abstraite (Abstract Factory) (interface identique, cache l'implémentation)
  • Monteur (Builder): Séparer la construction d'un objet complexe de la représentation afin que le même processus de construction puisse créer différentes représentations (histoire des pizzas, abstract MonteurPizza, setMonteur)
  • Fabrique (Factory Method) (constructeur differents)
  • Prototype (Prototype) (méthode clone)
  • Singleton (Singleton) (pas si simple…)

Structure

  • Adaptateur (Adapter):convertir l'interface d'une classe en une autre interface que le client attend. On peut également utiliser un adaptateur lorsque l'on ne veut pas développer toutes les méthodes d'une certaine interface.
  • Pont (Bridge): Notion d'interface, utilisé pour séparer la définition de l'interface (appelée aussi "Stub", pour "souche" ou "talon") de l'implémentation (appelée aussi "Skeleton", symbolisant le "squelette" du sens logique mis en oeuvre).
  • Objet composite (Composite): permet de concevoir une structure d'arbre
  • Décorateur (Decorator): permet d'attacher dynamiquement de nouvelles responsabilités à un objet. Les décorateurs offrent une alternative assez souple à l'héritage pour composer de nouvelles fonctionnalités.
  • Façade (Facade): a pour but de cacher une conception et une interface complexe difficile à comprendre (créer une classe pour en cacher une plus complexe calendrier gregorien)
  • Poids-mouche ou poids-plume (Flyweight): séparer les données des méthodes car trop d'objets (exemple: caractères et police de caractères)
  • Proxy (Proxy): meme interface que la classe qu'il remplace → controle d'acces a la classe

Comportement

  • Chaîne de responsabilité (Chain of responsibility): Lors de la réception d'un message, ce dernier va passer d'une classe a l'autre, déclenchant ou non le traitement associé
  • Commande (Command)
  • Interpréteur (Interpreter)
  • Itérateur (Iterator)
  • Médiateur (Mediator)
  • Mémento (Memento)
  • Observateur (Observer)
  • État (State)
  • Stratégie (Strategy)
  • Patron de méthode (Template Method)
  • Visiteur (Visitor)
  • Fonction de rappel (Callback)

Fabrique

public class FabriqueAnimal
{
 
  Animal getAnimal(String typeAnimal) throws ExceptionCreation
  {
    if("chat".equals(typeAnimal))
      return new Chat();
 
    if ("chien".equals(typeAnimal))
      return new Chien();
 
    throw new ExceptionCreation("Impossible de créer un " + typeAnimal);
  }
 
}

Les méthodes de fabrication peuvent avoir un nom qui décrit mieux leur fonction

class Complex {
     public static Complex fromCartesian(double real, double imag) {
         return new Complex(real, imag);
     }
 
     public static Complex fromPolar(double rho, double theta) {
         return new Complex(rho * cos(theta), rho * sin(theta));
     }
 
     private Complex(double a, double b) {
         …
     }
 }
 
 Complex c = Complex.fromPolar(1, pi);  Identique à fromCartesian(-1, 0)

Cas du lecteur d'image qui doit choisir sa classe de chargement au moment de l'ouverture du fichier…(tableau associatif entre le type d'mage et la classe pour le lire)

Fabrique abstraite

Le client ne se préoccupe pas de savoir laquelle de ces fabriques a donné un objet concret, car il n'utilise que les interfaces génériques des objets produits. Ce patron de conception sépare les détails d'implémentation d'un ensemble d'objets de leur usage générique. On peut ainsi ajouter de nouveaux objets dérivés sans modifier le code qui utilise l'objet de base.

 /* exemple d'une fabrique abstraite d'éléments d'IHM en C++ */
 
class Button {
  virtual void paint() = 0;
};
 
class WinButton : public Button {
  void paint (){
    std::cout « " I'm a window button \n";
  }
};
 
class OSXButton : public Button {
  void paint (){
    std::cout « " I'm a OSX button \n";
  }
};
 
class GUIFactory {
  virtual Button* createButton () = 0;
};
 
class WinGUIFactory : public GUIFactory {
  Button* createButton (){
    return new WinButton();
  }
};
 
class OSXGUIFactory : public GUIFactory {
  Button* createButton (){
    return new OSXButton();
  }
};

Décorateur (Decorator)

 Déclarations
interface Voiture
{
   public double getPrix();
}
 
class AstonMartin implements Voiture
{
        @Override
        public double getPrix() 
        {
                return 999.99;
        }
}
 
 Décorateurs
abstract class Option implements Voiture {
        protected Voiture _originale;
        protected double _tarifOption;
 
        public Option(Voiture originale, double tarif) 
        {
                _originale = originale;
                _tarifOption = tarif;
        }
 
        @Override
        public double getPrix() 
        {
                return _originale.getPrix() + _tarifOption;
        }
}
 
class VoitureAvecClimatisation extends Option 
{
        public VoitureAvecClimatisation(Voiture originale)
        {
                super(originale, 1.0);
        }
}
 
class VoitureAvecParachute extends Option 
{
        public VoitureAvecParachute(Voiture originale) 
        {
                super(originale, 10.0);
        }
}
 
class VoitureAmphibie extends Option 
{
        public VoitureAmphibie(Voiture originale) 
        {
                super(originale, 100.0);
        }
}
 
public class Usine 
{
         Implémentation
        public static void main(String[] args) 
        {
                Voiture astonMartin = new VoitureAvecClimatisation(new AstonMartin());  Climatisation de série
                astonMartin = new VoitureAvecParachute(astonMartin);  Ajout d'une option (décorateur)
                astonMartin = new VoitureAmphibie(astonMartin);
 
                System.out.println(String.format("Prix = %.2f€", astonMartin.getPrix())); 
                 affiche "Prix = 1110,99€"
        }
}

Scrum: transparence, inspection, adaptabilité

http://fr.wikipedia.org/wiki/Scrum_(méthode)
Pragmatique, Itératif (besoins s'affinent), incrémental (sprint) et adaptatif (contrôle mural), engagement d'équipe, Scrum Master, Project Owner, Product Back Log, Sprint Back Log, Unité de valeurs (Jours hommes), Planning Poker, User Story, auto organisation, démonstration en fin de sprint, réunion rétrospective (3 h) à chaque début de sprint
Daily Scrum: 15 minutes sans le PO: Qu'ai fait Hier? Que dois-je faire today? Difficultés?
Réunion de planification (8 heure pour 1 mois) avec le PO, les back logs, les resultats: Négociation du futur sprint
Sprint Burndown Chart (Reste a faire en heure par le temps (date))
Release Burndown Chart (Reste à faire en points par le temps)

4 Valeurs agiles:

  • L'équipe: « Les individus et leurs interactions, plus que les processus et les outils »
  • L'application: « Des logiciels opérationnels, plus qu'une documentation exhaustive »
  • La collaboration: (« La collaboration avec les clients, plus que la négociation contractuelle »
  • L'acceptation du changement: (« L'adaptation au changement, plus que le suivi d'un plan »

CMMI = Capability Maturity Model Integration

http://fr.wikipedia.org/wiki/Capability_Maturity_Model_Integration
5 Niveaux: Initial/Héroique, Managed (cahier des charges, gestion de projet planification/suivi, assurance qualité, gestion des fournisseurs, gestion de conf, KPI), Defined/Ajusté/Standardisé/Organisation (recette technique/fonctionnel, formation a l'organisation, expérience capitalisée), Quantitatively Managed (utilisation de statistiques), Optimized (innovation organisationnelle, analyse des causes et des solutions)

Inversion de controle

http://fr.wikipedia.org/wiki/Inversion_de_controle

Injection de dépendance.

framework controle l'application et non plus l'inverse. (Spring, Symphony, Guice)

UP = Unified Process

http://fr.wikipedia.org/wiki/Unified_Process

RUP est l’une des plus célèbres implémentations de la méthode PU, livrée clés en main, permettant de donner un cadre au développement logiciel, répondant aux exigences fondamentales préconisées par les créateurs d’UML : une méthode de développement doit être guidée par les besoins des utilisateurs elle doit être centrée sur l’architecture logicielle elle doit être itérative et incrémentale UML est souvent qualifié de langage de modélisation et permet en fait de « penser objet » au moment de la conception, de la modélisation, pour permettre un développement objet plus aisé. Mais, et ses créateurs, membres de l’OMG, en étaient tout à fait conscients, le cycle de vie du logiciel, le processus de création et même de la conception des dits modèles n’est pas du tout prise en charge par UML. La raison en est simple : Comment prendre en compte la diversité des projets, des problématiques, des équipes et des cultures d’entreprise dans une seule et unique méthode ? C’est à cette question laissée délibérément en suspens par l’OMG que répond PU et ses divers avatars (RUP, XUP, AUP, EUP, 2TUP, EssUP). C’est pour préserver une nécessaire adaptabilité au contexte d’entreprise que PU est avant tout générique. Ainsi, une réalisation conforme à PU, pour transformer les besoins des utilisateurs en logiciel, doit nécessairement présenter les caractéristiques suivantes : PU est à base de composants PU utilise UML PU est piloté par les cas d’utilisation PU est centré sur l’architecture PU est itératif et incrémental

Urbanisation

L'urbanisation consiste donc à créer un SI agile, modulable et évolutif.
L’urbanisation SI est une démarche d'aide à la transformation, rationalisation, simplification et amélioration du SI

cloud

http://fr.wikipedia.org/wiki/Cloud_computing

le cloud computing est l'accès via un réseau de télécommunications, à la demande et en libre-service, à des ressources informatiques partagées configurables

mashup (composition d'appli par composants externes) http://fr.wikipedia.org/wiki/Application_composite

Il s'agit d'une forme particulière de gérance de l'informatique, dans laquelle l'emplacement et le fonctionnement dans le nuage ne sont pas portés à la connaissance des clients.
Les francisations informatique en nuage, informatique dématérialisée, ou encore infonuagique sont également utilisées.

Caractéristiques:

  • ressources en self-service, et adaptation automatique à la demande. La capacité de stockage et la puissance de calcul sont adaptées automatiquement au besoin d'un consommateur. Ce qui contraste avec la technique classique des hébergeurs où le consommateur doit faire une demande écrite à son fournisseur en vue d'obtenir une augmentation de la capacité - demande dont la prise en compte nécessite évidemment un certain temps. En cloud computing la demande est automatique et la réponse est immédiate9.
  • ouverture. Étant des commodités publiques, les services de cloud computing sont mis à disposition sur l'internet, et utilisent des techniques standardisées qui permettent de s'en servir aussi bien avec un ordinateur qu'un téléphone ou une tablette.
  • mutualisation. Les ordinateurs disponibles dans le cloud peuvent être regroupés pour former des puissants systèmes, qui apparaissent comme un seul appareil imaginaire - virtuel. Ce procédé est inspiré des grilles informatiques. Le regroupement des appareils est automatique, invisible pour l'utilisateur, et lui donne l'impression d'un système où les ressources sont illimitées9. La mutualisation permet de combiner des ressources hétérogènes (matériel, logiciel, trafic réseau) en vue de servir plusieurs consommateurs à qui les ressources sont automatiquement attribuées. La mutualisation améliore la scalabilité et l'élasticité et permet d'adapter automatiquement les ressources aux variations de la demande.
  • paiement à l'usage: la quantité de service consommée dans le cloud est mesurée, à des fins de contrôle, d'adaptation des moyens techniques et de facturation.

Les nuages utilisent des technologies telles que la virtualisation du matériel informatique, les grilles, l'architecture orientée services et les services web1. Un nuage peut être public, privé ou communautaire

Les ressources du nuage peuvent être rapidement mobilisées et mises à disposition en minimisant les efforts de gestion ou les contacts avec le fournisseur de service Les caractéristiques inhérentes au cloud computing qui sont intéressantes pour les entreprises sont la réduction du coût total de possession des systèmes informatique, la facilité d'augmenter ou de diminuer les ressources

Amazon EC2, Windows Azure ou Google App Engine

Contrat sur: la disponibilité, la sécurité, la confidentialité et le support

exemple: grand public Game On Demand

  • IaaS - infrastructure as a service = machines vituelles ou l'utilisateur installe son os
  • PaaS - platform as a service = utilisateur installe son serveur web par exemple
  • SaaS - software as a service ( Google Apps )
  • Data as a Service → mashup
  • Daas - Desktop as a Service
  • STaaS : STorage as a Service : Dropbox, Google Drive, iCloud

Cas de PRISM

les clients sont captifs

Capex (capital expenditure ou dépenses d’investissement) et Opex (operational expenditure ou dépenses de fonctionnement, d’exploitation*) → cloud?

Avantages: Pas de gestion, economie d'energie, de place
Désavantages: risque securite, sauvegarde, loi en vigueur, dépendance sur la qualité du réseau, disponibilité

Green Computing = GreenIT = éco-TIC

http://fr.wikipedia.org/wiki/Green_computing

  • toxicité des composants
  • consommation electrique, gaspillage sur utilisation des serveurs, composants polluants
  • réduction des déchets
  • demarche concrete sinon greenwashing depense + grande en pub qu'en realite

TIC = technologies de l'informatique et des télécommunications

Les normes ISO 9000

http://fr.wikipedia.org/wiki/S%C3%A9rie_des_normes_ISO_9000
certification, audit, marketing au lieu de recherche d'amélioration.

Démarche qualité

http://fr.wikipedia.org/wiki/D%C3%A9marche_qualit%C3%A9

KPIs = Key Perfomance Indicator
KPIs ou tableaux de bords.

Nous y détaillons entre autre qu'un indicateur ou KPI (de l'anglais Key Performance Indicator) permet de mesurer les progrès vers la réalisation d'un objectif organisationnel ou opérationnel. Que c'est un moyen :

  • d'évaluer la performance
  • de réaliser un diagnostic
  • de communiquer
  • d'informer
  • de motiver
  • de progresser en permanence

Et qu'un indicateur pertinent est :

  • spécifique
  • mesurable
  • atteignable
  • orienté résultat
  • évaluable sur la durée

SOA = Service Oriented Architecture

http://fr.wikipedia.org/wiki/Architecture_orient%C3%A9e_services

  • forme d'architecture de médiation qui est un modèle d'interaction applicative qui met en œuvre des services (composants logiciels) :
    • avec une forte cohérence interne (par l'utilisation d'un format d'échange pivot, le plus souvent XML),
    • des couplages externes « lâches » (par l'utilisation d'une couche d'interface interopérable, le plus souvent un service web WS-*).
  • deux principales exigences fonctionnelles:
    1. Les différents producteurs d'information doivent pouvoir continuer à utiliser leur système de façon transparente. Par exemple, un trust réalisant une acquisition ne doit pas handicaper son nouveau membre en imposant un changement brutal de système informatique.
    2. L'organisation doit pouvoir obtenir une synthèse de l'information produite par ses différents membres. Il s'agit ici d'information en lecture seule, la synthèse s'effectuant toujours du bas vers le haut.

Concepts des SOA:

  • Une architecture orientée service se conforme à divers principes de gestion des services influençant directement le comportement intrinsèque d’une solution logicielle et le style de sa conception :
  • L’encapsulation des services.
  • Le faible couplage des services avec la maintenance d’une relation réduisant les dépendances.
  • Le contrat de service adhérent à un accord de communication, collectivement défini avec un ou plusieurs documents de description.
  • L’abstraction des services dissimulant la logique du service à l’extérieur.
  • La réutilisation des services partageant la logique entre plusieurs services avec l’intention de promouvoir la réutilisation.
  • La composition des services.
  • L’autonomie des services.
  • L’optimisation des services.
  • La découverte des services depuis leur description extérieure.

ITIL

ITIL v3 2011
http://fr.wikipedia.org/wiki/Information_Technology_Infrastructure_Library
ITIL (Information Technology Infrastructure Library) est un ensemble d'ouvrages recensant les bonnes pratiques (« best practices ») du management du système d'information

Soutien des services (Service Support)

  • Le centre de services (Service Desk)
  • La gestion des incidents (Incident Management)
  • La gestion des problèmes (Problem Management)
  • La gestion des changements (Change Management)
  • La gestion des mises en production (Release Management)
  • La gestion des configurations (Configuration Management)

Fourniture des services (Service Delivery)

  • La gestion financière des services des TI (IT Financial Management)
  • La gestion de la capacité (Capacity Management)
  • La gestion de la disponibilité (Availability Management)
  • La gestion de la continuité des services des TI (IT Continuity Management)
  • La gestion des accords de service (Service Level Agreement / Service Level Management)

Gestion des infrastructures informatiques (ICT infrastructure management) Les processus de gestion des infrastructures informatiques recommandent de bonnes pratiques pour les exigences d'analyse, planning, conception, déploiement, gestion opérationnelle et support technique d'une infrastructure informatique.

  • Conception et planning des infrastructures informatiques
  • Déploiement des infrastructures informatiques
  • Exploitation des infrastructures informatiques
  • Support technique des infrastructures informatiques

Gestion de la sécurité (Security management) Ce recueil est consacré à la sécurité (confidentialité, intégrité des données, disponibilité des données, …) du SI (processus de sécurité). Ce processus a pour but d'aligner la sécurité informatique avec la sécurité des données de l'organisation propriétaire de ses données et d'assurer que la sécurité est gérée de manière efficace dans l'organisation et à tous les niveaux et toutes les activités de l'organisation.

  • Disponibilité : l'information doit être disponible et utilisable lorsque nécessaire,
  • Confidentialité : l'information doit être divulguée ou vue uniquement par les utilisateurs qui en ont le droit,
  • Intégrité : l'information doit être complète, précise et on la protège de modifications non autorisées,
  • Authenticité, non répudiation : l'information doit être réputée "de confiance" lorsque des transactions d'affaire ont lieu (et réalisées électroniquement) et lors des échanges entre les organisations ou avec des partenaires de l'organisation.

ITIL V3:

  1. Stratégie des services (Service Strategy)
  2. Conception des services (Service Design)
  3. Transition des services (Service Transition)
  4. Exploitation des services (Service Operation)

Cobit

CobiT v4 v5 (Control Objectives for Information and related Technology – Objectifs de contrôle de l’Information et des Technologies Associées) est un outil fédérateur qui permet d'instaurer un langage commun pour parler de la Gouvernance des systèmes d'information tout en tentant d'intégrer d'autres référentiels tels que ISO 9000, ITIL…
http://fr.wikipedia.org/wiki/CobiT
"Le CobiT" consiste à décomposer tout système informatique en :

Planification et Organisation : dans ce domaine nous cherchons à savoir comment utiliser les techniques informatiques afin que l’entreprise atteigne ses objectifs.

  1. Définition du plan stratégique informatique
  2. Définition de l'architecture des informations
  3. Définition de la direction technologique
  4. Organisation du service informatique
  5. Gestion des investissements
  6. Communication des objectifs de la direction
  7. Gestion des ressources humaines
  8. Respect des exigences légales
  9. Évaluation des risques
  10. Gestion des projets
  11. Gestion de la qualité

Acquisition et Installation : ici CobiT cherche à définir, acquérir et mettre en œuvre des technologies en les alignant avec les processus métiers de l’entreprise.

  1. Identification des solutions automatiques
  2. Acquisition et maintenance des applications informatiques
  3. Acquisition et maintenance de l'infrastructure technique
  4. Développement et maintien des procédures
  5. Installation et certification des systèmes
  6. Gestion des modifications

Livraison et Support : l’objectif est de garantir l’efficacité et l’efficience des systèmes technologiques en action.

  1. Définition des niveaux de service
  2. Gestion des services aux tiers
  3. Gestion des performances et des capacités
  4. Garantie de la poursuite des traitements
  5. Garantie de la sécurité des systèmes
  6. Identification et attribution des coûts
  7. Formation des utilisateurs
  8. Assistance des utilisateurs
  9. Gestion de la configuration
  10. Gestion des incidents
  11. Gestion des données et des applications
  12. Sécurité physique du système
  13. Gestion de l'exploitation

Monitoring : Il convient ici de vérifier que la solution mise en place est en adéquation avec les besoins de l’entreprise dans une vision stratégique.

  1. Surveillance des processus
  2. Appréciation du contrôle interne
  3. Certification par un organisme indépendant
  4. Audit par un organisme indépendant


Analyse décisionnelle des systèmes complexes
http://fr.wikipedia.org/wiki/Analyse_d%C3%A9cisionnelle_des_syst%C3%A8mes_complexes

Gestion de Projet

Gestion de projet http://www.gestion-projet-informatique.vivre-aujourdhui.fr/planification.html
Pert (malicieux) Date + tot, date + tard
Gantt

7 phases d'un projet:

  1. Étude d'opportunité - Elaboration du projet
  2. Phase préliminaire ou d'initialisation et etude de faisabilité
  3. Conception - découpage en tache/planning/séquence
  4. Réalisation et vérification
  5. Recettage - Acceptation
  6. Déploiement et exploitation
  7. Bilan

SMART (Spécifique, Mesurable, Atteignable, Réaliste (Respect des ressources), Temporel)

PRINCE2 (PRojects IN Controlled Environments) est une méthode de gestion et de certification de projet structurée qui se focalise sur trois points : l'organisation, la gestion et le contrôle du projet.
http://fr.wikipedia.org/wiki/PRINCE2

  1. (SU) - Elaborer un projet (EP)
  2. (DP) - Diriger un projet (DP)
  3. (IP) - Initialiser un projet (IP)
  4. (CS) - Contrôler une séquence (CS)
  5. (MP) - Gérer la livraison du produit (LP)
  6. (SB) - Gérer une limite de séquence (LS)
  7. (CP) - Clore le projet (CP)

Le magagement art de conduire une organisation vers la réalisation de ces objectifs. Un bon manager doit notamment être capable de :

  • organisateur: d'organiser et accompagner le travail de son équipe au quotidien ;
  • planificateur: fixer les objectifs et négocier les moyens ;
  • évaluateur: évaluer les résultats et apprécier les performances ;
  • délégateur: déléguer des missions à ses collaborateurs ;
  • animateur: maintenir la motivation de son équipe sans pouvoir nécessairement augmenter les salaires.

Structurer un projet (document cahier des charges):

  • identifier les fonctionnalités attendues (Product Back Log, product Brakdown structure (PBS) )
  • lister les taches à réaliser (déterminer les entrées et les sorties)
  • classifier les taches (établir un ordre work breakdown structure (WBS) )

Faire vérifier par le PO (la MOA) la liste des taches.

Planifier un projet:

  • Estimer la durée de chaque tache
  • Identifier les risques
  • Ordonnancer les taches
  • Estimer les charges (élaborer la matrice des responsabilités)

Conduite de projet : une définition La conduite de projet, aussi appelée gestion de projet ou management de projet, est une démarche, qui a pour but de structurer et assurer le bon déroulement d'un projet.

Conduire un projet, c'est prendre toutes les mesures nécessaires pour faire en sorte que le projet atteigne ses objectifs, notamment sur quatre axes principaux :

  • le respect des objectifs de qualité des livrables
  • le respect des délais
  • le respect des coûts
  • la satisfaction du client

Modèle OSI (Open Système Interconnection) ISO 7498 [APS Tran RLP]

  • 7. Application ( point d'acces aux services réseaux, Gopher • SSHFTP • NNTP • DNS • SNMP • XMPP • Telnet • SMTPPOP3IMAPIRC • RTP• WebDAV • SIMPLE • HTTP • Modbus • CLNP • SIP • DHCP• CANOpen• TCAP• RTSP)
  • 6. Présentation (met en forme les données binaires en données exploitables, gère le chiffrement et le déchiffrement)
  • 5. Session ( communication inter host, gére les sessions entre applications, AppleTalk, NetBios)
  • 4. Transport (notion de port, TCP · UDP)
  • 3. Réseau ( adresse IP, routage, addressage, ARP · Babel · BGP · BOOTP · CLNP · ICMP · IGMP · IPv4 · IPv6 · IPX · IS-IS · NetBEUI · OSPF · RARP · RIP · X.25 )
  • 2. Liaison ( adresse MAC, ethernet, CSMA/CD Colision Detection 802.3, CSMA/CA Colision Avoidance WIFI 802.11)
  • 1. Physique (transmission binaire, Codage NRZ • Codage Manchester • Codage Miller • RS-232 • RS-449 • V.21-V.23 • V.42-V.90 • Câble coaxial • 10BASE2 • 10BASE5 • Paire torsadée • 10BASE-T • 100BASE-TX • 1000BASE-T • RNIS • PDH • SDH • T-carrier • EIA-422 • EIA-485 • SONET • ADSL • SDSL • VDSL • DSSS • FHSS • HomeRF • IrDA • USB • IEEE 1394 (FireWire) • Thunderbolt • Wireless USB, Bluetooth • Wi-Fi)

1 à 3 = couche matérielle
4 à 7 = couches hautes
4 = couche segment
5 à 7 = couche donnée

logiciel libre

Un logiciel est dit libre

  1. lorsqu'il est utilisable pour tous usages
  2. lorsque vous pouvez regardez le code source original
  3. lorsque vous pouvez en faire des copies que vous distribuez
  4. lorsque vous pouvez y apporter des améliorations ou des traductions

sécurité = DICP

  • La disponibilité : Le système doit fonctionner sans faille durant les plages d'utilisation prévues, garantir l'accès aux services et ressources installées avec le temps de réponse attendu.
  • L'intégrité : Les données doivent être celles que l'on s'attend à ce qu'elles soient, et ne doivent pas être altérées de façon fortuite ou volontaire.
  • La confidentialité : Seules les personnes autorisées ont accès aux informations qui leur sont destinées. Tout accès indésirable doit être empêché.
  • La non-répudiation et l'imputation : Aucun utilisateur ne doit pouvoir contester les opérations qu'il a réalisées dans le cadre de ses actions autorisées, et aucun tiers ne doit pouvoir s'attribuer les actions d'un autre utilisateur.
  • L'authentification : L'identification des utilisateurs est fondamentale pour gérer les accès aux espaces de travail pertinents et maintenir la confiance dans les relations d'échange.
Missions de conseil et d'ingénierie :
* étude et mise en œuvre d'éléments de sécurité : firewall, proxy, VPN, IDS ;
* étude de la confidentialité des données ;
* sécurisation des systèmes, audit, politique de sécurité globale
* accompagnement lors de la mise en oeuvre.

Définition : Politique SSI
Ensemble formalisé des éléments stratégiques, des directives, procédures, codes de conduite, règles organisationnelles et techniques, ayant pour objectif la protection du (des) système(s) d'information de l'organisme.

La politique SSI constitue ainsi le socle de la SSI. C'est le référentiel qui "fait foi", théoriquement à tout moment, au sein du périmètre dans lequel il s'applique. Toute réflexion relative à la SSI dans le cadre de ce périmètre devra être conforme à cette politique.

Définition : Règle de sécurité
Moyens et comportements définis dans le cadre de la politique SSI ; elles sont construites par déclinaison des principes de sécurité dans un environnement et un contexte donnés.

Définition : Principe de sécurité
Expression des orientations de sécurité nécessaires et des caractéristiques importantes de la SSI en vue de l'élaboration d'une politique SSI.

Sécurité 100% = utopie
Politique de sécurité:

  1. évaluer les risques et les criticités
  2. rechercher et sélectionner les parades: que va-t-on sécuriser, quand et comment ? utilisation de leurre? Choix de la sécurité
  3. Mise en oeuvre
  4. vérification de l'efficacité

Dommages possibles: financiers ou image (de marque, de vie privée diffusion d'info confidentielles).

DICP - Disponibilité - Intégrité - Confidentialité - Preuve
Méthode d'analyse des riques:

  • la méthode EBIOS (Expression des besoins et identification des objectifs de sécurité), développée par l'Agence nationale de la sécurité des systèmes d'information (ANSSI) ;
  • la méthode MEHARI (Méthode harmonisée d'analyse des risques), développée par le CLUSIF ;
  • la méthode OCTAVE (Operationally Critical Threat, Asset, and Vulnerability Evaluation), développée par l'Université de Carnegie Mellon (USA).

Défense en profondeur: chaque composant ne fait pas confiance aux autres (à la militaire) plutôt qu'une défense en périphérie.

Déterminer les informations sensibles, les menaces (utilisateurs, personne ou prog malveillant)

Ainsi, la sécurité du système d'information doit être abordée dans un contexte global :

  • la sensibilisation des utilisateurs aux problématiques de sécurité, ou dans certains cas « prise de conscience » (les anglophones utilisent le terme awareness)
  • la sécurité de l'information
  • la sécurité des données, liée aux questions d'interopérabilité, et aux besoins de cohérence des données en univers réparti
  • la sécurité des réseaux
  • la sécurité des systèmes d'exploitation
  • la sécurité des télécommunications
  • la sécurité des applications (débordement de tampon), cela passe par exemple par la programmation sécurisée
  • la sécurité physique, soit la sécurité au niveau des infrastructures matérielles

Pour certains, la sécurité des données est à la base de la sécurité des systèmes d'information, car tous les systèmes utilisent des données, et les données communes sont souvent très hétérogènes (format, structure, occurrences, …).

La sécurité informatique doit toutefois être étudiée de telle manière à ne pas empêcher les utilisateurs de développer les usages qui leur sont nécessaires, et de faire en sorte qu'ils puissent utiliser le système d'information en toute confiance.
Une politique de sécurité:

  • élaborer des règles et des procédures, installer des outils techniques dans les différents services de l'organisation (autour de l'informatique)
  • définir les actions à entreprendre et les personnes à contacter en cas de détection d'une intrusion
  • sensibiliser les utilisateurs aux problèmes liés à la sécurité des systèmes d'informations
  • préciser les rôles et responsabilités

Plan de reprise:

  • le plan de reprise d'activité (PRA) aussi appelé reprise « à froid » qui permet un redémarrage « rapide » de l'activité après un sinistre, avec restauration d'un système en secours avec les données de la dernière sauvegarde
  • le plan de continuité d'activité (PCA) également appelé reprise "à chaud" qui, par une redondance d'infrastructure et une réplication intersites permanente des données, permet de maintenir l'activité en cas de sinistres majeur de l'un des sites.

Moyens techniques pour la sécurité: De nombreux moyens techniques peuvent être mis en œuvre pour assurer une sécurité du système d'information. Il convient de choisir les moyens nécessaires, suffisants, et justes. Voici une liste non exhaustive de moyens techniques pouvant répondre à certains besoins en termes de sécurité du système d'information :

  • Contrôle des accès au système d'information
  • DMZ
  • Surveillance du réseau : sniffer, système de détection d'intrusion
  • Sécurité applicative : séparation des privilèges, audit de code, rétro-ingénierie
  • Emploi de technologies ad hoc : pare-feu, UTM (Unified Threat Management= firewall++, un système de détection ou de prévention d'intrusion (IDS ou IPS), et un filtrage de contenu applicatif (filtrage URL).), anti-logiciels malveillants (antivirus, anti-spam, anti-logiciel espion)
  • Cryptographie : authentification forte, infrastructure à clés publiques, chiffrement.

ACID = Atomique, Cohérente, Isolé et Durable

En informatique, les propriétés ACID (atomicité, cohérence, isolation et durabilité) sont un ensemble de propriétés qui garantissent qu'une transaction informatique est exécutée de façon fiable. http://fr.wikipedia.org/wiki/Propri%C3%A9t%C3%A9s_ACID

CRUD = Create, Read, Update and Delete

Big Data

  • a la mode
  • Problèmes capture, stockage, recherche, partage, présentation
  • Grand défi de la décennie
  • utile pour la recherche du génome humain, opinions publiques, tendances industrielles, lutte contre la criminalité et en sécurité
  • ensemble de données si grand que les SI et les base de données actuelles ne savent plus ou mal les gérer
  • dev d'application pour donner du sens à ces données par analyse
  • Différence avec Business Intelligence (informatique décisionnelle)
    • Business Intelligence (informatique décisionnelle) = analyse par statistique descriptive (détection de tendance) contre analyse par inférence pour le big data (capcité prédictive)
    • Business Intelligence (informatique décisionnelle) = beaucoup de données avec une grande densité en informations contre beaucoup de donnée avec une faible densité en informations
  • Trois dimensions
    • Volume : énormément de données (pétaoctets 10e15, zéttaoctets, yottaoctets 10 e 24)
    • Variété : image mining, web mining, publiques Open Data, géographique par ilot (IP), 360 degres des consommateurs…
    • Vélocité: fréquence de capture, génération et partage de la donnée. Notion de temps-réel pour traiter les flux de données avant l'arrivée du prochain…
  • Big Data Architecture Framework : Design pattern MapReduce de google, framework hadoop
  • acteurs: google, teradata, Oracle, EMC
  • évolutions:
    • modele de donnee: la donnée: son contexte, sa pertinence, sa qualité, sa provenance
    • base de donnée: requete non complete, on ne sait pas trop ce que l'on cherche
  • Techniques utilisées: cloud computing (Google BigQuery, Big Data par Amazon Web Services, Microsoft avec Azure) , super calculateurs hybrides
  • Applications:
    • Recherche scientifique (génome humain, analyse des données capturées par les telescopes, recherche nucléaire avec le LHR, la météorologie),
    • Politique la NSA avec le Utah Data Center …
    • Privé: Walmart, Facebook
  • NoSQL = Not Only SQL : SourceForge.Net (MongoDB), Facebook (Cassandra) = (Plus de table, pas de sql, structuration relationnelle faible, clé-valeur tableau associatif, Non ACID, réparti)

IA = Intelligence Artificielle

http://fr.wikipedia.org/wiki/Intelligence_artificielle

la construction de programmes informatiques qui s’adonnent à des tâches qui sont, pour l’instant, accomplies de façon plus satisfaisante par des êtres humains car elles demandent des processus mentaux de haut niveau tels que : l’apprentissage perceptuel, l’organisation de la mémoire et le raisonnement critique le côté « artificiel » atteint par l'usage des ordinateurs ou de processus électroniques élaborés et le côté « intelligence » associé à son but d'imiter le comportement

test de turing: déterminer qui est humain par la parole

IA Forte : intelligence + conscience ou éprouver des impressions, sentiments IA Faible : approche + pragmatique, la machine simule l'intelligence, elle semble agir comme si elle était intelligente.

  • un moteur d'inférence - simulant les raisonnements déductifs logiques
  • Une base de connaissance regroupe des connaissances spécifiques à un domaine spécialisé donné, sous une forme exploitable par un ordinateur.
  • Une base de faits est l'une des entrées d'un moteur d'inférence. C'est un ensemble de connaissances appelées "faits" et considérés comme vrais. À partir de ces faits, le moteur d'inférence va leur appliquer les règles issues de sa base de règles pour en déduire d'autres faits et ainsi résoudre un problème de logique.

DEEP BLUE
Mars Explorer

trois grandes approches (symbolique, connexionniste et statistique) sont à la base des systèmes actuels.

humain = 2x10 exp 14

LISP / PROLOG

domaines d'application:

  • la banque, avec des systèmes experts d'évaluation de risque lié à l'octroi d'un crédit (credit-scoring)
  • le militaire, avec les systèmes autonomes tels que les drones, les systèmes de commandement et l'aide à la décision
  • les jeux
  • la médecine, avec les systèmes experts d'aide au diagnostic
  • la logistique, au travers d'approches heuristiques de type résolution de problème de satisfaction de contraintes

Système expert:
http://fr.wikipedia.org/wiki/Syst%C3%A8me_expert
Un système expert se compose de 3 parties :

  • une base de faits,
  • une base de règles (ou base de connaissances) et
  • un moteur d'inférence.

D'une manière générale, un système expert est un outil capable de reproduire les mécanismes cognitifs d'un expert, dans un domaine particulier. Il s'agit de l'une des voies tentant d'aboutir à l'intelligence artificielle.

Un moteur d'inférence (du verbe « inférer » qui signifie « déduire ») est un logiciel correspondant à un algorithme de simulation des raisonnements déductifs.
Un moteur d'inférence permet aux systèmes experts de conduire des raisonnements logiques et de dériver des conclusions à partir d'une base de faits et d'une base de connaissances.
Les moteurs d'inférences peuvent implémenter :
une logique formelle d'ordre 0 (logique des propositions), d'ordre 0+ (<,>,…), d'ordre 1 (logique des prédicats) ou d'ordre 2 avec
une gestion d'hypothèses monotone ou non monotone,
un chaînage avant, chaînage arrière ou mixte,
une complétude déductive ou non.

les moteurs - dits à « chaînage avant » - qui partent des faits et règles de la base de connaissance, et tentent de s'approcher des faits recherchés par le problème.
les moteurs - dits à « chaînage arrière » - qui partent des faits recherchés par le problème, et tentent par l'intermédiaire des règles, de « remonter » à des faits connus,

Les plus simples des systèmes experts s'appuient sur la logique des propositions (dite aussi « logique d'ordre 0 »). Dans cette logique, on n'utilise que des propositions, qui sont vraies, ou fausses. D'autres systèmes s'appuient sur la logique des prédicats du premier ordre (dite aussi « logique d'ordre 1 »), que des algorithmes permettent de manipuler aisément.

- Logique monotone : si la variable A a une valeur, c'est définitif (elle ne peut plus en changer) ;
- Logique non monotone : une variable peut changer de valeur ; par exemple imaginons le programme d'un robot cuisinier : casserole_pleine et vider_casserole implique non casserole_pleine ;

http://patrice.dargenton.free.fr/ia/vbbrainbox/ En pratique, dès que l'on dépasse la centaine de règles, il devient très difficile de suivre comment le système expert « raisonne » (manipule faits et règles en temps réel), et donc d'en assurer la mise au point finale, puis la maintenance.

Web 2.0

  • Le Web 1.0 est le Web constitué de pages web liées entre elles par des hyperliens qui a été créé au début des années 1990.
  • Le Web 2.0 est le Web social, qui s'est généralisé avec le phénomène des blogs, des forums de discussion agrégeant des communautés autour de sites internet et enfin avec les réseaux sociaux.
  • Le Web 3.0, lui, n'est pas vraiment défini. En fait, l'expression est employée par tous les spécialistes pour expliquer ce que sera selon eux la prochaine étape de développement du Web. Les deux thèses dominantes sont de considérer le Web 3.0 comme l'Internet des objets1, qui émerge depuis 2008, l'autre thèse dominante est d'en faire le web sémantique.

Aspect technique

La définition précise d'une application Web 3.0 est encore très débattue. Cependant, il est généralement admis qu'une solution Web 3.0 doit montrer certaines caractéristiques :
on ne se réfère plus uniquement à un site Web 1) ;

  1. mobilité, elle doit être indépendante de tout type de support (taille d'écran, sortie imprimante, etc.) ;
  2. universalité, elle doit être indépendante de tout système d'exploitation, et de tout matériel (fabricant, marque, logiciel, ou de plugin) ;
  3. accessibilité, strictement en conformité avec le W3C, ce qui permet de rendre d'autres logiciels accessibles à l'aide de Microformat et ouverts aux bases de données diverses.

Ces 3 derniers points font néanmoins déja parti du Web 2.0 ou 1.0, même si beaucoup de sites web ne les appliquent pas.

LDAP

Qualité logicielle

Indicateurs de qualité logicielle: La norme ISO 9126 définit six groupes d'indicateurs de qualité des logiciels :

  • la capacité fonctionnelle. c'est-à-dire la capacité qu'ont les fonctionnalités d'un logiciel à répondre aux exigences et besoins explicites ou implicites des usagers. En font partie la précision, l'interopérabilité, la conformité aux normes et la sécurité ;
  • la facilité d'utilisation, qui porte sur l'effort (le peu d') nécessaire pour apprendre à manipuler le logiciel. En font partie la facilité de compréhension, d'apprentissage et d'exploitation et la robustesse - une utilisation incorrecte n'entraîne pas de dysfonctionnement ;
  • la fiabilité, c'est-à-dire la capacité d'un logiciel de rendre des résultats corrects quelles que soient les conditions d'exploitation. En font partie la tolérance de pannes - la capacité d'un logiciel de fonctionner même en étant handicapé par la panne d'un composant (logiciel ou matériel) ;
  • la performance, c'est-à-dire le rapport entre la quantité de ressources utilisées (moyens matériels, temps, personnel), et la quantité de résultats délivrés. En font partie le temps de réponse, le débit et l'extensibilité - capacité à maintenir la performance même en cas d'utilisation intensive ;
  • la maintenabilité, qui porte sur l'effort (le peu d') nécessaire en vue de corriger ou de transformer le logiciel. En font partie l'extensibilité, c'est-à-dire le peu d'effort nécessaire pour y ajouter de nouvelles fonctions ;
  • la portabilité, c'est-à-dire l'aptitude d'un logiciel de fonctionner dans un environnement matériel ou logiciel différent de son environnement initial. En font partie la facilité d'installation et de configuration pour le nouvel environnement.

TickIT est un référentiel de certification du système de management de la qualité en entreprise, en matière d’ingénierie du logiciel. Certification des auditeurs.

SOA - SOAP - REST

SOA = Service Oriented Architecture = http://www.commentcamarche.net/contents/1241-soa-architecture-orientee-service

SOAP = Simple Object Access Protocol = http://fr.wikipedia.org/wiki/SOAP
Avantages

  • Utiliser SOAP via HTTP facilite la communication et évite les problèmes de proxys et pare-feu par rapport à des technologies plus anciennes

SOAP est

  • un protocole de RPC orienté objet bâti sur XML.
  • assez ouvert pour s'adapter à différents protocoles de transport.
  • indépendant de la plate-forme.
  • indépendant du langage.
  • extensible.

Inconvénients:
En raison du nombre d'informations qu'impose le format XML, SOAP peut alourdir considérablement les échanges par rapport à des middlewares comme CORBA ou ICE, ce qui n'est pas forcément un handicap quand les volumes de données transités par SOAP sont faibles par rapport au volume total de données échangées. SOAP décrit la manière dont les applications doivent communiquer entre elles, certains considèrent que le couplage reste fort entre le serveur et ses clients. Une modification de l'API implique ainsi une évolution côté client, contrairement à une architecture orientée ressources telle que REST.

REST = Representational State Transfer = http://fr.wikipedia.org/wiki/Representational_State_Transfer
REST est un style d’architecture pour les systèmes hypermédia distribués

  • Client-Serveur
  • Sans état (toute requete du client doit contenir tout le contexte)
  • Mise en cache (réponse du serveur avec une durée de validité…)
  • interface uniforme
    • identification des ressources (URI si web)
    • auto description
    • représentation définie des ressources
    • hypermédia: chaque acces aux états suivants est décrit dans le message courant
  • système hiérarchisé en couches: plusieurs requetes pour avoir toutes les infos (évolution du système + flexible)
  • Code-On-Demand

Avantages:

  • application + simple à entretenir (aider par le cote hypermedia des messages)
  • sans état → + grande indépendance client/serveur et pas de connexion permanente (bon pour la tolérance de panne et le load balancing)

Inconvénient:

  • Client doit garder le contexte, multiples aller retour pour l'obtenir → interactivité - bonne du à la latence de la connexion

http://blog.nicolashachet.com/niveaux/confirme/larchitecture-rest-expliquee-en-5-regles/

JSON
http://fr.wikipedia.org/wiki/JavaScript_Object_Notation

Audit Informatique
http://fr.wikipedia.org/wiki/Audit_informatique

préparation des actions de conduite du changement : formation des personnels,
communication auprès du personnel, des clients, des partenaires ou fournisseurs,
révision des processus et de l'organisation ;
répétitions ou simulations de l'opération de bascule qui permet le passage de l'ancien système au nouveau

Projet informatique

Projet Informatique = ensemble d'activités coordonnées et dirigées, entreprises dans le but de fournir, à des dates de début et/ou de fin d'achèvement définies, un produit unique répondant à des exigences spécifiées.

  • date de debut et fin
  • Des objectifs précis en terme de délais, de coûts (consommation), de qualité et de performances attendues = des contraintes
  • Une réalisation unique. Un projet n'est pas une activité habituelle et répétitive
  • Une complexité nécessitant un important travail d'analyse excluant l'improvisation, d'où le recours à des outils de travail, des méthodes et des normes constituant des aides tout au long du projet
  • Une organisation humaine spécifique et temporaire

Réussir un projet informatique, c'est obtenir un produit répondant aux besoins de l'utilisateur final, à tous ses besoins exprimés mais seulement ses besoins, tout en respectant les contraintes prédéfinies de coût, de délai et de qualité.

1) X)HTML). Ce peut être aussi une solution Web SaaS (application: (X)HTML + base de données relationnelles (SQLServer, Oracle, MySQL… ) ou XML (la base de données open source Exist-db…
M:/SanDiegoWWW/www/dokuwiki/data/pages/san.pse.txt · Dernière modification: 2014/01/11 10:05 par admin
 
Sauf mention contraire, le contenu de ce wiki est placé sous la licence suivante : CC Attribution-Noncommercial 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki