Complete study guide for Course Unit 2. Master topic generation using the FINER criteria, NUST research proposal structure, research design frameworks, feasibility analysis, and timeline/Gantt chart planning.
A research proposal is a formal document advocating for the execution of a study. Before writing, a candidate CS research topic must be evaluated using the FINER Criteria.
Is the study achievable within the available timeframe (e.g., final-year semester), budget, computational hardware (GPUs, servers), and data access constraints?
Does the topic intrigue both the researcher and the broader computing community, addressing an active industry or academic priority?
Does it provide new insights, extend an existing algorithm to a new context, build a novel system artifact, or re-evaluate existing findings with modern benchmarks?
Does the research respect user privacy, data security, and institutional ethics guidelines (no unauthorized data scraping or security exploits without authorization)?
Does it contribute to advancing CS knowledge, solving real-world infrastructure problems, or improving software practices?
In SCS2110 examinations and final-year project defenses, a research proposal must include the following compulsory sections:
Scope defines the boundaries of the study set by the research objectives (e.g., "This study evaluates network latency only on IPv6 campus wireless networks").
Delimitations are parameters intentionally excluded by the researcher to keep the project feasible (e.g., "5G cellular traffic is intentionally excluded due to lack of local hardware access").
A research design is the master blueprint specifying how data will be collected, measured, and analyzed to answer the research questions.
| Design Framework | Primary Purpose | Typical CS Application |
|---|---|---|
| Exploratory Design | Used when little is known about a new domain or emerging technology. Focuses on discovering insights. | Investigating developer adoption challenges for WebAssembly or quantum computing frameworks. |
| Descriptive Design | Accurately profiles the characteristics of a system, population, or phenomenon without manipulating variables. | Measuring current cybersecurity vulnerability patch distribution rates across municipal networks. |
| Explanatory Design | Seeks to explain cause-and-effect relationships between variables. | Determining why database query compilation time increases exponentially with nested join depth. |
| Experimental Design | Manipulates an independent variable under controlled conditions to observe changes in a dependent variable. | Benchmarking execution speed of a novel lock-free concurrent queue against standard Pthreads mutex queues under load. |
Evaluators scrutinize proposals for practical viability. A proposal without risk mitigation or realistic timelines will be rejected.
Verifies whether required algorithms, APIs, SDKs, or hardware models are accessible and computationally tractable.
Ensures target users or sample groups (e.g., network admins, beta testers) are reachable and willing to participate.
Identifies potential project pitfalls (e.g., loss of cloud access, API deprecation) and specifies fallback contingency plans.