How does HCI Understand Human Agency and Autonomy?

Dan Bennett, Oussama Metatla, Anne Roudaut, and Elisa D. Mekler


Human agency and autonomy have always been fundamental concepts in HCI. New developments, including ubiquitous AI and the growing integration of technologies into our lives, make these issues ever pressing, as technologies increase their ability to influence our behaviours and values. However, in HCI understandings of autonomy and agency remain ambiguous. Both concepts are used to describe a wide range of phenomena pertaining to sense-of-control, material independence, and identity. It is unclear to what degree these understandings are compatible, and how they support the development of research programs and practical interventions. We address this by reviewing 30 years of HCI research on autonomy and agency to identify current understandings, open issues, and future directions. From this analysis, we identify ethical issues, and outline key themes to guide future work. We also articulate avenues for advancing clarity and specificity around these concepts, and for coordinating integrative work across different HCI communities.

Cite as
  1. Bennett, Dan, Oussama Metatla, Anne Roudaut, and Elisa D. Mekler. "How does HCI Understand Human Agency and Autonomy?." In Proceedings of the 2023 CHI Conference on Human Factors in Computing Systems (Apr, 2023): 1–18
  address = {New York, NY, USA},
  series = {{CHI} '23},
  title = {How does {HCI} {Understand} {Human} {Agency} and {Autonomy}?},
  isbn = {978-1-4503-9421-5},
  url = {},
  doi = {10.1145/3544548.3580651},
  urldate = {2023-06-16},
  booktitle = {Proceedings of the 2023 {CHI} {Conference} on {Human} {Factors} in {Computing} {Systems}},
  publisher = {Association for Computing Machinery},
  author = {Bennett, Dan and Metatla, Oussama and Roudaut, Anne and Mekler, Elisa D.},
  month = apr,
  year = {2023},
  keywords = {agency, Autonomy, boundary objects, delegation, mixed initiative, Self Determination Theory, theory, user experience},
  pages = {1--18},
  feature = {true}