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

CSE564 Lecture 01

CSE564 Lecture 01

Software Design
Course Presentation
(202208)

Javier Gonzalez-Sanchez
PRO

September 01, 2020
Tweet

More Decks by Javier Gonzalez-Sanchez

Other Decks in Programming

Transcript

  1. jgs
    CSE 564
    Software Design
    Lecture 01: Course Presentation
    Dr. Javier Gonzalez-Sanchez
    [email protected]
    javiergs.engineering.asu.edu | javiergs.com
    PERALTA 230U
    Office Hours: By appointment

    View Slide

  2. jgs
    About Us
    Instructor and Assistants

    View Slide

  3. jgs
    Fall 2021 | 00000001
    Instructor
    Dr. Gonzalez
    [email protected]

    View Slide

  4. jgs
    Fall 2021 | 00000001
    Rule 1
    Always use your ASU email
    @asu.edu
    To communicate with
    the TA and the Instructor

    View Slide

  5. jgs
    Fall 2021 | 00000001
    Example
    From: John [email protected]
    Subject: question
    Could you tell me what is the
    homework for this week and my grade
    in the quiz?

    View Slide

  6. jgs
    Fall 2021 | 00000001
    Rule 2
    Use CSE 564 as a prefix in
    your subject

    View Slide

  7. jgs
    Fall 2021 | 00000001
    Instructor
    Dr. Gonzalez
    [email protected]
    www.javiergs.com

    View Slide

  8. jgs
    Fall 2021 | 00000001
    Teaching
    Undergrad
    Level
    Graduate
    Level
    [email protected]
    CSE 110
    CSE 205
    CSE 240
    CSE 340
    CSE 360
    CSE 460
    SER 200
    SER 315
    SER 332
    SER 431
    CSE 563
    CSE 564
    CSE 594
    SER 516
    SER 517
    SER 518
    SER 594

    View Slide

  9. jgs
    Fall 2021 | 00000001
    [email protected]
    • Programming
    & Languages
    • Software
    Engineering
    • Human-Computer
    Interaction and
    Computer Graphics
    • Machine Learning
    Teaching
    Undergrad
    Level
    Graduate
    Level

    View Slide

  10. jgs
    Fall 2021 | 00000001
    Teaching Assistant
    § Graduate TA
    Venkata Surya Kambhampati
    [email protected]

    View Slide

  11. jgs
    Fall 2021 | 00000001
    Teaching Assistant
    § Graduate TA
    Venkata Surya Kambhampati
    [email protected]
    Allow us 24 – 48 hours to reply
    Business days, i.e., no weekends or holydays
    Any question about grades (or appeals),
    contact the TA first.
    He grades your assignments!

    View Slide

  12. jgs
    Fall 2021 | 00000001
    Office Hours
    § By Appointment
    § Contact the instructor or the TA, make an appointment, then he will share
    with you a Zoom link for the meeting.

    View Slide

  13. jgs
    Fall 2022

    View Slide

  14. jgs
    Fall 2021 | 00000001
    On Campus
    § This is an on-campus course
    The lecture is Tue/Thu 4:30 PM AZ time
    Exams are proctored during a lecture session (4:30 PM AZ time)
    § Some lectures could be recorded, but recording is not to be
    made public. Recordings may be used to accommodate students.
    § If you require accommodation, you must contact DRC/SEILS,
    ISSC, Health Services, and/or your academic unit.

    View Slide

  15. jgs
    Fall 2021 | 00000001
    Academic Affairs Manual (ACD)

    View Slide

  16. jgs
    Fall 2021 | 00000001
    Important
    Request:
    Participate. It is better to ask a question
    during the lecture than submit an appeal after.
    In my exam, I answered 2 + 2 = 5 because
    foobar.com tutorial said so.
    Can I get partial credits?

    View Slide

  17. jgs
    About CSE 564
    Topics, activities, grading, and planning

    View Slide

  18. jgs
    Fall 2021 | 00000001
    Prerequisite
    § You should be proficient with CSE 110 (Java Programming)
    § My CSE 110 Lectures are available in case you need to refresh your
    knowledge on the topics covered there
    www.javiergs.com/teaching/cse110/

    View Slide

  19. jgs
    Fall 2021 | 00000001
    Prerequisite
    § You should be proficient with CSE 360 (Software Engineering)
    § My CSE 360 Lectures are available in case you need to refresh your
    knowledge on the topics covered there
    www.javiergs.com/teaching/cse360/

    View Slide

  20. jgs
    Fall 2021 | 00000001
    Activities
    1. Requirements
    2. Modeling or Design
    3. Construction or Coding
    4. Testing
    5. Deployment or Delivery

    View Slide

  21. jgs
    Fall 2021 | 00000001
    CSE 564
    Software Design
    Definition

    View Slide

  22. jgs
    Fall 2021 | 00000001
    What this course is NOT about
    § Design in Engineering, not Design in Art
    § Software Design is NOT Graphic Design
    § Software Design is NOT about Graphical User Interfaces Design
    Well, not in terms of aesthetic

    View Slide

  23. jgs
    Fall 2021 | 00000001
    CSE 564
    Software Design
    Definition

    View Slide

  24. jgs
    Fall 2021 | 00000001
    CSE 564
    Software Design
    Definition
    A specification for the construction of something
    The parts and their relationships
    Graphical description (blueprint)
    Key Ideas: Scalability, Modifiability, Reusable

    View Slide

  25. jgs
    Fall 2021 | 00000001
    Blueprint

    View Slide

  26. jgs
    Fall 2021 | 00000001
    Engineering vs Coding

    View Slide

  27. jgs
    Fall 2021 | 00000001
    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

  28. jgs
    Fall 2021 | 00000001
    Idea
    OOAD, Grady Booch, 2007

    View Slide

  29. jgs
    Fall 2021 | 00000001
    Agenda
    Main Topics
    1 Fundamentals and Research Background
    2 Information Hiding
    3 Interconnection and Decoupling
    4 Software Architecture
    5 Patterns
    6 User Interfaces (Views)
    7 Frameworks and Platforms, and Model-Driven Development
    8 Final review

    View Slide

  30. jgs
    Fall 2021 | 00000001
    References
    § Research Papers posted on Canvas
    § Recommended Books:

    View Slide

  31. jgs
    Fall 2021 | 00000001
    Grading
    100%
    A
    95
    A-
    90
    B+
    85
    B
    80
    B-
    75
    C+
    70
    C
    65
    D
    60
    Midterm Exam 25%
    25%
    Final Exam
    (Comprehensive)
    25%
    Quizzes
    (and attendance)
    25%
    Assignments

    View Slide

  32. jgs
    Fall 2021 | 00000001
    Grading
    - I got 80 and 68 in mi exams
    - We did 8 quizzes, I missed 3 quizzes and got
    10 in 4, but 5 in the last 1
    - We did 6 assignments, I got 9 in 3, and 10
    in the other 3.
    - What is my final grade?
    Exams = (80 + 68) / 2 * 0.50 = 37
    Quizzes = (45 / 8) * 2.5 = 14.0625
    Assignments = (27 + 30) / 6 * 2.5 = 23.75
    Total = 37 + 14.0625 + 23.75 = 74.8125
    Final Grade: C+

    View Slide

  33. jgs
    Fall 2021 | 00000001
    Rule 3
    § Assignments and projects can never be made up and can
    never be turned in late.
    § Quizzes and Exams. There are no make-ups for missed
    quizzes and exams.
    § The only Exceptions:
    These listed in ASU policies, including Accommodation for
    Religious Practices, Missed Classes Due to University-
    Sanctioned Activities, etc.
    A Job Interview is not

    View Slide

  34. jgs
    Fall 2021 | 00000001
    Assignments
    § You will usually have a week or two to work
    § That does NOT mean that you need a week or two to complete the
    assignment (you do NOT need the full 10 or 20 hours)
    § There are NO extension. Do NOT procrastinate.
    § You will usually have a week or two to work, so you can
    accommodate your time. Up to you working night, day or weekends.
    However, neither TA nor instructor are available 24/7

    View Slide

  35. jgs
    Fall 2021 | 00000001
    Assignments
    § You will usually have a week or two to work
    § That does NOT mean that you need a week or two to complete the
    assignment (you do NOT need the full 10 or 20 hours)
    § There are NO extension. Do NOT procrastinate.
    § You will usually have a week or two to work, so you can
    accommodate your time. Up to you working night, day or weekends.
    However, neither TA nor instructor are available 24/7
    Allow us 24 – 48 hours to reply
    Business days, i.e., no weekends or holydays

    View Slide

  36. jgs
    Fall 2021 | 00000001
    Assignments
    § Assignments are graded as 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0.
    § 10 is Excellent
    § 8 is Good
    § 6 is Average

    View Slide

  37. jgs
    Fall 2021 | 00000001
    Assignments
    From: John [email protected]
    Subject: GRADE APPEAL
    My grade is too low. And the grades
    of my friends are too low too. And
    this is my first-time programming.
    And I work thousand hours on this.
    And I did all the work, my team did
    not help me. I deserve at least 9.
    Prof. update my grade

    View Slide

  38. jgs
    Fall 2021 | 00000001
    Assignments
    From: John [email protected]
    Subject: GRADE APPEAL
    My grade is too low. And the grades
    of my friends are too low too. And
    this is my first-time programming.
    And I work thousand hours on this.
    And I did all the work, my team did
    not help me. I deserve at least 9.
    Prof. update my grade
    Participate. It is better to ask a question
    during the lecture than submit an appeal after.
    Allow us 24 – 48 hours to reply
    Business days, i.e., no weekends or holydays
    Any question about grading criteria
    contact us.

    View Slide

  39. jgs
    Fall 2021 | 00000001
    Quizzes
    § You will usually have approximately 30 minutes (average)
    § Some are on Canvas (at home)
    § Some are during a lecture time – unannounced
    § There are no make-ups for missed quizzes or exams.

    View Slide

  40. jgs
    Fall 2021 | 00000001
    Example
    From: John [email protected]
    Subject: question
    I am not going to attend today
    lecture. Are we going to do something
    important?

    View Slide

  41. jgs
    Fall 2021 | 00000001
    Example
    From: John [email protected]
    Subject: question
    I am not going to attend today
    lecture. Are we going to do something
    important?
    There are no make-ups for missed quizzes or
    exams.
    The only Exceptions are
    these listed in ASU policies

    View Slide

  42. jgs
    Important
    Resources Available

    View Slide

  43. jgs
    Fall 2021 | 00000001
    Ask For Help
    § ASU provides tutoring, career, health and wellness and financial
    resources.
    § Check this link http://engineering.asu.edu/resources/
    § Ask for help when and if you need it.

    View Slide

  44. jgs
    Fall 2021 | 00000001
    Do NOT be a Grade Grubber
    § Grading is done applying the same policies to all students as described
    in the syllabus.
    § It is unethical to bring to your instructor's attention the possible impact of
    your course grade on your future plans, including graduation, scholarships,
    jobs, etc.
    Do not send requests to your instructor asking for a grade that you did not
    earn with your work.

    View Slide

  45. jgs
    Fall 2021 | 00000001
    Example
    From: John [email protected]
    Subject: Grade Appeal
    I am very close to a B+ and I need a
    B+ to keep my scholarship.
    You will be responsible if I cannot
    continue my career at ASU

    View Slide

  46. jgs
    Fall 2021 | 00000001
    Rule 4
    § Remember:
    Do not send requests to your instructor asking for a grade that you did not
    earn with your work.

    View Slide

  47. jgs
    Fall 2021 | 00000001
    Questions

    View Slide

  48. jgs
    CSE 564 Software Design
    Javier Gonzalez-Sanchez, Ph.D.
    [email protected]
    Fall 2021
    Copyright. These slides can only be used as study material for the class CSE564 at ASU.
    They cannot be distributed or used for another purpose.

    View Slide