In the second of our three-part blog series on the new CIO’s first 90 days of software development, we look at month two.
Your first 30 days armed you with knowledge of existing software projects, legacy issues, and required actions. For new projects, you secured business commitment and gained the necessary insights. Through robust assessment, you understand the organisation’s IT and data landscape, critical projects to deliver, and any threats posed by regulatory or compliance requirements. So, what’s next?
Days 30-60: Your key objectives
For new projects, month two involves defining the requirements of the solution or product. You will develop business requirements and design high-level solutions through functional and non-functional stories. Validating business requirements, defining business acceptance criteria, and confirming the implementation approach are also key objectives for month two.
New CIOs working on existing software projects will work to remove roadblocks and tackle any legacy issues in their second month.
Days 30-60: New project key actions
Action #1 – Facilitate brainstorm sessions to build requirements/product stories
Map out what the solution looks like for your software development project by defining functional user requirements (what it does) and non-functional requirements (how it does it) through stories: short descriptions of the required functionality. Stories can be categorised as:
- Stories (or user stories): Short requirements/requests written from end-users’ perspective.
- Features: A chunk of functionality that delivers business value.
- Epics: Larger bodies of work that can be broken down into smaller tasks (stories).
- Initiatives: Collections of epics with a common goal.
- Themes: Large focus areas spanning the organisation.
Functional user stories are from an individual’s perspective (who), describing a goal (what) and a reason (why). They generally fit the INVEST framework:
- Independent: Developed and delivered separately.
- Negotiable: Room for discussion.
- Valuable: Add customer value.
- Estimable: Divisible into tasks.
- Small: Achievable in under 40 hours’ work.
- Testable: Using acceptance criteria to ensure fit with customers’ needs.
Non-functional requirements focus on key elements of product performance such as response time, utilisation, scalability, capacity, availability, authorisation, order processes, etc.
Action #2 – Define your acceptance criteria
Save time and budget and avoid misalignment with the business: Use well-defined acceptance criteria to define boundaries and confirm when a story is working as intended. An example of acceptance criteria might be “a user cannot submit the form without completing all mandatory fields”.
Action #3 – Commit to Agile
Almost 86% of software developers now use an Agile approach in their work (Stack Overflow, 2018), which starts with a minimum viable product (MVP) and adds new priorities in stages called iterations. With a 28% greater chance of project success (PwC, 2017), Agile ensures faster and more iterative development than traditional project management approaches such as Waterfall.
Action #4 – Assess development team skill sets
Projects often require particular skillsets or programming languages, which can shift with scope or requirement changes. Be prepared to outsource work depending on in-house team capabilities and priorities. If time is less of an issue training can be used to plug gaps; if you need to recruit new talent, ensure an environment and package is in place to support them.
Action #5 – Undertake a health check on existing projects
If you are adopting an existing project, it is important to gauge if the project has stalled or gone off track. Assess the state of play by examining high-level requirements and assessing progress against roadmaps, governance, and KPIs. Once complete, you can accommodate important changes, reprioritise workflows, and make recommendations where necessary.
Why now?
Make headway in your first few months by focusing on planning and design. Establish groundwork for the project roadmap by building out software requirements for new projects, or get the development cycle moving on existing projects by identifying and remedying issues.
We can help
At Amdaris, we specialise in delivering successful software development projects. Whether you have questions about mapping out your solution, the benefits of Agile methodology, or any other aspect of the software development cycle, get in touch to speak to one of our experts.