Computer Science homework help
Q1 (10 marks) Explain the following:
- What is the rationale for refactoring in agile development?
- Is refactoring just cleaning up code? Explain your answer
- The key motivations for Iterative Development.
Q2. (20 marks) Find your own example of where a refactoring to patterns was be used (For example the Move Creation Knowledge to Factory) refactoring would be used. Please explain the following
- Explain the details of the scenario
- Explain the pattern your trying to implement and justify your changes
- UML / ER diagram
- Before changes – code snapshot of the skeleton of the classes/methods
- After changes – code snapshot of the skeleton of the classes/methods
- Risk assessment of the changes
- Test Analysis
Q3 (10 marks)
- Explain any 3 refactoring techniques in detail?
- Discuss reasons for technical depth?
- You identified dirty code when working on separate task, detail your plan of action?