Design patterns and structured analysis are two of the most heavily tested areas in the Software Engineering paper of BCS, Bank IT-officer and other government recruitment exams. Design patterns are proven, reusable solutions to recurring design problems in object-oriented software; structured analysis is the older but still-examined set of modelling tools (DFD, ER diagram, data dictionary, state-transition diagram, structure chart) used to specify what a system must do. Examiners love this topic because it is full of crisp, memorizable facts: the three GoF categories, which pattern belongs where, DFD symbols and rules, and the definitions of coupling and cohesion. This lesson gives you every one of those facts, with diagrams and worked examples, so you can answer both one-mark MCQs and longer descriptive questions.
Learning objectives
- State what a design pattern is and name the three GoF (Gang of Four) categories with their member patterns.
- Give the intent, a UML class diagram, and a short example for Singleton, Factory, MVC, Strategy, Observer, Composite, Decorator and Adapter.
- Draw a Data Flow Diagram (context, level 0, level 1), knowing its four symbols and its balancing rules.
- Produce a data dictionary, an ER diagram and a state-transition diagram for a bank-account system.
- Draw a structure chart and read module relationships from it.
- Define and rank every type of coupling and cohesion, and state the design goal (low coupling, high cohesion).