Добрый день всем, я изучаю UML, и мне нужен совет по поводу вариантов использования, пожалуйста. Я разрабатываю систему управления членами. Администратор страны может управлять всеми (дочерними) организациями и пользователями. Я также создал администратора клиентов, чтобы клиенты могли управлять пользователями своих (дочерних) организаций. Администратор клиента не может управлять организациями и может видеть только свою (дочернюю) организацию и ее пользователей. Я нарисовал эту схему вариантов использования:
И я написал сценарий следующим образом:
--- BEGIN ---
Use-case name: Set Up Organization Tree
Description: Allow country admins or customer admins to set up the organization
structure. Country admins can see or update all members of their country. Customer
admins can see or update members of their own organization only.
Actors:
- Primary actor - Country admin
- Secondary actor – Customer admin
Basic-flow: Set up an organization structure in the country root
1) Log in
2) View organization tree
3) Create a new organization
4) Create a new user within the organization
5) Set the password of the user
6) 2 to 5 may repeat
7) Log out
Alternate fow: Set up user accounts within the existing organization
1) Log in
2) View organization tree
3) Create a new user within the selected organization
4) Set the password of the user
5) 2 to 5 may repeat
6) Log out
--- END ---
Я не уверен, правильно ли это. Организации могут быть созданы в основном потоке, поэтому он описывает, что может делать администратор страны. В альтернативном потоке можно создавать только пользователей, поэтому он описывает, что могут делать как администратор страны, так и администратор клиента. Но тот факт, что администратор клиента может видеть только свою организацию, здесь не виден. Также я не уверен, смогу ли я описать все это в альтернативных потоках одного варианта использования или мне следует создать два отдельных варианта использования. Один для администратора страны и один для администратора клиента. Если бы я создал отдельную диаграмму вариантов использования для администратора страны, я думаю, что мне не следует упоминать там администратора клиента, а затем я также не должен рисовать актера администратора клиента и обобщение актера? Спасибо заранее.
Войтех
ИЗМЕНИТЬ 1:
Вот обновленная версия:
И обновленный сценарий:
--- BEGIN ---
Use-case name: Create New Customer Organizational Structure
Description: Allow country admin to create new organizational structure of the customer including users. Allow customer admins to create new users within the existing organizational structure. The country admin can see or update all members of the country. The customer admin can see or update users of his/her own organization only.
Actors:
- Country admin
- Customer admin
Basic-flow: Country admin creates new customer organizational structure
Pre-conditions:
- The country admin is logged in
- The customer organizational hierarchy doesn't exists in the Member Manager
Flow of events: Create New customer Organizational Structure
1) The country admin views the organization tree
2) The country admin creates a new organization
3) The country admin creates a new user within the organization
4) The country admin sets the password of the user
5) 1 to 4 may repeat
Post-condition:
- Customer organizational hierarchy is created
- Customer users are created
- Each user has a password
Alternate fow: Country admin creates new user in the existing organizational structure
Pre-conditions:
- The country admin is logged in
- The country admin can see or edit all members of the country
- The customer organizational hierarchy exists in the Member Manager
- The user that is going to be created doesn't exist
Flow of events:
1) The country admin views organization tree
2) The country admin creates a new user within the selected organization
2) The country admin sets the password of the user
4) 1 to 3 may repeat
Post-condition:
- New users are created in the selected organization
- Each user has a password
Alternate fow: Customer admin creates new user in the existing organizational structure
Pre-conditions:
- The customer admin is logged in
- The customer admin can see or edit members of his own organization only
- The customer organizational hierarchy exists in the Member Manager
- The user that is going to be created doesn't exist
Flow of events;
1) The customer admin views organization tree
2) The customer admin creates a new user within the selected organization
2) The customer admin sets the password of the user
4) 1 to 3 may repeat
Post-condition:
- New users are created in the selected organization
- Each user has a password
--- END ---
Теперь в моем сценарии есть два альтернативных потока:
- Alternate fow: Country admin creates new user in the existing organizational structure
- Alternate fow: Customer admin creates new user in the existing organizational structure
Нужно ли упоминать их обоих? Они такие же, как администратор страны, это специализация администратора клиента. Также я упомянул, что администратор клиента может видеть только членов своей организации, тогда как администратор страны может видеть всех членов страны в описании сценария, предварительных условиях и примечании к диаграмме. Это так, как должно быть?
Спасибо. Войтех