/
Informatics 43 – March 31, 2015 Informatics 43 – March 31, 2015

Informatics 43 – March 31, 2015 - PowerPoint Presentation

liane-varnes
liane-varnes . @liane-varnes
Follow
365 views
Uploaded On 2018-02-28

Informatics 43 – March 31, 2015 - PPT Presentation

Lecture 11 Emily Navarro Todays Lecture Course introduction Getting to know each other Introduction to software engineering Software is everywhere What is software engineering Todays Lecture ID: 639065

engineering software lecture introduction software engineering introduction lecture professor quiz programming questions class quizzes test people large problem today

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "Informatics 43 – March 31, 2015" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

Informatics 43 – March 31, 2015

Lecture 1-1

Emily NavarroSlide2

Today’s Lecture

Course introduction

Getting to know each other

Introduction to software engineering

Software is everywhere

What is software engineering?Slide3

Today’s Lecture

Course introduction

Getting to know each other

Introduction to software engineering

Software is everywhere

What is software engineering?Slide4

Course Basics

Course:

Informatics 43 – Introduction to Software Engineering

Professor: Emily Navarro (

emilyo@uci.edu

)

Lecture

: T

Th

5-6:20pm,

EH 1200

Discussion:

Fridays

Starting in week 2

Course

Website:

http://www.ics.uci.edu/~emilyo/teaching/

info43s2015/

index.htmlSlide5

Teaching Staff

Professor

: Emily

Navarro

TAs

Swanand

Pethe

Anirudh

Sethi

Readers

Isley

Gao

Cassie

JeansonneSlide6

Course Basics (II)

My office

hours

Tuesdays 3:45-4:45 DBH 5221

TA office hours

TBD

Questions

and announcements

Piazza (

https://piazza.com/uci/spring2015/

in4matx43

)

Email

or in class

Class email list

Required textbook

Tsui

,

Karam

, Bernal, "Essentials of Software Engineering," Third

EditionSlide7

Quizzes

6 quizzes, most Thursdays (see schedule)

Usually held from 6

:05-6:

20

Additional

quizzes may be given without prior notice, and the time and length of the quizzes may

change

Quiz answers will be given orally, in class, each Tuesday after

a quizSlide8

Grading (I)

Quizzes: 11% (total for all quizzes; each student's lowest quiz score will be dropped)

Midterm: 25%

Final: 25%

Three

homeworks

: 36% (12% each)

Class attendance and participation: 3%

Submitting the EEE course evaluation: 0.5% extra creditSlide9

Grading (II)

Performed by TA/reader and

professor

Resolve disagreements with the TA/reader first

Keep up with the

gradebook

Do not come to me after the quarter is over with a discrepancy—it will be too lateSlide10

Cheating

DON’T DO IT!!

Plagiarism = presenting someone else’s work as your own

All assignments are checked thoroughly for

plagiarism

Looking at someone else’s paper during a quiz/test will be interpreted as cheating

Plagiarism/cheating

consequences

Fail the course

Offense recorded with Student

AffairsSlide11

Late Work

Late work will not be accepted

Truly extenuating circumstances will be evaluated on a case-by-case basis

Must provide official documentation (e.g., doctor’s note)

Exceptions only

granted by the

professor

Contact professor as soon as

possible

Contact professor with valid reasonsSlide12

Questions

When in doubt

ask the TA (or reader)

ask the professor(s

)

E-mail questions

answers

are (generally) copied to everybodySlide13

Rules for Success in Info 43 (I)

Attend every lecture

Take notes

Many quiz and test questions will be drawn from lecture material

Attend every discussion

It is your responsibility to make sure you sign the roll sheet in discussion

Many quiz and test questions will be drawn from discussion assignments

Complete

the assigned readings

Take notes

Some quiz and test questions will be drawn from readingsSlide14

Rules for Success in Info 43 (II)

Check your UCI email daily

Primary method of class announcements outside of lecture

Work hard throughout the quarter

Not just at the end!Slide15

Today’s Lecture

Course introduction

Getting to know each other

Introduction to software engineering

Software is everywhere

What is software engineering?Slide16

Who am I?Slide17

Who are you?

What year of college is this for you?Slide18

Who are you?

What is your major?Slide19

Who are you?

How much do you love software engineering already?Slide20

Today’s Lecture

Course introduction

Getting to know each other

Introduction to software engineering

Software is everywhere

DefinitionsSlide21

Today’s Lecture

Course introduction

Getting to know each other

Introduction to software engineering

Software is everywhere

What is software engineering?Slide22

Software is everywhere: cars

http://

spectrum.ieee.org/green-tech/advanced-cars/this-car-runs-on-code/

“New

cars now frequently carry 200 pounds of electronics and more than a mile of

wiring”

“…if you bought a premium-class automobile recently, it probably contains close to 100 million lines of software code…”Slide23

Software is everywhere: cars

“The radio on many cars talks to the automatic transmission over an in-car network”

The airbag accelerometer, parking lights, GPS navigation, cell phone, and door locks also network so that in a serious accident, the car calls for emergency aid, sends the GPS coordinates of the accident, unlocks the doors, and flashes the

car’s

lights

”Slide24

Software is everywhere: medical systemsSlide25

Software is everywhere: gamesSlide26

Software is everywhere: bonusSlide27

Software is everywhere: bonus

The machine also connects to

WiFi

and has

a camera for a QR scanner. They hope that some

day,

coffee bags will

have a QR

code that

the machine will recognize and brew appropriately.Slide28

Today’s Lecture

Course introduction

Getting to know each other

Introduction to software engineering

Software is everywhere

What is software engineering?Slide29

What is Software Engineering?

Software –

Engineering -Slide30

What is Software Engineering?

Software –

Engineering -

Code

Documentation, user manuals

Designs, specifications

Test cases

Plans and schedulesSlide31

What is Software Engineering?

Software –

Engineering -

Code

Documentation, user manuals

Designs, specifications

Test cases

Plans and schedules

Skill and knowledge

Application of scientific principles

Trade-offs, cost / benefit analysisSlide32

Software engineering

A broad field that touches upon all aspects of developing and supporting a software system.

” [

Tsui

,

Karam

, Bernal]Slide33

Software engineering

A broad field that touches upon all aspects of

developing

and

supporting

a software system.

” [

Tsui

,

Karam

, Bernal]Slide34

Software engineering

A discipline that deals with the building of software systems which are so large that they are built by a team or teams of engineers

.” [

Ghezzi

,

Jazayeri

,

Mandrioli

]Slide35

Software engineering

A discipline that deals with the building of software systems which are so

large

that they are built by a

team

or

teams

of engineers

.” [

Ghezzi

,

Jazayeri

,

Mandrioli

]Slide36

Software engineering

Multi-person construction of multi-version software

.” [

Parnas

]Slide37

Software engineering

Multi-person

construction of

multi-version

software

.” [

Parnas

]Slide38

Software engineering

A discipline whose aim is the production of fault-free software, delivered on-time and within budget, that satisfies the user’s needs

.

Furthermore, the software must be easy to modify when the user’s needs change

.” [

Schach

]Slide39

Software engineering

A discipline whose aim is the production of

fault-free

software, delivered

on-time

and

within budget

, that

satisfies the user’s needs

.

Furthermore, the software must be

easy to modify when the user’s needs change

.” [

Schach

]Slide40

Software engineering

“Given

a problem that can be addressed by a software solution, software engineering consists of the practices that manage the complexity of both the problem and the solution, to create a software product that successfully solves the

problem.” [Navarro]Slide41

Software engineering

“Given

a problem that can be addressed by a software solution, software engineering consists of the practices that

manage the complexity

of both the

problem

and the

solution

, to create a software product that successfully solves the

problem.” [Navarro]Slide42

What is Software Engineering?

Informatics 43:

The process of constructing software.

Phases of development other than programming.

Principles and qualities of enduring value.Slide43

What is Software Engineering?

Informatics 43:

The process of constructing software.

Phases of development other than programming.

Principles and qualities of enduring value.

Also of (lesser) interest (in this course):

Managing & scheduling software development teams.

Making money – business models.

Software’s impact on users, organizations, and society.Slide44

What is Software Engineering?

The process of constructing software.Slide45

What is Software Engineering?

Phases of development other than programming.

Design:Slide46

What is Software Engineering?

Principles and qualities of enduring value.

Correctness!

MODULARITY

Consistency

Efficiency

Adaptability

ReliabilitySlide47

Essential Characteristics of Software Engineering (I)

Software engineering concerns the development of large programs

The central theme is mastering complexity

The efficiency with which software is developed is of crucial importance

Software

evolvesSlide48

Essential Characteristics of Software Engineering (II)

Regular cooperation between people is an integral part of programming-in-the-large

The software has to support its users effectively

Software engineering is a field in which members of one culture create artifacts on behalf of members of another culture

Software engineering is a balancing

actSlide49

Three “Essential

I

ngredients” of Software

E

ngineering

People

who

else would do the work?

range

from novice to very

experienced

Processes

to

organize and manage the efforts of individuals

range

from informal to very

formal

Tools

to

support the people and the processes

range

from simple to very advancedSlide50

People

The single most important factor in the success/failure of a

product

Scarce resource

quality

suitability

c

ost

Many different kinds of people

managers

programmers

technical

writers

…Slide51

Processes

Essential to achieve a quality

product

Scarce resource

quality

suitability

cost

Many different kinds of processes

bug

tracking

change

approval

quality

assuranceSlide52

Tools

Needed to support people and

processes

Scarce resource

quality

suitability

c

ost

Many different kinds of tools

drawing

analysis

project

management

source

code managementSlide53

Programming versus software engineering

Small project

Large to huge project

You

Teams

Build what you want

Build what

they want

One product

Family of products

Few sequential

changes

Many

parallel changes

Short-lived

Long-lived

Cheap

Costly

Small consequences

Large consequences

Programming

Software engineeringSlide54

Next Time

What is software engineering?

Brooks’ “No Silver Bullet”

Complete assigned readings

before Thursday