Software Engineering · সফটওয়্যার ইঞ্জিনিয়ারিং


Software Design and UML Diagramsসফটওয়্যার ডিজাইন এবং UML ডায়াগ্রাম

Introduction

Software design is the phase of the software development life cycle (SDLC) that sits between requirements analysis (what the system must do) and implementation/coding (writing the actual program). Design answers the question "HOW will the system do it?" — it translates the what of requirements into a concrete blueprint of software structure: the modules, their responsibilities, how they interact, the data they hold, and how everything is organized.

UML (Unified Modeling Language) is the standardized, general-purpose visual modeling language used to specify, visualize, construct and document that design. Instead of prose, engineers draw standard diagrams so that the design is unambiguous and communicable across a team.

For Bangladeshi government IT exams (BCS technical, Bank IT officer, BCC/BTCL, IT officer posts), this topic is a high-yield area. Examiners repeatedly ask: the difference between analysis and design; cohesion vs coupling; the meaning of abstraction, modularity, encapsulation; who created UML; how many diagram types UML has and their two categories (structural vs behavioral); which diagram shows classes, which shows time-ordered messages, which shows user–system interaction; and the meaning of relationships like association, aggregation, composition, generalization. Master the vocabulary precisely — most questions are one-liners that reward exact definitions.

Learning objectives

After studying this lesson you should be able to:

  • Define software design and place it correctly in the SDLC.
  • Distinguish the levels of design: architectural (high-level) vs detailed (low-level) design.
  • Explain the fundamental design concepts: abstraction, modularity, cohesion, coupling, encapsulation, information hiding, separation of concerns, refinement.
  • State what makes a good design (high cohesion, low coupling).
  • List the 7 types of cohesion and types of coupling in correct order and pick the best/worst.
  • Recall UML history, purpose, and who standardizes it (OMG).
  • Classify all 14 UML 2.x diagrams into structural and behavioral groups.
  • Read and draw the four most-tested diagrams: class, use-case, sequence, activity.
  • Interpret UML class relationships: association, aggregation, composition, generalization/inheritance, dependency, realization — including multiplicity notation.
  • Answer exam MCQs on design principles and UML with confidence.

Continue this lesson free: create an account

You have read the opening of this lesson. The full lesson (3,388 words, in English and Bangla) has worked examples, practice questions with answers and exam tips. A free account opens it and saves your progress.পুরো পাঠটি পড়তে বিনামূল্যে অ্যাকাউন্ট খুলুন।

More on this subject: Software Engineering guide: syllabus by chapter and past questions

© 2026 ARBS Academy (Aether Brains). Questions' explanations, model answers and lessons are our original work; copying or republishing is not allowed.

© ২০২৬ এআরবিএস একাডেমি (Aether Brains)। প্রশ্নের ব্যাখ্যা, মডেল উত্তর ও লেসন আমাদের নিজস্ব কাজ; কপি বা পুনঃপ্রকাশ করা নিষেধ।