Q1:
This question concerns the development of a small software system. The scenario below outlines the problem
domain. This description is not complete, but it contains all the information needed to answer the questions
from 1.1 to 1.10. [Any answer not related to the scenario will be given ZERO mark]. Due to COVID19
pandemic, organizations started applying restrictions and rules for visitors as part of safety measures. It is
worth thinking about developing a visitor management system. The proposed system should allow the visitors
view the visiting schedule of every department of the organization. They should be able to submit a request for
an appointment. The booking of appointments include filling out an online form, for incomplete detailed the
system rejects the request. The staff approves the appointments after verifying the details. The staff schedule
meeting, cancel meetings and send emails. The managers of each department approves the meeting schedule
after checking their duty schedule. The system administrator does the system maintenance which includes
system shut down and error reports. Before developing the application, there is a need to identify various
factors such as the software architecture, deployment platform, project risks and assumptions etc. In addition,
the system should provide a user friendly web interface to the users and should be able to access using
various devices. The system is expected to be functioning within half a year. The system shall operate in
accordance with the operating country’s monitoring agency and laws.
1.1 Identify any TWO requirement constrains mentioned in the scenario.
1.2 Extract TWO business processes from the given scenario
1.3 Mention any TWO business rules mentioned in the given scenario
1.4 There are a set of functional requirements of the system mentioned in the given scenario. List TWO of
them with their types.
1.5 Identify four non-functional requirements matching with the scenario along with their types.
1.6 Suggest any two testing strategies to ensure correctness of the developed system. • You must relate your
testing appropriately with the scenario and related components.
1.7 Discuss possible advantages of separating your proposed system’s user interface from the domain logic
mentioned in the scenario.
1.8 • Propose a suitable software architecture for the system with an illustration. Justify the appropriateness of
the architecture for your proposed system • Do you think choosing the architecture very late on might be a bad
idea? Why?
1.9 • Identify any two quality attributes which affects the revision requirements of the developed system. • You
must relate your answers appropriately with the system based on the given scenario.
1.10 Draw a use case diagram to model the user role illustrated in the given scenario.
Q2:
2.1 Given below is a Java Program.
2.1.1 Draw a control flow graph to determine the independent paths.
2.1.2 What does Cyclomatic Complexity measure?
2.1.3 Determine the LOC and Cyclomatic complexity of the Java Program.
2.2 Given below is a Java Method.
2.2.1. Determine one test set to satisfy the statement
2.2.2. Draw a control flow graph and determine the Cyclomatic complexity