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 stub?
The program's inputs and outputs should be readable and understandable to users.
Understanding the nature of the problem to be solved.
A special function that can be used in top- down testing to stand in for a lower- level function.
(1) Wasted programmer/planning hours (2) Wasted dollars (salaries - etc) (3) More difficult for a new programmer to fix - not the creator
2. What is high- and low- level design?
3. What is stepwise refinement?
4. What is a test plan?
A document showing the test cases planned for a program or module - their purposes - inputs - expected outputs - and criteria for success.
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 double colon operator (::).
Also called robustness. The ability of a program to recover following an error; the ability of a program to continue to operate within its environment.
5. What is an assertion?
A logical proposition that can be true or false.
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.
Detecting and fixing errors and demonstrating the correctness of the program.
A special function that can be used in top- down testing to stand in for a lower- level function.
6. What is a detailed specification?
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
A formal definition of the problem your program must solve.
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
Making changes to fix operational errors and to add or modify the function of the program.
7. What is robustness?
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.
A statement of what is to be provided by a computer system or software product.
The ability of a program to recover following an error; the ability of a program to continue to operate within its environment.
When every statement in the program is executed at least once.
8. What is a branch?
Running the program with the test cases listed in the test plan.
A special function that can be used in top- down testing to stand in for a lower- level function.
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 code segment that is not always executed; for example - a switch statement has as many branches as there are case labels.
9. What is implementation of the design?
Coding a program in a computer language.
Testing performed to integrate program modules that have already been independently unit tested.
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.
The process of determining the degree to which a software product fulfills its specifications.
10. What is delivery?
The process of testing the system in its real environment with real data.
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
You can test the software to see if the correct outcome occurs
Turning over the tested program to the customer or user (or instructor!).
11. What is program validation?
A statement of what is to be provided by a computer system or software product.
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
A cohesive system subunit that performs a share of the work.
The process of determining the degree to which software fulfills its intended purpose.
12. What is white- box testing?
Also called clear- 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.
A property when changes within a module do not result in changes in the modules that use it.
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.
13. What is operation?
Actually using the program.
Tracing an execution of a design or program on paper.
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.
A code segment that is not always executed; for example - a switch statement has as many branches as there are case labels.
14. What is the difference between an object and an object class?
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.
It is possible to carry out exhaustive data coverage for this program.
The process of executing a program with data sets designed to discover errors.
Turning over the tested program to the customer or user (or instructor!).
15. What is an acceptance test?
Two greater than symbols [>>].
C++ classes promote information hiding. You can declare private functions and private variables that don't need to be accessable to use the class.
The discipline devoted to the design - production - and maintenance of computer programs that are developed on time and within cost estimates - using tools that help to manage the size and complexity of the resulting software products.
The process of testing the system in its real environment with real data.
16. What is program verification?
The process of determining the degree to which a software product fulfills its specifications.
Testing a module or function by itself.
Also called an object. The description of a group of objects with similar properties and behaviors; a pattern for creating individual objects.
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
17. What is unit testing?
C++ classes promote information hiding. You can declare private functions and private variables that don't need to be accessable to use the class.
To 'do it right' to meet its requirements.
You can test the software to see if the correct outcome occurs
Testing a module or function by itself.
18. Differentiate between unit testing and integration testing.
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
The functional domain consists of the whole numbers from 0 to 100.
A statement of what is to be provided by a computer system or software product.
(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
19. What is inspection?
A property when changes within a module do not result in changes in the modules that use it.
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 verification method in which one member of a team reads the program or design line by line and the other members point out errors.
The process of removing known errors.
20. What are requirements?
Determining exactly what the program must do.
Two less than symbols [<<].
A statement of what is to be provided by a computer system or software product.
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.
21. What is a class?
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
Also called an object. The description of a group of objects with similar properties and behaviors; a pattern for creating individual objects.
These tools are text editors - compilers - assemblers - operating systems - and debugging programs. (p5)
Also called a class. The description of a group of objects with similar properties and behaviors; a pattern for creating individual objects.
22. Explain the phrase 'life- cycle verification.'
23. Give examples of the relationship between the cost of error correction in software development and when/where errors are detected in terms of the software life cycle.
(1) Wasted programmer/planning hours (2) Wasted dollars (salaries - etc) (3) More difficult for a new programmer to fix - not the creator
A testing technique whereby the tester tries to execute all possible paths in a program or function.
The program's inputs and outputs should be readable and understandable to users.
A code segment that is not always executed; for example - a switch statement has as many branches as there are case labels.
24. What is a test driver?
To 'do everything' specified to meet its requirements.
A shared body of knowledge.
(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 program that sets up the testing environment by declaring and assigning initial values to variables - then calls the subprogram to be tested.
25. What is a hierarchy of tasks?
(1) Wasted programmer/planning hours (2) Wasted dollars (salaries - etc) (3) More difficult for a new programmer to fix - not the creator
It is possible to carry out exhaustive data coverage for this program.
A structure of tasks with a main module and subsections.
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.
26. What is the functional domain?
(1) Wasted programmer/planning hours (2) Wasted dollars (salaries - etc) (3) More difficult for a new programmer to fix - not the creator
Detecting and fixing errors and demonstrating the correctness of the program.
The set of valid input data for a program or function.
To 'do everything' specified to meet its requirements.
27. What is a hierarchy of objects?
A statement of what is to be provided by a computer system or software product.
The discipline devoted to the design - production - and maintenance of computer programs that are developed on time and within cost estimates - using tools that help to manage the size and complexity of the resulting software products.
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.
Reusing objects and processes to implement more complex objects and processes.
28. What is clear- box testing?
A program that sets up the testing environment by declaring and assigning initial values to variables - then calls the subprogram to be tested.
It is possible to carry out exhaustive data coverage for this program.
A logical proposition that can be true or false.
Also called white- box testing. Testing a program or function based on covering all the statements - branches - or paths of code.
29. What is the insertion operator?
Testing a program or function based on the possible input values - treating the code as a 'black box.'
A statement of what is to be provided by a computer system or software product.
Two less than symbols [<<].
A cohesive system subunit that performs a share of the work.
30. What does complete mean?
31. What is maintenance?
The ability of a program to recover following an error; the ability of a program to continue to operate within its environment.
Simple statements like do this - then do this - then do that.
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.'
Making changes to fix operational errors and to add or modify the function of the program.
32. What is deskchecking?
A verification method in which a team performs a manual simulation of the program or design.
Detecting and fixing errors and demonstrating the correctness of the program.
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
Tracing an execution of a design or program on paper.
33. What is a path?
Also called an object. The description of a group of objects with similar properties and behaviors; a pattern for creating individual objects.
A combination of branches that might be traversed when a program or function is executed.
Reusing objects and processes to implement more complex objects and processes.
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.'
34. What does usable mean?
35. Name some software tools that you have used in developing computer programs.
Also called robustness. The ability of a program to recover following an error; the ability of a program to continue to operate within its environment.
A logical set of discrete steps that describes a complete solution to a given problem - computable in a finite amount of time.
An unusual - generally unpredictable event - detectable by software or hardware - that requires special processing; the event may or may not be erroneous.
These tools are text editors - compilers - assemblers - operating systems - and debugging programs. (p5)
36. What are class - responsibility - and collaboration (CRC) cards?
To 'do everything' specified to meet its requirements.
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
A property when changes within a module do not result in changes in the modules that use it.
Coding a program in a computer language.
37. A program is to read in a numeric score (0 to 100) and display an appropriate letter grade (A - B - C - D - or F). Devise a test plan for 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.
A structure of tasks with a main module and subsections.
[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.
Coding a program in a computer language.
38. What are the goals of quality software?
A program that sets up the testing environment by declaring and assigning initial values to variables - then calls the subprogram to be tested.
(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 discipline devoted to the design - production - and maintenance of computer programs that are developed on time and within cost estimates - using tools that help to manage the size and complexity of the resulting software products.
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.'
39. 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?
Testing a module or function by itself.
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.
It is possible to carry out exhaustive data coverage for this program.
(1) Wasted programmer/planning hours (2) Wasted dollars (salaries - etc) (3) More difficult for a new programmer to fix - not the creator
40. What is testing and verification?
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.
A verification method in which a team performs a manual simulation of the program or design.
Detecting and fixing errors and demonstrating the correctness of the program.
Testing a program or function based on the possible input values - treating the code as a 'black box.'
41. What is a module?
The set of valid input data for a program or function.
A model of a complex system that includes only the details essential to the perspective of the viewer of the system.
A cohesive system subunit that performs a share of the work.
The process of removing known errors.
42. What are software requirements?
A document showing the test cases planned for a program or module - their purposes - inputs - expected outputs - and criteria for success.
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.
A special function that can be used in top- down testing to stand in for a lower- level function.
43. What is the relationship between the cost of error correction in software development and where/when errors are detected in terms of the software life cycle?
A statement of what is to be provided by a computer system or software product.
Also called white- box testing. Testing a program or function based on covering all the statements - branches - or paths of code.
The ability of a program to recover following an error; the ability of a program to continue to operate within its environment.
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.
44. What is top- down stepwise refinement?
A statement of what is to be provided by a computer system or software product.
The discipline devoted to the design - production - and maintenance of computer programs that are developed on time and within cost estimates - using tools that help to manage the size and complexity of the resulting software products.
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.
The process of determining the degree to which a software product fulfills its specifications.
45. What is path testing?
Two greater than symbols [>>].
A testing technique whereby the tester tries to execute all possible paths in a program or function.
A formal definition of the problem your program must solve.
The double colon operator (::).
46. Give a specific C++ language attribute that supports information hiding.
47. What is an exception?
An unusual - generally unpredictable event - detectable by software or hardware - that requires special processing; the event may or may not be erroneous.
Two less than symbols [<<].
Running the program with the test cases listed in the test plan.
A statement of what is to be provided by a computer system or software product.
48. What is abstraction?
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.
Also called robustness. The ability of a program to recover following an error; the ability of a program to continue to operate within its environment.
[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 model of a complex system that includes only the details essential to the perspective of the viewer of the system.
49. 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 functional domain consists of the whole numbers from 0 to 100.
Assertions that state what results are expected at the exit of an operation or function - assuming that the preconditions are true.
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.
Detecting and fixing errors and demonstrating the correctness of the program.
50. What is requirements elicitation?
Determining exactly what the program must do.
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.
A cohesive system subunit that performs a share of the work.
A combination of branches that might be traversed when a program or function is executed.