This website uses the CSS Grid layout, which your browser does not support.

Software Development Life Cycle
Software Development Life Cycle

Problem Statement

Can a well-designed SDLC improve overall project outcomes?

Background

A large, diverse, distributed project group did not have a clearly defined software development life cycle (SDLC). The 10 teams and dozens of team members lacked a clear understanding of other teams' roles, and which roles were needed when. When the process hit a bump, either someone involved would step up, or the process would be flawed. Issues were contentious, yet individuals were skeptical that so large a group could share a single model.

A project group needs to have a shared understanding of which roles are needed when, in order to avoid  frustration and costly rework.

Previous attempts had been rejected by stakeholders.

My Role

  • UX Lead

Methodologies

  • Small team co-design sessions
  • Synthesis between teams
  •  
  • Initial co-design sessions: Convene each team for a co-design session.
  • Ask open questions about the team's internal process, and external needs from other teams. Present to them an overview of how other teams work, and what they each contribute. Assure the team members that they can continue to control and refine their intra-team process, while agreeing to meet other team's needs via standardized inter-team handoffs.
  • UX synthesis: Synthesize input from from co-design sessions. Create draft SDLC.
  •  
  • Followup co-design sessions: Reconvene each team. Solicit input on synthesized SDLC from first round of co-design.
  • UX synthesis: Synthesize any new input. Revise SDLC.
  •  
  • Presentation:
  • Share the final SDLC with stakeholders.
  • Print the final SDLC in large format, and post in a public place.
  • Present final SDLC to the entire group at All Hands meeting.

Findings

  • Shared Understanding: A lack of shared understanding of roles and responsibilities hampered people's understanding of what is possible and what is crucial to project success.
  • Shared Release Cycle: Not all teams are part of the same release schedule. For example, security and reporting work outside of the SDLC release schedule. Also, managed content can be deployed as needed.
  • Discovery Phase: A discovery phase had been missing from almost everyone's vision. Adding that phase to the SDLC engaged the central teams early, and created shared understanding.
  • SDLC adherence: Project Managers can play a crucial role in adherence to the SDLC. Structure regular meetings between team leads and PMs to review SDLC progress and concerns.
Discovery Phase
discovery phase

Outcomes

  • Shared SDLC model
  • Increased efficiency and reduced team frustration
Intra-team Process and Inter-team Handoffs
Team process and handoffs

Reflections

  • Presentation Format: One presentation format may not work for all audiences. Some people only see text, and others only images. Some have mental models that can include multiple dimensions, and others are more linear. Consider varying the presentation format for different audiences.
  • Granularity: Getting the right level of SDLC granularity allows teams to revise their process without affecting the entire SDLC.
Text-Only Format
early SDLC