Is it difficult or time-wasting for developers to adjust page design based on component design changes?



  • I have been curious about that how much effort developers have to make to adjust components to accommodate changes in UI design. Sometimes I think a design from UX is good and there's no problem for the developer to implement this new design, but the developers say this design is different from current component. Why can't they just change the component based on the design? Is it difficult for them?



  • Proviso

    This is a site for project management, not engineering, so I'm going to provide you a project management answer. If you want an engineering answer, you might have to find a different site to ask the question.

    TL;DR

    "Design" is often a term applied to some artistic rendering or wire-frame during product design, so it's more of a visual aid than a set of actionable specifications. There are exceptions (as there always are), but this is true often enough that you can generally assume that the user interface (UI) design (as opposed to the UI implementation) is easier to change than part of the product implementation itself.

    There's no canonical answer here. The only generalizable solutions are better communication and collaboration between the roles of design and implementation.

    Analysis and Recommendations

    Depending on your product (let's pretend it's a web site for simplicity of the example), UI changes can be as simple as:

    Can you please move this checkbox three pixels to the left?

    and as hard as:

    We want this field to be populated by the known set of users who live in Spokane with odd-numbered ZIP codes whose last name also ends in the letter A.

    On its face, the first change is much easier to accomplish than making major changes to the back-end logic and database to implement the second change request. However, the only people who know for sure how difficult a change is are the people who need to make it, e.g. the designers, front-end developers, and back-end developers.

    If you're lucky, all three things are handled by the same full-stack people, but at worst you should have all three skills sets represented within your team so that they can collaborate on the best way to implement any needed changes. Without that collaboration, and without communication and estimates from the people who will actually do the work, it's impossible to accurately assess the level of complexity for any part of the proposed work.

    The project leadership's input should be a what, e.g. what changes need to be made in order to meet some measurable business objective. The team's input should be a how, e.g. how the team can most effectively meet the new product objective given the current state of the product, the skills and tools available to the team, and the level of effort involved in the ask.

    The only way to accurately get that information is to ask the people involved. Ask the designers why they need this change. Ask the change-implementers what the change involves for them, and if there are options or circumstances that might affect the level-of-effort needed to implement the change.

    If you're looking for a universal, canonical answer: there isn't one. However, as a purely pragmatic rule of thumb design is easier than implementation, especially if the implementation is treated as a downstream or "over the wall" task that doesn't take the complexity of implementation into consideration. The only generalizable solutions are better communication and collaboration between the roles of design and implementation. If it's not your role to facilitate that, then please escalate it to the role that does own the collaboration and communication within the product development organization.




Suggested Topics

  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2