$30 off During Our Annual Pro Sale. View Details »

CSC307 Lecture 01

CSC307 Lecture 01

Introduction to Software Engineering
Course Presentation
(202306)

Javier Gonzalez-Sanchez
PRO

June 23, 2023
Tweet

More Decks by Javier Gonzalez-Sanchez

Other Decks in Programming

Transcript

  1. jgs
    CSC 307
    Introduction to Software Engineering
    Lecture 01:
    Course Presentation
    Dr. Javier Gonzalez-Sanchez
    [email protected]
    www.javiergs.com
    Building 14 -227
    Office Hours: By appointment

    View Slide

  2. jgs
    About Me

    View Slide

  3. CSC 308 | Dr. Javier Gonzalez-Sanchez | 3
    jgs
    Dr. Javier Gonzalez-Sanchez
    Dr. Gonzalez-Sanchez
    Dr. Gonzalez
    [email protected]
    www.javiergs.com
    www.linkedin.com/in/javiergs/
    Contact Information

    View Slide

  4. CSC 308 | Dr. Javier Gonzalez-Sanchez | 4
    jgs
    Where I am from?

    View Slide

  5. CSC 308 | Dr. Javier Gonzalez-Sanchez | 5
    jgs
    www.javiergs.com/teaching/
    At CSU:
    § Software Engineering
    (CSC 307, 308, 309, 509)
    § Applied Affective Computing (HCI topics)
    (CSC 570)
    Teaching

    View Slide

  6. CSC 308 | Dr. Javier Gonzalez-Sanchez | 6
    jgs
    Research
    SE
    HCI
    ML

    View Slide

  7. CSC 308 | Dr. Javier Gonzalez-Sanchez | 7
    jgs
    It is Your Turn
    § What is your name (or how you go by it)?
    § What is Your experience programming (internships, personal projects,
    hackathons, others)?
    § Are you proficient in programming with Java?

    View Slide

  8. jgs
    Syllabus

    View Slide

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

    View Slide

  10. CSC 308 | Dr. Javier Gonzalez-Sanchez | 11
    jgs
    Guidelines
    Time per Week

    View Slide

  11. CSC 308 | Dr. Javier Gonzalez-Sanchez | 12
    jgs
    Guidelines
    Late Assignments

    View Slide

  12. CSC 308 | Dr. Javier Gonzalez-Sanchez | 13
    jgs
    Guidelines
    Attendance (participation) is
    Expected

    View Slide

  13. CSC 308 | Dr. Javier Gonzalez-Sanchez | 14
    jgs
    Canvas

    View Slide

  14. CSC 308 | Dr. Javier Gonzalez-Sanchez | 15
    jgs
    Canvas
    Regularly visit our curse page on
    Canvas.
    The syllabus, assignments,
    quizzes, and other resources are
    there.

    View Slide

  15. CSC 308 | Dr. Javier Gonzalez-Sanchez | 16
    jgs
    Grading
    Team Project 30%
    20%
    Assignments
    20%
    Labs + Quizzes
    20%
    Final Exam
    5%
    Attendance &
    Participation
    5%
    Self / Peer Evaluation
    100%

    View Slide

  16. CSC 308 | Dr. Javier Gonzalez-Sanchez | 17
    jgs
    Grading
    100%
    A
    >= 96.5
    A-
    >= 93.0
    B+
    >= 89.5
    B
    >= 86.0
    B-
    >= 82.5
    C+
    >= 79
    C
    >= 75.5
    C-
    >= 72.0
    D+
    >= 68.5
    D
    >= 65.0
    D-
    >= 61.5
    F
    < 61.5

    View Slide

  17. CSC 308 | Dr. Javier Gonzalez-Sanchez | 18
    jgs
    References

    View Slide

  18. jgs
    Course Content

    View Slide

  19. CSC 308 | Dr. Javier Gonzalez-Sanchez | 20
    jgs
    Course Content
    This is NOT a web development
    course. That one is CSC 437

    View Slide

  20. CSC 308 | Dr. Javier Gonzalez-Sanchez | 21
    jgs
    Course Content
    ❌ JavaScript
    ❌ Node.js
    ❌ React
    ✅ Software Engineering

    View Slide

  21. CSC 308 | Dr. Javier Gonzalez-Sanchez | 22
    jgs
    Course Content
    1. Programming in the Large vs Programming in the Small
    2. Code is meant for human consumption, and it’s meant for computer
    consumption.
    3. Assigning Responsibility - together but not scrambled

    View Slide

  22. CSC 308 | Dr. Javier Gonzalez-Sanchez | 23
    jgs
    Engineering vs Coding

    View Slide

  23. CSC 308 | Dr. Javier Gonzalez-Sanchez | 24
    jgs
    Engineering vs Coding

    View Slide

  24. CSC 308 | Dr. Javier Gonzalez-Sanchez | 25
    jgs
    Engineering vs Coding

    View Slide

  25. CSC 308 | Dr. Javier Gonzalez-Sanchez | 26
    jgs
    Engineering vs Coding

    View Slide

  26. CSC 308 | Dr. Javier Gonzalez-Sanchez | 27
    jgs
    Alternative Solution
    New Yorker, June 1992
    "Most software today is very much like
    an Egyptian pyramid with millions of bricks piled
    on top of each other, with no structural integrity,
    but just done by brute force and thousands of slaves".
    – Alan Kay.
    Pioneering work on object-oriented programming
    ACM Queue. Vol. 2, No. 9 - Dec/Jan 2004-2005

    View Slide

  27. CSC 308 | Dr. Javier Gonzalez-Sanchez | 28
    jgs
    Course Content
    People Cost
    Product

    View Slide

  28. CSC 308 | Dr. Javier Gonzalez-Sanchez | 29
    jgs
    We would like this

    View Slide

  29. CSC 308 | Dr. Javier Gonzalez-Sanchez | 30
    jgs
    Not this…
    OOAD, Grady Booch, 2007

    View Slide

  30. CSC 308 | Dr. Javier Gonzalez-Sanchez | 31
    jgs
    Nether this.
    Zdenek Sasek / Alamy Stock Vector

    View Slide

  31. CSC 308 | Dr. Javier Gonzalez-Sanchez | 32
    jgs
    To Do
    Read the Syllabus
    (PDF available on Canvas)

    View Slide

  32. CSC 308 | Dr. Javier Gonzalez-Sanchez | 33
    jgs
    To Do
    Read TextBook Chapter 1
    (PDF available on Canvas)

    View Slide

  33. CSC 308 | Dr. Javier Gonzalez-Sanchez | 34
    jgs
    Questions

    View Slide

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

    View Slide