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

CSC308 Lecture 22

CSC308 Lecture 22

Software Engineering I
Final Project
(202303)

Javier Gonzalez-Sanchez
PRO

November 18, 2022
Tweet

More Decks by Javier Gonzalez-Sanchez

Other Decks in Programming

Transcript

  1. jgs
    CSC 308
    Software Engineering 1
    Lecture 22:
    Final Project
    Dr. Javier Gonzalez-Sanchez
    [email protected]
    www.javiergs.com
    Building 14 -227
    Office Hours: By appointment

    View Slide

  2. jgs
    Final Project
    Customer Needs

    View Slide

  3. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 3
    § User Stories in Taiga
    § Sprint(s)
    § Tasks and their responsible
    § Daily report (Burndown Chart)
    § UML Class Diagram in Astah
    § Model-View-Controller
    § Observer
    § Singleton (Blackboard)
    § Decorator
    § Source Code on GitHub
    § JavaDoc (Classes and Methods)
    § Self- Peer Evaluation

    View Slide

  4. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 4
    GUI
    Box

    View Slide

  5. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 5
    Objects
    Begin
    End
    Call a method
    Instruction
    Input or Output
    Variable declaration
    Condition

    View Slide

  6. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 6
    GUI
    Box

    View Slide

  7. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 7
    Let’s Work

    View Slide

  8. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 8
    GUI
    Box
    1. Click to create
    boxes

    View Slide

  9. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 9
    GUI
    Box
    2. Ask for
    content(a String)
    int n;

    View Slide

  10. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 10
    GUI
    Box
    Name1
    Name2
    class Name1 {
    }
    class Name2 {
    }
    class Cat {
    }
    Cat
    4. Make
    connections
    between boxes.
    Detect a click on
    a box and a second
    click on another
    box

    View Slide

  11. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 11
    GUI
    Box
    Name1
    Name2
    class Name1 {
    }
    class Name2 {
    method(){
    Name1
    Cat
    }
    }
    class Cat
    extends Name1 {
    }
    Cat
    5. Keep and eye of
    allowed connections
    (number and
    direction)

    View Slide

  12. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 12
    GUI
    Box
    Name1
    Name2
    class Name1 {
    }
    class Name2 {
    method(){
    Name1
    Cat
    }
    }
    class Cat
    extends Name1 {
    Car
    }
    Cat
    6. Allow
    Drag and Drop
    Car

    View Slide

  13. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 13
    § Add a JMenuBar with a Jmenu (New) to delete all
    GUI

    View Slide

  14. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 14
    § Add a JMenuBar with a Jmenu (Save) to store all coordinates for the cities
    GUI

    View Slide

  15. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 15
    § Add a JMenuBar with a Jmenu (Load) to load all coordinates for the cities
    GUI

    View Slide

  16. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 16
    § User Stories in Taiga
    § Sprint(s)
    § Tasks and their responsible
    § Daily report (Burndown Chart)
    § UML Class Diagram
    § Model-View-Controller
    § Observer
    § Singleton (Blackboard)
    § Decorator
    § Source Code
    § JavaDoc (Classes and Methods)

    View Slide

  17. jgs
    Ideas
    Drag and Drop

    View Slide

  18. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 18
    Demo

    View Slide

  19. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 19
    Main.java

    View Slide

  20. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 20
    Workspace.java (part 1 / 2)

    View Slide

  21. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 21
    Workspace.java (part 2 / 2)

    View Slide

  22. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 22
    City.java (part 1 / 2)

    View Slide

  23. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 23
    City.java (part 2 /2)

    View Slide

  24. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 24
    Questions

    View Slide

  25. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 25
    Office Hours
    Tuesday and Thursday 3 - 5 pm
    But an appointment required
    Sent me an email – [email protected]

    View Slide

  26. jgs

    View Slide

  27. jgs
    CSC 308
    Software Engineering 1
    Lab 22:
    Final Project
    Dr. Javier Gonzalez-Sanchez
    [email protected]
    www.javiergs.com
    Building 14 -227
    Office Hours: By appointment

    View Slide

  28. jgs
    Javier Gonzalez-Sanchez | CSC 308 | Winter 2023 | 28
    Let’s Work

    View Slide

  29. jgs
    CSC 308 Software Engineering I
    Javier Gonzalez-Sanchez, Ph.D.
    [email protected]
    Winter 2023
    Copyright. These slides can only be used as study material for the class CSC308 at Cal Poly.
    They cannot be distributed or used for another purpose.

    View Slide