D_UC8 - luist18/feup-aeda-proj GitHub Wiki

Use Case 8: Register

Rational

Main flow Question: what class ... Answer Justification
1. The unregistered user intends to become a user. ...interacts with the user? RegisterPageUI Pure Fabrication.
...coordinates the use case? RegisterPageController Controller.
2. The systems asks the role of user (Client or Company Client).
3. The unregistered user selects the role.
4. The systems asks their personal information (name, the identification number and the address). ...validates the data globally? AuthUserManager Information Expert: the auth user manager contains all users.
5. The unregistered user inserts their personal information.
6. The system registers the user, generates a random password and sends it to the user. ...registers the data? AuthUserManager InformationExpert

Systematization

From the rational results that the conceptual classes promoted to software classes are:

  • Company
  • AuthUser
  • Client
  • CompanyClient

Other identified software classes (e.g. Pure Fabrication):

  • RegisterPageUI
  • RegisterPageController
  • AuthUserManager
  • ClientManager
  • CompanyClientManager

Sequence diagram

Sequence Diagram

Class diagram

Class Diagram