Batelco : Bilan Technique Qualit é Logiciel

20
1 Batelco : Bilan Technique Qualité Logiciel Alain A April [email protected] Compagnie Télécommunications Bahreïn ETS 27 Mars 2001

description

Batelco : Bilan Technique Qualit é Logiciel. Alain A April [email protected] Compagnie Tél é communications Bahreïn ETS 27 Mars 2001. AApril. Directeur Amélioration des processus BATELCO-IS – 1998 Ingénieur Qualité et Achats Bell Canada – 1993-1998 Ingénieur Télécommunications 1992-1993 - PowerPoint PPT Presentation

Transcript of Batelco : Bilan Technique Qualit é Logiciel

Page 1: Batelco : Bilan Technique Qualit é Logiciel

1

Batelco : Bilan Technique QualitéLogiciel

Alain A April [email protected]

Compagnie Télécommunications Bahreïn

ETS 27 Mars 2001

Page 2: Batelco : Bilan Technique Qualit é Logiciel

2

AApril

• Directeur Amélioration des processus BATELCO-IS – 1998• Ingénieur Qualité et Achats Bell Canada – 1993-1998• Ingénieur Télécommunications 1992-1993• Chef de projet développement logiciel 1986-92• Développeur & DBA – Caisse Populaire 1982-1986• Spécialiste Télécommunication – Sureté du Québec 1981-82• 10 publications – domaine de la qualité• Travaux ISO-JTC1-SC7 sur ISO9126 (co-editeur)

Page 3: Batelco : Bilan Technique Qualit é Logiciel

3

Batelco بتلكو

• Bahreïn TélécommunicationsBahreïn Télécommunications• 200,000 lignes, 170,000 Mobiles200,000 lignes, 170,000 Mobiles• SServiceservices I Internet• 84% Satisfaction Clientèle• Propriétaires: Kuwait (QualityNet) et Arabie

Saoudite (Atheer) • Réduction majeures des tarifs des appels

internationaux (quatre fois en trois ans)• 225 positions en informatique

Page 4: Batelco : Bilan Technique Qualit é Logiciel

4

BT requis pour contrats majeursGestion deCompte

InvestigationInitiale

Faisabilité &Choix fournisseur

Adaptation, Interfaces etValidation

Intégration & Essais

Fonc & Arch. Don.Arch. Platforme

Revues Contrat, S.O.WSpecs and P.Q.

Produits GestionProduits Techn.

Opération& Fermeture

Accept. FoncAccept. Tech.

Gate 1 Gate 2 Gate 3 Gate 4

• Maintenabilité• Adhérence au Standards

BESOINS TECH&QUBESOINS TECH&QU

• Portabilité

• fiabilité

• Facilité à tester

ÉVALUEÉVALUE

Page 5: Batelco : Bilan Technique Qualit é Logiciel

5

Règles de sélection - Achats

La démarche doit garantir que le Bilan technique est conduit selon des règles qui confèrent à l’évaluation les propriétés suivantes :

Page 6: Batelco : Bilan Technique Qualit é Logiciel

6

Définir de façon formelle les réels besoins techniques et qualité attendus du produit logiciel.

1

Ne pas évaluer un logiciel sans connaître au préalable son niveau de criticité.

2

Bâtir le diagnostic sur des faits constatés et incontestables.

3

Obligations d’évaluation BT

Page 7: Batelco : Bilan Technique Qualit é Logiciel

7

NF ISO/CEI 9126NF ISO/CEI 9126STANDARD STANDARD

INTERNATIONALEMENT INTERNATIONALEMENT RECONNURECONNU

FIABILITÉFIABILITÉAptitude du logiciel à maintenir son niveau de service dans des conditions précises et pendant une période déterminée.

RENDEMENTRENDEMENTRapport existant entre le niveau de service d’un logiciel et la quantité de ressources utilisées, dans des conditions déterminées.

PORTABILITÉPORTABILITÉAptitude du logiciel a être transféré d’un environnement à l’autre.

Effort nécessaire pour diagnostiquer les déficiences ou les causes de défaillances ou pour identifier les parties à modifier.

MAINTENABILITÉMAINTENABILITÉ

CAPA. FONCT.CAPA. FONCT.Existence d’un ensemble de fonctions et leurs propriétés données. Les fonctions sont celles qui satisfont aux besoins exprimés et implicites pour des tâches données.

FACIL. D’UTIL.FACIL. D’UTIL.Effort nécessaire pour l’utilisation et sur l’évaluation individuelle de cette utilisation par un ensemble défini ou implicite d’utilisateurs.

1 Besoins Qualité Logiciel

Page 8: Batelco : Bilan Technique Qualit é Logiciel

8

PORTABILITEPORTABILITE

• Facilité d’adaptation• Facilité d’installation• Conformité aux règles• Interchangeabilité

• Interopérabilité

• Conformité règlementaire

CAPACITECAPACITEFONCTIONNELLEFONCTIONNELLE

• Sécurité

• Exactitude

• Aptitude

FACILITE FACILITE D’UTILISATIOND’UTILISATION

RENDEMENTRENDEMENT

• Comportement temps

• Comportement ressources

FIABILITEFIABILITE

• Maturité

• Tolérance aux fautes• Possibilités de récupération

MAINTENABILITEMAINTENABILITE

Effort nécessaire pour diagnostiquer les déficiences ou les causes de défaillances ou pour identifier les parties à modifier.

Effort nécessaire pour modifier, remédier aux défauts ou changer d’environnement.

Effort nécessaire pour valider le logiciel modifié.

• Facilité de compréhension

• Facilité d’exploitation

Effort que doit faire l’utilisateur pour reconnaître la logique et sa mise en oeuvre.

Effort que doit faire l’utilisateur pour apprendre son application.

• Facilité d’apprentissage

FACILITÉFACILITÉD’UTILISATIOND’UTILISATION

Effort que doit faire l’utilisateur pour exploiter et contrôler son application.

MAINTENABILITÉMAINTENABILITÉ• Facilité d’analyse

• Facilité de modification

• Stabilité

• Facilité de validation

Risque des effets inattendus des modifications.

Besoins Qualité Logiciel Détaillés

Page 9: Batelco : Bilan Technique Qualit é Logiciel

9

Utilisation MémoireFacilité de modificationStabilité opérationnelleFacilité de validation

Facilité de modificationFacilité de l’installationConf. règles de portageInterchangeabilité/Portabilité

Comport. / Temps

MaturitéTolérance aux fautesFacililité de récupération

Aptitude à traiter BDHExactitudeInteropérabilitéConformité règlementaireSécurité

Comport. / Ressources

Facilité de compréhensionFacilité d’apprentissageFacilité d’exploitation

Identifie les caractéristiques1

Page 10: Batelco : Bilan Technique Qualit é Logiciel

10

La Criticité du Logiciel

NIVEAU NIVEAU DDUUtilisation ponctuelleFFaibles dommages sur la propriétéPPas de risque pour les vies humainesPPertes économiques négligeables

A

B

C

D

NIVEAU NIVEAU CCUUtilisation continue avec périodes fixes d’interruptionDDommages sur la propriétéPPeu de vies humaines touchéesPPertes économiques significatives

NIVEAU NIVEAU BBUUtilisation continue (interruption pour changement de versions)DDommages sur l’environnementMMenaces sur les vies humainesPPertes économiques importantes

NIVEAU NIVEAU AAUUtilisation continue (24h / 24h)DDommages irréversibles sur l’environnementPPertes de vies humainesPPertes économiques désastreuses

2

Page 11: Batelco : Bilan Technique Qualit é Logiciel

11

« Extrait de SOFTWARE EVALUATION FOR CERTIFICATION (International Software Quality Assurance Series) »

Level DLevel D Level CLevel C Level BLevel B Level ALevel A

FunctionnalityFunctionnality

ReliabilityReliability

UsabilityUsability

EfficiencyEfficiency

MaintainabilityMaintainability

PortabilityPortability

Functional Functional testingtesting

Process evidenceProcess evidenceUsers surveyUsers survey

User interface User interface inspectioninspection

Execution time Execution time measurementmeasurement

Inspection of Inspection of documentsdocuments

Installation Installation analysisanalysis

Technical Technical reviewreview

Fault tolerance Fault tolerance analysisanalysis

Conformity toConformity tointerface standardinterface standard

Benchmark Benchmark testingtesting

LangageLangageconformityconformitycheckingcheckingLangageLangage

conformityconformitycheckingchecking

Component Component testingtesting

Reliability cross Reliability cross modellingmodelling

LaboratoryLaboratorytestingtesting

Users surveyUsers surveyAlgorithmic Algorithmic complexitycomplexity

analysisanalysis

Static analysisStatic analysis

Environ.Environ.constraintsconstraintsevaluationevaluation

Formal Formal verificationverification

User model based User model based evaluationevaluation

PerformancePerformanceprofiling analysisprofiling analysis

TraceabilityTraceabilityevaluationevaluation

Program design Program design evaluationevaluation

Formal Formal verificationverification

+ + +

+ + +

+ + +

+ + +

+ + +

+ + +

Choix des techniques d’évaluation2

Page 12: Batelco : Bilan Technique Qualit é Logiciel

12

Mesures Peu Contestables

1968

1980

2000

1974

1987

1990Ferrante

Halstead

Baker

Ryder

McCabe

Schneiderwind

Zolnowski

Dijkstra

Albrecht

Elshoff

Rocacher

Weiser

Singh

Rubey,Hartwick

MCCALL

SCOPEAZUMA

IEC 50(191)

3

Outils deMesure

Commerciaux

MesuresObjets

Page 13: Batelco : Bilan Technique Qualit é Logiciel

13

Utilisation Mémoire Corruption Mémoire `Leak` Mémoire Chaines récursives

Efficacité Entrées-Sorties Complexité des essais

Temps Réponse

Couplage des RoutinesPrésence de ClonesDocumentation Interne

Inter operabilitéPortabilité ANSI CConformité Batelco-Koenig

Sécurité

Facilité d`apprentissageErgonomie des interfacesOpérabilité

( important areas as identified by the Contract Working Group)

Exemple Facturation IP

Disk Access & File Org.

Couplage des données

Complexité Logiciel

Insure ++

Insure ++Logiscope

Oracle level performance

Logiscope

Visual Inspection

CodecheckVisual Inspection

Page 14: Batelco : Bilan Technique Qualit é Logiciel

14

• Maintenabilité• Adhérence aux Standards

AUTOMATISEAUTOMATISE

• Portabilité

• Fiabilité

• Facilité à tester

Calibration et Analyse Logicielle

Accède le code source du logicielUtilise les outils en mode calibrationCalibration des intervallesÉvaluation complète - calibrée

LogiscopeInsure ++Codecheck

Page 15: Batelco : Bilan Technique Qualit é Logiciel

15

Ex: Calibration Logiscope

0

10

20

30

40

50

60

70

<2 <4 <6 <9 >9

Ga Level

Lo Hi

Page 16: Batelco : Bilan Technique Qualit é Logiciel

16

Mesures hors intervalle

Code récursif Structures Complexes

Code non standard

Inspections de produitInspections de produitLLister chaque cas identifié ister chaque cas identifié IInspecter le système/doc.DDiscuter la rationnelle JJuger luger l’’importance du problèmeCClasser par ordre d’importance

Avec l’outilAvec l’outilVérifie les iVérifie les intervalles par défautsntervalles par défautsRRecalibre à chaque foisecalibre à chaque foisQQuestionne les uestionne les standardsMMesures peu contestablesCCas clairs seulementas clairs seulement

Documentation du code

Page 17: Batelco : Bilan Technique Qualit é Logiciel

17

Abbreviation Description Int Culprit Lc Nombre de commentaires 4 0 = 14% Ldv Long. des descriptifs variables 7 <3 = 131 Rac Commentaires dans le code 50% 41% Vcd Commentaire d’une déclaration 50% 21% Nip Essais – Nb de chemins 1000 > 6% NcMax Complexité des décisions 20 > = 5% Loc Lignes de codes (module) 150 > 300 = 8% Array Structure et Union 0 32 Bitfields Maximum & declaration expl. 0 4 Token Pasting Commentaire dans Macro 0 17 End of File Newline & leading space in

filename 0 176

Trigraph Caractères spéciaux 0 0

Logiciel Facturation IPUNIX C, C++, 900 modules, 417 045 LOC

Page 18: Batelco : Bilan Technique Qualit é Logiciel

18

OBJECTIF ATTEINTOBJECTIF VISEMauvaisMoyenBonExcellent

CONFORMESUR QUALITE

Facilité d’analyseFacilité d’analyseFacilité de modificationFacilité de modification

StabilitéStabilitéFacilité de testFacilité de test

Facilité d’adaptationFacilité d’adaptationFacilité de l’installationFacilité de l’installationConf. règles de portageConf. règles de portage

InterchangeabilitéInterchangeabilité

ComporComportt. / Temps. / Temps

MaturitéMaturitéTolérance aux fautesTolérance aux fautes

Possibilités de récupérationPossibilités de récupération

AptitudeAptitudeExactitudeExactitude

IntéropérabilitéIntéropérabilitéConformité règlementaireConformité règlementaire

SécuritéSécurité

ComporComportt. / Ressources. / Ressources

Facilité de compréhensionFacilité de compréhensionFacilité d’apprentissageFacilité d’apprentissage

Facilité d’exploitationFacilité d’exploitation

Mauvais Moyen Bon Excellent

RISQUE

INACCEPTABLE

Un rapport haut niveau

Page 19: Batelco : Bilan Technique Qualit é Logiciel

19

• Code source• Portabilité

• Doc. Interne• Facilité des essais

Clauses QualitéClauses Qualité

• Clause améliorations et plan d`action• Standards (Port., Progr. et docum.)

LicenseLicense

Contrat MaintenanceContrat Maintenanceet Supportet Support

• Liste d’améliorations immédiates• Position de négotiation

Utilité pour les achats

Page 20: Batelco : Bilan Technique Qualit é Logiciel

20

Intérêts Enseignement & Recherche

• Transfert de connaissance (processus et technique);• Enseignement Uqàm• Enseignement en entreprise

• Entreprise vs. classe et projet de recherches• Aide à superviser 2 étudiants de maîtrise

• 1 Publications par an depuis 1994• Débuté Doctorat – Polytechnique de Montréal• Développement de normes ISO , 1993-1997