Linux Foundation Build Management Tool
The Yocto Project is an open source tool for creating customised Linux-based operating systems for mobile and embedded devices. Intel, the project’s sponsor, wanted to broaden the project’s appeal without alienating the existing community of command line-centric developers. They hired me to design a GUI which would help users of varying levels of technical ability manage the complexity of customising Linux builds.
Working with the in-house UX lead, I began each iteration with a deep-dive workshop with the Yocto technical leads. I then created detailed task flows to help us understand the process of customising a Linux build. Next, we built a clickable prototype, remotely tested it with users around the world, and presented our findings and video highlights to the leadership team. To keep project contributors involved, we used a community mailing list for discussions and posted designs and test results to the project wiki.
To win over skeptical developers, we initially focused on analysis tools which were awkward or nonexistent on the command line. These included a tree map to help developers see which packages are eating up precious storage space, a sunburst diagram to help them visualise the structure and location of files within their disk image, and a network map to reveal package dependencies.
The user test revealed a diverse group which varied in their tasks, work environment and experience. While they often disagreed about which tools were most useful they all found at least one tool that got them excited. On seeing the dependency tracker, one particularly sceptical user exclaimed, ‘Oh, now that would be useful!’