The team presents at least three cases where they have modified a
function to make it more closed. This can be from the implementation
as well as from their domain functions. For example, in the domain
of banking we might initially have thought of a transfer as
`transfer(from: Account, to: Account, money: Amount): (Account,
Account)' and after lots of thought and several rewrites, we might
arrive at `transfer(TransferSpecification): (TransferSpecification,
Result)' which not only covers the same scenarios as the initial
function signature, but even accommodates failures (in the `Result')
or partial transfers where the resulting `TransferSpecification'
could then either represent the part of the transfer that still
remains to be done or alternatively the part of the transfer that
was actually carried out. Make sure that the application of this
pattern improves your model/design.
Agile
[x] Done ✅
The team shows how they use sprints to structure the project, use a
product backlog and sprint backlogs, maintain the backlogs
feature-oriented, and do sprint review and planning.
Class diagrams, state charts, Petri nets, and/or sequence diagrams
[x] Done ✅
The team uses diagrams to _complement_ some descriptions or
explanations in a way such that the text clarifies the diagram and
the diagram clarifies the text. The diagrams are used according to
the purposes of the type of diagram. For example, a class diagram is
used to show the relationship between domain entities. Or a sequence
diagram is used to show interactions between objects when realizing
a specific scenario.
Alloy/TLA+
[x] Done ✅
The team uses Alloy or TLA+ to specify some relevant aspects related
to their domain and/or their requirements and then states properties
that they check with the model checker. For example, in the library
specification we can state the property that there are books of
which some copies are owned by one library and some copies are owned
by another library. The model checker can them be used on this
property.
Other lecture topics
[x] Done ✅
The team documents all applications of lecture topics on their
project, each with a discussion of the benefits initially expected
and with the benefits actually achieved.
Aquí les dejo la rubrica como parte de lo que se debe mejorar en la documentación antes de añadir lo correspondiente.
Description
Añadir o mejorar lo que se presenta:
Algebras and closure under operations
Agile
Class diagrams, state charts, Petri nets, and/or sequence diagrams
Alloy/TLA+
Other lecture topics
Aquí les dejo la rubrica como parte de lo que se debe mejorar en la documentación antes de añadir lo correspondiente.