Test your basic knowledge |

SWA - Software Architecture

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. A measure of logical dependency.






2. A reference. Has and delete dynamic memory. implies ownership (Association does not).






3. Meetings at the beginning of each iteration to produce a plan of programming tasks.






4. Portioning your changes to commit by inserting them into the index.






5. Breaks encapsulation boundaries.






6. Having power over inheritance with the flexibility of composition.






7. Makes a copy of your repository.






8. Reusing existing functionality by defining a relationship between two classes : Inheritance or containment.






9. Helps to eliminate unnecessary "include chaining."






10. Whats displayed to the screen






11. Classes build off of each other.






12. Creates a spin-off of a repository for concurrent development.






13. Treating a derived class's data members like it's base class's.






14. (Door-----Spell) BI_DIRECTIONAL because both classes can reference each other. (Door--->Spell) DIRECTIONAL because only the door knows and can reference Spell.






15. Application






16. Put this before a function name in a dll - and the function name will avoid name mangling






17. Takes information in the index and pushes it onto the stack.






18. Encapsulates a request as an object - thereby letting you parameterize clients with different requests - queue or log requests - and support undoable operations.






19. Ability to withstand change and what the effects are.






20. Meetings used to create a release plan - which will lay out the overall project.






21. Bad! Don't ever use these types of variables!






22. You have to tell it to link






23. Link multiple projects together






24. Downloads your changes and then merges.






25. Create a test and then create a function.






26. Simply a value.






27. A function that can load a library






28. Current view/ previous line.






29. Taking code and moving it to a function that usually returns an object. They are always virtual functions.






30. Use only through the interface of the object.






31. When a class is defined within another class.






32. Puts all headers into a master header.






33. A group of code. unnamed can only be accessed within that translation unit - name can be accessed anywhere






34. Try to find the flaws in your code.






35. Creates a copy of your current branch into a remote branch.






36. A collection of memory addresses for all virtual functions in an objects class hierarchy.






37. Written by the customers as things that the system needs to do for them.






38. Freed heap memory.






39. Plan out your code.






40. When a .cpp file is compiled - the header files are first included (recursively) by the pre-processor. This block of code is called a ______________.






41. Static in C++. Can span all instances of a class.






42. STOP!!






43. When you type in an object - you can see its attributes.






44. One of the linking methods (pragma comment)






45. Ignores files when pushing.






46. 2 Eyes + 2 Minds = AWESOME!






47. About the interface to an object. Data contained within.






48. When doing a - precise task.






49. Ask questions and obtain the details and requirements given.






50. Set of all pending changes.