RapportRennerJ (1.9 Mo) - Rapport de stage Julien Renner

peaceevenΒιοτεχνολογία

4 Οκτ 2013 (πριν από 5 χρόνια και 3 μήνες)

150 εμφανίσεις

SOMMAIRE




INTRODUCTION

................................
................................
................................
....................

2

I.

PRESENTATION DE L’IN
STITUT PASTEUR

................................
..........................

3

A.

H
ISTORIQ
UE

................................
................................
................................
....................

3

B.

L’
INSTITUT
P
ASTEUR EN QUELQUES C
HIFFRES

................................
................................

4

1.

Organisation générale de l’institut Pasteur

................................
...............................

4

2.

Recherche

................................
................................
................................
...................

4

3.

Applications de la Recherche

................................
................................
.....................

6

4.

Le Réseau International des Instituts Pasteur et In
stituts associés

...........................

6

II.

PROBLEMATIQUE GENERA
LE DE L’UNITE DE BIO
-
SYSTEMIQUE
MODELISATION INGENIE
RIE

................................
................................
..........................

7

III.

REALISATION, IMPLEME
NTATIO
N ET TEST D’UN MODEL
E DE
PROCESSUS BIOLOGIQUE

DANS ROSERT


⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮
⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮⸮

9

A.

O
BJECTIF DU STAGE

................................
................................
................................
........

9

B.

C
ONCEPTS ET
M
ETHODES DES SYSTEMES

TEMPS
-
REELS

................................
................

11

1.

Présentation du langage de modélisation unifié

: UML pour RT

............................

11

2.

L’atelier de génie Logiciel Rose RT

................................
................................
.........

13

C.

M
ODELE BIOLOGIQUE

................................
................................
................................
....

20

D.

C
ONCEPTION

................................
................................
................................
.................

21

IV.

MODELISATION ET SIMU
LATION DU PROCESSUS
DE C
ONTROLE DE
LA MITOSE

................................
................................
................................
...........................

23

A.

D
ESCRIPTION GENERALE

................................
................................
...............................

23

B.

I
MPLEMENTATION

................................
................................
................................
.........

25

1.

Lancement de la simulation

................................
................................
......................

25

2.

Création d’une protéine (cycline B)

................................
................................
.........

27

3.

Création d’un complexe (cycline B/cdk1)

................................
................................

28

4.

Importation de protéines (à l’intérieur du complexe cycline B/cdk1)

.....................

29

5.

Condition de formation d’un complexe (cycline B / cdk1/ wee1)

............................

30

6.

Phosphorylation de cdk1 par wee1 (changement d’état)

................................
.........

32

7.

Destruction d’un complexe (Cycline B/cdk1/wee1)

................................
.................

33

8.

Activation de protéines (Cak et des Polo)

................................
................................

33

9.

L’activation de la cdk1

................................
................................
.............................

34

10.

Inhibi
tion par la p21

................................
................................
............................

34

C.

E
XECUTION DU MODELE

................................
................................
................................

34

V.

DISCUSSION

................................
................................
................................
.............

39

CONCLUSI
ON ET PERSPECTIVES

................................
................................
.................

41

BIBLIOGRAPHIE

................................
................................
................................
.................

43

ANNEXES

................................
................................
................................
...............................

46


2

Introduction

Ce stage de DESS s’est déroulé au sei
n de l’Institut Pasteur, à Paris, sous la
responsabilité de Magali Roux
-
Rouquié, Directeur de recherche CNRS dans l’unité
Structure Bio
-
Systémique


Modélisation Ingénierie
, et en collaboration avec un autre
stagiaire issu du
DESS de compétences complément
aire en informatique

d’Evry. Le but
de ce stage était de développer un modèle de représentation et de simulation du cycle
cellulaire à l’aide de la technologie UML


Real Time, qui est une extension du langage UML
développé pour représenter les systèmes en

temps réel. Nous avons pour cela utilisé le logiciel
Rose RealTime de la société Rational Software. Le fruit de ce travail à fait l’objet d’un article
présenté en annexe 2.


En effet, nous envisageons ici les systèmes biologiques comme des
systèmes
comple
xes
. Ceux
-
ci modifient continuellement le couplage entre leurs composants et sont
eux
-
mêmes modifiés en fonctionnant. Exprimé dans le paradigme systémique, ceci revient à
décrire un système par la fonction de ses composants (c'est à dire pour un état du sy
stème,
décrire les activités réalisées et les entités qui les réalisent), et leur évolution (décrire la
chronique des changements d’état en réponse aux signaux de l’environnement). Pour ce faire,
on doit disposer d’une notation adaptée à la description, à
la conception et à l’implémentation
des métamodèles conceptuels.


UML (Unified Modeling Language) permet une représentation graphique de la
structure
statique

(diagrammes de classe) et du comportement
dynamique

(diagrammes de
structure, diagrammes d’état
-
t
ransition, etc…) d’un système. Ceci est particulièrement
intéressant au vue de la complexité des systèmes biologiques.


Notre objectif est de développer un modèle basé sur un système biologique
relativement simple et bien décrit qui nous permette de démo
ntrer la pertinence de notre
approche. Nous nous basons sur un phénomène bien connu dans la régulation du cycle
cellulaire qui est celui de
l’entrée en mitose
. Il nous permet de modéliser plusieurs processus
essentiels en biologie comme

:




la création d’un

complexe ou sa destruction,



la phosphorylation, l’auto régulation,



les phénomènes d’activation et d’inhibition.


Ceux
-
ci seront développés dans la partie relative au modèle biologique.


*

* *


Je vais maintenant vous présenter l'institut Pasteur et l'uni
té de
Biosystémique

dans laquelle
s'est déroulé mon stage, puis mon travail dont j’ai articulé la description en trois parties

:


1.

Concepts et méthode des systèmes temps
-
réel

: UML pour RT et l’atelier de génie
logiciel Rose
-
RT


2.

Modèle biologique

: Motivati
ons

3.

Modélisation et simulation du fonctionnement du complexe MPF dans Rose
-
RT

.


Des annexes nous permettent de renseigner plus complètement certains points particuliers.


3

I.

Présentation de l’Institut Pasteur


A.

Historique


L'Institut Pasteur, fondé par décret

du 4 juin 1887, est inauguré le 14 novembre 1888.
Cette fondation privée, à but non lucratif, est reconnue d'utilité publique. Elle a été créé grâce
au succès d'une souscription internationale, pour permettre à Louis Pasteur d'étendre la
vaccination contr
e la rage, de développer l'étude des maladies infectieuses et de diffuser les
connaissances scientifiques. Très rapidement des
Pasteuriens

vont essaimer à travers le
monde, pour diffuser la vaccination contre la rage mais aussi la sérothérapie antidiphtéri
que,
la vaccination contre la variole selon le principe de Jenner, et pour étudier les caractères
particuliers de maladies exotiques et les soigner.


Dès la création de son institut, Pasteur réunit des scientifiques d'horizons divers. Les
cinq premiers ser
vices ont alors à leur tête deux normaliens : Emile Duclaux (Microbie
générale) et Charles Chamberland (Microbie appliquée à l'hygiène) ; un biologiste, Elie
Metchnikoff (Microbie morphologique) ; et deux médecins, Joseph Grancher (Rage) et Emile
Roux (Mic
robie technique). Un an après l'inauguration de l'Institut Pasteur, Roux mettra en
place le premier enseignement de microbiologie jamais dispensé au monde, intitulé alors
"Cours de Microbie technique". Très rapidement, des chercheurs vont parcourir le mond
e,
pour appliquer et transmettre la "
méthode pasteurienne
" et pour étudier les caractères
particuliers de maladies exotiques. On remarque que l'institut Pasteur se place dès sa création
dans une optique de pluridisciplinarité et de collaboration.


Ainsi, p
arallèlement à l'essor de l'Institut Pasteur, se constituera le Réseau
international des Instituts Pasteur et Instituts associés qui compte aujourd'hui quelque 20
établissements implantés sur les cinq continents.


L'Institut Pasteur fut l'un des berceaux d
e la Microbiologie, de l'Immunologie et
de la Biologie moléculaire.


Depuis l'origine, les Pasteuriens ont apporté des contributions majeures dans les
connaissances sur les structures et les fonctions du vivant, sur les agents infectieux et les
maladies qu
'ils provoquent. Leurs apports concerneront notamment la rage, la peste, la
diphtérie, le tétanos, le typhus, la fièvre jaune, la tuberculose, la poliomyélite, ou encore
l'hépatite B et le Sida. Des chercheurs s'illustreront par la découverte des anatoxine
s, du BCG,
des sulfamides, des anti
-
histaminiques. D'autres joueront un rôle fondamental dans la
naissance de la biologie moléculaire ainsi que dans celle du génie génétique.


4

B.


L’institut Pasteur en quelques chiffres




Effectifs travaillant sur le campus p
arisien : 2500 personnes (chercheurs, ingénieurs de
recherche, administratifs, techniciens).



En tout, 63 nationalités différentes sont représentées sur le campus.


200 chercheurs appartiennent à des organismes publics de recherche et sont directement
rémun
érés par le CNRS, l'INSERM, l'INRA…




Budget 2002 : 174 millions d'euros

Part prévisionnelle des revenus dans le budget 2002 :

-

Revenus des activités propres : 43% (redevances industrielles, ventes et services)

-

Dons, legs et produits du patrimoine : 26%

-

Subvention et contrats de services avec l'Etat : 31%



Directeur Général : Philippe Kourilsky, depuis le 1
er

janvier 2000.



1.

Organisation générale de l’institut Pasteur


Voir figure 1 sur la page suivante.


2.

Recherche




130 unités de recherche en biologie
, réparties dans 12 Départements, avec une priorité
pour la lutte contre les maladies infectieuses (microbiologie) :

o

Maladies virales (hépatites, grippe, Sida, rage, poliomyélite, fièvres
hémorragiques..),

o

Maladies bactériennes (tuberculose, coqueluche, mé
ningites, choléra, maladies
diarrhéiques...)

o

et Maladies parasitaires (paludisme...).


La recherche porte également sur d'autres pathologies comme certains cancers, des maladies
génétiques, neuro
-
dégénératives, et l'allergie.

Principaux domaines de recherc
he

: microbiologie, immunologie, biologie moléculaire,
neurobiologie, génomique et post
-
génomique.




Parmi ses unités de recherche, l'Institut Pasteur compte également :

o

22 Centres Nationaux de Référence (sur les 39 existants en France) dont 1
associé à la
Faculté de Médecine Necker
-
Enfants Malades

o

10 Centres Collaborateurs O.M.S.


5


Figure 1

: Organisation générale de l’institut Pasteur.


6

3.

Applications de la Recherche




330 brevets prioritaires (dont 39 nouveaux déposés en 2001)



20

programmes de Recherche et Développement en collaboration avec un partenaire
industriel



165 contrats de licences et sous
-
licences (dont 30 signés en 2001) et 9 contrats de
vente de matériel biologique



Des partenaires privilégiés

o

pour les vaccins : Aventis

Pasteur

o

pour le diagnostic : Bio
-
Rad

o

pour l'hygiène : Procter et Gamble

o

pour la protéomique fonctionnelle (maladies infectieuses) : Hybrigenics



Créations d'entreprises de biotechnologies :



Enseignement : 215 élèves en 2001, de 28 nationalités, hautement

sélectionnés. Les
quinze Cours de l'Institut Pasteur sont des enseignements de niveau 3ème cycle
universitaire comprenant des travaux pratiques très développés. Certains donnent lieu
à la délivrance d'un diplôme inter
-
universitaire et plusieurs font parti
e des
enseignements d'écoles doctorales d'universités parisiennes.


4.

Le Réseau International des Instituts Pasteur et
Instituts associés




21 instituts répartis sur les cinq continents



un effectif total de 8500 personnes.


Les instituts du réseau, parmi le
squels figure l'Institut Pasteur de Paris, sont fortement
impliqués dans la santé publique des pays où ils sont implantés, en accord avec les autorités
sanitaires locales : biologie médicale, vaccinations, veille microbiologique... La plupart sont
reconnus

comme centres de référence au niveau national ou dans le cadre de l'O.M.S.
L'enseignement est une autre mission majeure des instituts du réseau qui forment de
nombreux stagiaires des pays concernés ou étrangers. Les recherches qu'ils mènent, sur le
terrai
n comme au laboratoire, concernent les maladies infectieuses (grippe, sida, arboviroses,
paludisme, peste…) qui affectent leur pays d'accueil. A travers ce réseau, l'évolution de
nombreuses maladies à travers le monde est minutieusement suivie par la commu
nauté
pasteurienne.




7

II.

Problématique générale de l’unité de Bio
-
Systémique Modélisation Ingénierie


Le stage s’est déroulé dans la structure

«

Bio
-
Systémique Modélisation Ingénierie
»
(BSMI) qui est une unité récente de l’Institut Pasteur, créée en 2001, e
t composée de deux
directeurs de recherche

; Magali Roux
-
Rouquié, directeur de recherche
-
CNRS en assure la
responsabilité. Pendant la période de mon stage, l’unité a accueilli un autre stagiaire sur le
même sujet, Grégory Sautejeau, issu du DESS
compétence

complémentaire en informatique

d'Evry.

L'activité de
l'unité Biosystémique Modélisation Ingénierie
, s'établit sur une
problématique de
modélisation des processus

considérant les systèmes biologiques comme
des systèmes réactifs.

Cette démarche s’inscrit d
ans le cadre général du paradigme systémique, centré sur
l’action, et qui décrit l’activité d’une entité par la trajectoire de ses états, les transitions d’un
état à un autre intervenant en réponse à un message de l’environnement interne ou externe de
l’en
tité. Cette conception est très pertinente en biologie post
-
génomique, alors qu’il convient
désormais de décrire et de comprendre le fonctionnement des composants des systèmes
vivants. Le paradigme systémique et le formalisme qui lui est associé permettent

de décrire
une entité biologique en évolution dans son environnement et soumise à des évènements
externes et internes qui conditionnent son comportement, lequel affecte à son tour son
environnement. Cette conception est pertinente pour une représentation
dynamique des
fonctions biologiques décrites classiquement, dans le paradigme analytique classique, par des
substantifs verbaux [M. Roux
-
Rouquié, J.
-
L. LeMoigne, C. R. Biologies 325 (2002) 419
-
430].

Différents formalismes permettent de décrire les états d
’un système et son évolution,
ils sont continus ou discrets, statiques ou dynamiques, déterministes ou stochastiques. La
spécification des
systèmes temps
-
réel

peut être regroupée en deux familles de formalismes

:
d'une part, les méthodes algébriques et log
iques en général spécifiques à une classe de
problèmes (programmation par contraintes, équations différentielles cinétiques, etc.) et d'autre
part, les langages graphiques formels tels que les réseaux de Pétri ou "Unified Modeling
Language" (UML) qui perme
t de modéliser sans les dissocier la
structure
, la
fonction

et
l'
évolution

d'un système. Au cours d’une précédente étude, l’équipe de recherche a montré
que UML répondait aux critères d’un langage de modélisation systémique

: diagramme d’état
-
transition, p
rise en compte de l’environnement, etc [M. Roux
-
Rouquié et al., International
Conference
T
HE
S
CIENCE OF
D
ESIGN
,

Software design,

INSA
-
Lyon, 15
-
16 March (2002), In
press].


8

Ces travaux permettent d'exprimer explicitement et d'organiser les différentes vues

sous
lesquelles un système biologique peut être appréhendé, vue statique des composants, vue
synchronique des états, vue diachronique des changements d'états. La modélisation d'un
processus (cycle cellulaire, voies de signalisation, etc.) résulte de l'art
iculation de ces trois
vues. La mise en œuvre de ce projet est réalisée dans un cadre fortement interdisciplinaire et
se conduit au travers de plusieurs collaborations avec :


-

Le LAMSADE (CNRS) et la société RATIONAL Software

-

le consortium international
EXPRESSION PROFILE INTERNATIONAL
CONSORTIUM (EPIC, partenaires : CNRS & Systems Biology Institute, (Seattle,
USA)

-

l'ARC
-
INRIA : Calculs de Processus et Biologie des Réseaux Moléculaires
(partenaires : INRIA, CNRS et la société HYBRIGENICS)


En outre, not
re projet participe à plusieurs manifestations d'intérêt dans le cadre

:


-

du 6e PCRDT

-

MOBYDIC : Modelling Language for Systems Biology: Analysis, Simulation,
Comparison, and Prediction (PI)

-

STAGSIM : System
-
Theoretical Analysis of Genomic and Signalling
Models (PI)

-

BITES : Building a Bioinformatics Integrated Toolbox to Enable Systems Biology
(réseau d'excellence)

-

ESBIGH : European Systems Biology Initiative; Genomic in the service of Health
(super réseau d'excellence)


9

III.

Réalisation, implémentation et t
est d’un modèle de
processus biologique dans RoseRT



A.

Objectif du stage


L’objectif du stage est d’évaluer la pertinence des concepts et des méthodes des
systèmes temps
-
réel, pour la description et la représentation des processus biologiques, en
particulie
r, la prise en compte de la création dynamique d’objets, la modification du
comportement d’un objet en fonction des messages émis par son environnement externe ou
interne, le traitement d’évènements concurrents, synchrones ou asynchrones, etc.

A ce stade,

il ne s’agit donc pas de comparer différents langages de modélisation temps
-
réel,
mais de sélectionner, sur des critères explicitables, un outil parmi les quelques outils
disponibles [notamment, Esterel (Esterel Technologies) et Rapsody (Ilogix)] qui perm
ettent
de conduire ce test.

Pour ce faire, nous avons sélectionné l’atelier de génie logiciel, Rose
-
RT


(Rational
Software), sur la base des critères ci
-
après

:

1.

Utilise le langage UML qui fait l’objet d’un standard (UML

:Unified Modeling
language), élaboré

par l’OMG (Object Modeling Group)

;

2.

Les spécifications du langage UML
-
RT (UML for Real
-
Time) sont détaillées
dans de nombreux documents

;

3.

Les outils développés autour de Rose
-
RT


sont dotés d’autant de fonctionnalités
utiles et qui ne seront pas à dévelop
per (par exemple, le RunTimeSystem).

4.

Rose
-
RT


s’appuie sur la modélisation graphique développée dans UML

; ces
outils graphiques permettent de produire des descriptions qui pourront être
«

partagées

» par des biologistes et des informaticiens. C’est d’aill
eurs dans l’objectif
d’assurer une meilleure adéquation entre la conception (modèle conceptuel) et le
logiciel effectivement réalisé que ces outils graphiques ont été conçus.


Déroulement du stage


La première partie du stage a consisté à appréhender le mo
dèle biologique. Pour cela
nous nous sommes appuyé sur les recherches de Kurt W. Kohn (Annexe 5) qui à établit une
carte moléculaire des interactions dans le cycle cellulaire des mammifères et le système de
réparation de l’ADN

ainsi que sur de nombreuses p
ublications sur le sujet.


Notre unité étant en collaboration avec des informaticiens et des logiciens dans le
cadre de l’ARC
-
INRIA sur les calculs de processus et la biologie des réseaux moléculaires,
nous avons participé à plusieurs réunions et groupes d
e travail durant lesquelles nous avons
présenté le cycle cellulaire, notamment ses régulations et les interactions protéiques.

Les principaux axes de recherche de l’ARC sont

:



Axe 1: Définir une base d'exemples de processus biomoléculaires, ainsi qu'une
t
axinomie des problèmes ouverts en représentation formelle qui se posent dans la
modélisation de ces processus.



Axe 2: Comparer différentes modélisations des mécanismes de la base d'exemples
dans différents calculs de processus, à l'aide de critères corresp
ondants aux points
délicats du cahier des charges identifiés par l'axe 1


10



Axe 3: Proposer de nouveaux calculs de processus adaptés au domaine bio
-
moléculaire, et réaliser des implémentations prototypes.

Nous avons, parallèlement, contribué à la réflexion su
r le modèle informatique et sa
réalisation, à l’aide du logiciel Rational Rose RealTime, en compagnie de Nasser Kettani
(directeur marketing de Rational Software) et de Camille Rosenthal Sabroux (Lamsade, Paris
Dauphine). Ceci nous a permis d’avoir à une p
remière approche du modèle, en essayant de
trouver les solutions les plus en adéquation avec la réalité biologique. Cela nous a permis
également de nous familiariser avec les concepts objets temps réel utilisés par Rational.


Un stage de formation chez Rat
ional Software sur le sujet «

Développement des
logiciels temps réel avec UML et Rational Rose RealTime

» nous à permis de maîtriser le
logiciel et d’acquérir quelques bases en modélisation temps réel. A partir de ces
connaissances, nous avons réussi à réa
liser le modèle que nous avions conçu dans un premier
temps en prenant en compte les contraintes liées à la biologie et à l’informatique.


11

B.

Concepts et Méthodes des systèmes temps
-
réels


Un système temps
-
réel est un
système qui traite des informations en ré
pondant à des
stimuli internes et externes pendant une période de temps bien définie
.

On parle de temps réel non seulement quand le traitement des données suit très rapidement
leur acquisition mais aussi lorsque il faut traiter le comportement d’
objets en
nombre très
élevé et variable
.

Pour un système temp
-
réel, l’exactitude des réponses dépend à la fois de la logique mise en
œuvre mais aussi de la rapidité des réponses, l’absence de réponse pouvant être aussi
dommageable qu’une réponse erronée.

Les système
s temps
-
réel sont généralement des systèmes complexes composés de très
nombreux éléments en interactions et qui doivent s’exécuter, en temps réel, avec une sécurité
et une fiabilité dans leur fonctionnement. Une autre propriété essentielle des systèmes tem
ps
-
réel, est leur prédictibilité

; c’est pourquoi ils sont associés à des outils de simulation qui
permettent de les tester et les valider.


Les contraintes de fiabilité des systèmes temps
-
réel ont orienté l’évolution des
méthodes de notation de ces systèm
es, de la spécification informelle en langage naturel vers
des approches formelles

; citons notamment

:


-

Les
diagrammes Etat
-
transition

(machine à états
-
finis, automates à états
-
finis) dont
le concept a été développé par Stephen Klein dans les années 60 po
ur la
modélisation de tous systèmes informatiques, y compris les systèmes concurrents
et les systèmes temps
-
réel (Stavecharts, D. Harel , 1987).

-

Les
réseaux de Pétri

développés il y a plus de 30 ans par C. A. Petri pour la
modélisation des systèmes concurr
ents et les systèmes temps
-
réel.

-

Le
calcul de systèmes communicants

(
CCS

: Calculus of Communicating Systems)
développé par Robin Milner (EdCam) dans les années 80.


Dans cette étude, nous avons appliqué le formalisme des diagrammes d’états
-
transition pour

décrire, représenter et simuler un processus biologique

:
le contrôle de l’entrée en mitose
par le complexe MPF
.


1.

Présentation du langage de modélisation unifié

:
UML pour RT


Je vais rappeler quelques notions de base essentielles sur les systèmes orien
tés objet,
tous ces concepts sont évidemment présents dans notre modèle. (tiré de

: C. Rosenthal
-
Sabroux, N. Kettani et al., .
De Merise à UML
, Ed. Eyrolles, Paris 1998)


UML est un langage de modélisation fondé sur les concepts orientés objet qui sont nés
il y a plus de trente ans

; UML n’est donc pas à l’origine des objets

; néanmoins, il en
constitue une étape majeure, dans le sens où il unifie les différentes approches et en donne
une définition plus formelle.


Pour bien comprendre le langage, il est do
nc nécessaire de commencer par un rappel
général de ces concepts. Cette présentation est très brève et ne prétend pas couvrir tous les
concepts. Seuls les quatre concepts fondateurs sont introduits

:
Objet
,
Classe
,
Abstraction
,
Encapsulation

et
Composant.


12

a)

Système orienté objet


L’approche orientée objet est fondée d’abord sur le principe suivant

: tout système
orienté objet est en fait une société d’objets qui coopèrent. Pour coopérer, les objets utilisent
des messages qu’ils s’envoient entre eux par divers

mécanismes qui dépendent de
l’environnement de mise en œuvre.

Tout système au sens large avec un contour bien défini peut faire l’objet d’une modélisation
orientée objet. Il peut s’agir d’une entreprise, d’une société quelconque (humaine, animale...),
d’u
n logiciel, d’un système informatique ou dans notre cas d’un système biologique.


b)

Objet


Un objet est un membre d’un système orienté objet. Un objet possède une identité, un
état et un comportement. Les objets sont donc des éléments d’un système défini par

son
périmètre dans un domaine particulier et non pas des entités qui existent en dehors de tout
domaine.

Un objet est donc défini dans son domaine par

:




Une
identité

qui constitue le moyen d’identifier l’objet par rapport aux autres objets du
système. C
haque objet dans un système doit avoir une identité (Pour nous

: RTActorId
correspond à la référence de l’objet).



Un
comportement

qui définit la manière dont l’objet agit et réagit aux divers messages
qui lui parviennent de son environnement (Dans notre mo
dèle les changements d’état).



Un
état

qui définit l’une des possibilités dans laquelle un objet peut se trouver à un
instant donné de sa vie (Exemple figure 11

: diagramme d’état de la
Cdk1
).


c)

Classe


Dans la description d’un problème réel, il est impossib
le de décrire tous les objets de
ce domaine. Les classes sont un moyen pour grouper des objets qui présentent une structure
commune et un comportement commun, en un mot des objets qui se ressemblent. Ce
regroupement relève de la problématique de la classif
ication qui est particulièrement bien
décrite par G. Booch dans [Booch 94]. Une classe est donc une abstraction qui décrit
plusieurs objets. La relation qui existe entre une classe et ses objets est appelée
«

instanciation

».

Une classe active est une clas
se dont les instances sont des objets actifs. Une classe active
représente un flot de contrôle indépendant alors qu’une classe normale (passive) ne met pas
de flot en application.


d)

Abstraction


L’abstraction constitue un des piliers de l’approche orientée
objet. On peut en donner
deux définitions qui se complètent

:




processus

consistant à identifier une entité en mettant en évidence ses caractéristiques
pertinentes du point de vue de son utilisation.



caractéristiques

essentielles d’une entité qui la distin
guent de tous les autres types
d’entités. Une abstraction définit une frontière relative à la perspective de
l’observateur.



13

Le travail essentiel du concepteur consiste donc à appliquer un bon processus
d’abstraction pour construire de bonnes abstractions.

Cette démarche d’abstraction aboutit
à construire des systèmes robustes face aux évolutions

; ce qui en constitue le point
fondamental. La molécule de
cycline

pour un biologiste structural est considérée comme
un assemblage d’atomes dans l’espace, alors q
ue le biologiste moléculaire le considère du
point de vue de son rôle dans le cycle cellulaire.




Encapsulation


L’encapsulation accompagne l’abstraction. L’encapsulation permet de présenter une
abstraction à son observateur (son client, son utilisateur) de

manière à ne voir justement que
les caractéristiques essentielles et surtout à ignorer les détails de sa réalisation.
L’encapsulation permet donc de décrire une abstraction sous forme d’une partie visible
appelée «

interface

» et d’une partie cachée appel
ée «

implémentation

».




Composants


Développer un système en assemblant des composants existants (comme construire un
bâtiment avec du préfabriqué) au lieu de fabriquer chaque brique de base est une idée qui a
fait son chemin. Les concepts sous
-
jacents ne
sont pas nouveaux

; il est possible de dire
maintenant qu’ils sont opérationnels

; ce qui révolutionne définitivement la manière dont on
développe les systèmes logiciels. Cette révolution est équivalente à l’introduction des
microprocesseurs dans l’industr
ie des ordinateurs.

Un composant est un élément binaire qui expose aux autres composants du système (ses
clients) une interface qui leur permet de dialoguer avec le composant en question. Cette
interface est un contrat qui définit la manière d’utiliser le

composant.

Le concept de composant est encore plus riche et plus intéressant que celui de classe car la
classe est de plus faible granularité que le composant. Le composant implémente plusieurs
classes.


2.

L’atelier de génie Logiciel Rose RT


L’atelier de g
énie Logiciel Rose RT a été créé exclusivement pour le marché des
systèmes embarqués et permet d’élaborer, concevoir, exécuter, tester, observer et débuguer
des applications sans jamais quitter l’environnement de développement temps réel. Son
utilisation e
n biologie est une nouveauté et une initiative de l’unité de
Biosystémique
.

Les concepts mis en œuvre dans rose RT sont ceux de UML pour RealTime avec les solutions
suivantes

:

a)

Capsule


Les systèmes en temps réel sont basés sur la notion d’objets actifs.
Dans Rose Real
Time, ces objets sont décrit par leur structure et par leurs états (Figure 2).


Le
diagramme de structure

définit la
notion de
capsule
. Il indique les éléments
d’interface (
ports
), et éventuellement
d’autres
capsules

dites
englobées
, ainsi
que
leurs connections au reste de la
capsule
.


Figure 2

: Représentation de la capsule d’une classe active


14

b)

Port


L’existence de
ports

permet «

d’isoler

» la
capsule

et de traiter de façon asynchrone les
messages qui arrivent. Un
port

est toujours typé par

un
protocole
.


Il existe différents types de
ports

(Figure 3)

:




Les
ports

publics

sont placés sur la limite de la
capsule

à laquelle ils appartiennent et
permettent de communiquer avec l’extérieur et de transmettre des messages.


a.

Les
ports

terminaux

son
t des
ports

publics qui servent à communiquer
directement avec la
capsule

par l’intermédiaire de sa machine à état.


b.

Les
ports

relais

sont des
ports

publics, ils servent à communiquer avec les
capsules

internes. Ce
port

n’est pas relié à la machine à états

de la
capsule

englobante
.




Les
ports

privés

sont internes à la
capsule

et assurent toutes les communications
internes.




Les
ports

"

wired

" (avec connecteur) sont reliés à la machine à état de la
capsule

à
laquelle ils appartiennent.




Les
ports
"

unwired

" (sans connecteur) non reliés à une machine à état, sont utilisés
pour se connecter à une librairie de service offerte par Rose RT (Run Time System).



Figure 3

: Les differents types de ports dans un diagramme de structure



15

L
e Run Time System de Rose Real Time offre cinq types de services (Figure 4)

:




un service de
temps

(génération d’événements temporels),



un service
d’exception
,



un service de
log

pour imprimer dans la console DOS à l’exécution,



un service de
frame

qui perme
t de créer et de détruire dynamiquement des
capsules
.



un service de
communication

utilisé pour l’envoi des messages entre les
capsules.


Pour utiliser les quatre premiers services, il suffit de les déclarer à l’intérieur d’une
capsule

(
ports

privés) et sa
ns connecteur (
port

unwired).



Figure 4

: Les services offerts par le Run Time System de Rose Real Time.


c)

Cardinalité



On peut répliquer une
capsule

ou un port en leur attribuant une cardinalité (Figure 5).
Si un
port

est répliqué, on peut envoyer un me
ssage sur toutes ses instances (broadcast) ou sur
une seule qui sera spécifiée.




Figure 5

: Capsules et ports répliqués.




16

d)

Protocole


Un
protocole

est une classe particulière, c’est une sorte de "

contrat

" établi entre les
capsules

et spécifiant les m
essages qui peuvent être échangés entre elles (Figure 6). Pour
communiquer, deux
ports

doivent être typés par le même
protocole
, mais être conjugués, c'est
-
à
-
dire que les messages entrant de l’un sont les messages sortant de l’autre et inversement.



Figu
re 6

: Représentation d’un protocole dans le diagramme de classe.


e)

Capsule englobante


Une
capsule

peut contenir une ou plusieurs
capsules

(Figure 7). Celles
-
ci peuvent être
présentes dès la création de la
capsule

englobante

ou bien, apparaître plus tard,
à un moment
donné de la simulation. Dans ce cas, elles sont créées
dynamiquement
, on dit qu’elles sont
incarnées
. Elles peuvent être
importées
, dans ce cas elles ont déjà été créées et on importe
simplement leur référence. Dans les
diagrammes de structure
,

ces différences sont symbolisées
pour les
capsules

incarnées

par des rectangles hachurés, pour les
capsules

importées par des
rectangles gris foncé

; un rectangle gris clair représente une
capsule

englobée

sans référence à
son mode de création.



Figure
7

: Les différentes capsules internes



17

i)

Composition



Si plusieurs
capsules

sont présentes à l’intérieur d’une autre
capsule
, il y a une
relation de
composition

entre la
capsule

englobante et ses
capsules

internes (Figure 8). A la
destruction de la
capsule

englobante, les
capsules

englobées seront détruites.





Figure 8

: Relation de composition entre les capsules internes et la capsule englobante, dans le
diagramme de structure (gauche) et dans le diagramme de classe (droite)


ii)

Agrégation



Si les deux
capsules

sont importées, il n’y a alors qu’une relation
d’agrégation

(plugin) entre les
capsules

internes et la
capsule

englobante. La destruction de la
capsule

englobante ne détruit pas ses
capsules

englobées (Figure 9).




Figure 9

:
Relation d’agrégation entre les capsules internes et la capsule englobante, dans le
diagramme de structure (gauche) et dans le diagramme de classe (droite).



18

f)

Machine à état d’une classe active


Le comportement d’une classe active est défini par une machin
e à états. Dès la
création de l’objet, représenté par son
diagramme de structure

(capsule), une transition place
l’objet dans son état initial (Figure 10).








Figure 10.

Représentation de la capsule (b) d’une classe active (a) et

de son diagramme d’états (c).


(a)

(b)

(c)


19

Pour pouvoir changer d’état, un objet devra recevoir un message approprié lui
permettant d’effectuer une transition

; un état pourra comporter des sous états (symbole en bas
à droite de l’état englobant, figure 11, flèche r
ouge). Si le déclencheur n’est pas spécifié, ce
qui ne devrait jamais être le cas, la flèche de la transition est interrompue par deux traits
verticaux. Une transition peut être soumise à une condition de garde qui l’emmènera vers un
état différent selon l
e résultat de l’évaluation (état différent si condition est vraie ou fausse).


Des actions peuvent être effectuées à différents moments (Figure 11, flèches bleues)

:


-

en entrée d’état

-

en sortie d’état

-

lors d’une transition entre deux états

-

en entrée et en
sortie d’état




Figure 11

: Diagramme d’état avec vue sur les sous
-
états de l’état englobant.


20

C.

Modèle biologique


Le modèle biologique retenu concerne une série d’étapes bien caractérisées du
cycle
cellulaire

qui assure un contrôle essentiel autorisa
nt la
division d’une entité cellulaire

en
deux cellules filles.

Les entités sont des protéines (
cycline B

et
cdk1
) qui s’associent pour créer un
complexe (complexe MPF) qui pourra être activé par des modifications successives
(phosphorylations) qui donnent

lieu à des changements d’états

. Au cours de ces
modifications,
le complexe acquiert des comportements différents

de celui de ses
composants.


Régulation du cycle cellulaire pour l’entrée en Mitose.


La régulation de l’activité du MPF nécessite sa modifi
cation mettant en jeu plusieurs
protéines (Figure 12).




Figure 12

: Activation du MPF


Une kinase (
TyrK15

ou kinase
Wee1
) phosphoryle
Cdk1

sur la tyrosine 15 (acide
aminé

: Y15). Chez les eucaryotes supérieurs, une autre kinase associée à la membrane
nu
cléaire phosphoryle
Cdk1

sur la thréonine 14 (T14). Ces phosphorylations inhibent
l'activité kinase du complexe MPF et empêchent une entrée prématurée en division de la
cellule (mitose).

Ces inhibitions peuvent être levées par expression de la protéine Cdc
25, une
phosphatase qui déphosphoryle les positions T14 et Y15.

Toutefois, la levée de ces inhibitions n’intervient qu’après complète
réplication

de
l'ADN, un mécanisme active TyrK15, et inhibe Cdc25 évitant toute entrée prématurée en
phase M (mitose).

En
suite, une thréonine kinase
CAK

(Cdk activating kinase, constituée d'une sous
-
unité
catalytique
Cdk7

et d'une sous unité régulatrice de type
cycline

H), phosphoryle
Cdk1

sur la
Thréonine 161
.
Cdk1

est alors activée tout autant qu'elle est associée à une
cy
cline

mitotique.
Par ailleurs, le MPF devenu actif suractive par phosphorylation la Cdc25 et inhibe la kinase
Tyr15.



21

Ces mécanismes autocatalytiques expliquent le passage très brutal en phase M tout en
maintenant un contrôle de sécurité interdisant le pa
ssage en M si la
réplication

était
incomplète. Cela montre le haut niveau de contrôle de l'entrée en phase M et de rétrocontrôle
de l'achèvement de la phase réplicative.

L'activation du MPF initie les évènements successifs de la mitose. En effet, la kinase

Cdk1

du complexe MPF actif phosphoryle de nombreux substrats : histone H1, lamine
nucléaire, protéines du fuseau, protéines du nucléole…, ce qui permet l'entrée en mitose et
son déroulement ultérieur.
Cdk1

peut activer en cascade d'autres protéines kinase
s, lesquels
vont à leur tour phosphoryler d'autres cibles.

La
cycline

Cdk1

associée à une
cycline

mitotique (B)
, constitue le véritable chef
d'orchestre des phosphorylations déclenchant les évènements mitotiques.


Une description plus détaillée du cycle ce
llulaire est donnée dans l’annexe 1.


D.

Conception


Pour mieux comprendre les relations entre les différentes classes actives, passives et
protocoles, voici quelques diagrammes de classe.


Pour commencer, un diagramme général (Figure 13) nous montre le class
e «

cellule

»,
qui est la capsule englobante délimitant le système. C’est pour cette raison que toutes les
autres capsules ont une relation d’agrégation envers celle
-
ci. On remarque aussi que
l’information contenue dans la classe passive «

ListeAdresseProt
eine

» est accessible à
plusieurs capsules.




Figure 13

: La capsule englobante cellule.


Notre cellule est formée de différentes classes actives et passives. Les classes actives sont en
relation par l‘intermédiaire de protocoles. La capsule computation
(Figure 14) est composée
de trois capsules et de deux protocoles.



22


Figure 14

: La computation, ses capsules englobées et leurs protocoles de communication.


Comme le montre la figure 15 un complexe comme le complexe
cycB

/
cdk1

est
composé de deux molécu
les (relation de composition) et peut entrer en complexe avec
d’autres molécules pour former des complexes ternaires (ici avec
cak
). Ces complexes doivent
avoir accès à des informations comprises dans des instances de classes passives avec
lesquelles elles

entretiennent une relation. Les classes passives servent à stocker, organiser et
partager l’information.



Figure 15

: Relations de composition entre les complexes et les molécules qui les forment.


23

IV.

Modélisation et simulation du processus de
contrôle de l
a mitose


A.

Description générale


Notre modèle vise à décrire l’activation du complexe MPF
cycline B
/
cdk1

dans une
cellule eucaryote au cours du cycle cellulaire.


La cellule est la
capsule

englobante principale à l’intérieur de laquelle se trouve
l'ensembl
e du système et où auront lieu les créations et destructions de protéines (Figure 16).

A l’intérieur de la
capsule

«

cellule

» simplifiée, il faut distinguer:




les
capsules

représentant les protéines (
cycline, cdk1, wee1, etc
.) et les
complexes protéiques
(
cycline/cdk1, cycB/cdk1/p21, etc
.),



les
capsules

représentant des processus cellulaires tangibles (
transcription
,
traduction
,
réplication
, etc.) ou intangibles (computation), ces derniers figurant
des activités de récepteurs (information_follow_up), de c
ontrôleurs
(concentration follow_up, etc.) et de processeurs (complex_follow_up).


Les processus de
transcription

et de
traduction

sont regroupés en une seule
capsule

appelée «

protein_production

» qui simule la fabrication d’une protéine. Cette
capsule

et

la
capsule

«

réplication

», ont été très simplifiées. Ce sont en fait des boîtes noires dont on
simule le fonctionnement sans le décrire compte tenu de leur complexité.


La
capsule

«

computation

» est le centre de décision de la cellule, elle regroupe par

l’intermédiaire de
sous
-
capsules
, les mécanismes intracellulaires qui permettent

:




la réception et la répartition d’un message à l’intérieur de la cellule

:
«

Information_follow_up

»



le processing (formation et destruction) d’un complexe protéique ainsi
que la
vérification des ressources correspondantes: «

complex_follow_up

»



le contrôle de la concentration : «

concentration_follow_up

»


Afin de pouvoir manipuler les
capsules

représentant les protéines et les complexes
protéiques au cours de la simulation
, il est indispensable de pouvoir récupérer et stocker leurs
références. En effet, celle
-
ci sont nécessaires pour

:




importer des protéines à l’intérieur d’un complexe.



détruire spécifiquement une
capsule

donnée


Lorsqu'une
capsule

est créée, l'opération
d’incarnation renvoie la référence de celle
-
ci qui sera
stockée dans une pile spécifique. Chaque protéine est indépendante, elle possède son propre
diagramme d’états

et une référence unique.


24

Figure 16

: Diagramme de structure de la capsule «

cellule

».




25

B.

Implémentation


La cellule peut communiquer avec son environnement extérieur par l’intermédiaire de
son
port

public «

RExCell

», équivalent à un récepteur extracellulaire en biologie (Figure 16).

Cette
capsule

gère l’arrivée de
s messages extracellulaire et de certains messages
intracellulaires. Elle permet de les rediriger à l’intérieur de la cellule suivant le type de
message reçu , comme une demande de
transcription
, une information sur l’état
d’avancement de la
réplication

ou

sur l’état de l’ADN (s’il y a eu une mutation).


1.

Lancement de la simulation


Lorsque la simulation débute, certaines
capsules

existent au démarrage (capsules non
hachurées), se sont

:


-

la computation qui contient

o


«

complex_follow_up

»

o

«

concentration_fo
llow_up

»

o

«

information_follow_up

»

-

la protéine_production

-

la replication


Les autres sont créées dynamiquement. Il s’agit des protéines et des complexes que nous
allons manipuler (capsules hachurées). Certaines protéines sont créées dès le lancement, on
c
onsidère qu’elles sont présentes tout au long du cycle.


-

cdk1

-

wee1

-

cak

-

polo

-

cdc25c


Les autres apparaîtront et disparaîtront au cours du cycle:


-

la cycline B

-

tous les complexes (agrégation entre deux ou plusieurs objets)

-

la p21


Lors de la création de ces
protéines, leurs références sont stockées dans des piles spécifiques à
chaque type de protéine dans le but de pouvoir gérer les différentes ressources.



26



Code pour la création des
cdk1

et le stockage de leurs références


La référence est de type «

RTActorI
d

». On utilise une variable pour récupérer la valeur
de cette référence au moment de la création d’une
capsule
, ici
cdk1
. On va créer un nombre
fixé de protéines à l’aide du service de «

frame

» en utilisant la méthode «

incarnate

». Les
références sont s
tockées dans des piles spécifiques à chaque état d’une protéine ou d’un
complexe. Toutes les piles sont stockées dans une classe passive appelée «

liste_piles

».



RTActorId a;


for (int I = 0 ; I < MAX_cdk1 ; i++)
//création d’un nombre fix
é de cdk1


{


a=frame.incarnate(cdk1);
// Service de frame



liste_piles.pool_cdk1.empile(a);
// on empile la référence dans la pile appropriée

}


La création d’une
capsule

cdk1

entraîne au niveau de son
diagramme d’état

la

transition
«

initial

» qui lui permet de se trouver dans l’état «

cdk1_free

» (Figure 17). Cet état
représente la
cdk1

libre et non phosphorylée.



27

2.

Création d’une protéine (cycline B)


La fabrication de
cycline B

commence lorsque l’on injecte un message
«

start

» au
niveau du
port

«

Extracell_com

» de la
sous capsule

«

information_follow_up

» de la
«

computation

». L’injection des messages lors de la simulation ne peut se faire que par
l’intermédiaire d’un
port

terminal, c’est pourquoi celle
-
ci se fait pa
r le port «

Extracell_com

»
et non par le port «

RexCell

» (Figure 16).


Un fois le message injecté, la
capsule

chargée du traitement de l’information va
envoyer à la
capsule
«

protein_production

» une demande de
transcription

d’une
cycline B
, par
l’interm
édiaire du
port

«

ask_transcription

». Cette capsule, du fait de sa complexité, n’a pas
encore été détaillé et comporte deux boites noires qui simulent la
transcription

et la
traduction
. Le regroupement de ces deux mécanismes permet de simplifier la simula
tion de la
fabrication d’une protéine. L’arrivée d’une demande de
transcription

va permettre l’envoi
d’un message de création d’une protéine
cycline B

à la cellule (une création dynamique ne
peut se faire qu’à l’intérieur de sa
capsule

englobante). Ce mess
age ne sera envoyé qu’après
un délai de quelques secondes, introduit délibérément, afin de ralentir la simulation.


a)

Gestion des envois de messages vers des destinataires
multiples


Pour envoyer un message, ici grâce à la méthode «

send()

», on doit spécif
ier le nom du
port

par lequel il sera envoyé et le nom du message. Un message peut comporter ou non des
paramètres. Si le
port

est dupliqué et que l’on veut envoyer un message vers une instance
spécifique du
port
, on utilise la méthode «

sendAt(numero_du_p
ort)

».


creation.CcycB().send(); // message CcycB par le port creation, sans paramètre.


b)

Gestion du temps


timer.informIn(RTTimespec(2,0));


timer est le nom du port qui permet d’avoir accès au service de temps, il est de type
«

Timing

». Inform
In est la méthode qui déclenche un chronomètre pour une durée de type
«

RTTimespec

» et de valeur 2 secondes et 0 nanosecondes. Lorsque le temps spécifié est
écoulé, la capsule reçoit un message «

timeout

» qui permet de déclancher une transition.



28

3.

Créati
on d’un complexe (cycline B/cdk1)


Lorsqu’une
cycline

a été produite, la cellule doit envoyer un message à la
sous capsule

«

concentration_follow_up

» de la «

computation

», afin qu’elle puisse mettre à jour la
concentration de la protéine qui a été formée
. Ceci déclenche aussitôt l’envoi d’un message à
la
sous
-
capsule

«

complex_follow_up

». Si la protéine formée peut se lier avec une autre
protéine ou avec un complexe protéique disponible dans la cellule (conditions biologiques
données), cette
capsule

va a
lors envoyer un message de demande de formation de complexe à
la «

cellule

» et décrémenter les valeurs des attributs des concentrations concernées. La
capsule

«

cellule

» va ensuite créer dynamiquement le complexe, et les deux protéines qui le
composent y

seront immédiatement importées. La
cycline B

pouvant se lier à une
cdk1
, la
«

cellule

» va former un complexe
cycline B.
/.
cdk1
.




Code pour la création d’un complexe


Un complexe
cycline B

/
cdk1

est composé d’une
cycline B

et d’une
cdk1
. Au moment de la
création de ce complexe, celui ci va importer, dans sa
structure
, les deux protéines qui vont le
composer. Pour cela, le complexe devra avoir accès aux références de ces deux protéines.
Pour transmettre ces adresses, la cellule va créer un objet «

listeAdr
essesProteines

» de type
«

ListeAdressesProteines

» qui est une classe passive. Cette classe contient des attributs de
type
RTActorId

qui vont servir à stocker les références des protéines qui seront importées dans
le nouveau complexe formé par la cellule.

La cellule peut ensuite créer la capsule
«

cplx_cycB_cdk1

». Cette création prend en paramètre

: le nom de l’instance de la
capsule

(cplx_cycB_cdk1) qui va être créée dans la «

cellule

», le nom de la
capsule

(Cplx_cycB_cdk1) et la référence de l’objet co
ntenant les références mémoires des protéines
qui vont composer le complexe. La référence du complexe est stockée dans une pile.



//avant de former un complexe, on vérifie si les piles d'adresses ne sont pas vides


if((liste_piles.pool_cdk1.compteur>0)&&(
liste_piles.pool_cycB.compteur>0))


{


ListeAdressesProteines listeAdressesProtéines // Création de l’objet


// listeAdressesProtéi
nes


// On dépile les références des capsules à incarner dans les attributs correspondants de
l’objet

// listeAdressesProtéines


listeAdressesProteines.id_cdk1 = liste_piles.pool_cdk1.depile();

listeAdressesProteines.id_cycB = liste_piles.pool_cycB.depile
();


RTActorId a = frame.incarnate(cplx_cycB_cdk1, Cplx_cycB_cdk1, &listeAdressesProteines);

liste_piles.pool_cycB_cdk1.empile(a);

}

else (gestion des erreurs)

;




29

4.


Importation de protéines (à l’intérieur du
complexe cycline B/cdk1)


Lorsque le complexe e
st formé, la transition initiale est effectuée au niveau de son
diagramme d’état et il se retrouve dans l’état «

complexe_cree

» (Figure 18). Au cours de
cette transition, le complexe va importer les deux protéines qui le composent.


a)

Code de l’importation

:


Le complexe récupère les données de l’objet «

listeAdressesProteines

» dont la référence
lui a été fournie en paramètre lors de sa création par la «

cellule

». Puis il importe les
protéines grâce au port de «

frame

»
. Lors de l’importation, on indique l
a référence de la
capsule

importée ainsi que le nom de son instance.


ListeAdressesProteines *listeAdressesProteines = (ListeAdressesProteines *)getMsg()
-
>getData();
// récupération des données contenues dans l’objet

frame.import
(listeAdressesProteines
-
>id_cycB, cycB); // importation des capsules

frame.import(listeAdressesProteines
-
>id_cdk1, cdk1); // dans la structure du complexe


b)

Gestion d’un nouveau complexe


Quand les deux protéines sont importées, la
cdk1

re
çoit un message «

RTbound

» par le
port

«

binding

» (déclenché automatiquement par le système) pour lui spécifier qu’elle est
complexée à une
cycline B
. La
cdk1

passe alors dans l’état englobant
«

complex_cyclinB_cdk1

» (Figure 17). Cet état contient l’ens
emble des sous états possibles
de la ck1, liée à la
cycline B
.




Diagramme d’état de la
cdk1


Figure 17

: Diagramme d’état de
cdk1
.


Lorsque le complexe
cycline B

/
cdk1

est formé par la «

cellule

»
sur demande de
«

complexe_follow_up

», la
cdk1

reçoit le
message
«

bound

» de la
cycline B
. Ceci
provoque le passage de la
cdk1

de l’état «

cdk1_free

» au super
état «

complex_cycB_cdk1

».
Plus précisément, dans le sous
état «

cdk1

» qui est l’état initial
de «

complex_cycB_cdk1

». Ce
super état contient l’ensem
ble
des sous états possibles de la
cdk1

liée à la
cycline B
.




30



Si le complexe
Cycline B

/
cdk1

forme un complexe avec la Wee1, celle
-
ci lui enverra
le message «

wee1_phosphorylation

» qui fera passer la
cdk1

dans l’état
cdk1
_p_wee1. cela signifie que la
cd
k1

a été phosphorylée par wee1 sur une Tyrosine
15. Cette phosphorylation a pour effet l’inhibition de la
cdk1
.




Si le complexe
Cycline B

/
cdk1

forme un complexe avec la
Cak
, celle
-
ci lui enverra le
message «

cak_phosphorylation

» qui fera passer la
cdk1

dans l’état
cdk1
_p_
cak
. Cela
signifie que la
cdk1

a été phosphorylée par
cak
. Dans cet état, la
cdk1

est active et ne
subira plus de transformation mais pourra effectuer une auto
-
transition lorsqu’elle se
liera à la
cdc25c

afin de la phosphoryler.




Dans l’
état
cdk1
_p_wee1 la
cdk1

peut être

:


o

phosphorylée par
cak

et passer dans l’état
cdk1
_pp_wee1_
cak

o

déphosphorylée par
cdc25c

et retourner dans l’état
cdk1

(effet contraire de
Wee1, levée de l’inhibition).




Dans l’état
cdk1
_pp_wee1_
cak

la
cdk1

peut être déph
osphorylée par
cdc25c

et passer
dans l’état actif.





Figure 18

: Diagramme de structure et d’état du complexe
cycline B

/
cdk1
.



5.

Condition de formation d’un complexe (cycline B /
cdk1/ wee1)


Comme lors de la création d’une protéine, la «

cellule

»
informe la
«

concentration_follow_up

» qu’un complexe
cycline B
/
cdk1

a été créé. Celle
-
ci va ensuite
avertir la capsule «

Complex_folow_up

», qu’un nouveau complexe
cycline B

/
cdk1

a été
créé. Celui
-
ci peut se lier à wee1, à
cak
, à
cdc25c
, ou à un inhibit
eur
p21

(non présent en
début de simulation), mais il faut pour cela que ces protéines soient actives. De plus, pour que
le complexe puisse se lier à
cdc25c
, il faut que la
cdk1

ait été préalablement phosphorylée par
wee1 (Figure 18). Le complexe
cycline B
/
cdk1

ne peut donc se lier qu’à Wee1, car
cak

est
inactif en début de la simulation. La
capsule

«

Complex_folow_up

» demande la formation de
complexe après vérification de l’état des ressources disponibles.



31



Demande de formation de complexe après création

d’un complexe cyclin B/
cdk1

dans la cellule


Un complexe cycB /
cdk1

a été créé, on vérifie l’état des ressources pour voir si on peut
former un nouveau complexe entre
cycline B

/
cdk1

et une autre molécule. S’il y a présence
d’inhibiteur dans la cellule
(ici
p21
), on créé immédiatement un complexe avec lui pour
empêcher
cycline B
/
cdk1

de se lier avec la
cak

ou wee1.

On vérifie, avant de former un complexe quel qu’il soit, qu’il reste bien des molécules qui
le composent dans la «

cellule

» (au cas où elles

auraient été utilisées entre temps). L’ordre de
priorité pour la formation des complexe avec
cycline B

/
cdk1

est ici
p21
,
cak

et enfin wee1.

On a choisit ici de privilégier la
cak

par rapport à wee1, mais on pourrait également faire
des comparaisons de c
oncentration ou autre chose en fonction de connaissances plus précises
sur cet ordre de priorité.


Exemple

:


if ((valeurs_concentration.conc_p21>0)&&(valeurs_concentration.conc_cycB_cdk1>0))

{



complex_forming.cycB_cdk1_p21().send(); // Si i
l y a une p21 et un complexe, on


// envoi la


// demande de formation de complexe





//(cycB_cdk1_p21) par le port complex_forming



valeurs_concentration.conc_p21
--
; // on décrémente les concentrations


valeurs_concentration.conc_cycB_cdk1
--
;

}


else

{


if((valeurs_concentration.conc_cycB_cdk1>0)&&(valeurs_concentration.conc_cak_actif>0))


{



complex_forming.cycB_cdk1_cak().send();



valeurs_concentration.conc_cycB_cdk1
--
;



valeurs_concentration.conc_cak_actif
--
;


}


else


{







if((valeurs_concentrat
ion.conc_cycB_cdk1>0)&&(valeurs_concentration.conc_wee1_actif
>0))



{




complex_forming.cycB_cdk1_wee1().send();




valeurs_concentration.conc_cycB_cdk1
--
;




valeurs_concentration.conc_wee1_actif
--
;



}


}

}



32

6.

Phosphorylation de cdk1 par wee1 (changement

d’état)


Le complexe
cycline B
/
cdk1
/wee1 qui a été créé va stocker sa propre référence ainsi que
celles de ses
capsules

englobées dans un objet «

adresseProtéines

». Ce stockage est important
car au moment où le complexe devra être détruit, il faudra que
la «

cellule

» récupère

:


o

la référence du complexe afin de le détruire spécifiquement.

o

la référence de wee1 afin de la remettre dans sa pile afin qu’elle puisse être à
nouveau utilisé.

o

La référence du complexe
cycline B
/
cdk1

sera conservée dans une pile
s
pécifique au complexe dont la
cdk1

a été phosphorylée par wee1 (reflet du
stock de complexe dans cet état précis). En effet, il nous faudra créer des piles
différentes pour chaque état de la
cdk1

pour pouvoir séparer les différents
types de complexes dispo
nibles.


Après un délai introduit pour améliorer le suivi de la visualisation, wee1 envoi un
message à la
cdk1

par le
port

de «

phosphorylation

» (Figure 19). L’envoi de ce message
simule le phénomène de phosphorylation d’une protéine par une protéine kin
ase en biologie.
L’arrivée de ce message au niveau du
diagramme de structure

de la
cdk1

va la faire passer de
l’état «

cdk1

» à «

cdk1_p_wee1

». Cet état montre que la
cdk1

complexée avec une
cycline B
,
a été phosphorylée par wee1.



Figure 19

: Diagramme

de structure du complexe
Cycline

B / cdk1 /wee1.


L’entrée dans cet état va déclencher l’envoi d’un message sur le
port

«

cdk1

» puis sur
«

destroy_complex

». Ce message prévient le complexe que la
cdk1

a été phosphorylée et
qu’il peut maintenant être dét
ruit.

En biologie, ceci revient à simuler le
processus de changement de conformation
moléculaire

qui amène à la
dissociation du complexe

suite à la phosphorylation. La
cdk1

va
également envoyer un message à la
wee1

pour qu’elle puisse repasser dans l’état
«

actif

».


33

7.

Destruction d’un complexe (Cycline B/cdk1/wee1)


Comme lors d’une création, c’est la cellule englobante qui doit détruire les
capsules
.
Lorsqu’un complexe arrive dans l’état «

destroy

», toutes les protéines (capsules) du
complexe seront libéré
es récursivement par l’envoi d’un message à leur port. Ces protéines
ainsi libérées sont à nouveau disponibles pour former un nouveau complexe.


Enfin on informe la «

concentration_follow_up

» qu’un complexe a été détruit pour mettre
à jour les concentrati
ons en complexe, en wee1 et en complexe
cycline B
/
cdk1

phosphorylé
par
wee1
. La «

concentration_follow_up

» avertira ensuite la capsule «

complex_follow_up

»
afin de vérifier si d’autres complexes peuvent être créés à partir des capsules libérées.


Figu
re 20

: Diagramme d’état du complexe
Cycline B

/
cdk1

/wee1


8.

Activation de protéines (Cak et des Polo)


Les protéines
Cak

et
Polo

sont responsables de mécanismes de phosphorylation et de
déphosphorylation. Pour l’instant, c’est l’injection d’un signal qui
déclenche leur activation.
Dans une configuration plus complète, ce signal pourrait être émis par une autre protéine. Le
signal est injecté au niveau du
port

«

replication

» de la
capsule

«

réplication

». En effet, ces
protéines ne peuvent pas être activée
s tant que la
réplication

n’est pas terminée. Ici, l’injection
du signal simule l’achèvement de la
réplication

en la faisant passer dans l’état
«

end_replication

». L’entrée dans cet état provoque l’envoi d’un message vers le port
«

replication_state

». Le

message arrive dans la
capsule

«

information_follow_up

» qui va
envoyer un message d’activation aux
cak

et aux
polo

par les
ports

«

cak_activation

» et
«

polo_activation

». Ces messages vont les faire passer dans l’état «

actif

». Au cours de la
transitio
n qui les conduit dans cet état,
cak

et
polo

envoient chacun un message à la
capsule

«

information_follow_up

» pour confirmer leur activation.

Lorsque «

information_follow_up

» reçoit ce message, elle informe la
«

concentration_follow_up

» qu’une
cak

ou un
e
polo

est activée, puis à son tour, la
«

concentration _follow_up

» va en informer la «

complex_follow_up

». Selon les différentes
ressources, on pourrait avoir création de complexes.


La création de complexes
polo
/
cdc25c

va permettre la phosphorylation
de cd25c par
polo
. La
cdc25c

phosphorylée est ainsi active
et va pouvoir se lier à des complexes
cycline
B
/
cdk1

qui ont été phosphorylés par wee1
(Figure 21).


Figure 21

: Diagramme d’état de
polo
.

Message en entrée


34

9.

L’activation de la cdk1


Une
cdk1
, en complexe avec une
cy
cline B
, qui est dans l’état «

cdk1_p_cak

» est une
cdk1

active. Afin d’augmenter le nombre de
cdk1

actives, la
cdk1

va se lier avec des
cdc25c

inactive afin de les activer à leur tour par phosphorylation. En biologie, on appelle cela une
auto

régulation
.
Lorsque toutes les
cdk1

en complexe avec une
cycline B

sont activées, la
«

cellule

» peut entrer dans sa phase de mitose.


10.

Inhibition par la p21


Lorsqu’une erreur survient au niveau de l’
ADN
, la cellule, par l’intermédiaire de
mécanismes complexes va per
mettre la création d’inhibiteur comme la protéine
p21
. La
présence de ces protéines va permettre l’arrêt du cycle cellulaire en bloquant les complexes
cycline B
/
cdk1
. Cela permettra à la «

cellule

» de réparer l’erreur. A la suite de quoi, les
inhibiteur
s sont dégradés et les complexes libérés. Dans notre modèle, la synthèse et la
destruction des
p21

sont déclenchées par des signaux «

error_dna

» et «

end_error_dna

» au
niveau des
ports

«

RexCell

» et «

end_error_dna

».


C.

Exécution du modèle


L’environneme
nt de développement Rose RT nous permet d’exécuter le modèle que
nous avons réalisé. Cela permet de vérifier s’il se comporte comme nous l’avons prévu et de
visualiser en temps réel l’évolution de la simulation. Pour cela, il faut généré le code
correspond
ant au modèle, le compiler et enfin lancer l’exécution. Dans ce but, la première
étape consiste à créer un composant (Figure 22), appelé ici «

cellule

», dans «

Component
view

», auquel on spécifiera le type de compilateur utilisé et la
capsule

englobant l
e système
que l’on souhaite étudier. C’est grâce à ce
composant

que l’on peut générer et compiler le code
du modèle. Lors de la seconde étape, on doit créer un «

processor

» dans «

Deployement
view

». On affectera à ce
processeur

les composants que l’on ve
ut exécuter afin d’obtenir les
instances exécutables du modèle. Cette instance donne accès au module d’exécution appelé
Run Time System
.




Figure 22

: Création du composant et du processus nécessaire à la compilation et à l’exécution du
modèle


35

Lorsque l
e run time system est lancé (Figure 23) le modèle est prêt à être exécuté et
une fenêtre de contrôle (Figure 23 à gauche) nous permet de lancer la simulation, de la
stopper, de faire une pause ou de la relancer. Sous ces boutons de commande, une
arborescen
ce nous permet d’observer la cellule et les éléments qui la composent. Les
«

probes

» vont nous permettre d’injecter des messages sur des ports terminaux particuliers.
On pourra ainsi commander le début de la
transcription

de
cycline B
, l’activation des
pr
otéines
polo

et
cak
, ou bien perturber le système en injectant un signal d’erreur au niveau de
l’
ADN
, entraîne la synthèse de l’inhibiteur
p21
. La figure 23 comporte un «

probe

» placé sur
le port «

end_error_dna

» qui nous permet d’injecter le signal du l
evé de l’inhibition.


La partie de droite de la figure 23 permet de suivre l’évolution de la simulation. Ici,
par exemple, on voit le
diagramme de structure
de la cellule. La simulation a démarré mais on
n’a pas encore injecté le signal de départ (
transcri
ption

de
cycline B
). On peut remarquer que
les protéines qui ont été créées dynamiquement dès le début de la simulation ne sont plus
hachurées mais sont encadrées par un trait noir, contrairement à la
p21
.


En bas, une fenêtre peut nous permettre de suivre

l’évolution des valeurs des attributs
que nous intéressent.





Figure 23

: Le Run Time System de Rational Rose RealTime.


Commande de la simulation

Probe

Fenêtre du suivi

de la simulation

Fenêtre du suivi des
valeurs des attributs


36

Les
capsules

qui n’ont pas encore été créées dynamiquement sont identifiables dans la
fenêtre de gauche sous les boutons de c
ommande, par une croix rouge qui précède leur nom.
Dès qu’une capsule est créée, la croix disparaît.


Par exemple, dans la figure 24, la
cdk1

est la seule capsule qui ait été créée, elle n’est
plus hachurée dans le
diagramme de structure

et il n’y a plus d
e croix dans la fenêtre de gauche.




Figure

: 24

: Liste des capsules (présentes ou non), et leur représentation dans le diagramme de
structure.



37

On peut également suivre la simulation à partir du
diagramme de structure

d’un
complexe. La figure 25 montr
e les diagrammes de structure de deux complexes
cycline B
/
cdk1
.





Figure 25

: Représentation d’une importation, A

: capsules non importées, B capsules importées.




Le complexe A n’a pas encore été créé, les deux protéines qui le composent
n’ont donc p
as encore été importées à l’intérieur de sa
structure
. Les
capsules représentant ces protéines sont toujours colorées en gris foncé.



Le complexe B, par contre, est formé et ses deux protéines importées. Elles
sont teintées en gris clair et encadrées d’un
trait noir.



La figure 26 montre les
diagrammes d’état

de deux
cdk1
, complexées avec une
cycline
B
, dans deux états différents. L’état dans lequel se trouve la capsule est identifiable par un
cadre noir qui l’entoure.




La
cdk1

A est non phosphorylée



La
c
dk1

B est phosphorylée par
wee1
.


La fenêtre DOS nous montre aussi les affichages qui permettent de suivre les différentes
étapes de l’exécution. Ici
cdk1

phosphorylée par
wee1
.


Complexe A

Complexe B


38



Figure 26

: Les états parallèles des différentes
cdk1
.


La figure 27 nou
s présente une fenêtre de «

trace

» qui permet de visualiser les
messages qui s’échangent entre des capsules sélectionnées. A partir de cette fenêtre on peut
générer un
diagramme de séquence

qui nous représente graphiquement les messages échangés
et les ét
ats des
capsules
.



Figure 27

: Fenêtre de trace et diagramme de structure.

Cdk1 A

Cdk1 B


39

V.

Discussion


Une caractéristique essentielle des objets, tant dans le monde réel (ici, la biologie) que
pour leur représentation informatique, c’est leur caractère dynamique

: ils
peuvent être
créés et détruits dynamiquement. Un objet est caractérisé par un état

; en réponse aux
sollicitations qu’il reçoit, un objet possède la capacité d’effectuer certaines actions dont
l’effet peut modifier son état interne ou requérir l’exécution
d’autres actions par d’autres
objets. Ainsi, un objet informatique qui représente un «

vrai

» objet du monde réel pourra
réaliser des actions correspondant à chacune des actions du monde réel. La réalisation de
logiciels pour décrire et simuler le comporte
ment de systèmes complexes ouvre des
perspectives pour le traitement des données de la biologie post
-
génomique.


En tout premier lieu, il est nécessaire de s’attacher à une description rigoureuse du
domaine d’intérêt et les spécifications formelles sont la

contrepartie dans le système
informatique de ce que le logiciel doit faire

; ils sera ensuite possible de vérifier le bon
fonctionnement (simulation) de ces spécifications. Pour ce faire, on doit disposer d’un
langage de modélisation qui prenne en compte
divers problèmes de modélisation,
notamment (1) la standardisation car l’unification et l’acceptabilité sont des buts
recherchés pour faciliter la communication

; (2) néanmoins adaptable car .les domaines
d’application sont divers et variés et peuvent évol
uer facilement sans avoir à remettre en
question le standard.

Nous avons retenu en première analyse UML et ses extension pour le temps réel car il
répond à ces critères tout en offrant des mécanismes d’extensibilité qui permettent
justement de le faire évo
luer de manière contrôlée en l’adaptant à divers contextes
d’utilisation.


Parmi les différents points d’intérêt que nous avons constaté, nous mentionnerons tout
particulièrement

:


L’aspect modulaire
, qui correspond bien aux méthodes de traitement des sys
tèmes
complexes. Dans notre exemple, nous avons traité différents processus très complexes
(
transcription
,
traduction
,
réplication

de l’ADN, etc.) comme des boîtes noires sans
préjudice du fonctionnement de l’ensemble. Ces différents sous
-
systèmes pourront

être
traités ultérieurement, en fonction des disponibilités et des moyens, suivant les mêmes
principes.


la création dynamique d’objets
, propriété essentielle pour la modélisation des
systèmes biologiques dont le fonctionnement est assuré par une successi
on de complexes
qui se font et se défont entre les «

objets

». Cette propriété est traitée par Rose RealTime
mais absente d’autres outils tel Esterel qui impose que tous les objets soient créés lors du
lancement du programme.


la propriété d’émergence
, pro
priété définitoire de la notion de système. Une
définition mnémonique décrit l’émergence comme la propriété selon laquelle «

le tout est
plus que la somme des parties

»

; autrement dit, le tout a un comportement différent de la
somme de ses composants. Dan
s Rose RealTime, le comportement du complexe (la
capsule englobante) est différent du comportement de ses composants pris
individuellement (les capsules englobées).


40

les contraintes
sont une autre

propriété des systèmes car elles limitent l’espace des
état
s et définissent le comportement des objets. Le langage de spécification des
contraintes sur les objets (OCL) d’UML permet de colliger les contraintes sur les entités
biologiques pour décrire leur comportement dans un processus particulier et ainsi décrire

des bibliothèques de contraintes et leur comportement associé.


Le comportement déterministe
mis en œuvre dans notre modèle pourrait toutefois
être élargi à un comportement stochastique par, notamment, l’introduction de capsules
génératrices de «

bruit

»
qui simuleront la survenue d’évènements aléatoires.


la simulation
avec l’outil

RQA
-
RT (Rational Quality Architect
-
Real Time) permet en
fixant un état final de prédire quels sont les scénarios qui y conduisent et d’identifier ainsi
les évènements à redoute
r en réalisant des traces complètes de ces scénarios (signal
d’erreur lorsqu’une propriété n’est pas respectée). Dans le cadre du stage, nous n’avons
pas eu la possibilité de tester RQA
-
RT qui sera examiné ultérieurement.



41

Conclusion et perspectives


Ce s
tage effectué dans l’unité de Structure

Bio
-
Systémique
-

Modélisation Ingénierie de
l’Institut Pasteur est tout à fait complémentaire à la formation reçue cette année au
DESS
Informatique des Systèmes Complexes Biologiques
. En effet, il m’a permis de décou
vrir une
autre facette des systèmes complexes biologiques et de la bioinformatique et d’élargir ainsi le
champ de mes compétences.


Mon premier travail a porté sur la partie biologique. Il a consisté à effectuer des
recherches bibliographiques afin d’étoff
er et de mettre à jour mes connaissances sur le modèle
étudié.


Dans le cadre d’un projet pluridisciplinaire ARC
-
INRIA (Calculs de Processus et Biologie
des Réseaux Moléculaires), dont les membres sont en majorité des logiciens et des
mathématiciens, j’ai
participé à plusieurs réunions et groupes de travail. Au cours de ceux
-
ci,
nous leur avons présenté le déroulement des principales étapes du cycle du cycle cellulaire et
les principaux concepts d’interactions protéiques. Ces échanges m’ont permis d’appréhe
nder
une approche de la biologie d’un autre point de vue, non plus simplement comme biologiste
mais avec l’œil des informaticiens qui tentaient de la formaliser et de la modéliser.


Avant de nous lancer dans la réalisation de notre projet et après avoir bi
en déterminé le
modèle biologique sur lequel nous voulions travailler, nous avons établit des prototypes à
l’aide de Nasser Kettani, Directeur du Marketing chez Rational Software et de Camille
Rosenthal
-
Sabroux (Université paris dauphine). Cette première é
tape de modélisation nous a
permis de mettre en évidence les principales difficultés que nous allions rencontrer dans la
représentation dynamique d’un modèle biologique. Celle
-
ci doit tenir compte des trois
paramètres essentiels à la compréhension du fonct
ionnement du vivant

: le temps, l'espace et
la forme, qui sont aussi les fondements du paradigme systémique.


La principale activité du début de notre stage fut donc de réfléchir sur la manière de
représenter le vivant à l’aide des théories informatiques,
notamment en ce qui concerne les
interactions protéiques et les transformations biologiques (phosphorylations…), mais
également sur les carences en connaissance de certains phénomènes.


Ces prototypes nous ont permis d’avoir une vision globale sur le trava
il que nous allions
réaliser et sur les buts à atteindre.


Un stage de formation de quatre jours chez Rational Software dont le thème était
«

Développement des logiciels temps réel avec UML et Rational Rose RealTime

» nous à
permis de maîtriser le logiciel

et d’acquérir quelques bases de modélisation temps réel. A
partir de ces connaissances, nous avons réussi à réaliser le modèle prévu en tenant compte des
contraintes liées au langage de programmation et à la cohérence avec le modèle biologique.


A partir
de ce modèle, certains outils spécifiques à Rose RealTime nous permettent de
tester des scénarios à l’aide de diagrammes de séquences. On prépare un scénario sous forme
d’un diagramme de séquence, le scénario testé est comparé au diagramme de séquence obte
nu
à partir du déroulement de la simulation. Ces tests pourraient nous permettent de corriger et
d’améliorer le modèle en fonction de l’avancée des recherches biologiques.


42

Cependant, le modèle pourrait être amélioré en prenant plus en compte ces contraint
es
de localisation, de temps et de forme dont nous avons parlé. Pour cela il suffirait d’ajouter les
attributs spécifiques à celles
-
ci sur lesquels on pourrait également poser des conditions. Par
exemple, pour les interactions protéiques, des attributs, re
présentant les séquences d’
ADN
,
seraient vérifiés avant de créer un complexe. On pourrait alors introduire des erreurs dans les
séquences pour bloquer la formation d’un complexe et lancer des processus d’inhibition.


La simulation permettra de suivre le fo
nctionnement de multiples processus biologiques
(voies métaboliques, signalisation, divers modules fonctionnels dont le cycle cellulaire, etc.)
qui auront été spécifiés à l'étape précédente. La prédiction des comportements sera rendue
possible avec, notamm
ent, la recherche des " chemins " conduisant à la vérification
d'hypothèses ou de propriétés nouvelles (par exemple, développement d'un état pathologique).


Ce stage m’a permis d’utiliser les connaissances biologiques acquises durant ma
formation initiale
et de mettre en pratique certains enseignements dispensés pendant l'année
(UML, programmation). Il m’a également permis de me familiariser avec la vie
professionnelle et de travailler au sein d’une équipe dans un univers totalement
pluridisciplinaire. Les
rencontres avec des personnes d’horizons différents sont très
enrichissantes et permettent de remettre en question régulièrement notre façon de voir les
choses et ainsi de ne pas rester enfermer dans notre spécialité.


43










Bibliographie


44

Livres

:


Ket
tani, N., Mignet, D. , Paré, P. , Rosenthal
-
Sabroux, C.
De Merise à UML
, Eyrolles, 1998.


Booch, G.
Object
-
Oriented Analysis and Design with Applications
, 2

e

édition, Addison
-
Wesley, 1994.


Le Moigne, J
-
L. (1977
-
94).
Théorie du Système Général, Théorie de

la Modélisation
, 4
ème

édition, PUF, Paris.


Bouzeghoub, M. , Gardarin, G. , Valduriez, P. (1995).
Du C++ à Merise Objet,
Eyrolles, 2

e

édition.


Cauvet, C., Rosenthal
-
Sabroux, C. (2001).
Ingénierie des Systèmes d'Information,
Hermès.


Muller P.A. (1997).
Modélisation objet avec UML
, Eyrolles.


Support de cours

:


Rational University, (2002). Developing Real
-
Time Software with Rational Rose RealTime:
student manual. Version 2002.05.00.


Articles

:


Brown, N.R., Noble, M., Endicott, J.A., Jonhson, L.N. (1999
). The structural basis for
specificity of substrate and recruitment peptide for cyclin
-
dependant Kinases.
Nature Cell
Biology
.
Vol 1, 438
-
443.


De Brondt, H.L., Rosenblatt, J., Jancarik, J., Jones, H.D., Morgan, D.O., Kim, S. (1993).
Crystal structure of
cyclin
-
dependant Kinase 2.
Nature
. Vol 363, 595
-
602.


Endicott, J.A., Noble, M., Tucker, J.A. (1999). Cyclin
-
dependant Kinases: inhibition and
substrate recognition.
Current Opinion in Structural Biology
.
Vol 9, 738
-
744.


Kohn K.W. (1999).
Molecular Intera
ction Map of the Mammalian Cell Cycle Contol and
DNA Repair Systems.
Molecular Biology of the Cell
, Vol 10, 2703
-
2734.


Morgan, D.O. (1995).
Principles of CDK regulation.
Nature
. Vol 374, 131
-
134.


Pavletich, N.P. (1999).
Mechanisms of Cyclin dependant Kin
ase Regulation

: Structure of
Cdks, their Cyclin Activators, and Cip and INK4 Inhibitors.
J. Mol. Biol
.
Vol 287, 821
-
828.


Roux
-
Rouquié, M., Huynh, N., Kettani, N., Le Moigne, J.L., Rosenthal
-
Sabroux, C. (2001).
The relevance of Modeling Language for Syste
mic Representation of Biological Process.
International Conference
T
HE
S
CIENCE OF
D
ESIGN
,

Software design
;

INSA
-
Lyon.


Roux
-
Rouquié, M., Le Moigne, J.
-
L. (2002).
The systemic paradigm and its relevance to the
modelling of biolgical functions.
C. R. Biolog
ies
. Vol 325, 419
-
430.



45

Russo, A., Jeffrey, P.D., Pavletich, N.P (1996). Structural basis of cyclin
-
dependant Kinase
activation by phosphorylation.
Nature structural biology
. Vol 3, number 8.


Xiong, Y., Hannon, G.J., Zhang, H., Casso, D., Kobayashi, R., B
each, D. (1993). P21 is a
universal inhibitor of cyclin Kinases.
Nature
. Vol 366, 701
-
710.


Jacobson, I.; Ericsson, M., Jacobson, A. (1994).
The object advantage : Business process
reengineering with object technology
, Addison
-
Wesley.


Kruchten , PH. (1995
). The 4 + 1 View Model of Architecture ,
IEEE Software
, vol. 12, N°6,
novembre.


Sites Web

:

http://discover.nci.nih.gov

Contenant l’article de Kohn et ses cartes d’interactions moléculaires.


46











ANNEXES