CS 2401 Unit 1 - 8
Reverse engineering of data focuses on?
A and B - Database structures & internal data structures
Decomposing a problem into simpler ones is common when dealing with complex problems. This is known as -------?
A and B - Divide and Conquer & Modularity
Which of the following statements about the given diagram clipping are true? (more than one answer)
B inherits all of A's associations & B can execute the same use cases as A.
Which of the following statements about the given diagram clipping are true? (more than one answer)
B inherits all of A's associations, B can execute the same use cases as A.
A ------- is a path that begins and ends at the same node whereas a --------------- is a circuit with no node (other than the starting node) included more than once
Circuit, cycle
Boundary testing and Control-flow testing are criteria for ?
Code Coverage
On the Ordinal Cohesion Scale, rate the following in the Lowest to Highest order of cohesion.
Coincidental, Logical, Temporal, Sequential, Functional
Which of the following is not an issue to consider when reverse engineering?
Connectivity
Hiding the object state , so that it can be observed or affected only via object's methods is known as ----------?
Encapsulation
A Test, is an erroneous hardware or software element of a system that can cause the system to fail.
False
Acceptance tests are normally conducted by the developer?
False
Boundary value analysis can only be used to do white-box testing.
False
Cohesion is of two types, Internal and Syntactic
False
Cyclomatic complexity measures software complexity from the machine's viewpoint in terms of how the size of the input data affects an algorithm's usage of computational resources (usually running time or memory)
False
Cyclomatic complexity of graph G equals #edges + #nodes - 2 --- V(G) = e + n - 2
False
For a strongly connected graph a real edge is created to connect the END node to the BEGIN node
False
If you are able to anticipate that the components are likely to be reused in future projects then it is not advisable to use the Pub-Sub design pattern.
False
In Domain analysis, we consider the system as a "black box". In Use Case analysis, we consider the system as a "transparent box."
False
In the RSA system, the receiver does as follows: Randomly select two large prime numbers p and q, which always must be kept secret. Select an integer number E, known as the public exponent, such that (p 1) and E have no common divisors, and (q 1) and E have no common divisors. Determine the private exponent, D, such that (ED 1) is exactly divisible by both (p 1) and (q 1). In other words, given E, we choose D such that the integer remainder when ED is divided by (p 1)(q 1) is 1. Determine the product n = pq, known as public modulus. Release publicly the public key, which is the pair of numbers n and E, K = (n, E). Keep secret the private key, K = (n, D).
False
Is the following diagram about cohesion true?
False
Low degree of connectivity (associations) among the objects is a sign of bad design.
False
Object's coupling is indirectly proportional to the number of different messages the object sends to other objects.
False
Objects are abstractions that specify the state and behavior of different collections of objects.
False
Software engineering umbrella activities are only applied during the initial phases of software development projects.
False
Software is a product and can be manufactured using the same technologies used for other engineering artifacts?
False
Symmetric cryptosystems are also known as Public Key systems
False
The only time reengineering enters into work with a legacy system is when it components will be implemented as objects.
False
The size estimate for a software product to be built must be based on a direct measure like LOC.
False
These documents record the process of development and maintenance. Plans, schedules, process quality documents and organizational and project standards are process documentation. This is called as Product Documentation
False
This is the process of preparing the document for professional printing. It is supported by desktop-publishing packages, artwork packages and type styling programs. This process is Document Polishing
False
Concept Maps, while representing knowledge about the problem domain, are expressed in terms of 'concepts' and -------, and are used to represent knowledge, beliefs, feelings etc.
Propositions
Which of the following activities is not part of the software reengineering process model?
Prototyping
___________ algorithm is based upon factorizing a number n into its Prime Factors.
RSA Algorithm
The term ____________is often used to describe modifying the design and/or implementation of a software module without changing its external behavior, and is sometimes informally referred to as "cleaning it up."
Refactoring
---------------cohesion is difficult to automate
Semantic
LOC-based estimation techniques require problem decomposition based on
Software Functions
Look at the two diagrams and identify them.
State , Context
The developer should not create a software artifact (a system requirement, a UML diagram, or source code) unless they know how it will be tested. This kind of development is known as ?
Test Driven Development
-------------------measures the degree to which the specification or code of a software program has been exercised by tests. -------------------measures the degree to which the source code of a program has been tested.
Test coverage, Code coverage
To prioritize the work on use cases, we use
Traceability Matrix
A design pattern is a way of reusing abstract knowledge about a problem and its solution. Pattern descriptions usually make use of object-oriented characteristics such as inheritance and polymorphism.
True
A use case represents an activity that an actor can perform on the system and what the system does in response.
True
An actor is any entity (human, physical object, or another system) external to the system-to-be that interacts with the system-to-be.
True
An interface is a set of functional properties (services) that a software object provides or requires.
True
Because Use Cases represent recipes for user achieving 'goals', each use case name must include a 'verb' capturing the goal achievement.
True
Because Use Cases represent recipes for user achieving 'goals', each use case name must include a 'verb' capturing the goal achievement. True or False?
True
Documentation standards may be process standards, defining how documents should be produced, product standards, defining document organization or document interchange standards.
True
Domain modeling determines how elements of system-to-be interact (internal behavior) to produce the external behavior.
True
Domain models represents real - world concepts, not the software components.
True
End-users use the software to assist with some task. This may be flying an aircraft, managing insurance policies, writing a book, etc. They want to know how the software can help them. They are not interested in computer or administration details.
True
Equivalence testing divides the input domain into classes of data from which test cases can be derived to reduce the total number of test cases that must be developed.
True
For an input parameter specified as a Boolean value, partition the value space into one valid and one invalid equivalence class.
True
Indirect communication is usually used when an object cannot or does not want to know the identity of the object whose method it calls.
True
Kerckhoffs' Principle states that a cryptosystem should remain secure even if everything about it other than the key is public knowledge. The security of a system's design is in no way dependent upon the secrecy of the design, in and of itself.
True
Organizations are often fronted by a point-of-contact person. A common pattern is to have a specialized worker to take orders from the clients and orchestrate the workings of the workers inside the system. This type of object is known as Controller
True
Product documentation is used after the system is operational but is also essential for management of the system development.
True
The four basic steps in software project estimation are: Estimate the size of the development product. { either Lines of Code (LOC) or Function Points (FP)} Estimate the effort in person-months or person-hours. Estimate the schedule in calendar months. Estimate the project cost in dollars (or local currency)
True
The observer pattern , separates the display of the state of an object from the object itself and allows alternative displays to be provided. When the object state changes, all displays are automatically notified and updated to reflect the change.
True
The unit to be tested is also known as the fixture.
True
This traceability property is critical for a good development method (process), because the design elaboration progresses systematically, without great leaps that are difficult to grasp and/or follow.
True
Which of the following statements characterize use cases?
Use cases specify the functionalities and the behavior that the system which is being developed should have.
Analysis phase is concerned about the ________ aspect of software engineering where as Design is more focused on __________ aspect.
What, How
Software reengineering process model includes restructuring activities for which of the following work items?
all of the above - code, documentation, data
The association between an actor and a use case is ( more than one answer)
an undirected continuous line & is binary
For the given program fragment and its corresponding graph, which of these are valid paths? (2 correct choices)
e1, e2, e4, e5, e4, e6, e7, e8, e1, e2, e4, e6, e9, e10
Process models are described as agile because they ?
emphasize maneuverability and adaptability
Coupling is a qualitative indication of the degree to which a module
is connected to other modules and the outside world.
Test Driven Development
is that every step in the development process must start with a plan of how to verify that the result meets some goal
An --------------- is a software packaging of data and code together into a unit within a running computer program.
Object
Initiating actor is the --------------actor where as participating actor is the --------------- actor.
Primary, Seconday
'Velocity' of the development team ( in effort estimation ) is defined are the -----------?
Productivity of the team
A popular approach to micro-level design is known as responsibility-driven design (RDD). We know the types of responsibilities that objects can have: Type 1 responsibility (knowing): Memorizing data or references, such as data values, data collections, or references to other objects, represented as a _____________. Type 2 responsibility (doing): Performing computations, such as data processing, control of physical devices, etc., represented as a ____________ Type 3 responsibility (communicating): Communicating with other objects, represented as __________ sending (method invocation).
Property, Method, Message
Traceability Matrix
A traceability matrix is a document that details the technical requirements for a given test scenario and its current state. It helps the testing team understand the level of testing that is done for a given product.
Match with the correct choices. In context diagrams, what are the following used for?
A-3, B-1, C-2
In UML diagrams, relationship between object and component parts is represented by
Aggregation
Methods that are even more aggressive in terms of short iterations and heavy user involvement are often characterized as -------------?
Agile
Selects elements from the "edges" of the equivalence class, or "outliers" such as- zero, min/max values, empty set, empty string, and null, confusion between > and >=, etc. This type of testing is known as
Boundary Testing
Selects elements from the "edges" of the equivalence class, or "outliers" such as- zero, min/max values, empty set, empty string, and null, confusion between > and >=, etc. This type of testing is known as---
Boundary Testing
Consider the following diagram:
If an instance of A is deleted, all contained instances of B are also deleted