Slide 1

Slide 1 text

Dr. Javier Gonzalez-Sanchez [email protected] www.javiergs.info o ffi ce: 14 -227 CSC 307 Introduction to Software Engineering Lecture 08. Software Design

Slide 2

Slide 2 text

Previously

Slide 3

Slide 3 text

Developers 3 M a in JFr a me GUI Login Controller GUI Login JP a nel GUI Cre a te Room GUI Cre a te Room Controller Bl a ckbo a rd GUI Stories GUI Stories Controller GUI D a shbo a rd Controller GUI South GUI C a rds GUI West GUI D a shbo a rd

Slide 4

Slide 4 text

Some Help https://github.com/CSC3100/PlanIt-Poker/

Slide 5

Slide 5 text

Design

Slide 6

Slide 6 text


 
 
 
 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) 6 model

Slide 7

Slide 7 text

Activities 7

Slide 8

Slide 8 text

Blueprints 8 VS

Slide 9

Slide 9 text

Error Smells

Slide 10

Slide 10 text

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. 10

Slide 11

Slide 11 text

UML Diagrams 11

Slide 12

Slide 12 text

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 12

Slide 13

Slide 13 text

Relationships 13 Association Directed Association Reflexive Association Multiplicity Aggregation Composition Generalization Realization

Slide 14

Slide 14 text

Whiteboard 14

Slide 15

Slide 15 text

Examples

Slide 16

Slide 16 text

Thoughts? 16

Slide 17

Slide 17 text

Questions 17

Slide 18

Slide 18 text

Lab

Slide 19

Slide 19 text

Lab 19 Draft the Class Diagram for ___________________.

Slide 20

Slide 20 text

CSC 307 Introduction to Software Engineering Javier Gonzalez-Sanchez, Ph.D. [email protected] Spring 2025 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.