Test your basic knowledge |

Software Engineering Vocab

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. Figuring out what the requirements are






2. Testing that verifies that individual units of source code are working






3. A set of rules that define the combinations of symbols that are considered to be correctly structured in a specific programming language. Example: In many programming languages - statements are terminated by a semicolon.






4. The rigorousness of the tests that are able to be placed on the code






5. Reusable - abstract 'blocks' of design






6. (smell) Making one change requires changes in multiple places






7. Testing the whole system for functionality






8. (smell) A class whose only purpose is to hold data






9. How well your fulfil your requirements






10. 4th step of requirements gathering






11. Test cases made -> code compiles -> make code pass






12. Derived methods should not assume more or deliver less






13. A subjective set of rules or guidelines used when writing source code. Example: The use of whitespace to consistently group and space out statements.






14. Models ->code work is done to keep models in sync with code






15. AKA: Function Constant or Function Literal A function defined - and possibly called - without being bound to an identifier.






16. Single step in a lifecycle






17. Wrote the book Design Patterns: Elements of Reusable Object-Oriented Software.






18. 1st step of requirements gathering






19. Freezing the state of the source code at a particular point






20. Tasks that a system must be able to perform






21. Delaying the creation of an object - calculation of a value or another expensive process until first needed.






22. Force software to fail in order to see how it recovers






23. Verifies that system is protected against improper penetration






24. A way to automatically grade code based on heuristics






25. A relationship between objects.






26. (smell) Classes using things that should be private in other classes






27. Test the run - time performance of the system






28. A method that initializes a newly instantiated object






29. Simple Object Access Protocol. Specification for exchanging structured information. Uses XML. Usually relies on other Application Layer protocols (HTTP - SMTP)






30. 3rd step of requirements gathering






31. Testing tactic based on whether inputs and outputs match up for required functionality






32. (smell) If a set of variables are used together in multiple places






33. Formal testing against end user specifications






34. Contract between inventor - assignee and state giving a time and geographically limited monopoly






35. Test whether or not tasks can be accomplished efficiently by all levels of users






36. Each team member given set of features to work on






37. Reusable - abstract 'blocks' of design






38. Testing designed to uncover regressions (where stuff that used to work doesn't work anymore)






39. 1. A language feature that supports prototype- based programming. 2. Originally: One object relying upon another to provide a specified set of functionalities. 3. In .NET: A way of telling which method to call when an event is triggered






40. An operator used to denote anonymous functions or closures.






41. AKA: Object - Entity - or Value - An entity that can be constructed at run - time - passed as a parameter - returned from a subroutine - or assigned into a variable.






42. The things a system must do






43. The process of attempting to optimise the read performance of a database by adding redundant data or by grouping data






44. An effective method expressed as a finite list of well- defined instructions for solving a problem.






45. Recognizable indicator that something may be wrong with code






46. (smell) client needs to use one object to get another and then use that one to get another






47. Approach to team management that splits management up into two people with separate tasks






48. Executes system in a manner that demands abnormal amounts of resources






49. One or two paragraphs of text outlining a use case






50. Techniques for composing objects to form larger structures