Upgrade to Pro — share decks privately, control downloads, hide ads and more …

CSC307 Lecture 05

CSC307 Lecture 05

Introduction to Software Engineering
Software Design
(202407)

This lecture delves into the fundamentals of UML class diagrams for representing the structural models of software systems. We cover the graphical abstract descriptions that serve as blueprints for software solutions, detailing how class diagrams illustrate attributes, methods, and relationships between classes, including dependency, associations, aggregations, compositions, and generalization/specialization. Practical examples and activities help students apply these concepts.

Tweet

More Decks by Javier Gonzalez-Sanchez

Other Decks in Programming

Transcript

  1. Dr. Javier Gonzalez-Sanchez [email protected] www.javiergs.info o ffi ce: 14 -227

    CSC 307 Introduction to Software Engineering Lecture 05. Software Design
  2. 
 
 
 
 Software Design De f inition To

    cre a te a speci f ic a tion of a softw a re (solution) Gr a phic a l Abstr a ct Description (blueprint) 9 model
  3. Structural models Structur a l models of softw a re

    displ a y the org a niz a tion of a system in terms of a ) the p a rts (items, elements, components) th a t m a ke up th a t system a nd b) their rel a tionships. 13
  4. Class diagram Cl a ss di a gr a ms

    show the cl a sses in a system • modi f iers • Attributes • methods And the rel a tionships between these cl a sses: • Associ a tion / Dependency • Aggreg a tion / Composition • Gener a liz a tion / Speci a liz a tion / Re a liz a tion 15
  5. Problem public class B implements E { public B() {

    C c1 = new C(); } public void method() { B b = new B(); b.sleep(); } } public class Y { A [] a = new A[5]; } public class A extends B { C c1, c2; public A() { c1 = new C(); } public void method() { D d = new D(); d.working(); } } public class X { public void m() { B var = new A(); double x – Math.sqrt(5); } }
  6. CSC 307 Introduction to Software Engineering Javier Gonzalez-Sanchez, Ph.D. [email protected]

    Summer 2024 Copyright. These slides can only be used as study material for the class CSC307 at Cal Poly. They cannot be distributed or used for another purpose.