Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
naomod
Object-Oriented Software Analysis and Design (OOAD)
OOAD - Slides
Commits
2e9fe502
Commit
2e9fe502
authored
Nov 18, 2020
by
Gerson Sunyé
Browse files
Correct 'to precise' and replace by 'to specify'
parent
e301d957
Pipeline
#22250
passed with stages
in 1 minute and 56 seconds
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
src/slides/asciidoc/detailed-design.adoc
View file @
2e9fe502
...
...
@@ -607,11 +607,27 @@ From Smalltalk Best Practices book
[.impact]
== GP4: {GP4}
[.columns]
== Specialization/Generalization Adjustment
[.column.is-two-thirds]
--
* Look for reuse: make similar what is almost similar:
** possible changes of operation signatures and attribute types.
* Abstract common behaviors and properties.
--
[.column]
--
[plantuml, align=center]
....
class Id << Interface>>
class GameId
class PlayerId
Id <|.. GameId
Id <|.. PlayerId
....
--
[.notes]
--
...
...
@@ -620,21 +636,36 @@ possible changes to the signature of operations
Abstraction of common behaviors, libraries
--
[.columns]
== Attributes
.Precise:
[.column.is-two-third]
--
.Specify:
* Default values
* Multiplicities: [0..1], [*], etc.
* Constraints (OCL expressions).
* Modifiers: readOnly, redefines, etc.
* Visibility.
* Use OCL to precise derived attribute.
wir
* Use OCL to specify derived attribute.
--
[.column]
--
[plantuml, align=center]
....
class Player {
+ id : Integer {id}
+ age : Integer {readOnly}
}
....
--
== Association Roles
*
Pr
eci
se
the relationships between different roles: union, subsets <x>, redefines <y>, ordered, unique, etc.
*
Pr
eci
se
navigability.
*
Sp
eci
fy
the relationships between different roles: union, subsets <x>, redefines <y>, ordered, unique, etc.
*
Sp
eci
fy
navigability.
[.notes]
--
...
...
@@ -646,9 +677,8 @@ Les associations unidirectionnelles sont plus simples à implémenter.
* Use OCL expressions to specify pre- and post-conditions.
* Use the Action Semantics (xUML) to specify operation body.
* Precise parameters directions (in, out, in/out).
* Precise return parameter properties: readOnly, ordered, etc.
* Specify parameters directions (`in`, `out`, `in/out`).
* Specify return parameter properties: `readOnly`, `ordered`, etc.
[.impact]
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment