0% found this document useful (0 votes)
19 views37 pages

Asw

Uploaded by

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

Asw

Uploaded by

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

Lecture 1

1. What do requirements define in the context of a software system?


a) The programming language to be used
b) The function of the system from the client's viewpoint
c) The color scheme of the user interface
d) The marketing strategy for the software

2. Why are requirements important in software development?


a) They form the basis for acceptance testing
b) They determine the cost of the project
c) They decide the launch date of the software
d) They establish the programming team's vacation schedule

3. What is the goal of the requirement phase?


a) To define the requirements in a manner that is clear to the client
and the developers
b) To decide on the programming language to be used
c) To finalize the software's marketing strategy
d) To determine the software's price

4. What is the purpose of client interviews in the requirements analysis?


a) To gather information on what the system should do
b) To discuss the software's marketing strategy
c) To decide on the software's price
d) To finalize the software's launch date

5. What is a disadvantage of directly observing users for determining


requirements?
a) It is time-consuming
b) It is too expensive
c) People often work differently when being observed
d) It is too easy
6. What is the purpose of Joint Application Design (JAD)?
a) To collect system requirements simultaneously from key people
b) To decide on the software's price
c) To finalize the software's launch date
d) To discuss the software's marketing strategy

7. What is the difference between functional and non-functional


requirements?
a) Functional requirements describe the functions of the system,
while non-functional requirements are not directly related to
these functions
b) Functional requirements are related to the software's price, while
non-functional requirements are not
c) Functional requirements are related to the software's marketing
strategy, while non-functional requirements are not
d) Functional requirements are related to the software's launch date,
while non-functional requirements are not

8. What is one of the reasons that many organizations are attracted to


lighter weight development processes?
a) They are less expensive
b) They are faster
c) The difficulty of creating and maintaining a detailed requirements
specification
d) They are easier to understand
9. What is one of the traditional methods for determining requirements?
a) Interviews
b) Questionnaires
c) Both a and b
d) None of the above

10.What is a disadvantage of using questionnaires?


a) They are expensive
b) They are time-consuming
c) It's often difficult to obtain unbiased data
d) They are easy to manipulate
11.What does analyzing procedures and other documents involve?
a) Looking at written work procedures
b) Studying business forms
c) Reviewing reports
d) All of the above

12.What does a business form explicitly indicate?


a) Data flow in or out of a system
b) The company's profit margin
c) The company's employee count
d) The company's stock price

13.What can be discovered from analyzing procedures and other


documents?
a) Problems with the existing system
b) Opportunities to meet new needs
c) Organizational direction
d) All of the above

14.What is one of the types of useful documents in analyzing procedures?


a) Written work procedures
b) Business form
c) Report
d) All of the above

15.What does a report enable an analyst to do?


a) Work backwards from the report to the data that generated it
b) Predict future trends
c) Understand the company's financial status
d) None of the above

16.What is a disadvantage of observing people at work?


a) People often work differently when being observed
b) It's time-consuming
c) It's expensive
d) It's easy to manipulate the results

17.What is a benefit of using questionnaires?


a) They are more cost-effective than interviews
b) They can be completed quickly
c) They can be distributed to a large number of people
d) All of the above

18.What should you do before an interview?


a) Prepare a plane
b) Make an appointment
c) Give the interviewee an idea of the subject of the interview
d) All of the above

19.What is the purpose of Joint Application Design (JAD)?


a) To collect system requirements simultaneously from key people
b) To finalize the software's launch date
c) To discuss the software's marketing strategy
d) To decide on the software's price

20.What is the goal of the requirement phase?


a) To define the requirements in a manner that is clear to the client
b) To determine the software's price
c) To finalize the software's marketing strategy
d) To decide on the software's launch date

21.What is the difference between functional and non-functional


requirements?
a) Functional requirements describe the functions of the system,
while non-functional requirements are not directly related to
these functions
b) Functional requirements are related to the software's price, while
non-functional requirements are not
c) Functional requirements are related to the software's marketing
strategy, while non-functional requirements are not
d) Functional requirements are related to the software's launch date,
while non-functional requirements are not

22.What is one of the reasons that many organizations are attracted to


lighter weight development processes?
a) They are less expensive
b) They are faster
c) The difficulty of creating and maintaining a detailed requirements
specification
d) They are easier to understand

23.What is the purpose of prototyping in requirements determination?


a) To quickly convert requirements to a working version of the
system
b) To finalize the software's launch date
c) To discuss the software's marketing strategy
d) To decide on the software's price

24.What is the main advantage of interviewing a group instead of


individuals?
a) More effective use of time
b) Enables people to hear opinions of others and to agree or disagree
c) Difficulty in scheduling a specific time
d) None of the above

25.What is one of the drawbacks of directly observing users?


a) It is time-consuming
b) It is expensive
c) People often work differently when being observed
d) It is easy to manipulate the results

26.What is the purpose of analyzing procedures and other documents?


a) To identify problems with the existing system
b) To determine the software's price
c) To finalize the software's marketing strategy
d) To decide on the software's launch date

27.What is the goal of prototyping in requirements determination?


a) To develop concrete specifications for the ultimate system
b) To determine the software's price
c) To finalize the software's marketing strategy
d) To decide on the software's launch date

28.What is the purpose of verification and validation in requirements


engineering?
a) Verification ensures that the system is built correctly, while
validation ensures that the right system is being built
b) Verification ensures that the right system is being built, while
validation ensures that the system is built correctly
c) Verification and validation are the same thing
d) None of the above

Lecture 2
1. What is a scenario in requirement engineering?
a) A proposed system
b) An interaction with a proposed system
c) A user interface design
d) A software development process

2. Which of the following should be included in a scenario description?


a) Purpose of the scenario
b) Programming language to be used
c) System requirements
d) Project timeline

3. Scenarios are useful for analyzing which type of requirements?


a) Functional requirements
b) Non-functional requirements
c) Performance requirements
d) Implementation requirements

4. What is the purpose of a use case in requirement engineering?


a) To describe user interactions with the system
b) To specify the programming language
c) To design the user interface
d) To estimate project costs

5. How are use cases represented in a use case diagram?


a) As ellipses with the use case name written inside
b) As rectangles with the use case name written inside
c) As lines connecting actors and use cases
d) As arrows pointing to the extending use case

6. What is the purpose of the <<includes>> relationship in a use case


diagram?
a) To represent exceptional or seldom invoked cases
b) To represent behavior that is factored out for reuse
c) To show the conditional interruption of another use case
d) To indicate the extension of another use case

7. What is the purpose of the <<extends>> relationship in a use case


diagram?
a) To represent exceptional or seldom invoked cases
b) To represent behavior that is factored out for reuse
c) To show the conditional interruption of another use case
d) To indicate the extension of another use case
8. Which type of use case behavior description provides a detailed process
description?
a) High-level use case
b) Expanded use case
c) Use case diagram
d) Use case specification

9. What is the purpose of the flow of events in an expanded use case


description?
a) To describe the actors involved in the use case
b) To list the entry conditions for the use case
c) To provide a detailed sequence of actions for the use case
d) To define the relationships between actors and use cases

10.What does the <<include>> relationship indicate in a use case diagram?


a) The use case includes the functionality of another use case
b) The use case extends another use case conditionally
c) The use case is factored out for reuse in another use case
d) The use case represents an exceptional or seldom invoked case

11.Which type of use case relationship can be used to represent exceptional


flows?
a) <<include>> relationship
b) <<extends>> relationship
c) <<uses>> relationship
d) <<invokes>> relationship

12.What is the purpose of the actor in a use case diagram?


a) To represent the system functions
b) To describe the steps of the scenario
c) To interact with the system
d) To design the user interface

13.What should be considered when naming actors in a use case diagram?


a) Choose generic names like "user" or "client"
b) Choose names that describe the role of the actor
c) Use the actor's unique identifier as the name
d) Use technical terms to name the actors

14.What is the purpose of the use case diagram in requirement


engineering?
a) To specify the programming language
b) To design the user interface
c) To provide a high-level view of the system's functionality
d) To estimate project costs

15.Which type of use case relationship represents behavior that is factored


out for reuse?
a) <<includes>> relationship
b) <<extends>> relationship
c) <<uses>> relationship
d) <<invokes>> relationship

16.What is the purpose of a high-level use case description?


a) To describe a process briefly in 2 or 3 sentences
b) To provide a detailed sequence of actions for the use case
c) To define the relationships between actors and use cases
d) To specify the programming language

17.How are actors connected to use cases in a use case diagram?


a) With arrows pointing from actors to use cases
b) With lines connecting actors and use cases
c) With associations represented by dashed lines
d) With dependencies represented by dotted lines

18.What is the purpose of the behavior specification in a use case diagram?


a) To describe the steps of the scenario
b) To specify the programming language
c) To provide a high-level view of the system's functionality
d) To describe the sequence of actions in a use case scenario
19.What does the entry condition describe in an expanded use case
description?
a) The computing requirements for the use case
b) The purpose of the use case scenario
c) The prerequisites for executing the use case
d) The steps of the scenario

20.What is the purpose of a use case diagram in requirement engineering?


a) To specify the programming language
b) To design the user interface
c) To provide a high-level view of the system's functionality and
actors
d) To estimate project costs

Lecture 3

1. What is the purpose of using models in requirements analysis and


specification?
a) To confuse the client and developers
b) To provide a bridge between the client's understanding and the
developers'
c) To complicate the requirements gathering process
d) To replace the need for requirements analysis

2. Why do we need models in requirements engineering?


a) To complicate the understanding of the system
b) To represent the system exactly as it is
c) To simplify complex systems for better understanding
d) To make the system more difficult to develop

3. What is a data flow diagram (DFD) used for?


a) To store and distribute data in a system
b) To manipulate data within a system
c) To graphically represent the processes and data flows in a system
d) To define the client's requirements

4. Which of the following is true about a data flow in a DFD?


a) It represents a process in the system
b) It depicts data at rest
c) It illustrates the movement of data in the system
d) It represents an external entity

5. How is a data flow represented in a DFD?


a) As a square symbol
b) As an arrow with the data flow name on it
c) As a circle symbol
d) As a rectangle symbol

6. What does a data store symbol represent in a DFD?


a) A process in the system
b) Data in motion
c) Data at rest
d) An external entity

7. What should be considered when naming a data store in a DFD?


a) Choose a suitable noun that describes the process it represents
b) Use a code name that is repeated for other data stores
c) Use technical terms to name the data store
d) Select a verb that describes the data flow in the store

8. What does a process symbol represent in a DFD?


a) Data in motion
b) An external entity
c) Data at rest
d) Work or action performed on data

9. How are external entities represented in a DFD?


a) As a square symbol
b) As an arrow with the external entity name on it
c) As a circle symbol
d) As a rectangle symbol

10.What is the purpose of a context diagram in DFD?


a) To illustrate the movement of data within a system
b) To represent a high-level view of the system and its external
entities
c) To store and distribute data in a system
d) To define the client's requirements in detail

11.What does a level-0 DFD represent?


a) The highest level of detail in a DFD
b) The lowest level of detail in a DFD
c) The data stores in a system
d) The processes in a system

12.What does functional decomposition refer to in DFD?


a) Creating a hierarchy of DFDs
b) Balancing inputs and outputs in a process
c) Representing data at rest
d) Illustrating the movement of data within a system

13.What is a level-n diagram in DFD?


a) The highest level of detail in a DFD
b) The lowest level of detail in a DFD
c) A diagram that shows the data stores in a system
d) A diagram that results from decomposing a process n times

14.What is balancing in DFDs?


a) Conserving inputs and outputs between levels of decomposition
b) Creating unbalanced diagrams for clarity
c) Adding additional sources and sinks to a DFD
d) Making the system more complex

15.Which level of DFD provides the most detailed view of processes and
data flows?
a) Context diagram
b) Level-0 diagram
c) Level-1 diagram
d) Level-n diagram

16.How are data flows split in a lower level DFD?


a) By removing them completely from the diagram
b) By merging them into a single data flow
c) By representing them as external entities
d) By separating them into separate data flows

17.What does a context diagram represent?


a) The highest level of detail in a DFD
b) The lowest level of detail in a DFD
c) The major processes and data flows in a system
d) The system boundaries and external entities in a system

18.What is the purpose of a level-0 diagram in DFD?


a) To represent a high-level view of the system and its external
entities
b) To illustrate the movement of data within a system
c) To store and distribute data in a system
d) To define the client's requirements in detail

19.What is a primitive DFD?


a) The highest level of detail in a DFD
b) The lowest level of detail in a DFD
c) A diagram that shows the data stores in a system
d) A diagram that represents a single process with no further
decomposition

20.What is the purpose of decomposition in DFDs?


a) To make the system more complex
b) To simplify the system for better understanding
c) To remove processes and data flows from the diagram
d) To merge processes and data flows into a single entity
e) Answer: b) To simplify the system for better understanding

Lecture 4
1. Logic modeling is used to:
a) Show the logic inside processes
b) Represent external entities in a system
c) Define the client's requirements in detail
d) Simplify complex systems for better understanding

2. Which of the following is NOT a deliverable or outcome of logic


modeling?
a) Decision tables
b) Data flow diagrams
c) Sequence diagrams
d) State-transition diagrams

3. Structured English is a modified form of English that:


a) Uses complex adjectives and adverbs
b) Is similar to a programming language
c) Does not use noun phrases
d) Ignores if conditions and case statements

4. Decision tables are best used when:


a) The logic of a decision is simple and straightforward
b) The process contains several different conditions
c) The process does not involve any actions
d) The logic can be represented using structured English

5. A decision table consists of:


a) Condition stubs, action stubs, and rules
b) Actions, nouns, and verbs
c) Processes, data flows, and external entities
d) Inputs, outputs, and transformations

6. An indifferent condition in a decision table is a condition that:


a) Affects the resulting action for every rule
b) Does not affect the resulting action for any rule
c) Affects the resulting action for two or more rules
d) Is irrelevant to the decision being made

7. When creating decision tables, it is important to:


a) List only the relevant conditions and actions
b) Define the actions before naming the conditions
c) Skip the step of simplifying the table
d) Include redundant rules to ensure completeness

8. Decision trees are graphical representations of decision situations that:


a) Use arcs and ovals to connect decision points and actions
b) Represent data flows and processes in a system
c) Show the logic inside processes using structured English
d) Provide a high-level view of the system and its external entities

9. In a decision tree, the root node is:


a) The last node on the right
b) The first node on the left
c) The node with the highest number
d) The node with the lowest number

10.Decision trees are read from:


a) Right to left
b) Bottom to top
c) Top to bottom
d) Left to right

11.Which of the following is NOT a component of a decision tree?


a) Decision points represented by nodes
b) Actions represented by ovals
c) Conditions represented by arcs
d) Rules represented by paths

12.When deciding among structured English, decision tables, and decision


trees, which method is best for determining conditions and actions?
a) Structured English
b) Decision tables
c) Decision trees
d) They are equally good for determining conditions and actions

13.Which method is best for transforming conditions and actions into a


sequence?
a) Structured English
b) Decision tables
c) Decision trees
d) They are equally good for transforming conditions and actions into
a sequence

14.Checking consistency and completeness is best done using:


a) Structured English
b) Decision tables
c) Decision trees
d) All three methods are equally good for checking consistency and
completeness

15.The logic modeling technique that uses a modified form of English is:
a) Structured English
b) Decision tables
c) Decision trees
d) State-transition diagrams

16.Which logic modeling technique is best suited for representing


complicated decision logic?
a) Structured English
b) Decision tables
c) Decision trees
d) Sequence diagrams

17.Decision tables consist of three parts, including:


a) Condition stubs, action stubs, and rules
b) Data flows, processes, and external entities
c) Nodes, arcs, and ovals
d) Inputs, outputs, and transformations

18.Decision trees are used for communication with users and represent
decision situations using:
a) Nodes and actions
b) Nodes and conditions
c) Paths and rules
d) Ovals and arcs
19.In a decision tree, rules are represented by:
a) Nodes
b) Actions
c) Paths
d) Ovals

20.When creating a decision table, what is the standard procedure for


reducing it?
a) Remove all irrelevant conditions and actions
b) Combine rules with similar conditions and actions
c) Simplify the table by eliminating redundant rules
d) Rearrange the conditions and actions for better readability

21.Decision tables are especially useful when:


a) The logic of a decision is straightforward and simple
b) The process contains many nested statements
c) The conditions and actions are difficult to express in English
d) There are no indifferent conditions in the decision logic

22.Which logic modeling technique is best for representing the internal


structure and functionality of processes?
a) Structured English
b) Decision tables
c) Decision trees
d) State-transition diagrams

23.Decision trees are read in what direction?


a) Top to bottom
b) Bottom to top
c) Left to right
d) Right to left

24.Decision trees and decision tables are both used for:


a) Simplifying complex systems
b) Modeling logic inside processes
c) Representing external entities in a system
d) Communication with users

25.Which logic modeling technique is best suited for showing when


processes on a DFD occur?
a) Structured English
b) Decision tables
c) Decision trees
d) Sequence diagrams

Lecture 5
1. What are the advantages of a well-designed system?
a) Easy to implement
b) Understandable
c) Reliable
d) All of the above

2. Badly designed systems may result in:


a) Initial success
b) Ease of maintenance
c) Difficulty in testing
d) Reliability

3. What are the two sub-phases of software design?


a) High-level and detailed design
b) User interface and database design
c) Functional and database design
d) Architectural and algorithmic design

4. What is the purpose of software architecture?


a) To communicate with customers and users
b) To make early design decisions
c) To facilitate the creation of other software systems
d) All of the above

5. What factors may influence the choice of software architecture?


a) Organization constraints
b) Background and expertise of the architect
c) Technical effects of hardware
d) All of the above

6. What is the main objective of software design?


a) To decompose the system into modules
b) To satisfy user requirements
c) To draw graphical representations of algorithms
d) To specify test cases

7. How is the system decomposed during software design?


a) Into more complex modules
b) Into independent components
c) Into less complex modules
d) Into unrelated functions

8. What should be specified for each software module?


a) The function it performs
b) The hardware requirements
c) The software development methodology
d) The programming language used

9. What is the purpose of screen design in system design?


a) To match the skills and expectations of users
b) To focus on system functionality
c) To prioritize database design
d) To improve system reliability

10.What is one of the human factors to consider in interface design?


a) Limited long-term memory
b) Homogeneity among users
c) Standardization of interfaces
d) Adaptation to computer concepts

11.Which design principle focuses on user-oriented terms and concepts?


a) User familiarity
b) Consistency
c) Minimal surprise
d) Recoverability

12.What does the principle of consistency in interface design refer to?


a) Matching user expectations
b) Uniformity in command format
c) Avoiding catastrophic errors
d) Providing user guidance

13.What does the principle of minimal surprise in interface design


emphasize?
a) Predictability of command operations
b) Resilience to user errors
c) User-oriented help systems
d) Interaction support for different user types

14.Which principle of interface design focuses on user guidance?


a) User familiarity
b) Consistency
c) Minimal surprise
d) User diversity

15.What are the two main problems addressed in interactive systems


design?
a) User interaction and system functionality
b) Input handling and output presentation
c) System integration and hardware compatibility
d) Algorithm design and database management

16.How can color be effectively used in interface design?


a) Limit the number of colors used
b) Use color change to indicate system status
c) Utilize color coding for task support
d) All of the above

17.What should be considered when using color in interface design?


a) Using a wide range of colors
b) Random color pairings
c) Being conservative in color use
d) Using color for decorative purposes only

18.Why is error message design important in interface design?


a) It determines system functionality
b) It affects user satisfaction with the system
c) It ensures database integrity
d) It provides user guidance

19.What qualities should error messages possess?


a) Politeness, conciseness, and consistency
b) Severity, complexity, and formality
c) Length, technicality, and redundancy
d) Persistence, urgency, and verbosity

20.Which of the following is NOT a principle of user interface design?


a) User familiarity
b) Consistency
c) Minimal surprise
d) Complexity

21.What is the primary objective of software design?


a) To create a user-friendly interface
b) To decompose the system into manageable modules
c) To optimize database performance
d) To ensure system security

22.Which step in software design involves specifying the function of each


module?
a) Decomposition
b) Algorithm design
c) Interface design
d) Specification

23.What is the purpose of determining test cases in software design?


a) To identify potential system failures
b) To evaluate user satisfaction
c) To validate the design implementation
d) To determine the cost of development

24.Which aspect of a system is often judged by users based on its interface?


a) Security
b) Functionality
c) Reliability
d) Usability

25.Why are poorly designed interfaces a common reason for software


systems being unused?
a) Lack of system functionality
b) Inadequate hardware support
c) Compatibility issues
d) User frustration and errors

26.What is the primary purpose of high-level or architectural design in


software design?
a) To refine each module in detail
b) To establish the relationships among modules
c) To specify the algorithm and data structures
d) To determine the test cases

27.What does the term "SW" stand for in SW architecture and design?
a) Software
b) System Wide
c) Sub-Workflow
d) Structural Workflow

28.Which phase of system design involves the refinement of each module's


algorithm and data structures?
a) High-level design
b) Detailed design
c) Interface design
d) Database design
29.What are the main considerations for user interface design in terms of
user diversity?
a) Physical capabilities and interaction preferences
b) Technical constraints and system requirements
c) Security protocols and network compatibility
d) Software development methodologies

30.Which interaction style in interactive systems design involves direct


manipulation of objects on the screen?
a) Menu selection
b) Form fill-in
c) Command language
d) Direct manipulation

Lecture 6
1. Which of the following best describes architectural design?
a) Organizing software system components
b) Designing user interfaces
c) Writing code for individual functions
d) Testing software components

2. What is the output of the architectural design process?


a) User interfaces
b) Functional requirements
c) Architectural model
d) Test cases

3. Which of the following is an advantage of explicit architecture?


a) Efficient coding
b) Faster development process
c) Stakeholder communication
d) Reducing system complexity
4. What is the most frequently used method for documenting software
architectures?
a) UML diagrams
b) Block diagrams
c) Flowcharts
d) Entity-relationship diagrams

5. What is the main purpose of architectural views?


a) Communicating with stakeholders
b) Testing software components
c) Writing code for individual functions
d) Optimizing system performance

6. Which architectural view shows the key abstractions in the system as


objects or object classes?
a) Logical view
b) Process view
c) Development view
d) Physical view

7. Which architectural pattern separates presentation and interaction from


the system data?
a) Model-View-Controller (MVC)
b) Client-server
c) Pipe and filter
d) Layered architecture

8. Which architectural pattern organizes the system into layers with related
functionality?
a) Model-View-Controller (MVC)
b) Client-server
c) Pipe and filter
d) Layered architecture

9. Which architectural pattern uses a central repository for managing all


system data?
a) Model-View-Controller (MVC)
b) Client-server
c) Pipe and filter
d) Repository
10.Which architectural pattern is used when data in a shared database
needs to be accessed from multiple locations?
a) Model-View-Controller (MVC)
b) Client-server
c) Pipe and filter
d) Repository

11.Which architectural pattern organizes the processing of data as a series


of discrete components?
a) Model-View-Controller (MVC)
b) Client-server
c) Pipe and filter
d) Repository

12.Which architectural pattern is suitable for data processing applications


with sequential transformations?
a) Model-View-Controller (MVC)
b) Client-server
c) Pipe and filter
d) Repository

13.Which architectural pattern is commonly used in batch and transaction-


based data processing systems?
a) Model-View-Controller (MVC)
b) Client-server
c) Pipe and filter
d) Repository

14.Which architectural pattern is used when there are multiple ways to view
and interact with data?
a) Model-View-Controller (MVC)
b) Client-server
c) Pipe and filter
d) Layered architecture

15.Which architectural pattern is commonly used in web applications?


a) Model-View-Controller (MVC)
b) Client-server
c) Pipe and filter
d) Layered architecture

16.Which architectural pattern is suitable for systems with distributed


components that communicate over a network?
a) Model-View-Controller (MVC)
b) Client-server
c) Pipe and filter
d) Layered architecture

17.Which architectural pattern is used when there is a need to encapsulate


and manage access to a data source?
a) Model-View-Controller (MVC)
b) Client-server
c) Pipe and filter
d) Repository

18.Which architectural pattern is often used in real-time systems or systems


with concurrent processes?
a) Model-View-Controller (MVC)
b) Client-server
c) Pipe and filter
d) Layered architecture

19.Which architectural pattern is characterized by a set of independent,


autonomous components that communicate through messages?
a) Model-View-Controller (MVC)
b) Client-server
c) Pipe and filter
d) Event-driven architecture

20.Which architectural pattern is suitable for systems with complex event


processing and asynchronous communication?
a) Model-View-Controller (MVC)
b) Client-server
c) Pipe and filter
d) Event-driven architecture

21.Which architectural pattern is used when a system needs to support


multiple interfaces and access channels?
a) Model-View-Controller (MVC)
b) Client-server
c) Pipe and filter
d) Service-oriented architecture (SOA)

22.Which architectural pattern focuses on the reuse and composition of


modular services?
a) Model-View-Controller (MVC)
b) Client-server
c) Pipe and filter
d) Service-oriented architecture (SOA)

23.Which architectural pattern is suitable for systems that require loose


coupling and interoperability between components?
a) Model-View-Controller (MVC)
b) Client-server
c) Pipe and filter
d) Service-oriented architecture (SOA)

24.Which architectural pattern emphasizes the separation of concerns and


modularization of system functionality?
a) Model-View-Controller (MVC)
b) Client-server
c) Pipe and filter
d) Component-based architecture

Lecture 8
1. What is modeling?
a. Building an abstraction of reality
b. Building a physical representation
c. Building a software system
d. Building a database
2. What is UML?
a. Unified Modeling Language
b. Universal Modeling Language
c. Uniform Modeling Language
d. Unique Modeling Language

3. Which UML diagram describes the functional behavior of the system


from the user's point of view?
a. Use case diagrams
b. Class diagrams
c. Sequence diagrams
d. Activity diagrams

4. Which UML diagram describes the static structure of the system,


including objects, attributes, and associations?
a. Use case diagrams
b. Class diagrams
c. Sequence diagrams
d. Activity diagrams

5. Which UML diagram describes the dynamic behavior between objects of


the system?
a. Use case diagrams
b. Class diagrams
c. Sequence diagrams
d. Activity diagrams

6. Which UML diagram describes the workflow or process flow within the
system?
a. Use case diagrams
b. Class diagrams
c. Sequence diagrams
d. Activity diagrams

7. Which UML diagram represents the functionality of the system from the
user's point of view?
a. Use case diagrams
b. Class diagrams
c. Sequence diagrams
d. Activity diagrams

8. Why do we need to model software?


a. Software is getting increasingly complex
b. Code is not easily understandable by developers who did not write
it
c. We need simpler representations for complex systems
d. All of the above

9. What percentage of most problems can be modeled using about 20% of


UML?
a. 50%
b. 80%
c. 20%
d. 100%

10.Which UML diagram represents the dynamic behavior of an individual


object?
a. Use case diagrams
b. Class diagrams
c. Sequence diagrams
d. Activity diagrams

11.13. Which UML diagram represents the structure of the system,


including objects, attributes, and associations?
a. Use case diagrams
b. Class diagrams
c. Sequence diagrams
d. Activity diagrams

12.16. Which UML diagram represents the behavior of a single object with
interesting dynamic behavior?
a. Use case diagrams
b. Class diagrams
c. Sequence diagrams
d. Statechart diagrams

13.18. Which UML diagram represents the interaction between objects,


showing the messages exchanged between them?
a. Use case diagrams
b. Class diagrams
c. Sequence diagrams
d. Statechart diagrams

14.Which UML diagram represents the state transitions and events of an


object?
i. Use case diagrams
ii. Class diagrams
iii. Sequence diagrams
iv. Statechart diagrams

15.Which UML diagram represents the deployment of the system on


hardware nodes?
i. Use case diagrams
ii. Class diagrams
iii. Sequence diagrams
iv. Deployment diagrams

16.Which UML diagram represents the relationships between different use


cases?
i. Use case diagrams
ii. Class diagrams
iii. Sequence diagrams
iv. Statechart diagrams

17.Which UML diagram represents the collaboration between objects,


showing their roles and relationships?
i. Use case diagrams
ii. Class diagrams
iii. Sequence diagrams
iv. Collaboration diagrams
18.Which UML diagram represents the system's architecture, modules, and
components?
i. Use case diagrams
ii. Class diagrams
iii. Sequence diagrams
iv. Component diagrams

19.Which UML diagram represents the interaction between objects in terms


of time and ordering of messages?
i. Use case diagrams
ii. Class diagrams
iii. Sequence diagrams
iv. Timing diagrams

20.Which UML diagram represents the internal structure and interactions of


a single class?
i. Use case diagrams
ii. Class diagrams
iii. Sequence diagrams
iv. Composite structure diagrams

21.34. Which UML diagram represents the flow of control within a method
or between methods?
a. Use case diagrams
b. Class diagrams
c. Sequence diagrams
d. Activity diagrams

22.36. Which UML diagram represents the relationships between different


classes, including associations, aggregations, and inheritances?
a. Use case diagrams
b. Class diagrams
c. Sequence diagrams
d. Communication diagrams
23.True or False: UML diagrams denote graphs of nodes and edges.
(True)
24.True or False: Names of classes in UML diagrams are underlined.
(False)

25.14. True or False: Aggregation is a special case of association denoting a


"consists-of" hierarchy. (True)

26.15. True or False: Inheritance is a special case of association denoting a


"kind-of" hierarchy. (True)
27.19. True or False: UML diagrams are only used during the design phase of
software development. (False)
28.True or False: UML diagrams are programming languages. (False)
29.True or False: UML is a visual language for specifying, constructing, and
documenting the artifacts of a software system. (True)
30.True or False: UML diagrams can be used to generate code automatically.
(True)
31.True or False: UML diagrams are standardized and can be understood by
software developers across different organizations. (True)
32.True or False: UML diagrams provide a blueprint for constructing the
software system. (True)

33.True or False: UML diagrams can only be used for object-oriented


systems. (False)

34.True or False: UML diagrams can be used for both software and non-
software systems. (True)

35.True or False: UML diagrams provide a visual representation of the


system, making it easier to communicate and understand the system's
structure and behavior. (True)
Lecture 9&10
1. Development testing is performed to:
a) Show that a program does what it is intended to do
b) Discover program defects before putting it into use
c) Test the software with user data
d) Verify that the software meets its requirements

2. Which type of testing is concerned with rooting out undesirable


system behavior?
a) Development testing
b) Release testing
c) User testing
d) Defect testing

3. Validation testing is performed to:


a) Test the system with artificial data
b) Discover defects in the software
c) Show that the software meets its requirements
d) Test the system with real user data

4. The goal of defect testing is to:


a) Show that the system operates as intended
b) Test the system with artificial data
c) Root out undesirable system behavior
d) Discover defects in the software

5. Verification testing is concerned with:


a) Testing the system with real user data
b) Discovering program defects
c) Checking conformance to the specification
d) Rooting out undesirable system behavior

6. The aim of verification and validation (V&V) is to establish confidence


that the system is:
a) Ready for release to users
b) Fit for purpose
c) Free of defects
d) Compliant with industry standards

7. Inspections are concerned with:


a) Exercising and observing product behavior
b) Analyzing the static system representation
c) Checking conformance to the specification
d) Discovering program errors

8. Inspections and testing are:


a) Opposing verification techniques
b) Complementary verification techniques
c) Exclusive verification techniques
d) Alternatives to verification techniques

9. Development testing includes:


a) Unit testing, component testing, and system testing
b) Release testing and user testing
c) Inspection and testing
d) Defect testing and validation testing

10.Unit testing focuses on testing:


a) The functionality of objects or methods
b) The component interfaces
c) The system behavior as a whole
d) The system interactions

11.Object class testing involves testing:


a) Individual functions or methods within an object
b) Composite components with defined interfaces
c) Object attributes and methods in isolation
d) Component interactions

12.Automated unit testing is preferred because:


a) It requires less effort than manual testing
b) It eliminates the need for test cases
c) It allows tests to be run without manual intervention
d) It provides better test coverage

13.Partition testing is a strategy where test cases are chosen from:


a) Groups of inputs that have common characteristics
b) Guidelines based on previous testing experience
c) Sequences of different sizes
d) Extreme ends of parameter ranges

14.Interface testing is performed to detect faults due to:


a) Interface errors or invalid assumptions
b) Component interactions
c) Defects in the software
d) System behavior as a whole
a. Certainly! Here are the remaining questions:

15.System testing focuses on:


a) Testing individual components in isolation
b) Verifying the system meets its requirements
c) Discovering program defects
d) Testing the system with real user data

16.Acceptance testing is performed to:


a) Test the system with real user data
b) Verify the system meets its requirements
c) Discover program defects
d) Release the system to end-users

17.Alpha testing is typically performed by:


a) End-users or customers
b) Developers or testers
c) Independent testers
d) Quality assurance team

18.Beta testing is performed by:


a) End-users or customers
b) Developers or testers
c) Independent testers
d) Quality assurance team

19.Regression testing is performed to:


a) Test new features or changes in the system
b) Verify the system meets its requirements
c) Discover program defects
d) Ensure existing functionality has not been affected

20.Load testing is performed to:


a) Test the system with real user data
b) Verify the system meets its requirements
c) Determine system performance under expected load
d) Discover program defects

21.Stress testing is performed to:


a) Test the system with real user data
b) Verify the system meets its requirements
c) Determine system performance under extreme conditions
d) Discover program defects

22.Usability testing focuses on:


a) Testing the system with real user data
b) Verifying the system meets its requirements
c) Discovering program defects
d) Evaluating the user-friendliness of the system

23.Security testing is performed to:


a) Test the system with real user data
b) Verify the system meets its requirements
c) Discover program defects
d) Identify vulnerabilities and weaknesses in the system

24.White-box testing is based on:


a) Internal structure and design of the system
b) Testing the system with real user data
c) User expectations and requirements
d) Discovering program defects

25.Black-box testing is based on:


a) Internal structure and design of the system
b) Testing the system with real user data
c) User expectations and requirements
d) Discovering program defects
26.Gray-box testing combines elements of:
a) White-box and black-box testing
b) Testing the system with real user data
c) User expectations and requirements
d) Discovering program defects

27.Equivalence partitioning is a technique used in:


a) White-box testing
b) Black-box testing
c) Gray-box testing
d) Regression testing

28.Boundary value analysis is a technique used to:


a) Test extreme ends of parameter ranges
b) Verify the system meets its requirements
c) Discover program defects
d) Test the system with real user data

29.Error guessing is a technique based on:


a) Previous testing experience and intuition
b) Testing the system with real user data
c) User expectations and requirements
d) Discovering program defects

You might also like