Training activity information
Details
Gather user requirements for a pipeline and select appropriate tools and scripting language for the pipeline and justify selection
Type
Developmental training activity (DTA)
Evidence requirements
Evidence the activity has been undertaken by the trainee.
Reflection on the activity at one or more time points after the event including learning from the activity and/or areas of the trainees practice for development.
An action plan to implement learning and/or to address skills or knowledge gaps identified.
Considerations
- Limitations of different approaches
- Language versions
- Impact on patient care and patient experience
- Impact on patient confidentiality
Reflective practice guidance
The guidance below is provided to support reflection at different time points, providing you with questions to aid you to reflect for this training activity. They are provided for guidance and should not be considered as a mandatory checklist. Trainees should not be expected to provide answers to each of the guidance questions listed.
Before action
- Why is understanding user needs crucial in software development for healthcare? What factors influence the selection of tools and scripting languages?
- What are your current skills in eliciting and documenting requirements? How familiar are you with different bioinformatics tools and scripting languages relevant to pipeline development?
- How will you effectively translate user needs into technical specifications? What criteria will you use to justify your tool and language choices?
- Will you research common user needs for bioinformatics software? Will you review the strengths and weaknesses of different tools and languages? Will you think about how to structure a justification?
In action
- How are you approaching the process of gathering user requirements? What questions are you asking to elicit the necessary information?
- As users describe their needs, what tools and scripting languages are coming to mind? What is your initial reasoning for these choices?
- Are there any conflicting or unclear requirements emerging from the user discussions? How are you addressing these in the moment to gain clarity?
- How are you weighing the pros and cons of different tools and languages based on the user requirements and your existing knowledge?
- What assumptions are you making as you gather requirements and consider potential solutions? Are these assumptions valid?
On action
- What were the main user requirements you gathered? What challenges did you encounter in eliciting these requirements? What did you notice about the process?
- What tools and scripting language did you select for the pipeline? What were the key justifications for these choices based on the user requirements and your understanding? What alternative options did you consider and why did you decide against them? What did you learn about the process of gathering user requirements and selecting appropriate software development tools? How did your real-time considerations (reflect-in-action) during the requirement gathering and selection influence your final choices?
- What will you take from this experience regarding how to effectively gather user needs and make informed decisions about software tools and languages in the future?
Beyond action
- Reflecting on your experience of gathering user requirements, have your approaches to stakeholder engagement and requirement elicitation changed in subsequent training activities?
- How has your understanding of the importance of user needs in software development been reinforced or challenged by later experiences in the Software module or other modules?
- Consider if your initial justifications for the tools and scripting language selected still hold true in light of your further understanding gained in later training activities. Would you make the same choices now? Why or why not?
- Think about a situation in a later training activity or an observation of a real-world bioinformatics project where the importance of well-defined user requirements became evident (either through success or failure). How does your experience in this training activity relate to that observation?
- How will the skills you developed in understanding user needs and making informed tool selections contribute to your ability to contribute to service development and improvement in the future?
Relevant learning outcomes
| # | Outcome |
|---|---|
| # 2 |
Outcome
Use a programming language to create software. |
| # 3 |
Outcome
Apply best practice in software development and code testing. |
| # 5 |
Outcome
Identify and ensure the needs of stakeholders and patients are met in the development of software, maintaining patient safety and confidentiality. |