Slide 1

Slide 1 text

Dr. Javier Gonzalez-Sanchez [email protected] www.javiergs.info o ffi ce: 14 -227 CSC 305 Individual Software Design and Development Lecture 26. Final Project

Slide 2

Slide 2 text

Announcements 2 * Final Exam December 6 (Lab Time) * Final Project Due by December 11 (no extensions) I will provide details on Wednesday.

Slide 3

Slide 3 text

Final Project Presentation

Slide 4

Slide 4 text

Wednesday, December 11 a ) Fin a l Version of your Source Code - submit your J a v a f iles b) Softw a re Design - your UML cl a ss di a gr a m c) Metrics (Code a nd Structure) d) Links to your GitHub repository e) Link to your video of the Fin a l Present a tion 4

Slide 5

Slide 5 text

Demo Part 1

Slide 6

Slide 6 text

First Act – The product for the Customer Demo of your project. Show your project running. :: notes :: you c a n, a ddition a lly, t a lk (brie f ly) a bout your propos a l, i.e., the next fe a tures to be a dded 6

Slide 7

Slide 7 text

Architecture and Design Part 2

Slide 8

Slide 8 text

Second Act – Software Design Show your a rchitecture a nd cl a ss di a gr a m. (Show wh a t is import a nt a nd m a ke it e a sy to re a d for the a udience) :: notes :: (you c a n use colors for the newly a dded cl a sses) • Wh a t did you do th a t m a ke this design “good”. • Do you a chieve SOLID? • Do you improve A, I, or D? (show the 2D plot reg a rding where your cl a sses a re in terms of the p a in zone) 8

Slide 9

Slide 9 text

Part 2. The product • Describe your a rchitecture ( a di a gr a m with boxes is f ine) • Describe your design. Could it be e a sy for a new developer to reuse, modify or extend wh a t you h a ve cre a ted? • Show a cl a ss di a gr a m (Expl a in it a nd describe the det a ils) • Be sure the di a gr a m a nd code m a tch. • Wh a t components were developed by e a ch te a m member? Wh a t were the criteri a for splitting the work (components, cl a sses, methods)? 9

Slide 10

Slide 10 text

Structural Metrics 10 Abstract concrete Stable Hard to Change Only incoming dependencies Unstable Changeable Only outgoing dependencies

Slide 11

Slide 11 text

Code Part 3

Slide 12

Slide 12 text

Part 2. The product • Source code cle a n, DRY, a nd KIS • Code Metrics: LOC, eLOC, lLOC, CC • Structure Metrics: Abstr a ctness, Inst a bility, Dist a nce • Does the product h a ve a “good” qu a lity? • Wh a t fe a tures were Unit Tested? • Services? 12

Slide 13

Slide 13 text

Deployment Part 4

Slide 14

Slide 14 text

Deployment Think about the following regarding deployment: •Could someone download the latest version from the GitHub release and know how to run it? •Consider using a JMenuBar, JPopupMenu •Consider making your JAR fi le executable (see next) 14

Slide 15

Slide 15 text

Deployment | POM.XML 15

Slide 16

Slide 16 text

Usability •Could someone know how to use it? •Where to start? •What the project is about? •Take advantage of your README.md (beau ti fy it) @see https://docs.github.com/en/repositories/ 16

Slide 17

Slide 17 text

Peers Not for the Video

Slide 18

Slide 18 text

(self and peer evaluation) • NOT for the video. A link will be provided for this • (self a nd peer ev a lu a tion) Wh a t should be your gr a de a nd the gr a de of e a ch of your te a mm a tes? 18

Slide 19

Slide 19 text

Questions 19

Slide 20

Slide 20 text

CSC 305 Individual Software Design and Development Javier Gonzalez-Sanchez, Ph.D. [email protected] Summer 2024 Copyright. These slides can only be used as study material for the class CSC305 at Cal Poly. They cannot be distributed or used for another purpose.