Software Engineering Exam Paper 2

S.Y. B.Sc. (Computer Science) CS-232: SOFTWARE ENGINEERING (New CBCS 2019 Pattern)

(Semester-III) (Paper-II)
Time: 2 Hours
Max. Marks: 35


Q1) Attempt any Eight of the following. [8 × 1 = 8]

a) What is a unified process?

  • Answer: The Unified Process (UP) is an iterative and incremental software development process that divides the software development lifecycle into phases, each consisting of iterations. It includes four main phases: Inception, Elaboration, Construction, and Transition.

b) What is ASD?

  • Answer: ASD stands for Agile Software Development, which is an approach to software development that emphasizes flexibility, collaboration, and customer feedback. It involves iterative development, where requirements and solutions evolve through collaboration between self-organizing teams.

c) List the goals of Software Engineering.

  • Answer: The primary goals of Software Engineering are:
    1. Producing high-quality software that meets user requirements.
    2. Managing complexity in software systems.
    3. Ensuring software reliability and maintainability.
    4. Adhering to time and budget constraints.
    5. Achieving customer satisfaction through continuous feedback.

d) What is elicitation?

  • Answer: Elicitation is the process of gathering and collecting requirements or information from stakeholders, such as customers or users, to understand what they need from the software system being developed.

e) What is negotiation?

  • Answer: Negotiation is the process of resolving conflicting requirements or expectations among stakeholders. It involves discussions to arrive at mutually agreeable terms on the requirements and features of the system.

f) Draw a symbol of extend.

  • Answer: In UML, Extend is a relationship between use cases in which the behavior of a use case can be extended by another use case. The symbol is an arrow pointing from the extending use case to the extended use case with the stereotype <> above the arrow.

g) Define: Association.

  • Answer: Association in UML refers to a relationship between two or more classes, objects, or entities. It represents a structural relationship where instances of one class are connected to instances of another class.

h) List of UML diagrams (any Two).

  • Answer: Two common UML diagrams are:
    1. Use Case Diagram: Represents the functionality of a system from the user’s perspective.
    2. Class Diagram: Represents the static structure of a system by showing its classes, attributes, and relationships.

i) What is software design?

  • Answer: Software design is the process of defining the architecture, components, interfaces, and data for a software system to satisfy specified requirements. It transforms requirements into a blueprint for software development.

j) Define: Data Abstraction.

  • Answer: Data abstraction is the concept of hiding the implementation details of data and exposing only essential information. It allows users to interact with data without worrying about how it’s stored or processed.

Q2) Attempt any Four of the following. [4 × 2 = 8]

a) What is system software and application software?

  • Answer:
    • System Software: Software that manages hardware and provides services for application software (e.g., operating systems, compilers).
    • Application Software: Software designed to perform specific tasks for the user (e.g., word processors, web browsers).

b) What are the advantages of scrum?

  • Answer: Some advantages of Scrum include:
    1. Faster delivery of features through iterative cycles (sprints).
    2. Flexibility to adapt to changes in requirements.
    3. Improved collaboration among team members and stakeholders.
    4. Continuous feedback from customers helps ensure the product meets their needs.

c) What is class and object?

  • Answer:
    • A Class is a blueprint or template for creating objects. It defines attributes and behaviors that the objects created from the class will have.
    • An Object is an instance of a class that contains data (attributes) and functions (methods) that operate on the data.

d) What is an Actor?

  • Answer: In UML, an Actor represents a role played by an external entity (user, system, etc.) that interacts with the system. Actors initiate use cases and interact with the system to achieve a specific goal.

e) What are the elements of the design model?

  • Answer: The elements of the design model include:
    1. Classes and Objects: The core components of the system.
    2. Interfaces: Specifies interactions between objects.
    3. Behavioral Elements: Methods and operations that define system functionality.
    4. Relationships: How objects or components are related to one another.

Q3) Attempt any Two of the following. [2 × 4 = 8]

a) Define terms:

  • i) Agile Method
  • ii) Agile Process
  • Answer:
    1. Agile Method: It is a set of software development principles based on iterative and incremental development, focusing on flexibility, collaboration, customer feedback, and fast delivery.
    2. Agile Process: The processes and workflows followed in Agile development, such as Scrum or Kanban, that focus on continuous delivery and improvement.

b) What is Software Requirement Specification?

  • Answer: Software Requirement Specification (SRS) is a detailed document that outlines the functional and non-functional requirements of a software system. It serves as a blueprint for developers and stakeholders to ensure that the system meets user expectations and business needs.

c) What is modularity? Explain its benefits.

  • Answer: Modularity refers to dividing a software system into smaller, independent modules that can be developed and tested independently.
    • Benefits:
      1. Easier maintenance as changes can be made in one module without affecting others.
      2. Reusability of modules in other systems.
      3. Improved readability and understandability of code.
      4. Better scalability by adding or modifying individual modules.

Q4) Attempt any Two of the following. [2 × 4 = 8]

a) Explain advantages and disadvantages of the spiral model.

  • Answer:
    • Advantages:
      1. Risk management: Risks are identified and mitigated early in the process.
      2. Flexibility: Changes can be made in later stages, allowing for evolving requirements.
      3. Iterative development: The model promotes frequent releases, which leads to early detection of issues.
    • Disadvantages:
      1. Complexity: The model can be complicated to manage due to multiple iterations and phases.
      2. Expensive: High costs may be incurred for frequent testing and planning.
      3. Not suitable for small projects: The overhead can be too much for small-scale projects.

b) Define terms:

  • i) Active class
  • ii) Component
  • iii) Artifact
  • iv) Node
  • Answer:
    1. Active Class: A class that has its own thread of control, meaning it can perform tasks independently (e.g., a process or thread).
    2. Component: A modular part of a system that can be independently developed, replaced, or reused.
    3. Artifact: A work product that is produced during the software development process (e.g., documents, code).
    4. Node: Represents a computational resource in a system that can run processes or store data.

c) Describe the component diagram in brief and draw a component diagram for online shopping.

  • Answer: The Component Diagram in UML illustrates the components of a system and how they interact with each other. It shows the organization of components within the system. Component Diagram for Online Shopping:
    • Components:
      • User Interface: For interaction with customers.
      • Payment Gateway: For processing payments.
      • Inventory Management: To track available products.
      • Database: Stores customer and order data.
    • Relationships:
      • UI interacts with Payment Gateway and Inventory Management.
      • Payment Gateway interacts with Database to process transactions.

Q5) Attempt any One. [1 × 3 = 3]

a) Explain any three notations of activity diagram with each notation symbols.

  • Answer:
    1. Initial State: Represents the start of the activity. Symbol: A filled black circle.
    2. Activity: Represents an action or task in the process. Symbol: A rounded rectangle.
    3. Decision: Represents a decision point in the process. Symbol: A diamond shape.

b) Explain the Waterfall Model with a diagram.

  • Answer: The Waterfall Model is a linear sequential software development process where each phase must be completed before the next begins. It consists of the following phases:
    1. Requirement Analysis: Gathering and documenting requirements.
    2. System Design: Designing the software architecture.
    3. Implementation: Coding and creating the software.
    4. Testing: Verifying and validating the software.
    5. Deployment: Deploying the system for use.
    6. Maintenance: Ongoing updates and fixes.
    Diagram: A sequential flowchart showing each phase connected by arrows (like a waterfall).

This concludes the solution to the exam paper.

Scroll to Top