BE Computer Engineering (Pokhara University) Software Engineering (PU, CMP 348) Question Paper 2078
This is the official BE Computer Engineering (Pokhara University) Software Engineering (PU, CMP 348) question paper for 2078, as set in the regular annual examination. It carries 100 full marks and a time allowance of 180 minutes, across 12 questions. On Kekkei you can attempt this Software Engineering (PU, CMP 348) past paper online with a timer, get instant AI feedback and step-by-step solutions, and track the topics where you lose marks — completely free. Whether you are revising for your BE Computer Engineering (Pokhara University) Software Engineering (PU, CMP 348) exam or solving previous years' question papers, this 2078 paper is a great way to practise under real exam conditions.
Section A: Long Answer Questions
Attempt all / any as specified.
Software process models prescribe how the activities of software development are organized and sequenced.
(a) Explain the Waterfall model and the Spiral model, clearly stating the phases of each. (8)
(b) For a large, safety-critical project where requirements are not fully understood at the outset and the risk of failure is high, justify which of these two models you would recommend and why. (6)
Consider a Hospital Management System that handles patient registration, doctor appointment scheduling, billing, and pharmacy inventory.
(a) Identify and explain the major activities of the requirement engineering process for this system. (6)
(b) Distinguish between functional and non-functional requirements, giving two examples of each from the Hospital Management System. (4)
(c) Draw a use-case diagram for the appointment scheduling subsystem, showing at least two actors and four use cases. (4)
A software project has been estimated to require 33.3 KLOC (thousand lines of delivered source code) and is classified as a semi-detached project.
(a) Using the Basic COCOMO model, compute the estimated effort (in person-months) and the development time, given the coefficients for semi-detached projects: a = 3.0, b = 1.12, c = 2.5, d = 0.35. (7)
(b) Explain the limitations of the COCOMO estimation model and how the Intermediate COCOMO model attempts to overcome them. (5)
Software architecture defines the high-level structure of a system.
(a) Explain any three architectural styles among Layered, Client-Server, Repository (Data-centred), and Pipe-and-Filter, with a suitable diagram for each. (9)
(b) State one advantage and one disadvantage of the Client-Server architecture. (3)
Section B: Short Answer Questions
Attempt all / any as specified.
(a) What is a Software Requirements Specification (SRS) document? List four characteristics of a good SRS. (4)
(b) Briefly explain any two requirement elicitation techniques. (4)
(a) Differentiate between black-box testing and white-box testing. (4)
(b) For the condition if ((a > 0) AND (b < 10)), explain how basis path testing can be used to derive test cases, computing the cyclomatic complexity of the corresponding control flow. (4)
(a) Define coupling and cohesion. Why is low coupling and high cohesion desirable in a good design? (4)
(b) With an example, explain the difference between a Data Flow Diagram (DFD) and a Structure Chart. (4)
(a) What is Software Configuration Management (SCM)? Explain the role of a baseline in SCM. (4)
(b) Describe the change control process used to manage modifications to configuration items. (4)
(a) Distinguish between Quality Assurance (QA) and Quality Control (QC). (4)
(b) Explain the purpose of the CMM (Capability Maturity Model) and briefly describe its five maturity levels. (4)
(a) Explain the prototyping model and state two situations in which it is most appropriate. (4)
(b) What is meant by requirement validation? List two techniques used for it. (4)
(a) Draw a sample Gantt chart for a small project with four activities and explain how it helps in project scheduling. (4)
(b) Differentiate between verification and validation with a suitable example for each. (4)
Write short notes on any two of the following: (4 + 4)
(a) Integration testing strategies (top-down vs. bottom-up)
(b) Regression testing
(c) Software reliability and the MTBF metric