Software Development

Whatever happens, happens.

What is your software development strategy?

Software programs do exactly what the programmer tells them to do. Whatever is programmed to happen, happens.

A strong, simplified User Experience (UX) ensures that software development planning is efficient and provides clear milestones to help define success. When it comes to software development strategies, I recommend Agile software development.

Understanding Agile software development.

Agile software development discovers requirements and develops solutions through the collaborative effort of self-organizing and cross-functional teams and their end-users.

It advocates adaptive planning, evolutionary development, early deliverycontinual improvement, and it encourages flexible responses to change.

The 3 roles within Agile include:

  • Product Owner (aka the Client).
  • Scrum Master (aka the Project Manager).
  • The development team (aka the Programmers).

The 5 meetings within Agile include:

  • Sprint planning. (pre-sprint meeting)
    • Scrum Master and Product Owner agree on total allocated story points, project priority, and due dates.
    • The development team assigns story points to new projects and the Scrum Master assigns projects to the development team.
  • Daily standup. (daily meeting during sprint)
    • The development team updates the Scrum Master by answering the questions: What did you do? What will you do? Is there anything preventing you from moving forward?
  • Sprint review. (weekly meeting during sprint)
    • Scrum Master reviews the projects assigned during the sprint planning phase and provides updates or feedback if necessary.
  • Sprint retrospective. (post-sprint meeting)
    • All members participate in answering the questions: What went well? What didn’t go so well? What can we do to improve?
  • Product backlog refinement. (post-sprint meeting)
    • Scrum Master and Product Owner prioritize the work that will be assigned to the next coding session.

Daily standup meetings help team members align on individual tasks while maintaining accountability for their portion of projects.