Nantes Université

Skip to content
Extraits de code Groupes Projets
Valider ca4cfb5c rédigé par Gerson Sunyé's avatar Gerson Sunyé
Parcourir les fichiers

Add link to Mattermost to the root page

parent 0c05e97a
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -7,7 +7,7 @@ asciidoc:
author: Gerson Sunyé
email: gerson.sunye@univ-nantes.fr
plantuml-server-url: http://www.plantuml.com/plantuml
plantuml-config: ../../diagram/plantuml/plantuml.config
plantuml-config: sober.config
listing-caption: Listing@
kroki-fetch-diagram: true
kroki-server-url: http://kroki:8000
......
......@@ -24,4 +24,11 @@ Tous d'abord, vous devrez lire et analyser les documents suivants{nbsp}:
Ensuite, vous devrez lire et compléter les documents suivants{nbsp}:
. xref:development:composants.adoc[]
. xref:development:conception.adoc[]
\ No newline at end of file
. xref:development:conception.adoc[]
[WARNING]
====
Utilisez l'équipe Mattermost pour poser des questions sur le projet{nbsp}:
- https://mattermost.univ-nantes.fr/design/
====
\ No newline at end of file
@startuml
!include https://gitlab.univ-nantes.fr/naomod/defaults/-/raw/main/plantuml/puml-theme-sober.puml
start
fork
:Delete old cache files;
......
@startuml
package "My System" {
interface "Interface A" as Web1
interface "Interface B" as Cli1
......
''
'' Sober theme - mostly gray and blue
''
'' Author: Gerson Sunyé
'' Copyright (c) 2023 by Gerson Sunyé
skinparam {
' use the strictuml style - no circles, no footboxes, no drop shadows, and proper arrows
' Style strictuml
BackgroundColor transparent
TitleFontName Helvetica
TitleFontStyle Bold
TitleFontSize 12
sequenceParticipant underline
Guillemet true
Default {
TextAlignment center
FontName Helvetica
}
Sequence {
LifeLine {
BackgroundColor LightGrey
BorderColor DarkBlue
}
Arrow {
Color DarkBlue
Thickness 0.5
}
' FontColor #FF0000
' FontName Helvetica Neue
' FontStyle Light
Actor {
BorderThickness 0.5
FontSize 5
BackgroundColor #F2F2F2
BorderColor DarkBlue
}
Participant {
BorderThickness 0.5
BackgroundColor White
BorderColor DarkBlue
Font {
Style Light
Size 10
Name Helvetica Neue
}
}
Box {
BackgroundColor #F2F2F2
BorderColor Black
FontSize 10
}
Message {
Align center
}
Stereotype {
Font {
Size 8
Style Plain
Color #515151
}
}
}
Boundary {
BackgroundColor #F2F2F2
BorderColor DarkBlue
FontSize 10
}
Class {
FontSize 10
FontName Helvetica Neue
FontStyle Plain
BackgroundColor White
BorderColor Black
BorderThickness 0.2
FontColor Black
Attribute {
IconSize 0
FontSize 8
FontName Helvetica Neue
FontColor Black
FontStyle Light
}
Stereotype {
Font {
Size 8
Style plain
Color #515151
}
}
}
Object {
FontSize 10
FontName Helvetica Neue
FontStyle Underline
BorderColor DarkBlue
BorderThickness 0.2
FontColor DarkBlue
BackgroundColor White
}
Note {
FontSize 8
FontColor White
BorderThickness 0.1
BorderColor DarkBlue
BackgroundColor #99CCFF
Shadowing true
}
Component {
FontSize 10
FontName Helvetica Neue
FontStyle Bold
BackgroundColor White
BorderColor Black
BorderThickness 0.2
FontColor Black
}
Interface {
IconSize 8
BackgroundColor White
BorderColor Black
BorderThickness 0.2
Font {
Color Black
Name Helvetica Neue
Size 10
Style Plain
}
}
Stereotype {
IBackgroundColor White
IBorderColor DarkBlue
}
CircledCharacter {
FontSize 10
FontStyle Plain
}
Arrow {
Font {
Size 8
Name Helvetica Neue
Style Light
}
Thickness 0.2
}
Activity {
ArrowThickness 0.2
BackgroundColor transparent
Border {
Color DarkBlue
Thickness 0.2
}
Diamond {
BackgroundColor #99CCFF
BorderColor DarkBlue
BorderThickness 0.2
FontColor White
}
BarColor DarkBlue
}
Usecase {
BackgroundColor White
BorderColor DarkBlue
FontSize 10
}
Entity {
BackgroundColor White
BorderColor DarkBlue
FontSize 10
}
Database {
BackgroundColor White
BorderColor DarkBlue
FontSize 10
}
Control {
BackgroundColor White
BorderColor DarkBlue
FontSize 10
}
Collections {
BackgroundColor White
BorderColor DarkBlue
FontSize 10
}
Queue {
BackgroundColor White
BorderColor DarkBlue
FontSize 10
}
}
hide circle
hide footbox
show interface circle
\ No newline at end of file
......@@ -14,6 +14,7 @@ Utilisez des diagrammes d'interaction (séquence, communication) pour décrire l
.Diagramme de composants décrivant la solution proposée
[plantuml]
....
include::example$sober.config[]
include::example$dc-global.puml[]
....
......@@ -23,6 +24,7 @@ include::example$dc-global.puml[]
[plantuml]
....
include::example$sober.config[]
@startuml
left to right direction
......@@ -75,7 +77,9 @@ Utilisez la notation UML pour spécifier la signature de chaque operation de l'i
[plantuml]
....
interface A {
include::example$sober.config[]
interface A << Interface >> {
operationA(a: String, b: Integer): Boolean
}
....
......@@ -96,8 +100,12 @@ post:
[plantuml]
....
interface B {
operationB(a: String, b: Integer): Boolean
'skinparam ClassHeaderBackgroundColor blue
'skinparam CircleColor blue
'skinparam CircledCharacterFontColor blue
interface C as "C" << (I, White) Interface >> {
operation(a: String, b: Integer): Boolean
}
....
......@@ -121,10 +129,12 @@ Description de ses responsabilités et de ses interfaces
=== Interface C
[plantuml]
....
interface GameServer {
connect(pseudo: String, password: String, ip: String, port: Integer):Boolean
createGame(numberOfPlayers : Integer): Integer
join(gameId : Integer): Integer
include::example$sober.config[]
interface GameServer << Interface >> {
connect(pseudo: String, password: String, ip: String, port: Integer):Boolean
createGame(numberOfPlayers : Integer): Integer
join(gameId : Integer): Integer
notifyPlayersReady(): String
chooseRole(role: String, playerId: Integer)
resist(numberOfPawns: Integer)
......@@ -155,11 +165,11 @@ putToken(tokenName: String, cardNames: String [0..2])
.Connexion au serveur
[plantuml]
....
@startuml
include::example$sober.config[]
actor "ClientA:Client" as C1
actor "ClientB:Client" as C2
actor "ClientC:Client" as C3
participant "ClientA:Client" as C1
participant "ClientB:Client" as C2
participant "ClientC:Client" as C3
C1 -> Serveur: Connect("Teddy")
Serveur --> C1 : true
......@@ -200,40 +210,42 @@ Serveur -> C2 : playerReady("Romain0")
Serveur -> C1 : play()
Serveur -> C2 : play()
Serveur -> C3 : play()
@enduml
....
.Déroulement de l'initialisation du tour 1
[plantuml]
....
@startuml
actor "ClientA:Client" as C1
actor "ClientB:Client" as C2
actor "ClientC:Client" as C3
@enduml
include::example$sober.config[]
participant "ClientA:Client" as C1
participant "ClientB:Client" as C2
participant "ClientC:Client" as C3
C1 -> C2 : sync-message()
C1 -> C3 : another-sync-message()
C1 -> C2 : sync-message()
C1 -> C3 : another-sync-message()
C1 -> C2 : sync-message()
C1 -> C3 : another-sync-message()
....
.Déroulement d'un tour (on suppose les clients déjà initialisés et le tour 4)
.Déroulement d'un tour, on suppose les clients déjà initialisés et le tour 4
[plantuml]
....
@startuml
actor "Rom:Client" as C1
actor "Ted:Client" as C2
actor "Isma:Client" as C3
include::example$sober.config[]
participant "Rom:Client" as C1
participant "Ted:Client" as C2
participant "Isma:Client" as C3
@enduml
C1 ->> C2 : async-message()
C1 ->> C3 : another-async-message()
....
.Rejoindre une partie
[plantuml]
....
include::example$sober.config[]
participant "__one:Player__" as player1
participant "__two:Player__" as player2
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter