SUBJECTS
|
BROWSE
|
CAREER CENTER
|
POPULAR
|
JOIN
|
LOGIN
Business Skills
|
Soft Skills
|
Basic Literacy
|
Certifications
About
|
Help
|
Privacy
|
Terms
|
Email
Search
Test your basic knowledge |
Software Engineering Principles
Start Test
Study First
Subjects
:
engineering
,
it-skills
Instructions:
Answer 50 questions in 15 minutes.
If you are not ready to take this test, you can
study here
.
Match each statement with the correct term.
Don't refresh. All questions and answers are randomly picked and ordered every time you load a test.
This is a study tool. The 3 wrong answers for each question are randomly chosen from answers to other questions. So, you might find at times the answers obvious, but you will see it re-enforces your understanding as you take the test each time.
1. What is a technique used by good problem solvers for dealing with complexity?
Also called a class. The description of a group of objects with similar properties and behaviors; a pattern for creating individual objects.
Abstraction
(1) Wasted programmer/planning hours (2) Wasted dollars (salaries - etc) (3) More difficult for a new programmer to fix - not the creator
Testing performed to integrate program modules that have already been independently unit tested.
2. What is path testing?
(1) It works (2) It can be modified without excessive time and effort (3) It is reusable (4) It is completed on time and within budget
A testing technique whereby the tester tries to execute all possible paths in a program or function.
A statement of what is to be provided by a computer system or software product.
Specifying what the program must do (the functional requirements) and the constraints on the solution approach (non - functional requirements - such as what language to use).
3. What is problem analysis?
Understanding the nature of the problem to be solved.
Abstraction
When you create your code - you break the problem into units called modules. Unit testing tests each individual module by itself. Later - you combine the working units together. Integration testing tests the group of units to see if they work togethe
A program that sets up the testing environment by declaring and assigning initial values to variables - then calls the subprogram to be tested.
4. Explain the phrase 'life- cycle verification.'
5. What is loose coupling?
The process of testing the system in its real environment with real data.
A property when changes within a module do not result in changes in the modules that use it.
The double colon operator (::).
This program design approach encourages programming in logical action units - called functions. The main module of the design becomes the main program (also called the main function) - and subsections develop into functions. This is top- down stepwis
6. What is a test plan?
Assertions that must be true on entry into an operation or function for the postconditions to be guaranteed.
Used to specify - visualize - construct - and document the components of a software system. This is particularly well suited for modeling object- oriented designs. The diagrams represent another form of abstraction.
A statement of what is to be provided by a computer system or software product.
A document showing the test cases planned for a program or module - their purposes - inputs - expected outputs - and criteria for success.
7. What is the extraction operator?
A statement of what is to be provided by a computer system or software product.
(1) Wasted programmer/planning hours (2) Wasted dollars (salaries - etc) (3) More difficult for a new programmer to fix - not the creator
The process of executing a program with data sets designed to discover errors.
Two greater than symbols [>>].
8. Explain what we mean by 'ideaware'.
A shared body of knowledge.
A property when changes within a module do not result in changes in the modules that use it.
Research has shown that the sooner you detect an error - the lest costly it will be to fix it. catching an error near the end of the software life cycle can be 100 times more costly that catching it at the beginning.
Specifying what the program must do (the functional requirements) and the constraints on the solution approach (non - functional requirements - such as what language to use).
9. What are preconditions?
To 'do everything' specified to meet its requirements.
Two less than symbols [<<].
A logical proposition that can be true or false.
Assertions that must be true on entry into an operation or function for the postconditions to be guaranteed.
10. What is the functional domain?
The set of valid input data for a program or function.
A verification method in which a team performs a manual simulation of the program or design.
This is the idea that program verification activities can be performed throughout the program's life cycle - not just by testing the program after it is coded.
Assertions that state what results are expected at the exit of an operation or function - assuming that the preconditions are true.
11. How can you verify the correctness of the software you develop?
You can test the software to see if the correct outcome occurs
Detecting and fixing errors and demonstrating the correctness of the program.
The approach in which the details come first. After the detailed components are identified and designed - they are brought together into increasingly higher- level components.
Running the program with the test cases listed in the test plan.
12. What is integration testing?
Testing performed to integrate program modules that have already been independently unit tested.
Understanding the nature of the problem to be solved.
You can test the software to see if the correct outcome occurs
The functional domain consists of the whole numbers from 0 to 100.
13. What is deskchecking?
An unusual - generally unpredictable event - detectable by software or hardware - that requires special processing; the event may or may not be erroneous.
When every statement in the program is executed at least once.
Tracing an execution of a design or program on paper.
A logical proposition that can be true or false.
14. What is a software specification?
Two less than symbols [<<].
A detailed description of the function - inputs - processing - outputs - and special requirements of a software product; it provides the information needed to design and implement the program.
A verification method in which one member of a team reads the program or design line by line and the other members point out errors.
Unit testing is the testing of a single unit of the program (for instance - a function). Integration testing is the testing of groups of already tested units to make sure that they interact correctly and that the whole program works according to its
15. What is metric- based testing?
A program that sets up the testing environment by declaring and assigning initial values to variables - then calls the subprogram to be tested.
The process of executing a program with data sets designed to discover errors.
A verification method in which one member of a team reads the program or design line by line and the other members point out errors.
Testing based on measurable factors.
16. What is operation?
Actually using the program.
This program design approach encourages programming in logical action units - called functions. The main module of the design becomes the main program (also called the main function) - and subsections develop into functions. This is top- down stepwis
The process of determining the degree to which a software product fulfills its specifications.
[Input] All values from 1 to 100. [Expected Output] For input 0-59 => F. For input 60-69 => D. For input 70-79 => C. For input 80-89 => B. For input 90-100 => A.
17. What is an exception?
Reusing objects and processes to implement more complex objects and processes.
A statement of what is to be provided by a computer system or software product.
A combination of branches that might be traversed when a program or function is executed.
An unusual - generally unpredictable event - detectable by software or hardware - that requires special processing; the event may or may not be erroneous.
18. What is functional decomposition?
The approach in which the problem is first broken down into several large parts. Each of these parts is - in turn - divided into sections - the sections are subdivided - and so on. Details are deferred as long as possible.
Detecting and fixing errors and demonstrating the correctness of the program.
(1) It works (2) It can be modified without excessive time and effort (3) It is reusable (4) It is completed on time and within budget
This program design approach encourages programming in logical action units - called functions. The main module of the design becomes the main program (also called the main function) - and subsections develop into functions. This is top- down stepwis
19. What are class - responsibility - and collaboration (CRC) cards?
A formal definition of the problem your program must solve.
A shared body of knowledge.
A cohesive system subunit that performs a share of the work.
A notational tool that helps us determine our initial designs. CRC cards always contain information about the class name - responsibilities of the class and collaborations. CRC cards are great tools for refining an object- oriented design - especiall
20. What is a walk- through?
C++ classes promote information hiding. You can declare private functions and private variables that don't need to be accessable to use the class.
A logical set of discrete steps that describes a complete solution to a given problem - computable in a finite amount of time.
The process of determining the degree to which a software product fulfills its specifications.
A verification method in which a team performs a manual simulation of the program or design.
21. What is a hierarchy of objects?
A model of a complex system that includes only the details essential to the perspective of the viewer of the system.
An object is an individual while a class is a description of a group of objects with similar properties and behaviors. Labrador dogs is an example of a class and Maggie is an example of an object.
Reusing objects and processes to implement more complex objects and processes.
Testing performed to integrate program modules that have already been independently unit tested.
22. What is a detailed specification?
Understanding the nature of the problem to be solved.
Also called an object. The description of a group of objects with similar properties and behaviors; a pattern for creating individual objects.
A formal definition of the problem your program must solve.
Testing performed to integrate program modules that have already been independently unit tested.
23. What are requirements?
Actually using the program.
Understanding the nature of the problem to be solved.
When you create your code - you break the problem into units called modules. Unit testing tests each individual module by itself. Later - you combine the working units together. Integration testing tests the group of units to see if they work togethe
A statement of what is to be provided by a computer system or software product.
24. What are functional subproblems?
[Input] All values from 1 to 100. [Expected Output] For input 0-59 => F. For input 60-69 => D. For input 70-79 => C. For input 80-89 => B. For input 90-100 => A.
A standard - integrated set of software engineering tools and techniques used on a project by an organization.
Also called white- box testing. Testing a program or function based on covering all the statements - branches - or paths of code.
Simple statements like do this - then do this - then do that.
25. What is a module?
A testing technique whereby the tester tries to execute all possible paths in a program or function.
A cohesive system subunit that performs a share of the work.
A statement of what is to be provided by a computer system or software product.
A document showing the test cases planned for a program or module - their purposes - inputs - expected outputs - and criteria for success.
26. What is the unified modeling language (UML)?
Used to specify - visualize - construct - and document the components of a software system. This is particularly well suited for modeling object- oriented designs. The diagrams represent another form of abstraction.
Also called an object. The description of a group of objects with similar properties and behaviors; a pattern for creating individual objects.
The process of removing known errors.
A verification method in which a team performs a manual simulation of the program or design.
27. What is program validation?
You can test the software to see if the correct outcome occurs
Determining exactly what the program must do.
The process of determining the degree to which software fulfills its intended purpose.
The approach in which the problem is first broken down into several large parts. Each of these parts is - in turn - divided into sections - the sections are subdivided - and so on. Details are deferred as long as possible.
28. What is high- and low- level design?
29. What is a class?
A detailed description of the function - inputs - processing - outputs - and special requirements of a software product; it provides the information needed to design and implement the program.
Detecting and fixing errors and demonstrating the correctness of the program.
It is possible to carry out exhaustive data coverage for this program.
Also called an object. The description of a group of objects with similar properties and behaviors; a pattern for creating individual objects.
30. What is information hiding and why is it considered a good software development practice.
Running the program with the test cases listed in the test plan.
Testing based on measurable factors.
The practice of only showing the information necessary for a user level and hiding the rest of the information. this makes programming in teams easier because you can see the big picture easier. Also - the programmer does not have to worry if the imp
A document showing the test cases planned for a program or module - their purposes - inputs - expected outputs - and criteria for success.
31. What does complete mean?
32. What is stepwise refinement?
33. What is an object?
Specifying what the program must do (the functional requirements) and the constraints on the solution approach (non - functional requirements - such as what language to use).
Reusing objects and processes to implement more complex objects and processes.
A property when changes within a module do not result in changes in the modules that use it.
Also called a class. The description of a group of objects with similar properties and behaviors; a pattern for creating individual objects.
34. A program is to read in a numeric score (0 to 100) and display an appropriate letter grade (A - B - C - D - or F). What is the functional domain of this program?
The practice of hiding details of a function or data structure with the goal of controlling access to the details of a module or structure.
Also called a class. The description of a group of objects with similar properties and behaviors; a pattern for creating individual objects.
A verification method in which a team performs a manual simulation of the program or design.
The functional domain consists of the whole numbers from 0 to 100.
35. A program is to read in a numeric score (0 to 100) and display an appropriate letter grade (A - B - C - D - or F). Is exhaustive data coverage possible for this program?
This is the idea that program verification activities can be performed throughout the program's life cycle - not just by testing the program after it is coded.
Determining exactly what the program must do.
Defines the stepwise refinement approach to object- oriented design suggested by Grady Booch. First - the tangible items and events in the problem domain are identified and assigned to candidate classes and objects. Next - the external properties and
It is possible to carry out exhaustive data coverage for this program.
36. What is maintenance?
The practice of only showing the information necessary for a user level and hiding the rest of the information. this makes programming in teams easier because you can see the big picture easier. Also - the programmer does not have to worry if the imp
The set of valid input data for a program or function.
Making changes to fix operational errors and to add or modify the function of the program.
Running the program with the test cases listed in the test plan.
37. What is black- box testing?
38. What is white- box testing?
To take an object and move it from a general perspective to a precise level of detail. Variations of stepwise refinement include: top- down - bottom- up - functional decomposition - and even 'round- trip gestalt design.'
Recording how the program meets the requirements - from the 'big picture' overview to the detailed design.
Also called clear- box testing. Testing a program or function based on covering all the statements - branches - or paths of code.
A code segment that is not always executed; for example - a switch statement has as many branches as there are case labels.
39. What is bottom- up stepwise refinement?
The approach in which the details come first. After the detailed components are identified and designed - they are brought together into increasingly higher- level components.
A combination of branches that might be traversed when a program or function is executed.
Specifying what the program must do (the functional requirements) and the constraints on the solution approach (non - functional requirements - such as what language to use).
The approach in which the problem is first broken down into several large parts. Each of these parts is - in turn - divided into sections - the sections are subdivided - and so on. Details are deferred as long as possible.
40. What is a test driver?
A statement of what is to be provided by a computer system or software product.
A program that sets up the testing environment by declaring and assigning initial values to variables - then calls the subprogram to be tested.
A structure of tasks with a main module and subsections.
A verification method in which a team performs a manual simulation of the program or design.
41. What is a stub?
Tracing an execution of a design or program on paper.
A special function that can be used in top- down testing to stand in for a lower- level function.
Testing a module or function by itself.
Also called white- box testing. Testing a program or function based on covering all the statements - branches - or paths of code.
42. What is requirements elicitation?
A formal definition of the problem your program must solve.
Determining exactly what the program must do.
A statement of what is to be provided by a computer system or software product.
A testing technique whereby the tester tries to execute all possible paths in a program or function.
43. Differentiate between unit testing and integration testing.
A special function that can be used in top- down testing to stand in for a lower- level function.
A cohesive system subunit that performs a share of the work.
Unit testing is the testing of a single unit of the program (for instance - a function). Integration testing is the testing of groups of already tested units to make sure that they interact correctly and that the whole program works according to its
A model of a complex system that includes only the details essential to the perspective of the viewer of the system.
44. What is the insertion operator?
A document showing the test cases planned for a program or module - their purposes - inputs - expected outputs - and criteria for success.
The approach in which the details come first. After the detailed components are identified and designed - they are brought together into increasingly higher- level components.
Two less than symbols [<<].
To take an object and move it from a general perspective to a precise level of detail. Variations of stepwise refinement include: top- down - bottom- up - functional decomposition - and even 'round- trip gestalt design.'
45. What are the goals of quality software?
Determining exactly what the program must do.
(1) It works (2) It can be modified without excessive time and effort (3) It is reusable (4) It is completed on time and within budget
The process of determining the degree to which software fulfills its intended purpose.
Actually using the program.
46. What is testing?
This program design approach encourages programming in logical action units - called functions. The main module of the design becomes the main program (also called the main function) - and subsections develop into functions. This is top- down stepwis
Recording how the program meets the requirements - from the 'big picture' overview to the detailed design.
Also called white- box testing. Testing a program or function based on covering all the statements - branches - or paths of code.
The process of executing a program with data sets designed to discover errors.
47. What is an assertion?
A logical proposition that can be true or false.
Research has shown that the sooner you detect an error - the lest costly it will be to fix it. catching an error near the end of the software life cycle can be 100 times more costly that catching it at the beginning.
The ability of a program to recover following an error; the ability of a program to continue to operate within its environment.
Understanding the nature of the problem to be solved.
48. What is a branch?
Re- execution of program tests after modifications have been made to ensure that the program still works correctly.
A standard - integrated set of software engineering tools and techniques used on a project by an organization.
Specifying what the program must do (the functional requirements) and the constraints on the solution approach (non - functional requirements - such as what language to use).
A code segment that is not always executed; for example - a switch statement has as many branches as there are case labels.
49. What is requirements specification?
A standard - integrated set of software engineering tools and techniques used on a project by an organization.
A model of a complex system that includes only the details essential to the perspective of the viewer of the system.
[Input] All values from 1 to 100. [Expected Output] For input 0-59 => F. For input 60-69 => D. For input 70-79 => C. For input 80-89 => B. For input 90-100 => A.
Specifying what the program must do (the functional requirements) and the constraints on the solution approach (non - functional requirements - such as what language to use).
50. What is delivery?
Turning over the tested program to the customer or user (or instructor!).
To 'do it right' to meet its requirements.
The approach in which the problem is first broken down into several large parts. Each of these parts is - in turn - divided into sections - the sections are subdivided - and so on. Details are deferred as long as possible.
Simple statements like do this - then do this - then do that.