In the design of software, object-oriented design involves planning a system of interacting objects for the purpose of solving a software problem. So what’s that got to do with user experience (UX) design? We are talking about people and not software. Interestingly, there are many characteristics of the practice of object-oriented design that apply to our UX practice.
This article is about using an object-oriented approach to the practice of UX across an organization. We will not address using object-oriented software approaches to the design of software or web sites to improve the user experience â a worthy but separate topic.
Let’s listen in to a lunchtime conversation between a software practitioner and a UX practitioner as they compare notes on an object-oriented approach to their respective practices. We will hear how user experience (UX) practitioners can relate to the software ideas, and extend them to our unique and critical contributions in the practice of UX design. Our lunchtime colleagues are Safiya from Software and Umberto from UX.
Safiya from Software: In my job, an “object” contains encapsulated data and procedures grouped together to represent an entity.
Umberto from UX: That is a helpful definition, Safiya. UX practitioners need procedures or methods on how to perform our activities consistently and with high quality, and we need data and information about the user experience that results from our activities. Perhaps these could be considered “objects” of a different kind?
Safiya from Software: Yes and in object-oriented programming, we also describe the interaction of these objects. They are not just standalone objects.
Umberto from UX: I understand. In my UX practice, some objects must interact with othersâsuch as user research to inform decision-making about interface design. There must be interaction or the research is for naught.
Takeaway: Objects in the UX world can be personas, scenarios, standards, etc., and we need to have efficient ways to show how they interrelate and can be linked up.
Safiya from Software: First, we conduct object-oriented analysis to define the objects and their interactions in order to solve a problem that was identified.
Umberto from UX: Yes! And we conduct user-centered analysis to identify problems and opportunities before we embark on design challenges and opportunities. Not exactly the same usage as your term, but I think we understand each other.
Safiya from Software: We produce a conceptual model that is the result of object-oriented analysis.
Umberto from UX: UX practitioners develop conceptual models of the end users’ ecosystem and context of use that guides our analysis and design.
Takeaway: UX practitioners need to conduct analysis and modeling of the human interactions, while their software colleagues do the same for the coding.
Safiya from Software: Our artifacts don’t need to be completely developed to serve as input to object-oriented design. Analysis and design may occur in parallel. The results of one activity can feed the other in a short feedback cycle through an iterative process. Both analysis and design can be performed incrementally, and the artifacts can be continuously grown instead of completely developed in one shot. Does that make sense?
Umberto from UX: I think so. We are in a similar situation. In our agile world, we must proceed without perfect or ideal information about end users, and be open and receptive to iterations as we design and observe what works well and what does not for the end user or customer.
Safiya from Software: Do you also need the ability to define the functions or methods without actually implementing them, like we must do?
Umberto from UX: Yes. We can define methods, specifications, etc., without actually producing them. Then they stand at the ready when we need to fire them up for a project. Certainly examples are helpful too.
Safiya from Software: Agreed. When we use the phrase “design pattern,” it is not a finished design but rather a description of a solution to a common problem in a context.
Umberto from UX: Our user interface design patterns fit the bill, and need to be organized and findable by our project teams.
Takeaway: UX practitioners must judge when enough is good enough to proceed with the next step in design or implementation and not get caught in analysis paralysis or design perfection.
Safiya from Software: In my world, a scenario of a use case describes the events that external actors generate, their order, and possible inter-system events.
Umberto from UX: Our scenarios, tasks, use cases, and user stories are written from the customers’ perspective (what they need or want to do) rather than starting from the perspective of software modules “helping” them, before we may completely understand the human interactions required.
Safiya from Software: Our user interface documentation shows and describes the look and feel of the end product's user interface.
Umberto from UX: Yesâagreed. The important consideration is how the user interface is designed, i.e., with appropriate inputs from end users and user-centered designers. Then, we must specify the look and feel to the extent that the software team can implement the structure, and most if not all of the details of the interface and interaction. Pictures work better than words alone.
Takeaway: It may seem obvious but it can be easy to forget whose perspective we are taking in the design process. UX practitioners maintain focus on the customers’ experience, while software practitioners focus on the code and architecture “under the hood” to make it all work.
Safiya from Software: By bundling a large amount of reusable information into a framework, much time is saved for the developer, since he or she is saved the task of rewriting large amounts of standard code for each new application that is developed.
Umberto from UX: Ditto for our practitioners, especially in an agile environment! We can reuse or tweak personas, scenarios, standards as needed but we have to know where to find them first!
Takeaway: Both software and UX practitioners need frameworks to allow them to organize, find, reuse and tweak design artifacts and code.
Safiya from Software: Wow Umberto! We have so much more in common than I would have expected. Let’s get our software and UX groups together and talk some more.
Archer, A., and Stinson, M. (1995, April). Object-Oriented Software Measures. Technical Report CMU/SEI-95-TR-002 / ESC-TR-95-002. Pittsburgh, PA, Software Engineering Institute, Carnegie Mellon University. http://www.sei.cmu.edu/reports/95tr002.pdf
HFI Video: Object-Oriented User Experience (UX) with Dr. Eric Schaffer, UXEâThe Relational Database of UX Objects http://www.youtube.com/watch?v=DBR1Iw2Xy3o
Sign up to get our Newsletter delivered straight to your inbox
HFI may use âcookiesâ or âweb beaconsâ to track how Users use the Website. A cookie is a piece of software that a web server can store on Usersâ PCs and use to identify Users should they visit the Website again. Users may adjust their web browser software if they do not wish to accept cookies. To withdraw your consent after accepting a cookie, delete the cookie from your computer.
HFI believes that every User should know how it utilizes the information collected from Users. The Website is not directed at children under 13 years of age, and HFI does not knowingly collect personally identifiable information from children under 13 years of age online. Please note that the Website may contain links to other websites. These linked sites may not be operated or controlled by HFI. HFI is not responsible for the privacy practices of these or any other websites, and you access these websites entirely at your own risk. HFI recommends that you review the privacy practices of any other websites that you choose to visit.
HFI is based, and this website is hosted, in the United States of America. If User is from the European Union or other regions of the world with laws governing data collection and use that may differ from U.S. law and User is registering an account on the Website, visiting the Website, purchasing products or services from HFI or the Website, or otherwise using the Website, please note that any personally identifiable information that User provides to HFI will be transferred to the United States. Any such personally identifiable information provided will be processed and stored in the United States by HFI or a service provider acting on its behalf. By providing your personally identifiable information, User hereby specifically and expressly consents to such transfer and processing and the uses and disclosures set forth herein.
In the course of its business, HFI may perform expert reviews, usability testing, and other consulting work where personal privacy is a concern. HFI believes in the importance of protecting personal information, and may use measures to provide this protection, including, but not limited to, using consent forms for participants or âdummyâ test data.
HFI may use personally identifiable information collected through the Website for the specific purposes for which the information was collected, to process purchases and sales of products or services offered via the Website if any, to contact Users regarding products and services offered by HFI, its parent, subsidiary and other related companies in order to otherwise to enhance Usersâ experience with HFI. HFI may also use information collected through the Website for research regarding the effectiveness of the Website and the business planning, marketing, advertising and sales efforts of HFI. HFI does not sell any User information under any circumstances.
HFI may disclose personally identifiable information collected from Users to its parent, subsidiary and other related companies to use the information for the purposes outlined above, as necessary to provide the services offered by HFI and to provide the Website itself, and for the specific purposes for which the information was collected. HFI may disclose personally identifiable information at the request of law enforcement or governmental agencies or in response to subpoenas, court orders or other legal process, to establish, protect or exercise HFIâs legal or other rights or to defend against a legal claim or as otherwise required or allowed by law. HFI may disclose personally identifiable information in order to protect the rights, property or safety of a User or any other person. HFI may disclose personally identifiable information to investigate or prevent a violation by User of any contractual or other relationship with HFI or the perpetration of any illegal or harmful activity. HFI may also disclose aggregate, anonymous data based on information collected from Users to investors and potential partners. Finally, HFI may disclose or transfer personally identifiable information collected from Users in connection with or in contemplation of a sale of its assets or business or a merger, consolidation or other reorganization of its business.
If a User includes such Userâs personally identifiable information as part of the User posting to the Website, such information may be made available to any parties using the Website. HFI does not edit or otherwise remove such information from User information before it is posted on the Website. If a User does not wish to have such Userâs personally identifiable information made available in this manner, such User must remove any such information before posting. HFI is not liable for any damages caused or incurred due to personally identifiable information made available in the foregoing manners. For example, a User posts on an HFI-administered forum would be considered Personal Information as provided by User and subject to the terms of this section.
Information about Users that is maintained on HFIâs systems or those of its service providers is protected using industry standard security measures. However, no security measures are perfect or impenetrable, and HFI cannot guarantee that the information submitted to, maintained on or transmitted from its systems will be completely secure. HFI is not responsible for the circumvention of any privacy settings or security measures relating to the Website by any Users or third parties.
Human Factors International, Inc.
PO Box 2020
1680 highway 1, STE 3600
Fairfield IA 52556
HFI reserves the right to cancel any course up to 14 (fourteen) days prior to the first day of the course. Registrants will be promptly notified and will receive a full refund or be transferred to the equivalent class of their choice within a 12-month period. HFI is not responsible for travel expenses or any costs that may be incurred as a result of cancellations.
$100 processing fee if cancelling within two weeks of course start date.
4 Pack + Exam registration: Rs. 10,000 per participant processing fee (to be paid by the participant) if cancelling or transferring the course (4 Pack-CUA/CXA) registration before three weeks from the course start date. No refund or carry forward of the course fees if cancelling or transferring the course registration within three weeks before the course start date.
Individual Modules: Rs. 3,000 per participant âper moduleâ processing fee (to be paid by the participant) if cancelling or transferring the course (any Individual HFI course) registration before three weeks from the course start date. No refund or carry forward of the course fees if cancelling or transferring the course registration within three weeks before the course start date.
Exam: Rs. 3,000 per participant processing fee (to be paid by the participant) if cancelling or transferring the pre agreed CUA/CXA exam date before three weeks from the examination date. No refund or carry forward of the exam fees if requesting/cancelling or transferring the CUA/CXA exam within three weeks before the examination date.
There will be no audio or video recording allowed in class. Students who have any disability that might affect their performance in this class are encouraged to speak with the instructor at the beginning of the class.
The course and training materials and all other handouts provided by HFI during the course are published, copyrighted works proprietary and owned exclusively by HFI. The course participant does not acquire title nor ownership rights in any of these materials. Further the course participant agrees not to reproduce, modify, and/or convert to electronic format (i.e., softcopy) any of the materials received from or provided by HFI. The materials provided in the class are for the sole use of the class participant. HFI does not provide the materials in electronic format to the participants in public or onsite courses.