From your textbook, design patterns are “solutions that developers have refined over time to solve a range of recurring problems.” Design patterns have a range of benefits, such as speeding up the development process by reducing the need to develop new designs from scratch.
For this Assignment, you will apply a design pattern to the Pennywise National Bank scenario in the previous unit. Perform the following:
1). Evaluate design patterns and select one that fits within this project. Explain why you picked that design pattern.
2). Generate a high-level UML class diagram for this system. Indicate which classes are contained in the design pattern you selected.
3). Describe the benefits of using this pattern instead of another pattern or designing from scratch.
Please provide references to show critical thinking.
Additional Resources:
Readings
- Course Text:Object-oriented Software Engineering Using UML, Patterns, and Java
- Chapter 6, “System Design: Decomposing the System”This chapter covers decomposing a software system. You will learn how to breakdown a large, complex design into smaller components and how to define interfaces between these components.
- Chapter 7, “System Design: Addressing Design Goals”In this chapter, you learn how to design software that addresses the requirements defined for your project. You will also detail how to review, document and assign responsibilities within the design phase.
- Chapter 8, “Object Design: Reusing Pattern Solutions”This chapter provides you with details about how to design your software objects based on your project analysis. In addition, you will learn how to use design patterns to leverage proven solutions to common problems.
- Article:Glass, R. (2001). What’s wrong with software reuse? Retrieved from http://www.stickyminds.com/sitewide.asp?ObjectId=2731&Function=edetailIn this web article, software developer Robert L. Glass takes a “naysayer” position on software reuse, arguing that reuse cannot be implemented in a truly cost-effective fashion due to issues with