Top Banner
UC Berkeley CS160 Spring 2012 User Interface Design Ginect Benj Shapiro Jessica Ho Jin Woo Roh Kelvin Lam When Kinect meets Git. Solution A Graphical User Interface (GUI) that: organizes Git in a way that is easy to learn organizes large quantities of information in a way that is easy to work with is aesthetically pleasing We decided to use Kinect technology to make our GUI’s interaction consistent with the Git metaphor that defines concepts like pushing and pulling to and from repositories. The Kinect allows us to map physical interactions to Git functions so that users can push to execute git push and pull to execute git pull, etc. These mappings implictly guide users through Git’s functionality. Problem Git is hard. Not only is it hard, but it’s completely terminal-based. This makes it difficult to learn. Furthermore, terminal-based version-control is difficult to use with large amounts of data. There are existing (non-kinect) GUIs, but they are also difficult to master and utilize abstract buttons and text fields that do not map onto real-world functions. Design Evolution Today’s Ginect evolved from a low-fidelity prototype with a fairly different layout. We had tried to keep elements in areas in which they fit together visually, but found that users preferred to have elements with similar functions next to each other; grouping was very important to our users. We added new features like advanced repository and security configuration, automated file removal, and repository refresh, but we also streamlined much of Ginect’s functionality by simplifying many of the gestures we had originally required for user interactions. Final Prototype Target User Group Our target users are software engineers who are getting serious about industry-level work on large projects and want to use Git to manage their code in a practical and easy way. Terminal-based Git can be quick and efficient to use, but once these users start working on very large projects, it becomes hard to deal with a text-only interface. Features Git pull, push, status, rm, add, commit, tag, fetch, ls File system display at all levels of data Easy gestures that map to expected Git functions Aesthetic GUI Easy-access Help menu and documentation Future Updates Addition of more Git commands File system display scrolling Code-editing IDE within Ginect Automated directory refresh without command from user Visual cues showing whether files have been changed since the last commit Commit logs in remote repository mode Ginect’s Working Copy screen, which allows users to perform operations on their local file system. On the left, our original paper prototype with interface elements labeled. On the right, our current implementation. Some visible design improvements include the addition of a removal system, refresh capabilities, and many layout changes. Ginect’s Local Repository screen, which allows users to perform operations on their local Git repository. Ginect’s Remote Repository screen, which allows users to perform operations on their local Git repository. Ginect’s Configuration Screen, which allows users to perform operations on their local Git repository.
1

UC Berkeley CS160 Spring 2012 Ginect User Interface Designvis.berkeley.edu/courses/cs160-sp12/wiki/images/d/d2/...UC Berkeley CS160 Spring 2012 Ginect User Interface Design Benj Shapiro

Jan 25, 2021

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • UC Berkeley

    CS160 Spring 2012 User Interface Design Ginect Benj Shapiro Jessica Ho

    Jin Woo Roh Kelvin Lam

    When Kinect meets Git.

    Solution A Graphical User Interface (GUI) that:

    organizes Git in a way that is easy to learn organizes large quantities of information in a way that is easy to work with is aesthetically pleasing

    We decided to use Kinect technology to make our GUI’s interaction consistent with the Git metaphor that defines concepts like pushing and pulling to and from repositories. The Kinect allows us to map physical interactions to Git functions so that users can push to execute git push and pull to execute git pull, etc. These mappings implictly guide users through Git’s functionality.

    Problem Git is hard. Not only is it hard, but it’s completely terminal-based. This makes it difficult to learn. Furthermore, terminal-based version-control is difficult to use with large amounts of data. There are existing (non-kinect) GUIs, but they are also difficult to master and utilize abstract buttons and text fields that do not map onto real-world functions.

    Design Evolution Today’s Ginect evolved from a low-fidelity prototype with a fairly different layout. We had tried to keep elements in areas in which they fit together visually, but found that users preferred to have elements with similar functions next to each other; grouping was very important to our users. We added new features like advanced repository and security configuration, automated file removal, and repository refresh, but we also streamlined much of Ginect’s functionality by simplifying many of the gestures we had originally required for user interactions.

    Final Prototype

    Target User Group Our target users are software engineers who are getting serious about industry-level work on large projects and want to use Git to manage their code in a practical and easy way. Terminal-based Git can be quick and efficient to use, but once these users start working on very large projects, it becomes hard to deal with a text-only interface.

    Features Git pull, push, status, rm, add, commit, tag, fetch, ls File system display at all levels of data Easy gestures that map to expected Git functions Aesthetic GUI Easy-access Help menu and documentation

    Future Updates Addition of more Git commands File system display scrolling Code-editing IDE within Ginect Automated directory refresh without command from user Visual cues showing whether files have been changed since the last commit Commit logs in remote repository mode

    Ginect’s Working Copy screen, which allows users to perform operations on their local file system. On the left, our original paper prototype with interface elements labeled. On the right, our current implementation. Some visible design improvements include the addition of a removal system, refresh capabilities, and many layout changes.

    Ginect’s Local Repository screen, which allows users to perform operations on their local Git repository.

    Ginect’s Remote Repository screen, which allows users to perform operations on their local Git repository.

    Ginect’s Configuration Screen, which allows users to perform operations on their local Git repository.

    Slide Number 1