Enhancing UX Design
User experience (UX) design poses significant challenges when incorporating it into user stories. UX improvements require high-level impact and behavior changes, demanding careful execution before software implementation. Otherwise, designers may merely apply surface-level enhancements, leading to a false sense of success, over-engineered solutions, and, ultimately, the wrong products. To address this, planning to evaluate the outcome after delivering a story encourages better writing, similar to the effect of test-driven development on code. It fosters focus, clarity, and the delivery of superior solutions.
A practical strategy for managing these issues is to address global concerns at each milestone, establishing a framework applicable to all work within that delivery phase. By creating a pyramid of quality inspired by Maslow’s hierarchy of needs, acceptance criteria can be added to each level. The pyramid’s bottom-up questions are as follows: Does it work? (functionality and deployment), Does it work well? (security, performance, capacity), Is it usable? (usability, design), Is it useful? (behavior changes, user-level goals), and Is it successful? Consider developing a checklist of expectations for global concerns like usability and security. Importantly, involve a mix of senior technical and business personnel to ensure diverse perspectives and challenge assumptions, thus avoiding impractical or unattainable targets.
Implementing an effective triaging system for software projects involves stakeholders asking two crucial questions for each item: Is it mission-critical? (Can the business operate without it?) and Is it market-differentiating? (Does it attract customers, provide a competitive advantage, or similar benefits?). While the original purpose alignment model focuses on business processes rather than software features, value statements (“To…”) within user stories facilitate purpose alignment. Prioritize delivering the user interface part on a straightforward architecture, skipping any back-end components that may impede timely delivery, even for a short period. To minimize future surprises, aim to create a user interface that resembles the final version in appearance and functionality. Continuously iterate on the interface until the value delivery is confirmed, and then make minimal changes to the user interface when replacing the back end to avoid unexpected complications.
During initiating a new project or a legacy rewrite, teams often assert that an entire underlying infrastructure must be in place before providing any value. Instead of relying solely on estimation, start with a budget considering the significant operational costs and time required for substantial work. This budget serves as a design constraint for the delivery team, addressing scalability and performance. If modifications to the user interface are necessary, consider implementing multi-versioning to support uninterrupted usage.
Rather than asking, “How long will it take?” inquire about the desired deadline and the budgetary limitations. The delivery team must devise solutions that adhere to these constraints. Estimating the exact financial value of a project may be challenging for most businesses, but exploring extreme scenarios can be helpful. For instance, determine the minimum impact the project needs to generate and the threshold that would deem it worthwhile for all stakeholders.
Story sizing often sparks heated debates in online forums and poses challenges for inexperienced teams. Inexperienced teams often misuse story sizes for long-term planning and capacity management, leading to detrimental outcomes and misrepresentation. Frequently, stories are roughly estimated months before delivery, inadvertently transforming initial approximations into strict commitments for specific dates. Cumulative calculations are made, projecting the eventual delivery of more oversized work items.