Upload
dangminh
View
214
Download
0
Embed Size (px)
Citation preview
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 2 / 70
MEMOIRE D’ACTIVITE PROFESSIONNELLE
Nom de l’auditeur : Sami Yurdakul
Fonction : Développeur Logiciel Télécoms
Durée du Projet : 6 mois +1 anDates: janvier – juillet 2001
janvier – décembre 2002
Nom de l’entreprise : Ericsson puis Teleca Solutions
Adresse : Teleca1, rue Galvani 91300 Massy
Tél. : 01 64 53 40 00Service : Développement Réseaux IntelligentsNom du Responsable : Pierre ZiniFonction : Responsable Département
Libellé du Projet : Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Résumé :
Dans sa volonté de moderniser ses méthodes de développement, Ericsson utilise depuis quelquesannées SDL (Specification and Description Language) pour concevoir et réaliser le logiciel descommutateurs de réseaux de télécommunications. SDL est un langage informatique formel etstandard permettant de décrire graphiquement les spécifications et les conceptions de systèmesdistribués, de leur architecture jusqu’à leur fonctionnement dynamique.
Je me suis investi dans cette tâche à plusieurs niveaux.Ma participation dans les différents projets mettant souvent en œuvre ce langage, a concerné aussibien la conception que le développement, la coordination technique, le test, le support, et laformation. J’en ai tiré une double expérience : celle des systèmes sur lesquels je travaillais, avec leursfonctionnalités et leurs protocoles, et une certaine expertise dans le langage et logiciel SDL.J’ai ainsi aidé, en étroite collaboration avec d’autres experts, à l’amélioration et à l’adaptation deSDL dans les Méthodes et Outils de développement spécifiques à Ericsson notamment dans uncycle de développement itératif et incrémental.
J’ai choisi d’illustrer cette expérience à travers deux projets représentatifs et complémentaires. Lepremier, Prototype SDL pour l’Espagne, a eu pour but de former une équipe à ce langage etd’évaluer son utilisation sur un système existant. Ensuite, j’ai obtenu un rôle de coordination SDLdans un projet à grande échelle, préparant la téléphonie de troisième génération : Mobile SwitchCenter 3.0.
Mots clés : SDL, Conception, Modélisation, Simulation, Coordination, Méthodes, Outils, CycleItératif et Incrémental.Date de la Soutenance : 4 septembre 2003Nombre de pages : 56 Notes du destinataire :
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 3 / 70
AAvvaanntt PPrrooppooss
Bien que mon employeur actuel soit la société Teleca Solutions, ce mémoire porte surles activités que j’ai entreprises lors de ma carrière au sein de la société Ericsson France.
En juin 2002, Ericsson France a cédé son département Recherche & Développementauquel j’appartenais à Teleca Solutions, nouvelle filiale du groupe Teleca, société de prestationde services. Mon expérience professionnelle concerne donc essentiellement la période précédent ce transfertd’activités. De plus, Ericsson est jusqu’à présent l’unique client de Teleca Solutions, et monenvironnement de travail n’a pas encore été sensiblement affecté par ce changement.
C’est pourquoi je ne parlerai dans ce mémoire de Teleca Solutions qu’uniquement dansle but de comprendre les enjeux se présentant à moi pour l’avenir.
Mes fonctions, missions, et activités seront analysées dans le contexte d’Ericsson.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 4 / 70
SSoommmmaaiirree1. INTRODUCTION ________________________________________________________________ 6
2. FORMATION ET PARCOURS PROFESSIONNEL _____________________________________ 72.1. COMMENTAIRE DE MON PARCOURS UNIVERSITAIRE __________________________________________ 82.2. COMMENTAIRE DE MON PARCOURS PROFESSIONNEL _________________________________________ 8
3. PRÉSENTATION D’ERICSSON ET DE TELECA ______________________________________ 103.1. LA SOCIÉTÉ ERICSSON _______________________________________________________________ 103.2. ERICSSON FRANCE __________________________________________________________________ 143.3. LA SOCIÉTÉ TELECA SOLUTIONS _______________________________________________________ 143.4. PRÉSENTATION DU SERVICE IN-SSF_____________________________________________________ 15
4. MES ACTIVITÉS PROFESSIONNELLES ____________________________________________ 164.1. MES FONCTIONS ____________________________________________________________________ 164.2. SPECTRE DES ACTIVITÉS ______________________________________________________________ 174.3. CRITÈRES DE PERFORMANCES _________________________________________________________ 184.4. MES INTERLOCUTEURS INTERNES ET EXTERNES ____________________________________________ 19
5. DÉPLOIEMENT DU LANGAGE SDL DANS LES SYSTÈMES DE RÉSEAUX TÉLÉPHONIQUES 215.1. DEUX PROJETS, DEUX FACETTES DU DÉPLOIEMENT _________________________________________ 215.2. SDL _____________________________________________________________________________ 225.3. LE PROJET PROTOTYPE SDL EN ESPAGNE ________________________________________________ 235.4. LE PROJET MOBILE SWITCH CENTER 3.0 _________________________________________________ 335.5. BILAN TECHNIQUE DE MES ACTIVITÉS____________________________________________________ 38
6. OPTIMISATIONS MISES EN ŒUVRE ______________________________________________ 396.1. OPTIMISER LE TRAVAIL D’ÉQUIPE_______________________________________________________ 396.2. OPTIMISER LES OUTILS _______________________________________________________________ 396.3. OPTIMISER LE PRODUIT_______________________________________________________________ 40
7. LES COMPOSANTES DU MÉTIER D’INGÉNIEUR-MAÎTRE ___________________________ 417.1. LE DÉVELOPPEMENT LOGICIEL _________________________________________________________ 417.2. GESTION DE PROJET _________________________________________________________________ 427.3. SOUTIEN ET TRANSMISSION DU SAVOIR __________________________________________________ 437.4. EVALUATION DES COÛTS _____________________________________________________________ 437.5. RÉCAPITULATIF DES COMPOSANTES DE L’INGÉNIEUR ________________________________________ 44
8. THÈME D’ETUDE : LES OUTILS LOGICIELS DE L’INGÉNIERIE CONCOURANTE _______ 458.1. INTRODUCTION _____________________________________________________________________ 458.2. DÉFINITION DE L’INGÉNIERIE CONCOURANTE OU SIMULTANÉE ________________________________ 458.3. L’INGÉNIERIE CONCOURANTE ET LES INDUSTRIES __________________________________________ 468.4. L’INGÉNIERIE CONCOURANTE ET ERICSSON_______________________________________________ 468.5. LES OUTILS LOGICIELS DE L’INGÉNIERIE CONCOURANTE _____________________________________ 478.6. CONCLUSION : INGÉNIERIE CONCOURANTE OU CONCEPTION PARALLÈLE ? _______________________ 51
9. CONCLUSION TECHNIQUE _____________________________________________________ 52
10. CONCLUSION GÉNÉRALE ______________________________________________________ 53
BIBLIOGRAPHIE ___________________________________________________________________ 54
TABLE DES ILLUSTRATIONS ________________________________________________________ 55
ANNEXES _________________________________________________________________________ 56
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 5 / 70
GGlloossssaaiirreeAXE 10 Système de commutation numérique (local, de transit, ou international) pour téléphonie
fixe ou mobile.Brainstorming Technique de travail consistant à rassembler un groupe de personnes afin que naissent, de
leur confrontation, des idées nouvelles.Non Régression(test de)
Test ayant pour but de vérifier que la nouvelle version du produit fonctionne avec les casde tests relatifs à la version précédente (compatibilité antérieure).
PLEX Langage propriétaire d’Ericsson basé sur l’exécution de tâches dédiées au commutateurAXE10, en réponse à une réception de message.
ReverseEngineering
Méthode de programmation, parfois automatisée, consistant à partir d’un programme écriten langage d’une couche inférieure pour le réécrire en langage de couche supérieure(exemple : écrire du C à partir de l’assembleur).
Statechart Diagramme d’état représentant une vue comportementale du système et décrivant defaçon formelle et modulaire les transitions.
Workpackage « Lot de travail » : module d’un projet autour d’une fonctionnalité ou d’un groupe defonctionnalités.
Workshop Forum, présentation, formation, atelier de discussion.
DDiiccttiioonnnnaaiirree ddeess SSiigglleessATM Asynchroneous Transfer Mode Technologie de transport de voix et de données.ASN.1 Abstract Syntax Notation .1 Langage normalisé et abstrait de spécification de la
structure des données échangéesCORBA Common Object Request Broker
ArchitectureArchitecture d’objets distribués répondant aux besoinsd’homogénéisation du développement etd’interopérabilité (voir IDL).
CTI Computer & Telephony Integration Commutation Téléphonie & Informatique pourentreprises.
GPRS General Packet Radio Services Technologie visant à fournir un accès simple et rapide àl’information dans un réseau Telecom ( évolution duGSM).
GSM Global System for Mobilecommunications
Norme de Téléphonie Mobile
HMSC High level Message Sequence Chart Diagramme regroupant des MSC (Message SequenceChart).
IDL Interface Description Language Langage décrivant l’interface des objets, c’est-à-direleur nom, leurs méthodes et leurs attributs, de façonindépendante du langage d’implantation.
IN-SSF Intelligent Network – Service SwitchingFunction
Architecture de réseaux permettant une plus grandefacilité d’introductionde nouveaux services.SSF est la partie de commutation des services du réseaude téléphonie.
IP Internet Protocol Protocole largement utilisé pour transporter les donnéesMSC Mobile Switch Center Centre Téléphonique de Commutation du réseau mobileMSC Message Sequence Chart Diagramme décrivant le séquencement des messages
échangés entre des processus dynamiques (voir SDL).SDL Specification and Description Langage Langage de spécification et de description.TTCN Tree and Tabular Combined Notation Langage de notation de cas de tests.UIT Union Internationale des
TélécommunicationsOrganisme officiel de réglementation desTélécommunications.
UML Unified Modeling Language Langage de modélisation objet unifié.UMTS Universal Mobile Telecommunications
SystemNorme de téléphonie mobile permettant d’avoir desservices multimédias à débits très élevés (voir GSM etGPRS).
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 6 / 70
1. Introduction
Au cours de ma carrière de cinq années au sein d’Ericsson, j’ai participé au développementlogiciel des commutateurs placés au cœur des réseaux de télécommunication, au travers denombreux projets internationaux.
Dès le début, je me suis spécialisé dans un domaine ; SDL (Specification and DescriptionLanguage), un langage standard permettant de spécifier et de décrire de façon formelle etgraphique des systèmes distribués réagissant sur des événements, de les modéliser, et degénérer certains langages cibles, dont le C, le C++ et surtout le langage propriétaire d’Ericssongrâce à certaines adaptations logicielles.J’ai activement contribué au déploiement progressif de ce langage, qui a considérablementmodifié le paysage du développement chez Ericsson.
Je débuterai donc ce mémoire d’activité professionnelle par un historique de mon parcoursuniversitaire et professionnel. Puis, je présenterai dans ses grandes lignes le groupe Ericsson etses produits (notamment le commutateur numérique AXE10) de l’échelle mondiale jusqu’àl’ensemble de mon service. Pour finir cette partie, je parlerai des différents aspects de mesactivités et missions.
Avant de proposer deux projets complémentaires et représentatifs de mon implication dans ledéploiement de SDL, j’introduirai sommairement ce langage et ses caractéristiques.J’approfondirai ensuite les tenants et aboutissants du projet Prototype SDL qui s’est déroulé àEricsson Madrid durant six mois. Durant ce projet, j’ai eu pour mission de former une équipede cinq personnes sur ce langage, avec l’objectif de conclure sur une utilisation future.Je montrerai après cela l’importance qu’a pris SDL dans le projet suivant : Mobile SwitchCenter 3.0, et quel rôle j’ai eu dans un projet d’une ampleur conséquente.
Nous verrons aussi quelles optimisations supplémentaires j’ai apportées à ces projets. Jerecapitaliserai ensuite les fonctions de l’ingénieur mises en relief par ma participation audéploiement de SDL dans le cycle de développement du produit logiciel.
Je terminerai alors par une réflexion sur les outils logiciels de l’Ingénierie Concourante. Ainsinous verrons que SDL est au cœur d’une suite de logiciels s’inscrivant dans une nouvelle façonde concevoir.
Cela me permettra de conclure sur les enjeux d’aujourd’hui et de demain et de déterminer enquoi mes connaissances et mes compétences peuvent me permettre d’y répondre.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 7 / 70
2. Formation et parcours professionnel
Ci-dessous est résumé mon parcours universitaire puis professionnel. Il est suivi d’uncommentaire chronologique détaillé.
Stage entrepris au CEA de Saclay :Expérimentation de vitesse departicules
Baccalauréat Scientifique (série D)Lycée Descartes à Antony (92)
DUT Génie Electrique et Informatique Industrielle 2IUT de Cachan (94)
1ère année Ecole d’Ingénieur IFSIC de Rennes
Licence ProfessionnelleSystèmes Electroniques Informatisés (SEI)IUT de Cachan (94)
Développeur Logiciel TelecomCDI TELECA SOLUTIONS Massy(91)Transfert d’activités du département R&D d’Ericsson France
Stage entrepris dans la sociétéCTM (appareils pour le cinéma etla télévision) à GennevilliersCommande d’une carte vidéo àpartir d’un PC puis d’un micro-contrôleur 68HC11
1992
1994
1995
1997
JuilletAoût1997
Sept1997
Réalisation d’un logiciel en Visual C++CDD, société PERICHROM (instrumentation scientifique)
Nov.1997
Développeur Logiciel TelecomCDI EERRIICCSSSSOONN FFrraannccee Massy (91)Projets de Développements
Systèmes Réseaux Intelligents de téléphonie fixe et mobile:• Exemples de fonctionnalités mises en œuvre :
Identification d’appel,Portabilité du Numéro,Taxation,Migration vers 3ème Génération de Téléphonie (UMTS).
• Phases: Spécification, Conception, Codage, et Tests (unitaires et d’intégration).Spécialisation en langage SDL (plate-forme Telelogic Tau)
• au cours des projets de développement• Méthodes et Outils
Déplacements en Europe
Juin2002
Commande d’enrouleur de pellicule avec un micro-contrôleur68HC11CDD suivant le stage SEI, société CTM
2003
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 8 / 70
2.1. Commentaire de mon parcours universitaire
J’ai engagé mes études en 1992 par un DUT en Génie Electrique et InformatiqueIndustrielle (GEII2), passé à Cachan, afin de m’orienter vers des études technologiques. Il est ànoter que mon stage de fin d’année, qui s’est déroulé au CEA de Saclay, sur l’expérimentationde vitesse de particules, m’a démontré que mes connaissances pouvaient s’adapter à desdomaines parfois appartenant plus à la recherche scientifique qu’à l’industrie proprement dite.
Mon intérêt s’est alors orienté plus vers l’informatique industrielle que l’électronique, etj’ai donc poursuivi mes études en m’inscrivant à l’IFSIC de Rennes : Institut de FormationSupérieur d’Informatique et (Télé)Communications.
Malheureusement, cette première année s’est soldée par un échec, mais un échec formateur.Sans doute n’étais-je pas prêt à maîtriser le niveau de raisonnement informatique etmathématique requis. Cependant, je me suis rendu compte par la suite à quel point cette annéen’a pas été perdue sur le plan universitaire et personnel.
La licence professionnelle Systèmes Electroniques Informatisés (SEI), proposée parl’IUP de Cachan, m’a offert l’année suivante un bon compromis entre ma poursuite d’étudesavortée et l’entrée dans le monde du travail à bac + 2. Cette fois encore, le stage de fin d’annéem’a apporté une expérience non négligeable.
Il s’est effectué au sein de CTM (Compagnie des Travaux Mécaniques), à Gennevilliers,société produisant des machines pour le monde du cinéma et de la télévision (chaînes demontage de films, sous-titrage, etc.). J’ai créé une maquette commandant une carte vidéo/audioafin de hacher numériquement un signal audio, au moyen d’un micro-contrôleur 68HC11 deMotorola. Mon travail a été apprécié et mon employeur m’a proposé un CDD pour les quelquesmois suivants.
2.2. Commentaire de mon parcours professionnel
Au cours de ce CDD dans l’entreprise CTM, j’ai réalisé un prototype – toujours avec le68HC11- de contrôleur de dérouleur de pellicules. Cependant, aucun poste intéressant n’étantvacant dans cette entreprise, j’ai commencé à chercher un emploi à durée indéterminée.
En attendant d’obtenir un tel contrat, l’entreprise Perichrom - dont l’activité résidedans la production et la vente d’appareils de mesure de Chromatographie en Phase Gazeuse-m’a proposé un CDD de quelques mois.J’ai ainsi réalisé quelques programmes écrits en Visual C++, permettant par exemple decontrôler à partir d’un PC un robot manipulant des flacons de liquides.
C’est sans difficulté que j’ai trouvé par la suite un emploi intéressant en novembre1997, au sein d’Ericsson France.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 9 / 70
A mon embauche, j’ai intégré le département de Recherche & Développement et plusprécisément le service des Réseaux Intelligents (système logiciel de Services de TéléphonieFixe).Là, j’ai eu l’opportunité d’intégrer une équipe travaillant sur un projet innovant. Ce projets’appuyait sur les méthodes de travail en vigueur mais au lieu de réaliser le logiciel dans lelangage propriétaire d’Ericsson, il proposait d’utiliser un langage graphique, standard et évoluéqui est le sujet de ce mémoire : SDL.
Ensuite, en 1999, j’ai intégré un projet plus « traditionnel » , ce qui m’a permis derenforcer mes connaissances dans le métier de base d’Ericsson. J’ai accepté la propositiond’aller à Madrid durant trois mois afin de transférer leurs connaissances sur le système pourque notre département en France puisse en assumer la nouvelle responsabilité.
Entre-temps, le langage SDL commençait à faire ses preuves et ses « convertis »,partout dans le monde Ericsson. Par conséquent des méthodes non plus locales mais globalesdevaient être sérieusement mises en œuvre. Pour cela, je suis allé en janvier 2000 une semaineà Aachen (Aix-la-Chapelle) en Allemagne, afin de participer à un brainstorming∗ et unworkshop∗ sur le sujet.
Fort de cette avancée, j’ai participé en 1999-2000 à un nouveau projet utilisant SDL.
Puis, en 2001, Ericsson Madrid m’a proposé une mission de six mois. Le projet que j’aiintégré était le premier dans le département à mettre en place le langage SDL. Il devait à sonterme permettre d’anticiper de futurs développements en SDL.
Or, depuis l’année 2000 environ, un travail important et ambitieux dans les Systèmesdes Commutateurs pour la Téléphonie Mobile avait été dirigé par Ericsson Allemagne afin deconvertir des centaines d’unités de logiciel en SDL. C’est ainsi qu’en 2002, j’ai travaillé enFrance sur le projet Mobile Switch Center 3.0, dans un projet qui a duré environ un an.
Tous ces projets ont eu pour objectif de répondre aux besoins des opérateurs en termesde services pour les abonnés. Cela concernait par exemple la présentation du nom de l’abonnésur le combiné téléphonique, la portabilité du numéro (changer d’opérateur en gardant le mêmenuméro), ou encore la facturation de ces services.
Mais suite à la crise des Télécoms survenue en 2001, Ericsson France a cédé en juin2002 son département R&D à une SSII suédoise : Teleca.
Jusqu’à maintenant, 2003, cela n’a pas changé sensiblement notre quotidien puisque nouscontinuons à travailler pour Ericsson (notre client principal). Mais ce nouveau contexte, ainsique le changement d’activité prévu à moyen terme, a rendu le moment des plus opportuns pourmoi de réaliser la Formation d’Ingénieur-Maître que j’avais depuis longtemps envisagée.
∗ voir glossaire
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 10 / 70
3. Présentation d’Ericsson et de Teleca
Comme cela a été expliqué dans l’avant propos de ce mémoire, je ferai maintenant uneprésentation d’Ericsson suivie d’une rapide présentation de Teleca.
3.1. La Société Ericsson
3.1.1. Ericsson Monde
Ericsson est une multinationale d’origine suédoise, existant depuis 125 ans (1876),présente dans 140 pays, avec un chiffre d’affaires de plus de 24,6 milliards d’euros en 2001 etest parmi les leaders dans le domaine des Télécommunications.
Quand on parle d’Ericsson, le grand public pense immédiatement « téléphone portable »et beaucoup de gens sont persuadés que son activité se limite principalement à cela.Or, les terminaux (mobiles ou fixes) n’ont toujours été qu’une partie très mineure de saproduction, et ne fait même plus partie de ses activités depuis la création de la nouvelle entitéSony-Ericsson.Le métier d’Ericsson, c’est donc surtout d’équiper la plupart des opérateurs téléphoniques et lesentreprises en infrastructures et réseaux téléphoniques.
Ericsson est un des premiers fournisseurs mondiaux d’infrastructures mobiles,permettant ainsi d’assurer 40% des appels GSM dans le monde actuellement. Il a signé 60%des accords GPRS* conclus dans le monde jusqu’ en 2002 et est impliqué dans plus de 30accords commerciaux UMTS*.Ericsson est aussi le numéro 1 mondial de la téléphonie fixe avec 250 millions de lignesinstallées dans 127 pays.
Plus de 15% du Chiffre d’Affaires est consacré chaque année à la Recherche & Développementdepuis plus de 10 ans.
* voir Dictionnaire des sigles
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 11 / 70
3.1.2. Organisation du Groupe
Ericsson a une organisation matricielle, illustrée par la figure 1, répartie en :• secteurs géographiques pour assurer la proximité avec ses clients,• secteurs d’activités pour prendre en compte les besoins spécifiques de chaque marché.
1. Secteurs géographiquesLa nouvelle répartition géographique mise en place en septembre 2001 est fondée surune logique de service et de proximité.Ainsi, trois régions ont vu le jour dans la nouvelle répartition :
- Europe, Afrique et Moyen-Orient,- Amérique,- Asie, Pacifique.
De plus a été mise en place la notion de Grands Comptes pour gérer les 6 clients les plusimportants :
- Deutsche Telecom (Allemagne),- TIM (Italie),- France Telecom (France),- Telefonica (Espagne),- Vodafone (Grande-Bretagne),- Hutchinson (USA).
2. Secteurs d’activitésEricsson est structuré autour de trois pôles d’activités :
- les opérateurs de réseaux,- les solutions Entreprise,- les produits grand public (aujourd’hui gérés par la nouvelle entité Sony-
Ericsson).
Figure 1 Organisation du Groupe Ericsson (simplifiée)
Grands Comptes ClientsSecteurs de Marché
AsiePacifique Amériques
EuropeAfriqueMoyenOrient
DeutscheTelecom
FranceTelecom
TelecomItalia Telefónica Vodafone Hutchison
Opérateurs Réseaux
Solutions Entreprises
Produits Grand Public
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 12 / 70
3.1.3. Ericsson et les réseaux téléphoniques
Un produit très important qui est un peu le fer de lance d’Ericssondans les réseaux de télécommunication est l’AXE 10. C’est un commutateur(local, de transit, ou international) numérique, complet et performant,pouvant traiter en temps réel d’importants volumes de trafic (par exempledes appels téléphoniques).
Il est présent dans tous les types de réseaux téléphoniques, comme le montre de manièresimplifiée la figure 2.
Figure 2 Les applications du commutateur AXE 10 dans les différents réseaux téléphoniques
Par signalisation, on entend tous les messages transitant dans les réseaux ; qu’ils serventà signaler une sonnerie chez l’appelant, le décrochage du combiné, ou de façon plus complexela transition de paquets de données. Lors de ma mission en Espagne pour mettre en place le projet Prototype SDL, présenté dans cemémoire, j’ai intégré le département responsable d’un sous-système de ce réseau gérant leprotocole de signalisation « C7 ».
Réseau deSignalisation
RéseauIntelligent
RéseauMobile
RéseauPrivéVirtuel
Business Comm.
Réseau Public FixeRéseau Public
Numérique(ISDN : Integrated ServicesSwitching Digital Network)
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 13 / 70
Quant aux Réseaux Intelligents, ils sont constitués de deux points : la partiecommutation et la partie contrôle de services. La première va appeler la seconde selon certainsévénements (par exemple la réception de chiffres envoyés en appuyant sur les touches dutéléphone), et peut ainsi exécuter certaines actions selon le scénario inscrit dans le contrôleur deservices, comme diriger l’appel vers un autre numéro. C’est ainsi que sont réalisés de nombreux services tels que :- les appels de masses (exemple : téléthon, télé-achat) ;- l’identification de l’appelant par le nom en liste blanche ;- la portabilité du numéro qui permet à l’abonné de changer d’opérateur tout en gardant le
même numéro ;- la conférence à plusieurs ;- etc…C’est dans la première partie, celle de commutation, que se situe l’activité de mondépartement : IN SSF, Intelligent Network Service Switching Functions.
Cependant, nous avons eu aussi en 2001 la responsabilité d’une partie du système du réseaumobile ce qui m’a permis de travailler sur le projet Mobile Switch Center 3.0, que je détailleraidans la suite de ce mémoire.
Pour être adaptée aux applications spécifiques de chaque réseau, la partie logicielle ducommutateur possède une architecture modulaire constituée de différents systèmes.
Ainsi un de ces systèmes contient les fonctions de commutation de services pour les réseauxintelligents, tandis qu’un autre prend en charge un protocole de communication propre aumobile, etc…
Ces systèmes sont complexes, et eux-mêmes décomposés en sous-systèmes, voire ensous – sous-systèmes, jusqu’à la décomposition en blocs.Un bloc va contenir le code à exécuter pour une ou plusieurs fonctions, c’est donc l’unité quiest attribuée à un ou plusieurs développeurs lors d’un projet.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 14 / 70
3.1.4. Ericsson France
Présent dans l’hexagone depuis 1911, Ericsson France S.A. est située à Massy (Essonne) etpropose des solutions bout en bout pour ses clients, qu’ils soient opérateurs de réseaux fixes etmobiles ou entreprises.
Les activités et les produits dédiés aux opérateurs sont respectivement:• la conception et l’ingénierie de réseaux, l’installation, la mise en service de
systèmes, la formation et la maintenance ;• des systèmes de commutation AXE pour les réseaux fixes, des plates-formes et
des services en architecture Réseaux Intelligents, des systèmes d’exploitation etde maintenance de réseaux, et des solutions d’accès (Boucle Locale Radio,ADSL).
Les Solutions pour l’Entreprise se traduisent par :• Le conseil, la conception, le développement, le marketing, la vente,
l’installation, et le support produit ;• Sa gamme de produits : des systèmes de commutation MD Evolution, des
logiciels de Couplage Téléphonie Informatique, ainsi que le sans-fil numérique.
3.2. La Société Teleca Solutions
Le groupe Teleca, fort de ses 1200 personnes présentes dans toute l'Europe au travers deses différentes filiales a pour objectif global d'apporter la compétence de ses équipes dans lesdomaines suivants :
• Réseaux – développement d'infrastructures (relais, commutateurs, routeurs, modems,etc.)
• Opérateurs – accès aux réseaux et services réseaux – auprès des opérateurs detéléphonie mobile, ISP, etc.
• Equipements – par exemple téléphone mobile, PDA, systèmes de contrôle etéquipements médicaux – les équipements utilisés pour communiquer sur le réseau.
• Services – les applications et services supportés par les équipements et fournis enréseau.
Ses clients viennent principalement de l’industrie des Télécoms mais aussi de l’aéronautique,l’automobile, la médecine, la défense, la TV numérique, …
La Société à Actions Simplifiées Teleca Solutions (environ 150 personnes) reprend doncprincipalement les activités du département Recherche & Développement d’Ericsson France(développement Réseaux Intelligents et Solutions Entreprises), et a pour principal clientaujourd’hui le groupe Ericsson.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 15 / 70
3.3. Présentation du service IN-SSF
L’organigramme de la figure 3, qui n’a pas changé lors du transfert d’Ericsson versTeleca, permet de situer le service dans lequel je travaille : le développement de systèmes deRéseaux Intelligents sur le central AXE (sur le diagramme : design AXE IN-SSF, IntelligentNetwork Service Switching Function).
Figure 3 Organigramme de la R&D Ericsson / Teleca
Ce service, constitué actuellement de 30 personnes environ, techniciens ou ingénieurs, agit encollaboration avec le service System Management, composé d’une dizaine d’ingénieurs, quimet en place les projets, analyse l’architecture et les impacts.Les tests d’intégration et la maintenance des produits finis sont assurés par le service ProductSupport, avec 10 techniciens et ingénieurs.
D’autres domaines sont couverts par la direction des opérations : le développement de systèmespour le commutateur de données asynchrones ATM∗, ainsi que le commutateur Téléphonie /Informatique d’entreprise dénommé MD Evolution. Enfin, un département appelé InnovationLaboratory (I-Lab sur le diagramme) travaille sur de nouvelles technologies telles que le Wapet BlueTooth.
∗ voir Dictionnaire des sigles
Direction des Opérations
- Administration- Qualité- ...
- Ressources Humaines- Finances
AXE IN-SSF(Réseaux Intelligents)
System Management Design Product Support
ATATM(Voix Sur IP)
I-Lab(Nouvelles
Technologies)
MD Evolution(CTI)
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 16 / 70
4. Mes activités professionnelles
4.1. Mes fonctions
En tant que technicien supérieur en études logicielles (software), je me suis vu confierl’étude d’objets principalement unitaires (blocs fonctionnels), dans l’environnement de travailpropre à la partie logicielle du commutateur AXE-10.
Dans le cadre de la fonction de technicien supérieur en études logicielles, mes missions ont étéde développer, au sein des projets, des fonctions liées aux différents services téléphoniques,dans la partie commutation d’appel.
A partir de choix d’architectures et de spécifications techniques qui m’étaient fournies et pourun sous-système ou un sous-ensemble donné, je devais:
assurer, dans le cadre de normes définies, la conception détaillée d’un module, d’unensemble de base ;
réaliser ou faire réaliser les programmes, maquettes de base ou éléments de base ;
réaliser ou faire réaliser les tests unitaires dans le cadre méthodologique défini ;
assurer la maintenance des produits ;
élaborer la documentation technique associée aux produits.
A ce niveau, les activités et décisions nécessitent un support hiérarchique (supervision du chefde projet) ou fonctionnel (collaboration avec des Ingénieurs Systèmes).
Grâce à mon implication dans le langage SDL, on m’a rapidement assigné un titreparticulier: celui d ’ « expert SDL ».
Quelques années plus tard, j’ai également assumé la fonction de coordinateur SDL .
Cependant j’ai parallèlement poursuivi les activités citées précédemment, telle qu’elles sontréellement définies par mon poste. Nous verrons au cours de ce mémoire, et dès la sectionsuivante, quelles activités et compétences impliquent ces titres honorifiques, pour ensuiteanalyser en quoi elles sont des composantes de l’Ingénieur-Maître.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 17 / 70
4.2. Spectre des activités
Une synthèse de mes activités est proposée en figure 4, sur laquelle on peut voir monimplication dans les différents domaines du développement.
Figure 4 Spectre de mes activités
Je suis donc intervenu dans la phase de l’analyse des besoins des versions successives del’outil de développement de SDL en exprimant des idées d’amélioration, et en analysant lesspécifications.
Lors de certains projets, je me suis également investi dans les phases de spécification, derédaction et de validation des nouvelles versions des documents de méthodes et de processus detravail liés à SDL.
Mais surtout j’ai participé à différents projets, essentiellement lors de la conceptionfonctionnelle et détaillée, jusqu’au codage. J’ai également assuré le suivi des produits lors dutest.De plus, j’ai pu à certaines occasions assurer une coordination technique de notre équipe avecd’autres équipes grâce à mes connaissances sur les systèmes développés.Enfin, de par mes compétences en SDL, j’ai assuré la coordination SDL avec les autres équipesdes projets et j’ai apporté mon soutien à mes collègues.
Projet Y
Version 4Version 3
… …
Version 4Version 3
Validation desdocuments… Rédaction des
documents
Spécificationdes besoins …
Définition deProcess et
Méthodes dedéveloppement
SDL
Outils dedéveloppement
SDL
Projet XPhases :(-Spécification)-Conception (Fonctionnelle et Détaillée)-Codage(Tests)
+ Coordination Technique
Activitésliées à SDL
Validation desdocuments Rédaction
des documents
Spécificationdes besoins
Développementde fonctionnalités
pour l’AXE10
temps
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 18 / 70
4.3. Critères de Performances
En adéquation avec l’ensemble des missions évoquées au chapitre précédent, lesmoyens (liés ou non à SDL, suivant l’activité) de valoriser et mesurer mes performances étaientles suivants:
• Répondre aux Points d’Actions donnés par le manager du projet ou le coordinateurtechnique supérieur ;
• Respecter les phases du cycle en V ;
• Rendre compte des problèmes techniques rencontrés par moi ou mon équipe ;
• Rendre compte des réunions et conférences téléphoniques auxquelles je participe ;
• Estimer et/ou Respecter les délais des activités ;
• Répondre aux Rapports de Fautes écrits sur mon produit dans les délais imposés ;
• Proposer des alternatives et solutions en cas de difficultés ou d’objectifs à atteindre ;
• Respecter les taux minimum d’erreurs relevées lors des tests d’intégration.
En plus de ces critères relativement identifiables, il y a bien sûr d’autres critères moinsdirectement mesurables comme la qualité de la conception (en profitant notamment de ce quepeut apporter SDL, et en essayant de limiter au maximum la charge du calculateur), lesinitiatives bénéfiques pour le projet et le suivi et l’accompagnement de l’équipe dedéveloppement.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 19 / 70
4.4. Mes interlocuteurs internes et externes
Comme nous avons pu le constater au travers du spectre de mes activités, les relationsque j’ai eues dans mon travail quotidien étaient diverses, dépendant surtout du point de vue oùon se situe : spécifiquement SDL ou développement en général. Elles dépendaient aussi de lanature et de la complexité du projet.
Ces multiples relations sont représentées sur la figure 5. Elles sont regroupées dans troisensembles : le monde R&D Ericsson, Telelogic, et mon entourage immédiat (site local).
Figure 5 Mes interlocuteurs
Centre de compétences SDLOutils et Méthodes
Designers et CoordinateursTechniques (SDL ou non)
Autres :administration,service informatique,direction,…
Equipe de développement- Chef de Projet- Design- System Management- Product Support
Site Local(Ericsson France / Teleca Solutions)Ericsson Monde
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 20 / 70
Un projet de développement implique habituellement les trois services du départementAXE IN-SSF : je suis donc en relation avec le System Management dès la première phase duprojet, lorsqu’il s’agit d’en établir les spécifications.J’ai aussi une relation à la fois transversale au sein de mon équipe du Design concernée par leprojet, et verticale avec l’équipe de Management du projet.Enfin, et quasiment dès le début du projet, je travaille avec les testeurs appartenant au serviceProduct Support, pour répondre à leurs questions, ou leur en poser, corriger les fautes qu’ilstrouvent, et pour leur demander occasionnellement de tester une partie spécifique du code.
Autour de cela, je suis en contact avec l’administration (secrétariat, gestion de ressources) et leservice informatique (installations, licences).
Je suis aussi parfois en contact direct avec notre fournisseur d’outils logiciels SDL : Telelogic.Ce groupe, spécialisé dans les solutions pour le cycle de développement logiciel des produits,est lié par des accords de vente et de partenariat à Ericsson.
Au niveau international, je suis en contact avec d’autres développeurs, testeurs, ousystem managers sur d’autres sites. Les moyens de communications sont principalement lesréunions téléphoniques et le courrier électronique, mais il m’est arrivé aussi de me déplacer àl’étranger et inversement nous recevons régulièrement nos collègues de différents pays.
En ce qui concerne SDL, je suis inscrit à un forum électronique (mailing-list) ayant pourbut de partager questions et réponses, problèmes et solutions.Comme je participe à l’amélioration des outils et méthodes SDL, je suis en contact avec lescentres de compétence concernés (équipes associant experts d’Ericsson et de Telelogic).
Lors du projet Mobile Switch Center 3.0, j’étais en contact avec les coordinateurstechniques des sous – projets parallèles et notre coordinateur technique au niveau projet.
Après avoir situé ma position hiérarchique dans l’entreprise et mes relations internes etexternes, nous allons maintenant développer mes activités au travers de deux projets.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 21 / 70
5. Déploiement du Langage SDL dans les systèmes de RéseauxTéléphoniques
5.1. Deux projets, deux facettes du déploiement
Je n’aborderai pas dans ce mémoire les fonctionnalités mises en œuvre durant mesdifférents projets, comme les services téléphoniques (affichage de numéro de l’abonné parexemple), ni les protocoles de télécommunications, ni même les technologies comme cellesliées à l’UMTS.Le sujet de ce mémoire étant l’introduction de SDL dans le cycle de développement logicieldes réseaux téléphoniques d’Ericsson, c’est essentiellement sous cet angle que je vais exposerle compte-rendu de mes activités.
Cependant, mon investissement dans cette tâche est une somme d’activités et de projets(environ 5 ans de travail) qu’il serait fastidieux de détailler chronologiquement.C’est pourquoi j’ai choisi de centrer mon compte-rendu d’activités sur deux projetsreprésentatifs et complémentaires.
Dans le projet Prototype SDL en Espagne, par lequel je débuterai, nous verrons quelle a étéla portée de mes compétences, dans un petit projet qui a beaucoup dépendu de moi.
Le projet suivant, Mobile Switch Center 3.0, a été très long (environ un an) et complexe. Jel’aborderai par le côté organisationnel, toujours en me focalisant sur SDL, pour mettre enévidence mon rôle que j’analyserai ensuite en tant que composantes de l’Ingénieur-Maître. Dece projet on notera ainsi quelques points intéressants que nous reprendrons dans le thèmed’étude.
Mais avant tout, il est utile d’aborder en quelques mots le langage SDL.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 22 / 70
5.2. A propos de SDL
Pour plus d’information, vous trouverez en annexe un explicatif détaillé de ce langage etses applications.
Présentation du langage SDLSDL est un langage formel de modélisation, orienté objet etgraphique utilisé pour spécifier et concevoir des systèmesréactifs. On peut assimiler un système SDL à un ensemble deprocessus communicants par signaux. Le comportement dechaque process est représenté par une machine à états finisétendue.
Origine et historique de SDLSDL est un langage développé par l'Union Internationale des Télécommunications (UIT) àpartir de 1972. La première version officielle date de 1976. La grammaire du langage estdécrite par une norme bien spécifique : la Z100 de l'UIT.
Intérêt de SDLLe langage SDL permet de décrire un système sans ambiguïté. Outre l'amélioration de lacomplétude des modèle de spécifications ou de conceptions, cette caractéristique permetégalement la simulation et la validation d'un système. Ainsi les erreurs sont détectéesbeaucoup plus tôt dans le cycle de développement si on compare à une approchetraditionnelle.Une deuxième implication de l'utilisation de SDL est la possibilité de générer du code àpartir d'un modèle, permettant ainsi d’exécuter de grandes parties d'une application. On notera seulement 5 dimensions du langage :Structure, Communication, Données, Comportement, Héritage.
Résumé des caractéristiques du langage SDLCe langage est :
- un Standard UIT (Union Internationale des Télécommunications) ;- un Langage formel ;- Orienté Objet ;- Facilement testable ;- Portable ;- Réutilisable.
Il est utilisé principalement dans les domaines des télécommunications, de l'aéronautique etde l'espace, dans l'automobile et même dans la finance.Deux activités techniques sont principalement concernées par SDL :
- le développement de systèmes réactifs,- la modélisation et la vérification d'architecture système.
Il est à noter qu’un autre langage complémentaire décrit le fonctionnement et lecomportement séquentiel d’un système. Cet autre langage s’appelle Message SequenceChart (MSC), mais pour simplifier nous le considérerons ici comme faisant partieintégrante de SDL.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 23 / 70
5.3. Le projet Prototype SDL en Espagne
5.3.1. Le Contexte du projet
Le centre décisionnaire de la Recherche et Développement recommande fortement - depuisenviron l’année 2000 – l’utilisation de SDL pour les blocs unitaires nouvellement créés, avecce que cela implique en compétences et besoins en formation.
Ce projet, basé à Madrid, est donc le résultat de cette stratégie visant à introduire denouveaux processus de travail dans les systèmes de l’AXE10. Le Système de Signalisation(CCS, Common Chanel Signalisation) étant développé là-bas, il leur fallait se préparer auxnouvelles recommandations.
C’est ainsi que j’ai intégré une équipe de six personnes : quatre nouveaux embauchés, uneconfirmée, et moi, étant la seule personne à connaître SDL.Nous étions directement sous la direction du responsable du département R&D de ce système.
5.3.2. Les objectifs du Projet
Les objectifs du projet étaient de mettre en place une structure permettant de travailler avecSDL. C’était donc un projet expérimental, ayant un objectif d’apprentissage, d’évaluation, et depréparation au futur.
• Acquérir les compétences en SDL. Pour cela nous avons choisi un bloc déjà existant en langage « classique » propriétaired’Ericsson et nous l’avons retranscrit en SDL en respectant le cycle de développement d’unprojet réel.Bien entendu, je m’étais implicitement fixé comme objectif d’apprendre moi-mêmebeaucoup grâce à ce projet.
• Evaluer les performances en fonctionnement réel.Une fois les principes acquis, il s’agissait d’évaluer :
- Si SDL pouvait contribuer à réduire les délais et les coûts, et améliorer laqualité ;
- Si le code dédié au commutateur AXE 10, automatiquement généré par SDL(grâce à un outil mis au point par Ericsson et Telelogic), présentait desperformances, une taille mémoire, et une lisibilité acceptable ;
- Si les outils logiciel et les méthodes SDL alors existantes étaient applicables auSystème de Signalisation.
• Se Préparer à de futurs projets recommandés en SDL.Enfin, ce projet devait permettre au département espagnol de se préparer au futur
dans le cas où SDL serait retenu. L’équipe devait ainsi pouvoir être autonome au terme deces six mois, c’est-à-dire être capable de mettre en place d’éventuels futurs projetsdéveloppés en SDL.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 24 / 70
Ces objectifs étaient donc ceux du projet, et le sont aussi, implicitement et dans unemoindre mesure, pour tout projet développé avec SDL.
C’est pourquoi j’aimerais ajouter à cela les objectifs que nous , développeurs SDL pour lessystèmes de commutation AXE10, nous sommes fixés à plus long terme :
- permettre une génération de code efficace et optimisée, ce qui va permettre undéveloppement allant de la conception (donc de la modélisation) jusqu’au codage, defaçon continue ;
- intégrer SDL dans les méthodes de développement (cycle en V et cycle incrémental etitératif) ;
- intégrer SDL dans l’environnement de développement (outils périphériques, bases dedonnées, …) ;
- convaincre et former le personnel concerné.
5.3.3. Les Contraintes du Projet
J’ai dénombré les contraintes suivantes, que j’ai étendues pour certaines à tout projet utilisantSDL:
• Produire un code machine optimal tout en exploitant le langage SDL ;• Gérer le partage de ressources ;• Respecter les délais.
• Produire un code machine optimal tout en exploitant le langage SDL
Une contrainte importante, inhérente à tout projet développé en langage SDL pourdes systèmes temps réel, est le respect des caractéristiques liées au code machine.En effet, le temps d’exécution des instructions est primordial dans un système devant gérerdes milliers voire des millions de tâches en même temps.
Il fallait jouer sur deux tableaux à la fois : d’une part exploiter les possibilités de SDL, c’està dire être cohérent, clair et pertinent à ce niveau, et d’autre part ne pas perdre de vue lecode final en appliquant des règles de codage SDL permettant in fine une exécution duprogramme rapide, efficace, et cohérente (le code généré ne devant jamais être modifié à lamain, sous peine d’être écrasé à la prochaine génération).
C’était donc un équilibre parfois difficile à obtenir, mais pas impossible.
Cette contrainte s’appliquait d’autant plus à notre projet que nous devions réécrireen SDL un bloc déjà existant en code cible (PLEX), c’est à dire faire du reverseengineering, et le comparer à l’original.Cela avait pour but d’une part de mieux comprendre SDL en faisant une corrélation et unecomparaison directe entre le modèle et la cible, et d’autre part d’évaluer les performancesen fonctionnement.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 25 / 70
• Gérer le partage de ressources
Pour ce projet nous étions six personnes à développer en même temps un seul bloc,ce qui est assez rare. Nous avons donc dû trouver une solution pour faciliter le partage defichiers et le travail en commun.
Pour cela, j’ai d’une part joué sur la décomposition architecturale d’un modèle SDL,en assignant chaque développeur à une composante du modèle, et j’ai d’autre part proposéd’utiliser l’outil logiciel de gestion de configuration ClearCase de Rational.Ainsi nous avons pu avoir une base de travail commune, gérer les versions, et éviter lesconflits de modifications.
• Respecter les délais
Cette contrainte est évidemment inhérente à tout projet, mais d’autant plus notablequ’un délai de 6 mois est tout juste suffisant pour former une équipe sur SDL, de façon à cequ’elle soit autonome.
Or, ce système était totalement inconnu pour moi (et peu connu pour les nouveauxembauchés), et le projet devait respecter le même déroulement qu’un projet traditionnel.Heureusement l’apprentissage de ce nouveau langage et la manipulation de ses outils ontaidé à motiver suffisamment l’équipe pour atteindre les objectifs.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 26 / 70
5.3.4. Le Processus de développement
Dans ce chapitre, nous allons voir dans un premier temps que SDL permet une nouvelleapproche du cycle de développement et des processus de travail.Ensuite je présenterai le processus de développement que nous avons choisi pour le projetPrototype SDL.
Les développements logiciels du commutateur AXE10 ont suivi le cycle en V bienconnu de l’industrie, jusqu’à ces dernières années.Ce cycle contient essentiellement les phases de spécification, de conception, de codage, et detests (la recette ne nous impliquant pas directement).
De ce cycle, tel qu’il était adapté dans notre travail, on peut souligner quelques inconvénients :
- les phases de tests viennent tardivement, il faut pour cela coder au moins une partie, etréaliser un dump (code machine compilé et lié) ;
- beaucoup de documents, et finalement peu de code, sont produits. Cela n’est pas unemauvaise stratégie, mais les documents sont souvent écrits sans éditeur réellement adapté,et ne sont pas toujours entièrement fiables car il ne correspondent pas toujours à la réalité.
En revanche, la mise en œuvre du langage SDL implique une nouvelle façon de travailler.
En tant que langage de modélisation, SDL permet de faire abstraction de détails, enplaçant les définitions et les descriptions à certains niveaux de hiérarchie. C’est ce qu’onappelle le concept Top-To-Down.
De plus, il est recommandé de travailler avec SDL selon un cycle itératif, en raffinant lemodèle étape par étape et en incluant à chaque fois plus de détails.
L’intérêt de suivre ces recommandations est que l’on peut anticiper au maximum la simulationdu modèle ; on peut donc tester plus tôt les fonctionnalités.
Enfin, la continuité du travail est améliorée. En effet avec SDL on utilise le mêmelangage et le même support pour décrire de façon informelle et globale le comportement duprogramme et pour le détailler progressivement afin d’en générer le code. En revanche la méthode classique demandait d’écrire un document à base de texte et de figurespour ensuite coder à part le programme.
En ajoutant au modèle SDL des chapitres, des diagrammes, et des textes disposés selon desrègles de documentation, le modèle devient un document. Puisqu’ avec des règles de codage on peut générer le langage propriétaire d’Ericsson, on peutvraiment dire que le document EST le code ; on a une correspondance naturelle entre le code etsa description.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 27 / 70
Toutes ces considérations ont conduit à un nouveau cycle, basé sur le cycle en V. On considèreles phases de conception développées avec SDL comme une partie venant s’incorporer aucycle (plug-in). La figure 6 représente ce nouveau cycle.
Figure 6 Le processus de développement logiciel de l’AXE10 avec SDLOn remarque que la phase de codage est intégrée à la conception détaillée, et que le test unitairen’est plus après le codage, mais dans une boucle itérative. De plus, les tests d’intégration sontexécutés en parallèle de la conception, par incréments, et non plus après.
J’ai appliqué la méthode itérative décrite précédemment autant que possible lors duprojet Prototype SDL. Pour répondre aux objectifs, le processus de développement du projet était le suivant :
1. Spécification et Préparation2. Conception Fonctionnelle SDL3. a. Conception SDL Détaillée itérativement
b. Simulation et test unitaire des parties non SDL4. Tests de non régression5. Mesures de caractéristiques6. Bilan
Je vais donc maintenant décrire le contenu de ces phases au travers des activités du projet.
Productiondu Dump
Spécifications
ConceptionFonctionnelle
SDL
IF ..THEN- - - -
source(langageEricsson)
Générationautomatique
Itérations :Ajout dedétails
Testd’intégration
Recettes
ConceptionDétaillée
et CodageSDL
---..-
....
.
---
.
Analyse,Simulation,Validation
(Test Unitaire)
Scripts de tests
documentimprimé
Modèle
SDL plug-in
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 28 / 70
5.3.5. Préparation du projet
Tout d’abord, j’ai commencé par prendre connaissance du système de Signalisationdéveloppé à Ericsson Madrid. Cela était essentiel pour la rédaction du cahier des charges.
Dans cette phase, je devais évaluer les délais des différentes phases du projet, les outilslogiciels à utiliser, et le choix du bloc devant servir de support au développement. En effet, je devais sélectionner parmi les blocs du système celui qui convenait le mieux entermes de volume, de complexité et de fonctionnalités, et qui était accompagné de mesures etde tests de non régression* exploitables.
Il a fallu ensuite mettre en place l’environnement de travail : installer la dernière versionde la plate-forme logicielle de développement SDL et définir l’arborescence des répertoires detravail avec l’outil ClearCase (gestion de configuration).
5.3.6. Préparation et accompagnement de l’équipe
Dans un premier temps il m’a fallu enseigner les bases de SDL, ainsi que son applicationau développement dans Ericsson, aux membres de l’équipe.J’ai donc dispensé une semaine de cours avec exercices dès le début du projet.
Cela n’était pas la première fois – mes premiers cours en compagnie d’un de mes collèguesdatent de 1998, juste après le premier projet en SDL – ni la dernière fois : on m’a demandé deréitérer mon enseignement à d’autres personnes d’Ericsson Madrid à la fin du projet PrototypeSDL, puis il y a peu de temps (fin 2002) à quelques personnes de Teleca Solutions.
Bien évidemment, mon enseignement a été constant lors du projet Prototype SDL. J’aiaccompagné l’équipe quotidiennement, et j’ai beaucoup appris moi-même ce faisant.
Accompagner et encadrer l’équipe de designers (environ 2 à 5 personnes) est une fonctionessentielle d’expert SDL, et je l’ai toujours assumé (selon mes compétences grandissantes) aucours des différents projets, et un peu plus officiellement au cours du dernier projet, MobileSwitch Center 3.0.
* Voir Glossaire
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 29 / 70
5.3.7. Conception Fonctionnelle puis Détaillée
Avant de connaître SDL, l’équipe pensait que le projet ne se contenterait que de traduirele code du bloc existant en SDL, et que ce langage n’intervenait pas lors de la phase antérieuredécrivant les fonctions du (ou des) blocs. J’ai donc souligné l’importance d’exploiter les atoutsde SDL dès cette phase.
Nous avons donc traduit le document décrivant les fonctions, selon les instructions derédactions de modèles SDL (et je ne parle plus de « document » proprement dit).
Cette tâche est parfois ardue, elle demande un esprit de synthèse et d’organisation. Il fautmodéliser selon une certaine modularité et hiérarchie de détails.
Par exemple on peut créer une cartographie de scenarii avec des diagrammes HMSC (HighLevel Message Sequence Chart). Ces scenarii sont alors détaillés dans des diagrammes MSC(Message Sequence Chart) et les diagrammes peuvent ainsi s’emboîter (une HMSC contientd’autres HMSC qui contiennent des MSC contenant à leur tour des MSC…). Un exemple dediagramme HMSC et MSC est proposé sur la figure 7.
Figure 7 Conception fonctionnelle avec SDL : diagrammes HMSC et MSC
J’ai ensuite montré comment définir l’architecture du bloc, son environnement et ses interfaces.Cela a permis de répartir les responsabilités de chacun selon cette architecture, en assignantchaque personne à une composante du bloc. J’ai alors incité le groupe à commencer dès cetteétape la définition du bloc au niveau fonctionnel, sans entrer dans les détails. Cela a permis dedébuter quelques simulations basiques.
Send_Request
Request_Success Request_Fail
hmsc Perform_Servicemsc Send_Request
client server database
request
lookup
wa
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 30 / 70
C’est sous cette forme que j’ai estimé important d’inspecter ensemble le document afin de levalider, selon les normes documentaires en vigueur (voir chapitre Revue, Inspection, et LectureCroisée).
Par la suite, nous avons progressivement détaillé chaque processus ou fonction, et noussommes ainsi passés petit à petit d’un modèle fonctionnel, indépendant du code cible, à unmodèle physique, qui prenne en compte les contraintes de son environnement.
En effet, le processeur du commutateur AXE 10 possède des fonctionnalités propres qu’il estessentiel de considérer au plus tôt des spécifications.C’est un système multitâches, dédié et rapide. Par conséquent, il faut par exemple gérer lesvariables avec attention (en utilisant le plus possible les registres), gagner du temps sur la saisiede la mémoire (gestion des pointeurs), ou encore faciliter l’optimisation de la mémoire cache.
Il faut donc appliquer au modèle SDL de nombreuses règles de codage spécifiques pour générerun code suffisamment performant.J’ai donc sensibilisé l’équipe sur la bonne application de ces règles, et cela m’a permiségalement de réfléchir à certaines améliorations à y apporter.
Cette bonne application des règles de codage est aussi essentiel au bon déroulement de lasimulation SDL. La difficulté réside dans le fait que la simulation passe par une génération desource en langage C tandis que la production du code final passera par le langage propriétaired’Ericsson. Il y a donc certaines considérations à prendre en compte lors de ces activités.La simulation est donc un outil de debogage et permet de faire du test fonctionnel et unitaire, envérifiant automatiquement les diagrammes MSC.En revanche, elle ne permet pas de s’affranchir du test d’intégration, qui prend en compte lesconditions réelles du système (avec des émulateurs et des maquettes).Plus d’information au sujet de la simulation est disponible en annexe.
Le document de test unitaire déjà existant a été utilisé comme base de simulation dans leprojet Prototype SDL. Comme il était très volumineux, cela a rendu la phase de simulationassez longue, mais profitable : plus de 30 fautes ont ainsi été découvertes.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 31 / 70
5.3.8. Revue, Inspection, et Lecture Croisée
Une revue est une lecture par une autre personne du travail d’un développeur, afin devérifier que celui-ci est sur la bonne voie.
L’inspection est plus formelle : elle réunit plusieurs participants, et a pour butd’approuver ou non le document. J’ai proposé de tirer partie de SDL lors de la préparation des inspections. Il est en effetrecommandé de vérifier les points suivants :- être sûr que le modèle est correctement analysé et compilé ;- avoir simulé le modèle si possible.
La lecture croisée et minutieuse du code, quant à elle, s’appuie sur une liste devérification (checklist). J’ai pu montrer durant tous les projets qu’il est bien plus aisé de fairecette vérification sur un modèle SDL que sur le code cible comme les développeurs ontl’habitude de le faire.
L’approbation des documents techniques met en place les jalons permettant de passerd’une étape à l’autre, et de connaître l’avancement du projet.C’est par ce moyen qu’on défini le plan d’assurance qualité.
J’ai régulièrement participé aux inspections, en tant qu’auteur des documents,modérateur et/ou inspecteur. J’ai donc moi-même approuvé certains documents, bien que celafasse partie des fonction de l’ingénieur.
5.3.9. Application des Méthodes
Dans le cadre de l’apprentissage et du soutien donné à l’équipe, j’ai veillé à ce que lesméthodes soient appliquées tout au long des projets, ou tout du moins l’essentiel – la pratiquedifférant parfois quelque peu de la théorie.C’est un peu le rôle du responsable des Méthodes assigné au projet, mais ma spécialité en celangage m’a impliqué dans cette tâche. J’ai donc souvent assisté le Responsable Méthodes, enlui expliquant les principes de SDL.
Ensuite, j’ai montré aux membres de l’équipe les guides (style guides) donnant quelquesrecommandations sur la notation du code (hongroise), la disposition des diagrammes, la façonde créer des scripts de simulation, ou encore l’archivage des documents générés par SDL.
Lors du projet visant à mettre en place les premières méthodes SDL, en 1999, j’aiparticipé à l’inspection de presque tous les guides et documents d’instruction de travail.Lors de ce projet, j’ai également eu pour responsabilité d’écrire l’instruction de travail (WorkInstruction) relative à la simulation et la validation. Ce document a ensuite été inspecté etvalidé par le groupe d’experts.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 32 / 70
5.3.10. Intranet du projet
Pendant le déroulement du projet, il s’est vite avéré nécessaire de rédiger et de rassemblerles différentes informations utiles. Il était intéressant aussi de présenter notre projet au reste desdéveloppeurs d’Ericsson.
C’est donc de ma propre initiative que j’ai mis en place un petit site intranet sur notreprojet. Ce site intranet contient donc essentiellement les liens vers les rapports, les documentset les fichiers SDL, une section « Trucs et Astuces » recensant les informations utiles et lesquestions ouvertes, ainsi que les cours que j’ai dispensés à ce moment.
5.3.11. Résultats du projet
A la fin du projet, les membres de l’équipe ont passé les tests de non régression sur lebloc.Les tests ont été effectués avec la plate-forme d’émulation de l’AXE10, et une partiedirectement en salle de maquettes.Cette phase s’est déroulée rapidement et sans difficultés ; seulement 7 fautes ont été trouvéessur 315 scenarii, ce qui montre une qualité de développement satisfaisante.
Ensuite, des mesures de caractéristiques ont été effectuées. Nous avons commencé parcomparer la taille du programme généré par SDL avec l’original. Il n’y a pas eu de grandedifférence concernant l’allocation mémoire. Il y avait légèrement plus d’instructions générées,mais la taille du code machine final (l’équivalent de l’assembleur) était identique.
Enfin, des mesures de charge du processeur et des temps d’exécution ont eu lieu. C’étaitun peu le moment de vérité, qui allait certifier ou non l’intérêt de SDL pour le département. Lescomparaisons ont été satisfaisantes : nous avons constaté une légère augmentation des chiffres(environ 4% en moyenne, jusqu’à 8% maximum, et nous avons même gagné 1 % sur certainstests par rapport aux tests originaux).
Mais la plus grande satisfaction ne se chiffre pas. Tous les membres de l’équipe ontvécu une très bonne expérience, grâce à ce projet innovant et motivant. En règle générale, tous les designers ayant travaillé avec SDL n’aiment pas retourner à desprojets devant développer de manière plus traditionnelle.
Le rapport final, que j’ai aidé à rédiger, a été très utile aux projets suivants, notammentau responsable SDL du projet total Mobile Switch Center 3.0 , pour convaincre le centre dedéveloppement du bien-fondé de cette approche, et surtout de la nécessité d’aller plus loin ;l’étape suivante étant l’harmonisation avec des méthodes et outils périphériques (bases dedonnées, logiciel d’édition de code source par exemple).
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 33 / 70
5.4. Le projet Mobile Switch Center 3.0
5.4.1. Contexte
Le principal contexte de ce projet, qui s’est déroulé de février 2002 à janvier 2003, estl’avènement de l’UMTS*. Les réseaux téléphoniques ne peuvent évidemment pas migrer dujour au lendemain vers la troisième génération de téléphonie. C’est une évolution qui se fait peuà peu, étape par étape. Dans cet état intermédiaire, différentes technologies cohabitent dans lesréseaux de communication, et des passerelles doivent être installées.
Cependant l’UMTS n’a pas eu le succès escompté, et les demandes en réseaux IP(signalisation et transport de données) a décru. Le GSM est donc toujours une applicationmajeure de ce type de réseau. En conséquence, il fallait délivrer une version permettant à la foisd’adapter un peu le réseau à l’UMTS, mais misant surtout sur des services attractifs qui sontsources de revenu pour les opérateurs.
Le point du réseau mobile qui commute les appels est le Mobile Switch Center. Il doitdonc être mis à jour pour prendre en compte plus de protocoles et les passerelles multimédia.Nous avons été impliqués dans cette tâche en tant que responsables du Module Applicatifpermettant d’interroger une base de donnée avant la commutation d’appel.
5.4.2. Les objectifs du projet
Le projet total se devait de suivre un plan de développement (business case) centréautour du marché GSM, tout en focalisant les fonctionnalités de l’UMTS sur certains servicesimportants (localisation d’appel, applications multimédia), et en accompagnant l’évolution del’architecture des réseaux du mobile, plus basé sur l’IP.
Ces objectifs ont été réalisés par le développement de fonctions propres aux réseauxtéléphoniques GSM et UMTS que nous ne détaillerons pas ici.
5.4.3. Les contraintes du projet
Nous avons du nous former rapidement au monde du mobile, puisque nous avons acquisla responsabilité de ce système au début de ce projet, suite au transfert de cette activité enprovenance de Suède. Cependant le transfert de connaissances et de responsabilités s’estdéroulé sans encombre et n’a pas perturbé le projet.
L’équipe française était assez réduite aux vues de la taille du système à mettre à jour: deuxingénieurs de développement, trois ingénieurs Système, trois testeurs, un responsable deconfiguration (pour la gestion de versions et de documents), une responsable méthodes etqualité, le chef de projet local, et moi, assumant des fonctions de coordination. C’est pourquoi j’ai participé à plusieurs tâches de natures différentes au cours de ce projet. * Voir Dictionnaire des sigles
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 34 / 70
5.4.4. Le processus de développement du projet
Un des grands intérêts de ce projet a résidé dans son processus de développement.Comme beaucoup de systèmes, et par conséquent d’équipes, étaient développés en parallèle,l’aspect de coordination était primordial.
De plus, beaucoup de nouveaux outils étaient utilisés à tous les niveaux :développement SDL, gestion de version et de configuration, test, etc. Ces outils, ainsi que lesméthodes associées, ne bénéficiaient donc pas tous d’une maturité à toute épreuve. Enconséquence, la progression du projet s’appuyait sur un réseau de compétences adéquates.
Cette organisation s’est reflétée par la structure matricielle des sous-projets, telle qu’elle estprésentée sur la figure 8.
Figure 8 Maillage Projets – Métiers
On peut y remarquer les relations entre les différents métiers permettant la conduite du sous-projet de façon locale.
Pour lier ces métiers entre sous-projets, des coordinateurs formaient un réseau transversal, etles chefs de chaque sous-projet local étaient en contact entre eux (durant la phase dedéveloppement) et avec le directeur du projet total, qui lui a gardé ses fonctions du début à la
Directeur Projet
…Développement TechnologiqueAXE10
Déploiement Méthodes
Gestionde
Configuration
SDL Test DesignChefProjetLocal
Module d’Application Y
Gestionde
Configuration
SDL Test Design ChefProjetLocal
Moduled’Application X
Communication interne au métier
Communication dans le groupe fonction
Communication dans le groupe projet
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 35 / 70
fin du projet. D’autres métiers entrent en relation avec ce maillage : les méthodes devant êtreappliquées ou mises à jour, différents outils, la technologie évolutive du produit (par exemplepour prendre en compte les caractéristiques des nouveaux processeurs utilisés dans lecommutateur), etc…
L’idée était donc de développer a la fois le produit et les moyens de le réaliser, de façonparallèle et incrémentale.
De plus, les composantes à développer ont été identifiées sous formes de workpackages,c’est à dire des fonctionnalités élémentaires, certaines dépendant d’autres, livrées selon uncalendrier bien précis, par incrément. Ces incréments permettent de tester et corriger les fautesle plus tôt possible.
Tous les quatre ou cinq incréments, une livraison est faite à une autre équipe qui vérifie tout ledéveloppement intégré chez le client ou dans des centres d’essais spécialisés et on met ainsi enplace peu à peu le produit final.
Une représentation très simplifiée de ce qu’on appelle un plan d’anatomie résume cette gestionde projet sur la figure 9. Les flèches indiquent une dépendance.
Figure 9 Workpackages et Incréments
Ce découpage en sous-projets permet donc une évolution simultanée de la conception, de laréalisation, du test, et de la recette.
Inc3
TaxationPour Japon
FonctionLocali-sation
CorrectionFautes
ProtocoleX
ProtocoleY
Work-Package
2Equipe A
Work-Package
3Equipe C
Work-Package
4Equipe A
UMTS
Inc26
Inc14
Work-Package
1Equipe C
Work-Package
5Equipe B
Work-Package
6Equipe B
NouveauProcesseur
Work-Package
7Equipe C
25/04/2002
12/07/2002
01/09/2002
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 36 / 70
5.4.5. Développement du système Data Base Query Application Module
Coordination SDL
J’ai participé activement aux conférences téléphoniques hebdomadaires de coordinationSDL. Ces réunions impliquaient une personne par site pour le projet, soit presque unedizaine, plus le coordinateur du projet total responsable de ce réseau. Nous avons égalementeu quelques réunions physiques en Allemagne.
Tout ce qui avait trait à SDL était discuté durant ces réunions. D’abord en relation avecle projet (avancement, problèmes, questions), mais aussi tout ce qui pouvait donner lieu àune information utile à savoir ou une amélioration à apporter.J’ai régulièrement transmis et appliqué ces informations à mon équipe et rendu compte del’essentiel durant les réunions hebdomadaires du projet local.
Grâce à un tel réseau actif, le déploiement de SDL dans le développement des produitsEricsson a fait un bond prodigieux.
Mise en œuvre des Workpackages
Il fallait transformer les blocs unitaires de notre système afin de maîtriser les séquencesde messages de signalisation propres au réseau IP.
Dans le cas du réseau IP il faut transporter la voix avec des protocoles différents decelui du réseau traditionnel, c’est ce que l’on entend par Voix-sur-IP. Le passage de voix àIP se fait par des passerelles (Media Gateway). Cela implique des modifications dans lagestion des messages indiquant par exemple quand l’abonné décroche.
Pour cela, j’ai étudié et mis en œuvre avec mes collègues des machines d’étatscomplexes et cela a fait l’objet d’un workpackage conséquent (il y en avait six au total, surune durée de presque un an).Comme il n’y avait que deux ingénieurs de développement dans notre équipe, moinsexpérimentés que moi, le chef de projet local m’en a confié une partie importante.
En tant que coordinateur SDL, j’ai aussi supervisé l’ensemble des autres workpackages.
Amélioration du code existant
Pour permettre une mise à jour de ces blocs, j’ai pris la décision d’en simplifier ladisposition SDL, pas toujours optimale ni cohérente (le code était trop éclaté et les variablesmal utilisées), tout en mesurant les risques de tels changements. Cela a été fait encollaboration avec le reste de l’équipe.
Le générateur de code propriétaire Ericsson apportait de nouvelles possibilités toutau long du projet dans le but d’améliorer les performances du code final. Suite auxdécisions des réunions de coordination SDL, mes collègues et moi avons adapté lesdiagrammes SDL en conséquence.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 37 / 70
Documents rédigés
Au cours de ce projet, j’ai rédigé plusieurs documents techniques (qu’ils soient SDL ounon), dont certains devant évaluer les coûts de développement (délais nécessaires).
J’ai jugé nécessaire, après concertation des autres membres de l’équipe, de réécrire undocument (provenant d’un projet précédent) décrivant quelques fonctionnalités complexesdu workpackage principal. J’ai donc pris en charge ce document technique, en appliquant les règles de rédaction et lespossibilités propres à SDL. J’ai ajouté ainsi des diagrammes de haut niveau qui jouaient lerôle de « cartographie » des autres diagrammes décrivant les séquences de messages.Cette réorganisation du document a été difficile, car il a fallu maîtriser l’aspectcomportemental de tous les blocs concernés.Cependant nous avons amélioré la qualité du document et sa compréhension. Nous avonségalement repéré des fautes potentielles, et le document a pu servir de point d’entrée à lasimulation.
Harmoniser SDL et les outils de développement
Le développement SDL d’un système, de sa conception jusqu’au test, se fait au moyend’une palette d’outils logiciels (organisateur, éditeurs, analyseur, simulateur, générateur decode, etc.), vendue par Telelogic.
Cette plate-forme s’inscrit elle-même dans une plate-forme de développement propre àEricsson, avec différents types de bases de données, des éditeurs de sources de programme,des émulateurs et simulateurs plus dédiés, etc.
Les enjeux et la taille du projet total ont beaucoup contribué au déploiement de SDL. Ainsi, on a pu mettre en place des bases de données propres à SDL, et intégrer SDL auxoutils déjà existants.
Par exemple, un logiciel propre à Ericsson permet de stocker et de modifier dans une basede données la définition de messages entre les blocs unitaires. Nous avons fait en sorte quece logiciel intègre la syntaxe SDL.
De même nous avons simplifié la possibilité d’ouvrir un bloc SDL développé par un autreprojet, en intégrant les blocs archivés dans la production.
Mon rôle dans cette harmonisation s’est joué au travers de la coordination SDL, enexpliquant au reste de l’équipe ce qu’il fallait faire pour profiter de ces possibilités, et enprenant moi-même en charge localement les migrations de bases de données nécessaires.
Test et Recettes du projet Mobile Switch Center 3.0
Les tests système concernant le travail effectué localement ont été menés tout au longdu projet sans problème majeur. Des tests d’intégration étaient par ailleurs effectuésrégulièrement en Allemagne.La déviation des coûts par rapport au budget établi initialement n’a pas dépassé 0,05 %.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 38 / 70
5.5. Bilan technique de mes activités
Le projet Prototype SDL m’a permis tout d’abord donné le sentiment d’avoir une réelleinfluence et responsabilité au sien d’une équipe, en la guidant et en l’aidant au quotidien, maisaussi en obtenant de la part du reste de l’équipe des informations essentielles.Cela m’a demandé d’être clair, concis, méthodique, et pédagogue.
J’ai pu jouir d’une grande liberté dans la pratique de SDL, ce qui m’a permisd’approfondir et de perfectionner mes connaissances, et de découvrir certains points àaméliorer. J’ai donc fait preuve de savoir-faire dans l’analyse des besoins.
De plus, j’ai pu connaître des personnes et un pays différent. J’ai ainsi pu pratiquer mon anglaiset acquérir quelques bases rudimentaires en espagnol. J’ai pu montré mes capacitésd’adaptation à un nouvel environnement de travail et de vie au quotidien.
Le projet Mobile Switch Center 3.0 m’a montré ce qu’était un projet de premièreimportance pour un groupe international, avec les enjeux mondiaux que nous connaissons tous.La conjoncture difficile m’a obligé à maîtriser au mieux les coûts, en ciblant les priorités dansles nombreuses tâches m’incombant.
L’aspect communicatif m’a concerné sur le premier plan avec mes rôles decoordination, à la fois à l’intérieur de l’équipe locale et à l’extérieur en prenant pleinement partà un réseau actif et efficace de spécialistes réellement motivés pour faire avancer les choses.
Cela s’est fait sans se dissocier d’une compétence technique sur le système développé,en étant impliqué sur tous les points du cycle de développement. J’ai aussi pris de nombreusesinitiatives tout en les soumettant au reste de l’équipe et au chef du projet.
En ce qui concerne mon investissement dans SDL en général, il m’a apporté de grandessatisfactions. L’étude et la pratique de ce langage (appuyé par des outils conviviaux etpuissants) est motivante et plaisante. En travaillant sur un langage standard et largement utilisédans des secteurs d’activités variés, j’ai pu avoir une expérience non pas limitée à Ericsson,mais ouverte sur d’autres secteurs.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 39 / 70
6. Optimisations mises en œuvre
6.1. Optimiser le travail d’équipe
Il est maintenant nécessaire, pour un projet, d’avoir un responsable dans le domaine deSDL (comme il y a un responsable de Gestion de Configuration, ou des Méthodes), afin defaire l’interface entre tous les intervenants de son déploiement, préparer le travail des membresde l’équipe, et l’accompagner.
Ce rôle m’a amené à optimiser le travail de l’équipe de par mes compétences.
Nous avons vu que cela s’est traduit par la revue approfondie du travail de conception, lapréparation de la simulation, l’application de règles de codage (notation hongroise, dispositiondes déclarations) et bien d’autres activités inhérentes aux phases de développement.
J’ai aussi aidé à l’élaboration de checklist propre à SDL, et j’ai rédigé quelques guidespour aider les membres de l’équipe, par exemple pour lister les étapes nécessaires à la livraisond’une version du programme SDL et son code PLEX généré, en accord avec les règles degestion de versions.
Je me suis également attaché à mettre en place certaines activités non obligatoires, commepar exemple la représentation des processus SDL sous forme de diagrammes d’états.Les processus sont parfois complexes et une représentation de leurs états et transitions aident àles analyser et les comprendre.
C’est donc une autre représentation, totalement identique à celles que l’on rencontre dansle langage UML, qu’on utilise pour résumer le fonctionnement dynamique d’un process.
Un autre exemple d’optimisation utile à l’équipe est la préparation de la SimulationSDL. Comme le temps de faire une phase de simulation SDL complète et efficace n’était pastoujours alloué, j’ai ciblé au mieux les tests pour relever les fautes potentielles le plus en amontpossible. Cela a permis de préparer quelques scripts SDL qui ont été repris ensuite par lesautres développeurs.
6.2. Optimiser les outils
Maîtriser les bases de SDL et les mettre en place dans certains projets de développement ducommutateur AXE10 constitue déjà une optimisation des processus de travail en soi.En effet, ces projets gagnent à utiliser SDL, en termes de temps et de qualité, surtout une foisles compétences acquises et la structure mise en place (c’est à dire pour des blocs nouveaux oudéjà convertis en SDL).
Cependant, l’outil élaboré par Telelogic, appuyé par Ericsson, n’a pas été parfait dès lespremiers jours, et est loin de l’être encore aujourd’hui.Ainsi, lorsque mes collègues (du projet ou non) ou moi rencontrions des erreurs, que ce soit surla plate-forme générale de Telelogic (gestion de fichiers, éditeurs, simulateur, …), sur les
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 40 / 70
fichiers d’aide, ou sur l’outil de génération de code, il m’a fallu les rassembler et écrire desfiches de fautes, et en assurer le suivi.
Lorsque venait la phase de spécification de la nouvelle version complète de la plate-formeSDL, je proposais certaines améliorations rédigées selon un formulaire particulier. Certainesd’entre elles provenaient de fiches de fautes, et d’autres de notre expérience des précédentsprojets, ou encore des caractéristique des nouveaux processeurs du commutateur AXE10 (parexemple à propos du fonctionnement de la mémoire cache). Celles-ci étaient alors analysées, etacceptées selon leur pertinence et le budget alloué.
Le projet Prototype SDL, comme tous les autres projets que j’ai connus, a permis dedéceler de telles fautes et améliorations que nous avons listées sur l’intranet et dans le rapportfinal.
6.3. Optimiser le produit
Enfin, j’essaie autant que possible d’améliorer la qualité des produits développés, enproposant des alternatives et des solutions au cours des projets. Cela m’a amené par exemple àproposer une nouvelle version d’un groupe de blocs, qui pourrait profiter des progrès récentsdes outils SDL.
J’ai rédigé pour cela un rapport d’étude, qui sera sans pris en compte si ce groupe de blocs estouvert dans un prochain projet, et si le budget le permet.
Un autre exemple concerne une librairie (« package »), utilisée par le projet Mobile SwitchCenter 3.0, permettant de coder et décoder des messages selon un certain protocole. Commecette librairie était initialement écrite en langage dédié, j’ai mis au point une version intégrableau modèle SDL. Suite à mon travail, un document d’instructions a été réalisé pour faciliterl’utilisation de telles librairies par les développeurs de différents centres de développement.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 41 / 70
7. Les composantes du métier d’Ingénieur-Maître
Nous avons vu dans un premier temps quelles étaient les fonctions qui m’étaient attribuées,telles que les définissait mon emploi de référence, à savoir celles d’un technicien supérieur enétudes logicielles.
Puis, nous avons rapidement pu observer que ma spécialisation dans le langage SDL mepermettait d’avoir une influence et des responsabilités plus vastes.L’aboutissement de mon rôle d’expert en SDL s’est traduit par la Coordination SDL.Je vais donc maintenant détailler les différentes composantes de mes activités techniques etcelles liées à la coordination SDL.
7.1. Le développement logiciel
Pour concevoir et réaliser les fonctions et unités logicielles dont j’avais la charge, j’aiapprofondi mes connaissances concernant le langage SDL et son environnement dedéveloppement tout au long de ma carrière.
Je devais pouvoir développer et simuler un système, une fonction ou une unité en SDL defaçon claire et efficace. Pour cela, j’ai optimisé mon travail afin de produire un code machinedédié et performant tout en exploitant au mieux les possibilités offertes par les outils SDL.
J’ai aussi élaboré des cahiers des charges sur certaines fonctions à développer, en coopérationavec les ingénieurs du System Management, à partir de documents de spécifications écrits enamont.
J’ai assuré le suivi et la maintenance de mes applications, jusqu’à la prise en charge par leservice concerné (Product Support). Cela s’est traduit par la réponse aux rapports de fautesécrits par les testeurs, la rédaction et le test de la correction en code machine, ou patch, àapporter.
Enfin, en tant qu’expert et coordinateur, j’ai proposé l’utilisation de certains outilss’inscrivant dans l’ingénierie Système : gestion de versions de fichiers, outils de bases dedonnées, ou même obtention de licences permettant une meilleure simulation SDL.Je devais donc constamment être informé des nouvelles versions des logiciels adéquats, de cequ’elles apportaient (Release Notes), et je devais m’assurer de leur installation. Je suisaujourd’hui impliqué dans la migration des réseaux de Teleca afin de se détacher desinfrastructures d’Ericsson, car je dois tester dans le nouvel environnement les outilsfonctionnant autour de SDL et ayant des connections avec le monde Ericsson.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 42 / 70
7.2. Gestion de projet
Au-delà du développement unitaire d’un sous-système, j’ai pu prendre la responsabilité,du point de vue SDL, de systèmes entiers, composés de fonctions et unités assignées aux autresmembres de l’équipe, ingénieurs ou techniciens supérieurs.En d’autres termes, j’avais la charge d’assurer le bon déroulement du projet sous l’angle SDL.J’étais donc impliqué à tous les niveaux : cahiers des charges fonctionnels, conceptionfonctionnelle et détaillée, gestion de configuration, méthodes, vérification et tests. Bienentendu, cette tâche impliquait d’avoir une bonne connaissance, voire une bonne maîtrise desfonctionnalités du système, indépendamment du langage.
Aussi, dans les projets impliquant plusieurs équipes dans différents pays, à forte consonanceSDL, tel le projet Mobile Switch Center 3.0, mon rôle a-t-il été défini comme celui deCoordinateur SDL.Je jouais le rôle d’interface entre mon équipe, incluant le chef du projet local, avec lesresponsables R&D de l’environnement SDL, et je réglais avec eux les problèmes dûs auxcorrections, aux versions, et aux licences.Ainsi, je devais, d’une part, coordonner toutes les activités liées à SDL dans le projet local, etd’autre part participer à des réunions internationales sur le sujet (workshops). Et surtout, j’aiparticipé activement et régulièrement aux conférences téléphoniques et aux réunionsconcernant SDL et le projet.
Au cours de tous les projets, j’ai participé régulièrement à des réunions avec les membres del’équipe pour discuter de certains points, concernant ou non SDL. J’ai aussi régulièrementorganisé moi-même certaines réunions lorsque nous rencontrions certains problèmes, réels oupotentiels, ou bien lorsqu’il y avait des informations utiles à partager. Ces réunions (partéléphone ou physiques) avaient aussi pour but d’inspecter ensemble les documents techniques,afin de les valider le cas échéant.
Ainsi je rendais compte régulièrement à l’équipe, au chef de projet local, et au coordinateur duprojet total, de mon travail de coordination ou de développement.J’ai participé à la rédaction du rapport de fin de projet, ma plus grande participation à ce jourétant pour le projet SDL Prototype, puisque je l’ai encadré du début à la fin en coopérationavec la chef d’équipe.
Du point de vue hiérarchique, mon rôle de coordinateur m’assignait à l’équipe de managementdu projet local.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 43 / 70
7.3. Soutien, Communication et transmission du savoir
Comme je l’ai illustré précédemment, j’ai été parmi les premiers à participer à des projetsSDL au sein d’Ericsson, et la proportion d’utilisateurs de ce langage est encore faible.C’est pourquoi j’ai toujours formé, conseillé, et assisté d’autres personnes de façon interne eten participant à un forum (mailing list) commun à la R&D.Pour ce faire, j’ai préparé et présenté des séances de formation sur plusieurs jours, àplusieurs reprises (une fois par an en moyenne), que je n’ai cessé d’améliorer en fonction del’évolution du déploiement de SDL au sein d’Ericsson.
Comme cela a été illustré par le projet Prototype SDL, j’ai pris en charge l’élaboration dusite intranet du projet. Dans le projet Mobile Switch Center 3.0, j’ai ajouté au site existantquelques présentations Powerpoint sur différents sujets.
De plus, j’ai écrit et participé aux inspections de documents de méthodes concernant SDLau sein des projets de développement de systèmes de commutateurs AXE10.Je me tenais donc régulièrement informé des nouvelles versions de ces méthodes et jem’assurais de leur suivi par les membres de l’équipe, ou du moins de ce qui était applicable etessentiel.
De même, je m’employais aussi souvent que possible à la supervision du travail desmembres de l’équipe lors des activités liées à SDL.
J’ai aussi régulièrement écrit quelques Rapports de Fautes et Spécifications d’Exigencessur la plate-forme de développement SDL. Une fois ces rapports pris en compte dans unenouvelle version, j’ai assuré le suivi de ces fautes ou améliorations.
D’autre part, la dimension internationale de la compagnie et du monde destélécommunications m’a mené à parler et écrire anglais quotidiennement.
7.4. Evaluation des coûts
Le coût est un critère omniprésent et le développement de systèmes de télécommunicationsn’y échappe pas.Je devais donc donner régulièrement à mon chef de projet local des estimations de délais, doncde coûts, en termes de « Man-Hours » pour des tâches que des membres de l’équipe ou moi-même devions exécuter tout au long des différents projets.Je devais prendre en considération le temps que SDL allait d’abord faire perdre (puisqu’ilfallait convertir des blocs, former le personnel, etc.), pour le gagner par la suite.
Depuis la création de la nouvelle société Teleca Solutions, j’ai pris contact avec lesfournisseurs des plates-formes de développement SDL, et d’autres gammes de produits :Telelogic, mais aussi de petites entreprises.Pour l’instant, Ericsson nous fournit toujours les licences nécessaires, mais il est importantd’avoir ces contacts pour préparer le futur.J’ai donc dû prendre en compte le coût des licences au moyen des différents devis(« packaging de licences »).
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 44 / 70
7.5. Récapitulatif des composantes de l’ingénieur
Les composantes de mon métier ont plusieurs facettes. SDL est la spécialité principale,mais derrière cette expertise se cachent des fonctions d’appui et de coordination, considéréescomme celles d’un membre de l’ équipe managériale, plus que celles d’un technicien supérieur.Un autre aspect est la connaissance plus technique des systèmes de télécommunications, de sesnormes, de ses applications, et des méthodes de travail pour les développer.
Mais le monde évolue, et mon environnement de travail en témoigne. Le déploiement deSDL au sein d’Ericsson restera peut-être une composante de mon métier mais je dois metourner vers d’autres objectifs, puisqu’Ericsson n’est qu’un de nos clients dorénavant.
C’est pourquoi il est intéressant de pressentir quelles sont les autres applications du langageSDL et d’autres langages similaires ou connexes dans l’industrie, et comment elles s’inscriventessentiellement dans une volonté de modéliser, concevoir, et valider des systèmes distribués –activités primordiales de l’Ingénierie Concourante.
C’est sur ce thème que j’étudierai ces enjeux.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 45 / 70
8. Thème d’Etude : Les Outils Logiciels de l’Ingénierie Concourante
8.1. Introduction
L’application de SDL est loin de se limiter au développement logiciel de commutateurtéléphonique, tel que je l’ai connu au sein d’Ericsson.
En effet, si on regarde quels sont les secteurs d’industries mettant en œuvre des langagesformels de spécification tels que SDL, on s’aperçoit qu’ils sont multiples et variés :télécommunications, automobile, défense, nucléaire, aérospatial, transport, et même finance.Or, ces industries ont vu leurs moyens de conception se modifier profondément cette dernièredécennie afin de répondre à de nouveaux défis.
Nous verrons dans ce thème d’étude que ce changement peut s’expliquer par l’arrivée del’Ingénierie Concourante, dite aussi Simultanée, que nous définirons brièvement dans unpremier temps.J’analyserai ensuite comment cette nouvelle organisation s’est traduite dans monenvironnement de travail et mes fonctions, que j’ai présentés précédemment.Enfin, j’apporterai quelques solutions logicielles, centrées autour de SDL, qui accompagnentl’Ingénieur Système durant les activités de conception, comme la Modélisation et la Validation,et qui répondent aux besoins de l’Ingénierie Concourante.Je terminerai cette étude par un récapitulatif des langages standards en relation avec SDL avantde conclure.
8.2. Définition de l’ingénierie concourante ou simultanée
La définition la plus universellement admise est celle de l ’Institute Defense Analyses,centre de recherche pour la défense américaine, publiée en 1986.Il définit l’ingénierie concourante comme une approche systématique pour concevoir unproduit prenant en considération, dès le début, tous les éléments de son cycle de vie depuis lapremière expression du besoin jusqu’au retrait de service.
L ’Ingénierie Concourante est une nouvelle analyse qui intègre lors du processus dedéveloppement une grande variété de domaines et de méthodologies de gestion de projets.
Parmi ces domaines on compte la qualité, le marketing, l’étude de production, l’ergonomie,la maintenance, etc. Des représentants de ces différents métiers sont réunis sur un plateaucommun, afin de concourir à la conception du produit avec une meilleure qualité et surtout desdélais plus courts.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 46 / 70
8.3. L’Ingénierie Concourante et les industries
L’Ingénierie Concourante est née dans l’industrie aéronautique et automobile dans lesannées 1985-1990, puis s’est étendue aux autres industries et PME/PMI dans les années 90.
La conception de la Twingo a été menée selon ce principe pour lapremière fois au sein de Renault. Par exemple, les intervenants spécialistes de l’acoustique n’ont pasattendu la validation de la conception pour débuter leurs études, grâceaux informations et aux prototypes, tandis que d’autres équipestravaillaient sur l’Analyse des coûts et de la Valeur. Le succès de ceplateau d’intervenants a ensuite donné lieu à la mise en place duTechnoCentre de Renault.
En effet, la conception et la réalisation de nouveaux produits est rendue complexe par lademande croissante de nouveaux services faisant appel à de nouvelles technologies, de plus enplus électroniques et informatiques (voir les systèmes embarqués mis en réseaux dansl’automobile et l’avionique) . Une nouvelle dimension dans la complexité apparaît : leséquipements peuvent parfaitement fonctionner de manière indépendante, mais connectésensemble, comment s’assurer de ne pas avoir d’interférence fonctionnelle (j’appuie quatre foissur l’autoradio et les essuie-glaces se mettent en marche !) ?
De plus l’insatisfaction du client, ou une défaillance majeure, peuvent avoir des effetscatastrophiques sur l’entreprise : le logiciel embarqué se doit d’avoir une sécurité accrue.
A cela s’ajoutent des temps de conception et de mise sur le marché toujours plus courts,face à une concurrence accrue.
Face à cette situation, les grandes entreprises dont l'activité porte sur la conception et laréalisation d'ensembles complexes ont été les premières à modifier leur structure en intégrantde nouveaux outils et l'ensemble des informations relatives au cycle de vie des produits afind'optimiser le triptyque « coûts - délais – qualité ».
8.4. L’Ingénierie Concourante et Ericsson
J’ai pu observer les indices de cette démarche, de façon plus concrète et plus proche, lors duprojet Mobile Switch Center 3.0. Nous avons vu que les enjeux de ce projet étaient multiples etau cœur de la troisième génération de téléphonie, avec une intégration progressive des réseauxUMTS et IP dans le réseau mobile GSM. La gestion des moyens mis en œuvre (méthodes etoutils de développement) a accompagné le projet tout en évoluant avec lui.
Cette organisation s’est reflétée par une structure matricielle des sous-projets, avec unmaillage métiers – projets, et impliquant une coordination de tous les domaines.Cette gestion de projets est similaire à celle décrite par Christophe Midler dans son livre« L’auto qui n’existait pas » (voir bibliographie) relatant la conception de la Twingo.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 47 / 70
Pour synchroniser et coordonner toutes ces équipes, on a introduit la notion deworkpackages, et de plan d’anatomie établissant des incréments. Ainsi la conception a puévoluer tout au long du projet, et le plan d’anatomie n’a cessé d’être mis à jour.
Cette rectification constante est un élément de l’ingénierie concourante : comme il faut gérerles conflits entre les différents métiers (dans l’automobile le spécialiste du design pourra êtrecontre l’économie établie par l’analyse de la valeur) on converge sans cesse vers descompromis ou des décisions tranchées.
Cela s’est traduit dans notre projet par de nombreuses Requêtes de Changement (ChangeRequest), également justifiés par la complexité du projet.
8.5. Les outils logiciels de l’Ingénierie Concourante
L’Ingénierie Concourante est un sujet très vaste, qui fait référence à de nombreux outils etméthodes de qualité, de gestion de projet, de développement, de production, etc.Je limiterai ici cette étude à la contribution du Génie Logiciel aux activités suivantes del’Ingénieur Système: partage de l’information, modélisation, validation, et gestion deschangements.
Bases de Données Techniques
Le partage de l’information nécessite de lourdes infrastructures informatiques. Un Systèmede Gestion de Données Techniques permet la circulation, le partage et l’exploitation detoutes les informations relatives aux produits. Des outils spécialisés (CAO, FAO, GPAO,etc.) communiquent via ce système à la Base de Données Techniques, intégrant maquettesnumériques, nomenclatures, documents, bibliothèques, etc. On parle maintenant plus dePDM (Product Data Management) avec des outils comme Oracle, mais l’idée reste lamême.
Lors de l’Analyse des besoins, les exigences sont stockées dans la Base de DonnéesTechniques et seront exploitées et enrichies tout au long du cycle de développement à desfins de traçabilité.
Modélisation et Génération de Code
Le prototypage, ou modélisation, permet aux différentes équipes de formuler de façonformelle les exigences. Cette phase se compose de deux étapes : le prototypagefonctionnel (ou conception fonctionnelle), puis le prototypage physique (ou conceptiondétaillée).
Comme nous l’avons vu dans le compte-rendu de mes activités, le premier consiste àreprésenter, investiguer, et vérifier le comportement du Cahier Des Charges Fonctionnelpuis le second prend en compte les conditions matérielles (en l’occurrence lescaractéristiques du langage dédié, donc du processeur propre au commutateur de réseauxtéléphoniques d’Ericsson).
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 48 / 70
Le comportement d’un système réactif et distribué se modélise très bien au moyen d’unlangage basé sur les machines à état comme les Statechart∗ de Harel, SDL ou encore UML.
Les Statechart* ne peuvent être appliqués qu’à des systèmes peu complexes, et il estdifficile de réutiliser des automates déjà créés sans recourir au copier – coller.UML est un outil de modélisation aujourd’hui incontournable pour la représentationorientée objets, et peut être utilisé en amont de SDL.
SDL est particulièrement bien adapté à la modélisation physique et au codaged’applications distribuées. Il décrit aussi bien l’architecture du système (vision statique dumodèle) que son comportement (vision dynamique du système).
Un autre avantage est la génération de codes cibles , dont le C, le C++, et le C-micro pourles systèmes embarqués.
Il est capable aussi de décrire et intégrer plusieurs protocoles de communications,largement utilisés dans le monde des Télécoms mais aussi dans le développement orientéobjets : citons l’ASN.1 (Abstract Notation Syntax), MSC (Message Sequence Chart), IDL(Interface Description Langage), et Corba (Common Object Request Broker Architecture).Cet aspect lié à l’interface est essentiel pour faire face à la mise en commun de différentsdomaines d’application.
On peut observer que les deux langages et outils de modélisation que sont SDL et UMLsont en train de converger : la version SDL2000 est intégrée dans la version UML 2.0,mieux adaptée au Temps Réel.
Le principal fournisseur de SDL est Telelogic, qui intègre aussi aujourd’hui UML danssa suite, s’établissant ainsi comme le concurrent de la suite Rose de Rational.
La RATP utilise quant à elle la méthode B, langage formel de modélisation assezsimilaire. Les méthodes de modélisation telles que SA-RT, prédécesseur de UML, ne sontplus vraiment utilisées car elles sont informelles et ne permettent donc pas de formuler lespropriétés à vérifier sur le modèle. Enfin, il existe un autre langage formel de modélisationqui est utilisé par exemple par le CEA : Intermediate Format (IF).
Vérification et Validation
Les modèles fonctionnels et physiques doivent être simulés et validés dès que possible,comme nous l’avons constaté lors de la présentation de mes projets. Cette dernière activitéest aussi connue sous le nom de Model Checking. Elle permet de vérifier le comportementde processus communicants en réalisant toutes les exécutions rendues possibles par lemodèle et en vérifiant des propriétés sur ces états.
∗ voir glossaire
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 49 / 70
La validation permet d’obtenir une sécurité élevée du système (on parle aussi derobustesse), ce qui est devenu un critère primordial dans de nombreux domainesd’industrie.
Plusieurs outils de Model Checking commencent à être utilisés à l'échelon industrielpour des applications critiques en sûreté. La suite Tau de Telelogic, incluant SDL, en estune. La suite StateMate Magnum de I-Logix est aussi largement utilisée dans de nombreuxsecteurs de l’industrie.
Génération de Tests
Les activités liées au test peuvent être sensiblement améliorées si l’on met en œuvre unlangage de test standardisé comme TTCN (Tree and Tabular Combined Notation) ouencore TGV (Test Generation with Verification technology). Comme TTCN est unstandard, de nombreuses suites de tests sont disponibles sur le marché, pour les protocolesde télécommunications essentiellement (Bluetooth, UMTS, bus IEEE 1394, etc.)
Les scenarii de tests TTCN peuvent être automatiquement générés à partir du modèle SDL.Ils servent ainsi à passer les tests unitaires et les tests d’intégration. C’est ce qu’on appelledes tests de conformité, qui répondent à la question "Est-ce que le produit réalisé répondaux exigences ?"
Gestion des Changements et des Versions
Enfin, un cycle d’activités d’ingénierie qui se déroulerait sans retour en arrière et sansretouche est certainement trop idéal et irréaliste. On peut s’attendre à des évolutions despécifications ou de technologies, ou tout simplement à des itérations d’implémentation ouà des erreurs à corriger. Il est nécessaire de prendre en compte ces changements pour faireévoluer les modèles et les tests de non régression sur le produit.
Cette gestion des changements, ou de configuration, s’appliquera aussi bien pendant ladurée du cycle de développement (par exemple un an), que pendant la durée de vie de lafonction qui peut aisément dépasser une dizaine d’années.
Telelogic propose depuis peu de temps des solutions dans ce domaine, qui se veulent plustransparentes et simples d’utilisation que l’outil ClearCase du leader en ce domaine:Rational.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 50 / 70
SDL et autres langages
En résumé, l’ingénierie concourante implique quatre aspects pratiques :
1. Communication et coordination : un système moderne de gestion de données, allié avecun outil de gestion des changements (versions), assure le développement en parallèle.
2. Standardisation : comme différentes technologies sont développées en même temps, etcomme l’industrie se modernise, il faut intégrer les interfaces entre les systèmes.
3. Modélisation : le prototype est l’élément commun aux intervenants, permettant deformuler et de comprendre la même chose, si possible jusqu’à la génération de code.
4. Vérification : les tests doivent être faits au plus tôt, sur le modèle et grâce au modèle.
Les différents langages centrés autour de SDL et répondant à ces besoins sont rappelés surla figure 10.
Figure 10 Relations entre SDL et autres langages
UML
MSCASN.1IDL
SDL TTCN
Produit Test duSystème
Spécifications Spécifications
Validation
Réutilisation
Spécifications
Réutilisation
Validation
Génération deTestsGénération de
Code
Test deConformité
Gestion deschangements
Génération deCode
ASN.1 : Abstract Syntax Notation1 (décrit des types et compositionsde données)
IDL : Interface DescriptionLangage (entrées et sorties desobjets)
MSC : Message Sequence Chart(diagramme séquentiel desmessages, utilisé pour décrire desprotocoles et des comportements)
SDL : Specification andDescription Langage
TTCN : Tabular Tree CombinedNotation (description de suite detests)
UML : Unified Modeling Langage(spécification, modélisation desobjets)
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 51 / 70
8.6. Conclusion : Ingénierie Concourante ou conception parallèle ?
Doit-on donc parler d’Ingénierie Concourante, ou seulement de travail incrémental etparallèle ?La définition de l’Ingénierie Concourante n’est pas unique, et possède différentes facettes.Sans doute est-elle explicitement appliquée par Ericsson à un niveau très haut dedéveloppement de gammes de produits, surtout dans le domaine de la téléphonie de troisièmegénération, et peut-être plus implicitement au niveau du développement logiciel.Le principe de développement en parallèle existe depuis fort longtemps, cependant depuisquelques années on peut observer quelques changements, au niveau des outils et des processusde travail.
L’Ingénierie Concourante implique une organisation en maillage métiers - fonctions,une forte communication et coordination, le recours à la modélisation et au prototypage, unegestion des données techniques et variées et une gestion des tâches en parallèle. Mon rôle decoordinateur pour des projets de taille importante prend tout son sens dans ce contexte.
La mise en œuvre de méthodes formelles, et des moyens de tester et valider un modèlerépond aux besoins de l’ingénierie concourante. Elle s’inscrit dans les activités de l’IngénierieSystème, et se matérialise par les méthodes et outils proposés par le génie logiciel.
SDL s’inscrit dans une suite de logiciels accompagnant l’Ingénieur Système tout au long ducycle de développement, de l’écriture textuelle de l’analyse des besoins, jusqu’aux phases detests, en passant même par la génération de code, comme l’illustre la figure 4.
Les outils et méthodes présentées dans cette étude peuvent s’appliquer aussi bien au logicielembarqué pour l’automobile, aux fonctions avioniques, aux serveurs WAP ou UMTS, auxsystèmes d’aiguillage ferroviaire ou au métro METEOR de la RATP. Il faut souligner l’enjeuactuel des Systèmes Embarqués dans l’industrie, avec ce que cela implique de modélisation etde validation logicielle.
Telelogic a racheté de nombreuses entreprises dans beaucoup de pays (comme le spécialistefrançais de SDL Verilog et le leader de la gestion de configuration américain Continuus) afinde proposer des solutions complètes dans ce domaine.
Il est donc important de connaître ces techniques et leurs contextes dans l’hypothèse d’unéventuel partenariat entre Telelogic et Teleca, ou tout simplement pour satisfaire nos futursclients.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 52 / 70
9. Conclusion Technique
Les réseaux de télécommunication sont de différentes natures, et Ericsson a mis au pointun système présent à de nombreux points de ces réseaux : le commutateur numérique AXE10.Ses applications sont multiples, et prennent une nouvelle dimension aujourd’hui avec lamigration vers les réseaux UMTS et le « tout en IP ».
Le langage développé et implémenté dans ce commutateur, par Ericsson, estpropriétaire. Il a peu évolué depuis les années 70 : il est textuel et relativement basique.Cependant il est dédié, et répond donc aux besoins propres à ces réseaux : il peut gérer desmilliers d’appels et de transferts de données en même temps et effectuer des routages versd’autres points du réseau. Certains outils périphériques, eux aussi dédiés, ont été développés ,par exemple pour faciliter la tâche des testeurs.
Mais aujourd’hui, il faut concevoir plus vite, et ensemble. Le génie logiciel a fait desprogrès considérables dans le domaine graphique, dans la simulation, dans la génération decode, etc.SDL est un langage ayant de tels attributs. De plus, il a été mis au point par le monde destélécommunications ; il est très proche du langage d’Ericsson et il suffit d’en adapter legénérateur de code pour en faire un outil puissant de modélisation fonctionnelle ET physique.
SDL est maintenant bien implanté dans le développement logiciel du commutateurAXE10, et il commence à être harmonisé avec certains outils périphériques. Développer enSDL un bloc n’est plus une originalité locale, c’est un processus coordonné et normalisé.Ses atouts par rapport à la méthodologie classique sont indéniables, que ce soit au niveau de ladocumentation modélisée ou de la possibilité de tester rapidement.
C’est dans ce contexte que je me suis employé à mettre en place des méthodes, desoutils logiciels et des documents concernant ce langage dans le développement logiciel au seind’Ericsson. Parallèlement, j’ai constamment exercé des tâches relatives aux différentes phasesdes projets.
Mes compétences en SDL et la maîtrise de mon environnement de travail m’ont mené àavoir des fonctions de soutien, d’accompagnement du personnel, de formation, et de gestiondes méthodes et des outils au sein d’un projet.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 53 / 70
10. Conclusion générale
Mon travail au sein du département de Recherche & Développement au sein d’Ericsson,puis de Teleca, m’a permis de bien comprendre les différentes activités du cycle dedéveloppement, en l’occurrence de produits dédiés aux réseaux de télécommunications.J’ai compris l’importance de décrire, documenter, modéliser les fonctionnalités d’un systèmeavant d’effectuer un codage clair et efficace.
J’ai rapidement été considéré comme expert SDL ; cela ne m’a pris que quelques moispour maîtriser ce langage tant il était intuitif, logique, et somme toute assez simple. C’est plutôt un travail à tous les niveaux, et une suite d’initiatives personnelles, qui m’ontpermis d’évoluer, et d’acquérir une connaissance des réseaux de télécommunication, desprotocoles, du C, d’Unix, des logiciels utilisés par Ericsson, et bien sûr et surtout des relationshumaines, en faisant par exemple activement partie d’un réseau international d’experts.
Cette expérience m’a aussi permis de connaître différents pays et cultures et de travailleren collaboration avec mes collègues d’ici ou d’ailleurs, en les accompagnant dans leur travailvoire en les aidant à se former, que ce soit en français, en anglais voire même en espagnol .
La conjoncture économique actuelle a mis en veilleuse les ambitions qui avaient pour butde promouvoir de nouvelles méthodes de travail ; on préfère se recentrer sur des valeurs« sûres » plutôt qu’innovantes. Cependant SDL continue d’être très présent, notamment dans lenouveau projet Mobile Switch Center 4.0.
Heureusement, les applications de tels langages ne sont pas réservés à Ericsson, ni mêmeau seul domaine des télécommunications. L’éditeur principal de ce langage, Telelogic, proposetoute une gamme de suites logicielles, allant de la gestion de changements à la validation enpassant par la modélisation, et plus encore. Telelogic travaille avec de nombreux domainesd’industries comme la Défense, l’Automobile, l’Aérospatiale, l’électronique, etc.
Mes connaissances devraient donc me permettre d’élargir mes horizons, de m’instruire surde nouveaux domaines voire sur de nouveaux métiers.Le diplôme d’Ingénieur-Maître me permettra de valider mon expérience au sein d’Ericssonpour débuter une nouvelle carrière plus évolutive, donc mieux adaptée a la prestation de serviceau sein de Teleca.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 54 / 70
BBiibblliiooggrraapphhiiee
Ingénierie Concourante / Simultanée :
L’auto qui n’existait pas, Management des projets et Transformation de l’entrepriseChristophe Midler Edition InterEditions
Management des Nouveaux Projets Sandrine Fernez-Walch Edition AFNOR
Documents internes :
Work Instructions : Simulation and Validation using SDLReview & Inspection with SDL
Rapports Finaux de projets : Prototype SDLDBQAM (DataBase Query Application Module), Mobile SwitchCenter 3.0
Manuels internes : Telelogic : Introduction to SDL Ericsson : SDLtool Tutorial for Testers
SDL StyleGuide
WWeebb BBiibblliiooggrraapphhiiee
A propos de SDL : IEC: Specification and Description Language (SDL)
http://www.iec.org/online/tutorials/sdl/index.html SDL-2000 Tutorial
http://www.informatik.hu-berlin.de/~holz/SDLTutorial/SAMTutorialFinal.html SDL Forum
http://www.sdl-forum.org/SDL/index.htm
A propos de UML : UML Organization
http://www.uml.org
Les entreprises : Ericsson France
http://www.ericsson.fr Teleca France
http://www.teleca.fr Telelogic
http://www.telelogic.com Rational
http://www.rational.com
Ingénierie Concourante / Simultanée :Les technologies clés - Ingénierie simultanée
http://www.evariste.org/100tc/1996/f117.html
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 55 / 70
TTaabbllee ddeess IIlllluussttrraattiioonnss
Figure 1 Organisation du Groupe Ericsson (simplifiée) __________________ 11
Figure 2 Les applications du commutateur AXE 10 dans les différents réseaux
téléphoniques ___________________________________________________ 12
Figure 3 Organigramme de la R&D Ericsson / Teleca ___________________ 15
Figure 4 Spectre de mes activités ____________________________________ 17
Figure 5 Mes interlocuteurs ________________________________________ 19
Figure 6 Le processus de développement logiciel de l’AXE10 avec SDL _____ 27
Figure 7 Conception fonctionnelle avec SDL : diagrammes HMSC et MSC ___ 29
Figure 8 Maillage Projets – Métiers _________________________________ 34
Figure 9 Workpackages et Incréments ________________________________ 35
Figure 10 Relations entre SDL et autres langages_______________________ 50
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 56 / 70
AAnnnneexxeess
En annexe sont proposés quelques exemples de présentations SDL pour Ericsson et Teleca,extraits des modules suivants : - Introduction to SDL ;- MSC Basics ;- SDL Basics ;- Simulation with SDL ;- Validation with SDL.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 57 / 70
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 1
Introduction toSDL
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 2
History of SDL
1972 - CCITT study group
1976 - First Recommendation
1984 - Data and structure introduced
1988 - SDL reaches maturity as an FDT (Formal
Description Technique)
1992 - Object orientation introduced
2000 - Links to UML and improvement in the use
of SDL for implementation
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 58 / 70
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 3
SDL Application Areas
Hi Jane
Intelligent Networks
Datacoms
Network Management
Switching
Services
Automotive
Aerospace
UMTSAccess Networks
GSM
Terminals
Application Areas
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 4
Benefits of SDLSDL is:
A language of engineers Standardised Formal Able to maintain, analyse, verify, validate and simulate specifications and to generate code
SDL consists of: A graphical representation -> Higher Quality Different abstraction levels
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 59 / 70
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 5
Telelogic Tau
SDL Editor
Utilities Analyzer
Link ManagerViewers
OMEditor
State ChartEditor
(H)MSCEditor
Text Editor
Simulator
CodegeneratorOrganizer
Validator TTCNLink
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 6
MSCs (Message Sequence Charts) in SystemDevelopment
Requirements capture
Specification of use-case scenarios
Behaviour verification of SDL specifications
MSCs have several design-level uses:
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 60 / 70
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 7
An MSC Specification
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 8
Basic MSC
A graphical (and textual) trace and specification
language
Focuses on the communication behaviour
Message inter-exchange between communicating
entities and their environment
Standardised in ITU-T Recommendation Z.120
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 61 / 70
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 9
Basic MSCMSC SEIZURE
MCSEblockMCSEenvironment
IDLE
ProcessCreation
SEIZEMCSE
SEIZEMCSER
Instance KindInstance Head
Condition
Message
Action
Instance Timeline
Instance End
MSC Heading
environment
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 10
Inline Nesting and MSC Reference Expression
EXC:Error occursduring connection
FOAM MTAP
IDLE
APCONNECT
CONNECTED
OptInitiate_ Alarm
APERROR
APCONNECT
CONNECTED
APCONNECTED
APCONNECTED
1
1
2
2
exc
loop
OPT:Alarm is initiatedwhen connection fails
LOOP:Recurrentattempts to reconnect.
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 62 / 70
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 11
High Level MSC (HMSC)
A road map approach
Better overview of more complicated behaviour.
Shows how MSCs are related by conditions
Consists of references to other HMSCs and MSCs
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 12
HMSC Idle
UserRejected
UserAccepted
UnlockedReset
UnlockedTimeout
UnlockedUnclosed
DoorUnlocked
User codeIncorrect
Start
ConnectionPoint
MSCReference
End
TextSymbol
Idle
User codeCorrect
Idle
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 63 / 70
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 13
SDL language consists of ...
• AArchitecture
• BBehaviour
• CCommunication
• DData
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 14
Components of an SDL System
Process Processes are defined as nestedhierarchical state machines
System
The System is where all blocks areconnected to each other and to theenvironment
Block
Blocks are a set of processes andother blocks grouped together
Procedures may be recursivelyimplemented, they can be both local totheir process or global
Procedure
Procedure
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 64 / 70
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 15
System and Environment
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 16
Block Interaction
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 65 / 70
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 17
Block Level
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 18
Process Creation without and with Parameters
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 66 / 70
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 19
Input Queue of Signals, Save
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 20
Parameters in Input and Output Signals
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 67 / 70
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 21
Simple Predefined Sorts in SDL (1/ 3)
Boolean True or False
Character ‘a’, ‘-’, ‘P’, ‘2’, ‘%’
Charstring ‘abc 123’, ‘@%!?!$’
Integer -88, -2, 0, 5, 100000
Natural 5, 173, 100000
Real -2.354, 0.9834, 23.0
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 22
Executing a Simulation
Starting an SDT Simulator
Using the SDT Simulator User Interface
Tracing simulations
Executing a simulation
Sending signals
Viewing options
Setting Breakpoints
In this module the following basic functionality will bedescribed:
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 68 / 70
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 23
Tracing a Simulation
Show SDL Symbol
SDL Trace (SDL Editor) MSC Trace (MSC Editor) Text Trace (Log in Simulator UI)
Show Next / Prev SDL Symbol
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 24
The Coverage Viewer
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 69 / 70
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 25
Simulation vs Validation
Coverage of a Simulation Coverage of a Validation
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 26
Validation
Check the interfaces
Check process creation and termination
Check for deadlocks
Check for output errors
Check that variable ranges are respected
Check for unwanted implicit signal consumption
Check for loops
Validation is performed to:
Déploiement du Langage SDL dans les systèmes de réseaux de télécommunication
Formation d’Ingénieur – Maître 2003 Mémoire d’Activité Professionnelle - Sami Yurdakul 70 / 70
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 27
Controlling the State-Space by definingTest Values
. . . . . . . .
Integer=0 Integer=1Integer = Infinity Integer = Infinity
TELECA Sami Yurdakul Introduction to SDL Module 1. 1 - Slide 28
Exploration Algorithms
Exhaustive Exploration
Bit-State Exploration
Random-Walk
Power-Walk
The different Exploration Algorithms are automaticand are suitable for different stages of theValidation: