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 01. Course Presentation

Slide 2

Slide 2 text

Introductions

Slide 3

Slide 3 text

Dr. J a vier Gonz a lez-S a nchez j a viergs@c a lpoly.edu www.j a viergs.info First n a me L a st n a me Contact Information

Slide 4

Slide 4 text

Where Am I from?

Slide 5

Slide 5 text

Teaching www.j a viergs.info/te a ching/ At CSU: Softw a re Engineering (CSC 305, 307, 308, 309, 508, 509) Hum a n-Computer Inter a ction (CSC 486, CSC 570)

Slide 6

Slide 6 text

Research

Slide 7

Slide 7 text

Your Turn • Wh a t is your n a me (or how you go by it)? • Are you pro f icient in progr a mming with J a v a ? • Wh a t is Your experience progr a mming (internships, person a l projects, h a ck a thons, others)?

Slide 8

Slide 8 text

Course Content

Slide 9

Slide 9 text

This is About Engineering 9

Slide 10

Slide 10 text

This is About Engineering • M a nuf a cturing vs. Cr a fting Softw a re • Code is me a nt for hum a n consumption, a nd it’s me a nt for computer consumption. • Cre a ting softw a re together but not scr a mbled 10

Slide 11

Slide 11 text

Code is meant for human consumption 11

Slide 12

Slide 12 text

Together but not Scrambled 12

Slide 13

Slide 13 text

Manufacturing vs. Crafting 13

Slide 14

Slide 14 text

Analogy 14 Analysis understanding how systems work asking all the important questions before you start hammering nails Design creating solutions that meet requirements, budget, improving performance, cost, efficiency, or safety. Follow standards Use what already exists! Implementation translating ideas into functioning realities (Not always with their own hands)

Slide 15

Slide 15 text

This is About Engineering 15

Slide 16

Slide 16 text

This is NOT… 16

Slide 17

Slide 17 text

This is NOT… 17

Slide 18

Slide 18 text

Topics 18 Deployment Softw a Testing Coding, Progr a Developing Softw a Design Requirement Engineering [+]

Slide 19

Slide 19 text

Topics 19

Slide 20

Slide 20 text

Syllabus

Slide 21

Slide 21 text

Guidelines 21 Attendance (participation) is Expected

Slide 22

Slide 22 text

Guidelines 22 Hours per Week

Slide 23

Slide 23 text

Guidelines 23 Late Assignments

Slide 24

Slide 24 text

Guidelines 24 Regularly visit our course page on Canvas

Slide 25

Slide 25 text

Grading 25 25 % 25 %

Slide 26

Slide 26 text

Grading 26

Slide 27

Slide 27 text

References 27

Slide 28

Slide 28 text

Homework

Slide 29

Slide 29 text

Homework 29

Slide 30

Slide 30 text

Homework 30

Slide 31

Slide 31 text

Homework: Review Java Read The Java Tutorials (Links available on Canvas) As needed

Slide 32

Slide 32 text

Homework: Style Guide Read Java Style Guide https://google.github.io/styleguide/javaguide.html Apply it Always!

Slide 33

Slide 33 text

Questions 33

Slide 34

Slide 34 text

Lab 01. Getting Started with Java Swing

Slide 35

Slide 35 text

Paint App 35

Slide 36

Slide 36 text

Paint App 36

Slide 37

Slide 37 text

To be continued… 37

Slide 38

Slide 38 text

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