By the end of this chapter, you will be able to:
These skills will help you deliver reliable and user-friendly desktop applications that keep working smoothly in the real world.
Assessing desktop application requirements is a critical step for ICT Technicians in Kenya, as it directly influences the success of software solutions deployed within diverse organizations. Whether supporting a county government office or a retail business, understanding the precise needs of users ensures that desktop applications enhance productivity and align with operational goals. This chapter explores key concepts, documentation practices, and validation techniques essential for gathering and confirming application requirements accurately.
In the ICT workplace, correctly identifying the requirements of a desktop application is fundamental to delivering a solution that meets user expectations. Desktop applications serve a broad range of functions, from patient record management in a clinic to loan processing in a SACCO. Effective assessment begins with grasping the core concepts and terminologies, then learning why desktop applications matter, how user requirements are collected and how they are analysed.
Understanding the terminology used in desktop application requirements is essential for clear communication between ICT technicians, users and stakeholders. This foundation enables a technician to interpret user needs accurately and translate them into technical statements that a developer or installer can act on.
A desktop application is software installed and operated on a personal computer or workstation, designed to perform specific tasks without requiring continuous internet connectivity. Example: a patient record management system running on the reception and consulting room computers of a clinic.
Requirements define what the application must do or the conditions it must satisfy. They include functional aspects such as processing payroll in a county government office, and non-functional aspects such as security and performance.
These specify the core operations the application must perform, such as generating reports or managing inventory. Example: a retail shop application must track stock levels and record each sales transaction.
These relate to quality attributes such as usability, reliability, performance and security. Example: a cooperative society may require that its desktop application encrypts member data and opens a member account in under three seconds, to maintain member trust.
Stakeholders are individuals or groups affected by the application, including end-users, management and ICT support staff. Example: in a secondary school, stakeholders of a fee management application include the bursar, the principal, class teachers, the accounts clerk and the school ICT technician.
A desktop application runs directly on the computer's operating system and uses the computer's own processor, memory and storage. This makes it fast, dependable and suitable for work that must continue even when the network or internet is down. Understanding this value helps a technician decide whether a desktop solution is the right answer to a user's need before requirements are collected.
The main reasons desktop applications remain important are:
User requirements collection is the process of finding out, from the people who will use or be affected by the application, what they need it to do. A technician who skips this stage risks installing or building software that users reject. Different techniques suit different situations, and a good assessment usually combines two or more of them.
The common techniques are:
| Technique | Best used when | Main limitation |
|---|---|---|
| Interviews | Detailed, sensitive or complex information is needed | Time-consuming for many users |
| Questionnaires | Many users must be reached quickly | Low response rates and shallow answers |
| Observation | Actual work practice must be understood | Users may behave differently when watched |
| Document analysis | Existing forms and reports are available | Documents may be outdated |
| Focus groups | Several departments share the same system | Dominant members may overshadow others |
| Prototyping | Users cannot describe needs in words | Users may expect the prototype to be the final product |
Conducting an interview follows these steps:
User requirements analysis is the examination of the raw information collected, so that it becomes clear, consistent and ready to guide the application. Raw notes from interviews and questionnaires are often repetitive, vague or contradictory. Analysis turns them into organised requirements that a developer or installer can understand. Example: a clinic receptionist says "I need to find patients quickly" while the doctor asks for "complete patient history on one screen"; analysis converts these into a search function and a consolidated record view.
The analysis proceeds through these steps:
Example: classification of requirements for a school fee management application.
| Requirement statement | Type | Priority |
|---|---|---|
| Record each fee payment against a student admission number | Functional | Essential |
| Print a receipt after every payment | Functional | Essential |
| Only the bursar and accounts clerk can edit payment records | Non-functional (security) | Essential |
| Generate a fee balance report in under five seconds | Non-functional (performance) | Important |
| Export reports to a spreadsheet file | Functional | Desirable |
The analysed requirements then pass to the documentation and review stages covered later in this chapter.
Even careful technicians meet difficulties when identifying requirements. Knowing them in advance helps to avoid them.
Define functional and non-functional requirements and provide an example of each from a Kenyan hospital setting. (6 marks)
Explain why understanding stakeholders is important when assessing desktop application requirements. (5 marks)
Create a free account to open more of this chapter.
Free: practical guides, quick cards, workplace scenarios and more.
Create a free accountThis chapter explored the essential steps involved in assessing desktop application requirements, beginning with the identification of desktop applications and understanding their significance in various user contexts. It emphasized the importance of gathering user requirements through effective techniques and the subsequent analysis needed to translate these needs into actionable specifications. The documentation of desktop application requirements specifications was detailed, highlighting the necessity of thorough review processes to ensure accuracy and completeness. The chapter also examined various validation techniques to confirm that the documented user requirements align with actual user expectations and system capabilities. Finally, it outlined the preparation of a comprehensive system requirements specification report, which serves as a critical reference for developers and stakeholders throughout the application development lifecycle. This systematic approach ensures that desktop applications are designed to meet user needs effectively while minimizing errors and misunderstandings. Through these processes, the foundation for successful desktop application development is firmly established.
At the start of this chapter we promised you would be able to:
Tick each one you can genuinely do.
So, are you there yet?
You're competent when you can confidently do 50% or more of what this chapter promised.
Sign in to record how you're doing.