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. Compose objects into tree structures to represent part-whole hierarchies. Lets clients treat individual objects and compositions of objects uniformly.






2. Inheritance between object.






3. When a concrete class inherits from a pure interface.






4. One of the linking methods (pragma comment)






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






6. When doing a - precise task.






7. No more than 40 hours to stop burnouts.






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






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






10. Fix any problems and then repeat the process.






11. When a class is defined within another class.






12. Set of all pending changes.






13. Puts all headers into a master header.






14. Valid input that the program is designed to process.






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






16. Do not optimize until the very end.






17. 2 Eyes + 2 Minds = AWESOME!






18. Ignores files when pushing.






19. Initialized heap memory.






20. Copies all changes from one branch into another branch.






21. Ability to accept different types of parameters to bind to different implementations at run-time.






22. Freed heap memory.






23. Trying to access a location in memory that your computer cannot access.






24. Link multiple projects together






25. Ensure a class only has one instance - and provide a global point of access to it






26. Uploads all changes staged in the index list into the repository database.






27. Allows consumers to try a system earlier and give early feedback.






28. Initialized stack memory.






29. Undo changes made since your last commit.






30. Linking to dynamic libraries is usually handled by linking to an ____________.






31. Allow an object to alter its behavior when its internal state changes. The object will appear to change its class.






32. CONSTANT






33. The default nickname for the remote repository.






34. STOP!!






35. Developers should be integrated and releasing code into the code repository every few hours.






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






37. Keeps a team using a similar naming convention for things.






38. Current line that is executing.






39. Downloads your changes and then merges.






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






41. Ability to treat a class object as a function by overloading the () operator.






42. Separating out a section of code into a reusable function or class.






43. A set of creation and initialization steps useful for a set of different related tests.






44. When a conflict is fixed.






45. Uploads changes to your current branch.






46. Current view/ previous line.






47. Define a one-to-many dependency between objects so that when one object changes state - all its dependents are notified and updated automatically






48. Adds files to the repository.






49. No man's land. Guard bytes before the after allocated heap memory.






50. Weak relationship between two classes. Almost always results in a #include.