Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve User Feedback and Terminology Consistency in Ansible AWX UI #15228

Closed
4 of 9 tasks
akashthemosh opened this issue May 25, 2024 · 0 comments
Closed
4 of 9 tasks

Comments

@akashthemosh
Copy link

Please confirm the following

  • I agree to follow this project's code of conduct.
  • I have checked the current issues for duplicates.
  • I understand that AWX is open source software provided for free and that I might not receive a timely response.

Feature type

Enhancement to Existing Feature

Feature Summary

During a heuristic evaluation of the Ansible AWX web UI using Nielsen's 10 Usability Heuristics, several issues were identified that impact user experience and efficiency. This issue outlines key findings and proposes enhancements to address these usability problems.

Visibility of System Status:

Problem: The system often fails to provide timely feedback during longer tasks, such as launching a job template.
Proposed Solution: Implement a loading spinner or status bar to indicate the initiation and progress of tasks, improving user confidence.

Match Between System and the Real World:

Problem: Technical jargon such as “playbook” and “inventory” may be unclear to new users.
Proposed Solution: Provide tooltips or a glossary to help users understand technical terms.

User Control and Freedom:

Problem: There are limited options for undoing actions, such as canceling or undoing a job execution.
Proposed Solution: Implement an undo feature or a confirmation prompt before critical actions to enhance user control.

Consistency and Standards:

Problem: Inconsistent terminology, such as using “hosts” and “nodes” interchangeably, can confuse users.
Proposed Solution: Ensure consistent use of terminology across different sections of the interface.

Error Prevention:

Problem: Lack of preventive measures for common mistakes, such as validating input fields in playbooks.
Proposed Solution: Implement real-time validation to prevent syntax errors and other common mistakes.

Help Users Recognize, Diagnose, and Recover from Errors:

Problem: Error messages are often unclear and do not provide specific details or corrective actions.
Proposed Solution: Enhance error messages with detailed information and suggested fixes to reduce user frustration.

Select the relevant components

  • UI
  • API
  • Docs
  • Collection
  • CLI
  • Other

Steps to reproduce

Steps to Reproduce
Visibility of System Status:

Navigate to the "Templates" section and launch a job template.
Observe whether the interface provides immediate feedback about the job initiation and its progress.

Match Between System and the Real World:

Explore different sections such as "Projects" and "Inventories".
Identify any technical jargon that may be unclear without context or explanation.

User Control and Freedom:

Execute a job from the "Templates" section.
Attempt to find an option to cancel or undo the job execution.

Consistency and Standards:

Review the terminology used in various sections like "Hosts" and "Nodes".
Check if the terms are used consistently across the interface.

Error Prevention:

Create or edit a playbook in the "Projects" section with incorrect syntax or invalid inputs.
Observe if there is any real-time validation or feedback provided.

Help Users Recognize, Diagnose, and Recover from Errors:

Trigger an error by saving a playbook with invalid syntax or missing required fields.
Examine the error message for clarity and helpfulness in diagnosing and resolving the issue.

Current results

Visibility of System Status:

The system does not provide immediate feedback when a job is launched, leading to uncertainty about the task's initiation and progress.

Match Between System and the Real World:

Technical terms such as “playbook” and “inventory” are presented without explanation, which can be unclear to new users.

User Control and Freedom:

There are limited options to cancel or undo job executions, reducing user control over critical actions.

Consistency and Standards:

Inconsistent use of terminology, with terms like “hosts” and “nodes” used interchangeably across different sections, causing potential confusion.

Error Prevention:

Input fields are not validated in real-time, allowing syntax errors and other common mistakes to go unnoticed until later.

Help Users Recognize, Diagnose, and Recover from Errors:

Error messages lack detail and do not provide specific information or suggested corrective actions, making it difficult for users to resolve issues.

Sugested feature result

Visibility of System Status:

The system should provide immediate feedback through a loading spinner or status bar when a job is launched, indicating the task's progress.

Match Between System and the Real World:

Technical terms such as “playbook” and “inventory” should have tooltips or a glossary accessible from the interface to help new users understand their meanings.

User Control and Freedom:

Users should have the option to cancel or undo job executions easily, possibly through an undo feature or a confirmation prompt before critical actions.

Consistency and Standards:

Terminology like “hosts” and “nodes” should be used consistently across all sections of the interface to avoid confusion.

Error Prevention:

The system should validate input fields in real-time, providing immediate feedback for syntax errors or other common mistakes.

Help Users Recognize, Diagnose, and Recover from Errors:

Error messages should be detailed, providing specific information about the error and suggestions for corrective actions.

Additional information

This issue is based on findings from a heuristic evaluation conducted using Nielsen's 10 Usability Heuristics. Addressing these issues would significantly enhance the user experience and efficiency of the Ansible AWX web UI.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants