/
Use Cases - UC-03 Versions

Use Cases - UC-03 Versions

UC-03a

VersionManagement - Add version

Versión1.0
DependenciesNone
Preconditions
  • User must be logged
  • User must have ROLE_PRODUCT_MANAGER
DescriptionFunctionality to add new product versions
Secuence
  1. User request to add a product
  2. System returns version creation form.
  3. User add general version information. I18N fields (release notes and links) will be provided for the prefered_language.
  4. UI offers to define new languages: One option it's to copy current texts to a new language or fill the empty fields.
  5. PubishDate and UploadDate will not be editable and will be empty when it's created.
  6. System receives request and save it to storage. 
  7. System may offer the option to add artifacts to the product(@see UC-04e ArtifactManagement-uploadArtifact)
PostconditionsAudit fields must save who created that version.
ExceptionsSystem must reject version if provided product KEY does not exist.
CommentsNone

→ TODO

UC-03b

VersionManagement - Update version

Versión1.0
DependenciesNone
Preconditions
  • User must be logged
  • User may require ROLE_PRODUCT_MANAGER
DescriptionFunctionality to update a version
Secuence
  1. User request to obtain a product version by primary key to be modified
  2. If version is published system warns user about this fact and recomends to create a new version. System offers the option to force update.
  3. System returns product version model.
  4. User updates version information. User can updates I18n fields for the defined languages, add new languages or remove an existent one.
  5. System receives request and save it to storage.  field will be ignored.
  6. PubishDate and UploadDate will not be editable.
  7. User may add/remove new artifacts to the current version  
  8. (@see UC-04e ArtifactManagement-uploadArtifact and UC-04f ArtifactManagement-removeArtifact)
PostconditionsAudit fields must save who modified that version.
Exceptions

System will raise and exception if primarey key does not exist.

CommentsNone


UC-03c

VersionManagement - Remove version

Versión1.0
DependenciesNone
Preconditions
  • User must be logged
  • User must have ROLE_ADMINISTRATIVE
DescriptionFunctionality to remove a version
Secuence
  1. User request to remove a version by primary key.
  2. System will warn about the loose of data (versions and storage).
  3. User accepts to remove the version.
  4. System removes associated artifacts (@see UC-04f ArtifactManagement-removeArtifact). Once delete, it removes the version itself.
PostconditionsNone
Exceptions

System will raise and exception if primary key does not exist.

CommentsNone


UC-03d

VersionManagement - Publish version

Versión1.0
DependenciesNone
Preconditions
  • User must be logged
  • User must have ROLE_ADMINISTRATIVE
DescriptionFunctionality to publish a version
Secuence
  1. User request to publish a version. User may update:
    1. Tag values
    2. PublishDate - (Date must be prefilled with current timestamp)
  2. System checks that version has not been published yet.
  3. System updates tags and publication date.
  4. System will notify customers about that new release @see UC-XXa CustomerNotifications -  sendEmail
PostconditionsAudit fields must save who updated version
Exceptions

System will raise and exception if primarey key does not exist.

System will raise and exception if current version has just been published

CommentsNone


UC-03e

VersionManagement - Find versions

Versión1.0
DependenciesNone
Preconditions
  • User must be logged
  • User could have ANY ROLE
DescriptionFunctionality to search for versions
Secuence
  1. User request for a list of versions passing a request criteria
  2. System will query database for associated versions using provided parameters. If version details are requested then it will be included in response. Product and versioni18N fields must be returned in all the configured languages.
  3. If user has role ROLE_CUSTOMER, licensed version attributes must be calculated: @see UC-03g Version Management -  validate Licenses and applied to the response.
  4. System may offer customer navigation to version artifacts download area. (Customers could only request download for validated versions).
PostconditionsNone
Exceptions

None

CommentsNone


UC-03f

VersionManagement - Get Version

Versión1.0
DependenciesNone
Preconditions
  • User must be logged
  • User could have ANY ROLE
DescriptionFunctionality to retrieve a version
Secuence
  1. User request for a current version
  2. System will query database for associated version. Product and version I18N fields must be returned in all the configured languages. Version information will attach metadata of associtated artifacts.
  3. If user has role ROLE_CUSTOMER, licensed version attribute must be calculated: @see UC-03g Version Management -  validate Licenses and applied to the response.
  4. System may offer customer navigation to version artifacts download area. (Customers could only request download if version has been validated).
PostconditionsNone
Exceptions

None

CommentsNone


UC-03g

VersionManagement - Validate licenses

Versión1.0
DependenciesNone
Preconditions
  • User must be logged
  • User could have ANY ROLE
DescriptionFunctionality to validate version licenses
Secuence
  1. User requests  for licenses validation. At least one versionId must be provided
  2. System will query database for requested versions Product and version I18N fields must be returned in all the configured languages. Version information will attach metadata of associtated artifacts.
  3. If user has role ROLE_CUSTOMER, licensed version attribute must be calculated: @see UC-03g Version Management -  validate Licenses and applied to the response.
  4. System may offer customer navigation to version artifacts download area. (Customers could only request download if version has been validated).
PostconditionsNone
Exceptions

None

CommentsNone

Avvale 2024