CSC364 Software Engineering

Software Engineering old question papers

Pick a year on the left to see the full paper, exactly as it was set. 9 questions have come up in more than one paper.

12 questionsSit this paper (timed)

Tribhuvan University

Bachelor of Science in Computer Science and Information Technology

Semester 6 · TU Board 2082

Course Title: Software Engineering (CSC364)

Full Marks: 60Pass Marks: 24Time: 3 hours

Candidates are required to give their answers in their own words as far as practicable. The figures in the margin indicate full marks.

Group A

Attempt any two questions.(2 × 10 = 20)

  1. 1.

    What is software testing? Explain the software testing process in detail. Differentiate between development testing and release testing. How does Test-Driven Development (TDD) improve software quality? Explain with an example.

    10
  2. 2.

    Explain architectural design decisions that must be made during the architectural design process. Describe the following architectural patterns with suitable diagrams:

    • a) Model-View-Controller (MVC) architecture
    • b) Client-Server architecture
    • c) Pipe and Filter architecture
    10
  3. 3.

    What is project management? Explain different project management activities in detail. Discuss risk management process with suitable example showing how risks are identified, analyzed, and mitigated in a software project.

    10

Group B

Attempt any eight questions.(8 × 5 = 40)

  1. 4.

    What is requirements elicitation? Explain different requirements elicitation techniques used in requirements engineering process.

    5
  2. 5.

    A software project is estimated to be 320 KLOC. Using the COCOMO model, calculate the effort (person-months) and development time (months) for:

    • a) Organic mode
    • b) Embedded mode

    Use the following formulas:

    • Organic: Effort = 2.4(KLOC)^1.05, Time = 2.5(Effort)^0.38
    • Embedded: Effort = 3.6(KLOC)^1.20, Time = 2.5(Effort)^0.32
    5
  3. 6.

    Differentiate between incremental development and integration and configuration model. Which model is suitable for large-scale enterprise systems and why?

    5
  4. 7.

    Draw a context model and use case diagram for an Online Food Delivery System. Make necessary assumptions.

    5
  5. 8.

    What is software quality management? Explain the relationship between quality management, quality assurance, and quality control with examples.

    5
  6. 9.

    Explain the concept of Model-Driven Architecture (MDA). How does it help in system modeling? What are its advantages and disadvantages?

    5
  7. 10.

    What do you understand by implementation issues in software development? Discuss reuse, configuration management, and host-target development as implementation issues.

    5
  8. 11.

    Differentiate between corrective, adaptive, perfective, and preventive maintenance. Which type of maintenance consumes the most resources and why?

    5
  9. 12.

    Write short notes on:

    • a) Open-source development
    • b) Agile project management
    5

— The End —