0% found this document useful (0 votes)
30 views5 pages

Mid2 Exam Solution

The document outlines the midterm examination for the Software Engineering course at the National University of Computer & Emerging Sciences, detailing instructions, questions, and their respective weightages. It covers architectural patterns, cohesion and coupling concepts, and functional/non-functional requirements for an ATM system. The exam is scheduled for April 6, 2023, and consists of three questions with a total of 15 points.

Uploaded by

sherroz876
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
30 views5 pages

Mid2 Exam Solution

The document outlines the midterm examination for the Software Engineering course at the National University of Computer & Emerging Sciences, detailing instructions, questions, and their respective weightages. It covers architectural patterns, cohesion and coupling concepts, and functional/non-functional requirements for an ATM system. The exam is scheduled for April 6, 2023, and consists of three questions with a total of 15 points.

Uploaded by

sherroz876
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

National University of Computer & Emerging Sciences, Karachi

Midterm – II- solution (Spring-2023)


6th April 2023, 08:30 AM – 09:30 AM
Course Code: CS3009 Course Name: Software Engineering
Instructor Name: Hajra Ahmed, Dr. Syed Muazzam Ali Shah, Noureen Fatima
Student Roll No: Section No:

Instructions:

 Return the question paper and make sure to keep it inside your answer sheet.
 Read each question completely before answering it. There are 3 questions and 2 pages.
 In case of any ambiguity, you may make assumption. But your assumption should not
contradict any statement in the question paper.
 You are not allowed to write anything on the question paper (except your ID and section).

Time: 60 minutes. Max Marks: 15 Points

Questions 1: [CLO-1][weightage-1+3+1, pt-


2+6+2]
a)
 What architectural patterns/styles might be used?
 How should the architecture of the system be documented?
 How will the system be distributed across hardware cores or processors?
 How will the structural components in the system be decomposed into
sub-components?
 What will be the fundamental approach used to structure the system?

b)

This model is a way of understanding the key considerations or important perspectives that need
to be addressed in software architecture.

Logical View:
Definition: It focuses on Object-oriented decomposition, shows the key abstractions in the
system as objects or object classes.
View: End user
Considers: Functional requirements
UML Diagram: Class Diagram, State Diagram

Process View:
Definition: It focuses on process decomposition. Shows how, at run time, the system is
composed of interacting processes.
View: Integrator
Considers: Non-functional requirements, useful for making judgements about non-functional
system characteristics such as performance and availability.
UML Diagram: Activity Diagram

Development View:
Definition: It focuses on subsystem decomposition. Shows how the software is decomposed for
development. It shows the breakdown of the software into components that are implemented by a
single developer or development team.
View: Programmers and Software Managers
Considers: Software module organization (hierarchy of layers, software management, reuse,
constraints of tools)

Physical View
Definition: It focuses on mapping the software to the hardware. It shows how software
components are distributed across multiple cores/processors in the system.
View: System engineers
Considers: Non-functional requirements regarding underlying hardware (topology,
communication)
UML Diagram: Deployment Diagram

* These views/perspectives can be linked through common use cases or scenarios.

Conceptual View: This view is an abstract view of the system that can be the basis for
decomposing high-level requirements into more detailed specifications, help engineers make
decisions about components that can be reused, and represent a product line rather than a single
system.

c) Pipe and Filter Architectural pattern

Questions 2: [CLO-2][weightage-1+4, pt-


2+8]

a)
Cohesion is an indication of the relative functional strength of a module. Coupling is an
indication of the relative interdependence among modules.
Purpose: 1. Easy to develop
2. Easy task scheduling
3. Less error propagation chances
4. Reusable modules

Good design is to be achieved, one should strive for high cohesion and low coupling

b)

 Not provided any dropdown so user can select location


 No- No clear button. Only ok button
 No. It is not known whether the already added reminder can be edited or deleted.
Moreover, the link is blue but not underlined so it is hard to guess it is a link. OK does
not clearly describe what would happen after clicking it.
 No there is different font family and different format

Questions 3: [CLO-4][wieghtage-3+2, pt-


6+4]

a)
b)

Functional:

 Insert the card and an incorrect PIN to verify the message.


 Verify the message when there is no cash in the ATM.
 Verify the messages after a transaction.
 Verify if a user will get a correct message if a card is inserted incorrectly.
 Verify the functionality by entering a wrong pin number 3 or more times.
 Verify the card reader functionality by inserting an expired card.
 Verify the deposit slot functionality by inserting an invalid cheque.
 Verify the cash withdrawal functionality by inserting invalid numbers like 10, 20, 50 etc.
 Verify the cash withdrawal functionality by entering an amount greater than the per day
limit,
 Verify the cash withdrawal functionality by entering an amount greater than per
transaction limit.
 Verify the cash withdrawal functionality by entering an amount greater than the available
balance in the account.

Non – functional:

 Verify the timeout session functionality.


 Verify the text color and font of the data on the screen. The user should be able to read it
clearly.
 Verify the language selection option. If the messages or data are displayed in the
selected language

You might also like