+ All Categories
Home > Education > Information Systems students learn to program by design

Information Systems students learn to program by design

Date post: 26-May-2015
Category:
Upload: dalit-levy
View: 118 times
Download: 1 times
Share this document with a friend
Popular Tags:
80
IS STUDENTS LEARN TO PROGRAM BY DESIGN Dalit Levy Zefat Academic College ISRAEL ILAIS2014 – Academic College of Tel Aviv-Yaffo, June 8, 2014
Transcript
Page 1: Information Systems students learn to program by design

IS STUDENTS LEARN TO PROGRAM BY DESIGN

Dalit LevyZefat Academic College

ISRAEL

ILAIS2014 – Academic College of Tel Aviv-Yaffo, June 8, 2014

Page 2: Information Systems students learn to program by design

2

About the College

Zefat Academic College brings life-changing benefits to residents of the city and to the surrounding area .

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 3: Information Systems students learn to program by design

3

Zefat Academic College is a rapidly growing institution of higher

education located within the historic city of Zefat.

About the College

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 4: Information Systems students learn to program by design

4

Zefat Academic College is a rapidly growing institution of higher

education located within the historic city of Zefat.

It offers greater accessibility to higher education in the Northern

periphery where there are no universities.

About the College

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 5: Information Systems students learn to program by design

5

Zefat Academic College is a rapidly growing institution of higher

education located within the historic city of Zefat.

It offers greater accessibility to higher education in the Northern

periphery where there are no universities.

About the College

The college's location in the heart of the city reinforces the impact

that it has on the local community.

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 6: Information Systems students learn to program by design

6

About the FieldThe widespread everyday use of information systems

reflects a shift in conceptualizing the technology as more social than it was perceived before.

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 7: Information Systems students learn to program by design

7

About the FieldThe widespread everyday use of information systems

reflects a shift in conceptualizing the technology as more social than it was perceived before.

“the computer started as a totalitarian tool, but has now also been embraced as a social tool”

Kizza (2003), Ethical and Social Issues in the Information Age.

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 8: Information Systems students learn to program by design

8

About the FieldThe widespread everyday use of information systems

reflects a shift in conceptualizing the technology as more social than it was perceived before.

“the computer started as a totalitarian tool, but has now also been embraced as a social tool”

Kizza (2003), Ethical and Social Issues in the Information Age.

Social Information Systems emerge as an empowering force for both local and global communities,

organizations, and businesses.

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 9: Information Systems students learn to program by design

9

About the FieldSocial Information Systems emerge as an empowering

force for both local and global communities, organizations, and businesses.

“Community Informatics is by its very nature ”glocal”... providing even in the most rural and remote settings ...powerful connections to the global and the opportunity to be present in the global ”

Guerstein (2012), Glocality: thinking about Community Informatics and the Local in the Global and the Global in the Local.

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 10: Information Systems students learn to program by design

10

About the FieldSocial Information Systems emerge as an empowering

force for both local and global communities, organizations, and businesses.

“Community Informatics is by its very nature ”glocal”... providing even in the most rural and remote settings ...powerful connections to the global and the opportunity to be present in the global ”

Guerstein (2012), Glocality: thinking about Community Informatics and the Local in the Global and the Global in the Local.

Community Information Systems

CISILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 11: Information Systems students learn to program by design

11

CIS GoalsThe increasing interest in integrating human, communal

and social considerations into traditional information systems curricula has led to the development of new

academic interdisciplinary programs around the globe, with 2 main goals:

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 12: Information Systems students learn to program by design

12

CIS Goals

I Develop analytical skills to identify and evaluate the

social consequences of ICT-based

systems

The increasing interest in integrating human, communal and social considerations into traditional information systems curricula has led to the development of new

academic interdisciplinary programs around the globe, with 2 main goals:

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 13: Information Systems students learn to program by design

13

CIS Goals

I Develop analytical skills to identify and evaluate the

social consequences of ICT-based

systems

II Gain experience in

the socio-technical process of

designing IS in business, libraries,

health, government,

education and beyond.

The increasing interest in integrating human, communal and social considerations into traditional information systems curricula has led to the development of new

academic interdisciplinary programs around the globe, with 2 main goals:

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 14: Information Systems students learn to program by design

14

CIS - an Interdisciplinary Field"I think our major contribution to

computing was in bringing a liberal arts point of view to the use of computers.

… It was to bring beautiful fonts and typography to people... to help them communicate ...

Our goal was to bring a liberal arts audience to what had traditionally been a very geeky technology and a very geeky audience.“ (Steve Jobs, 1996)

Page 15: Information Systems students learn to program by design

15

CIS in Zefat Academic CollegeMost undergraduate IS programs in Israel operate as part of the

faculty of engineering or within the context of the business environment

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 16: Information Systems students learn to program by design

16

Most undergraduate IS programs in Israel operate as part of the faculty of engineering or within the context of the business

environmentThe new CIS program is sensitive to the increasing demand for higher education of the population in the northern part of the country, and

seeks to:

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

CIS in Zefat Academic College

Page 17: Information Systems students learn to program by design

17

The new CIS program is sensitive to the increasing demand for higher education of the population in the northern part of the country, and

seeks to:

Most undergraduate IS programs in Israel operate as part of the faculty of engineering or within the context of the business

environment

Consider the multi-cultural

facets of businesses,

organizations, and

communities

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

CIS in Zefat Academic College

Page 18: Information Systems students learn to program by design

18

The new CIS program is sensitive to the increasing demand for higher education of the population in the northern part of the country, and

seeks to:

Most undergraduate IS programs in Israel operate as part of the faculty of engineering or within the context of the business

environment

Consider the multi-cultural

facets of businesses,

organizations, and

communities

Empower these

developing communities

by using advanced

technologies and

information systems

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

CIS in Zefat Academic College

Page 19: Information Systems students learn to program by design

19

CIS in Zefat Academic College

The new CIS program is sensitive to the increasing demand for higher education of the population in the northern part of the country, and

seeks to:

Most undergraduate IS programs in Israel operate as part of the faculty of engineering or within the context of the business

environment

Consider the multi-cultural

facets of businesses,

organizations, and

communities

Empower these

developing communities

by using advanced

technologies and

information systems∞| ד"ר דלית לוי ILAIS Meeting | 08.06.2014

Page 20: Information Systems students learn to program by design

20

The notion of "community" in CIS is broad, including business communities as well as non-profit

organizations, global or local organizations, public communities, cultural communities, and rural

communities.

CIS Program Structure

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 21: Information Systems students learn to program by design

21

The notion of "community" in CIS is broad, including business communities as well as non-profit

organizations, global or local organizations, public communities, cultural communities, and rural

communities.

CIS Program Structure

CORE AREA OF STUDY – Foundations in 3 tracks

Information Technologies and Systems

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 22: Information Systems students learn to program by design

22

The notion of "community" in CIS is broad, including business communities as well as non-profit

organizations, global or local organizations, public communities, cultural communities, and rural

communities.

CIS Program Structure

CORE AREA OF STUDY – Foundations in 3 tracks

Information Technologies and Systems

ICT Information and Computer Technologies

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 23: Information Systems students learn to program by design

23

The notion of "community" in CIS is broad, including business communities as well as non-profit

organizations, global or local organizations, public communities, cultural communities, and rural

communities.

CIS Program Structure

CORE AREA OF STUDY – Foundations in 3 tracks

Information Technologies and Systems

ICT Information and Computer Technologies

IS Information Systems

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 24: Information Systems students learn to program by design

24

The notion of "community" in CIS is broad, including business communities as well as non-profit

organizations, global or local organizations, public communities, cultural communities, and rural

communities.

CIS Program Structure

CORE AREA OF STUDY – Foundations in 3 tracks

Information Technologies and Systems

ICT Information and Computer Technologies

IS Information Systems

CS Computer Science

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 25: Information Systems students learn to program by design

25

The notion of "community" in CIS is broad, including business communities as well as non-profit

organizations, global or local organizations, public communities, cultural communities, and rural

communities.

CIS Program Structure

CORE AREA OF STUDY – Foundations in 3 tracks

Information Technologies and Systems

ICT Information and Computer Technologies

IS Information Systems

CS Computer Science

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 26: Information Systems students learn to program by design

26

The notion of "community" in CIS is broad, including business communities as well as non-profit

organizations, global or local organizations, public communities, cultural communities, and rural

communities.

CIS Program Structure

CORE AREA OF STUDY – Foundations in 3 tracks

Information Technologies and Systems

ICT Information and Computer Technologies

IS Information Systems

CS Computer Science

SUPPORTING AREAS OF STUDY

A The Knowledge Society

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 27: Information Systems students learn to program by design

27

The notion of "community" in CIS is broad, including business communities as well as non-profit

organizations, global or local organizations, public communities, cultural communities, and rural

communities.

CIS Program Structure

CORE AREA OF STUDY – Foundations in 3 tracks

Information Technologies and Systems

ICT Information and Computer Technologies

IS Information Systems

CS Computer Science

SUPPORTING AREAS OF STUDY

B Information in Organizations

A The Knowledge Society

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 28: Information Systems students learn to program by design

28

CIS Program Structure

CORE AREA OF STUDY – Foundations in 3 tracks

Information Technologies and Systems

ICT Information and Computer Technologies

IS Information Systems

CS Computer Science

SUPPORTING AREAS OF STUDY

B Information in Organizations

A The Knowledge Society

As a result of such integrated curriculum, we vision

graduates who are both information-technology-

oriented and social-oriented, and thus can empower the

communities within they live and work.

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 29: Information Systems students learn to program by design

29

The Computer Science TrackThe discipline of CS is often perceived by IS programs as

one of their supporting pillars.

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 30: Information Systems students learn to program by design

30

The Computer Science TrackThe discipline of CS is often perceived by IS programs as

one of their supporting pillars.

CS methods and ideas, which are at the root of ICT innovations and information systems design processes,

are thought to have the potential to contribute to a greater understanding of those creations.

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 31: Information Systems students learn to program by design

31

The Computer Science TrackThe discipline of CS is often perceived by IS programs as

one of their supporting pillars.

CS methods and ideas, which are at the root of ICT innovations and information systems design processes,

are thought to have the potential to contribute to a greater understanding of those creations.

“Advancing students' understanding of computing has been thought of as critical to developing the needed workforce for the 21st century ”

The College Board, 2012

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 32: Information Systems students learn to program by design

32

The Computer Science Track

Students in IS programs in general, and in an interdisciplinary program such as CIS in particular, should

study fundamental CS courses in order to acquire the needed broad foundation in computing and consider its

breadth of application.

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 33: Information Systems students learn to program by design

33

The Computer Science Track

“Program…or Be Programmed” Rushkoff, 2010

Students in IS programs in general, and in an interdisciplinary program such as CIS in particular, should

study fundamental CS courses in order to acquire the needed broad foundation in computing and consider its

breadth of application.

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 34: Information Systems students learn to program by design

34

The Computer Science Track

“Program…or Be Programmed” Rushkoff, 2010

Students in IS programs in general, and in an interdisciplinary program such as CIS in particular, should

study fundamental CS courses in order to acquire the needed broad foundation in computing and consider its

breadth of application.

But How?

• CS track tailored for non-CS majors • Develop an understanding of the principles and practices of

computing• Program without drowning in syntax• Expose students to CS potential for transforming the world

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 35: Information Systems students learn to program by design

35

The Computer Science Track

“An unfortunate fact: Java and C++ don’t lend themselves to these rules”

Bloch, 2011

But How?

• CS track tailored for non-CS majors • Develop an understanding of the principles and practices of

computing• Program without drowning in syntax• Expose students to CS potential for transforming the world

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 36: Information Systems students learn to program by design

36

The Computer Science Track

“An unfortunate fact: Java and C++ don’t lend themselves to these rules”

Bloch, 2011

But How?

• CS track tailored for non-CS majors • Develop an understanding of the principles and practices of

computing• Program without drowning in syntax• Expose students to CS potential for transforming the world

Alternatives to ‘Java first’: Alice, Processing, Python, Scheme/Racket, Scratch/BYOB Start with simpler syntax; Motivate with graphics.

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 37: Information Systems students learn to program by design

37

The Computer Science Track

“An unfortunate fact: Java and C++ don’t lend themselves to these rules”

Bloch, 2011

But How?

• CS track tailored for non-CS majors • Develop an understanding of the principles and practices of

computing• Program without drowning in syntax• Expose students to CS potential for transforming the world

Alternatives to ‘Java first’: Alice, Processing, Python, Scheme/Racket, Scratch/BYOB Start with simpler syntax; Motivate with graphics.

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 38: Information Systems students learn to program by design

38

The Computer Science TrackGoal: to enable the graduates' participation in the

professional discourse used among programmers, software designers, and software development teams.

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 39: Information Systems students learn to program by design

39

The Computer Science TrackGoal: to enable the graduates' participation in the

professional discourse used among programmers, software designers, and software development teams.

THE FLOW OF THE REQUIRED COURSES IN THE CS TRACK

Year 1

Year 2 - Fall

Year 2 – Spring

Year 3

Program By DesignIntroduction to CS and programming, using Racket

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 40: Information Systems students learn to program by design

40

The Computer Science TrackGoal: to enable the graduates' participation in the

professional discourse used among programmers, software designers, and software development teams.

THE FLOW OF THE REQUIRED COURSES IN THE CS TRACK

Year 1

Year 2 - Fall

Year 2 – Spring

Year 3

Program By DesignIntroduction to CS and programming, using RacketObject-Oriented ProgrammingIntroduction to OOP, using Java

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 41: Information Systems students learn to program by design

41

The Computer Science TrackGoal: to enable the graduates' participation in the

professional discourse used among programmers, software designers, and software development teams.

THE FLOW OF THE REQUIRED COURSES IN THE CS TRACK

Year 1

Year 2 - Fall

Year 2 – Spring

Year 3

Program By DesignIntroduction to CS and programming, using RacketObject-Oriented ProgrammingIntroduction to OOP, using Java

Software Design MethodsDesign cycle and advanced programming, using Java

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 42: Information Systems students learn to program by design

42

The Computer Science TrackGoal: to enable the graduates' participation in the

professional discourse used among programmers, software designers, and software development teams.

THE FLOW OF THE REQUIRED COURSES IN THE CS TRACK

Year 1

Year 2 - Fall

Year 2 – Spring

Year 3

Program By DesignIntroduction to CS and programming, using RacketObject-Oriented ProgrammingIntroduction to OOP, using Java

Software Design MethodsDesign cycle and advanced programming, using JavaDeveloping Software SystemsAgile methods for software development teams ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 43: Information Systems students learn to program by design

43

1st Course in the CS Track

What is a first CS course (usually) about?

(1)How to use computers/software packages (for ex., Office)

(2)The CS profession(3)A language, IDE, OS etc. That will get students into the job market(4) Concepts, habits, methodologies of programming

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 44: Information Systems students learn to program by design

44

1st Course in the CS Track

What is a first CS course (usually) about?

(1)How to use computers/software packages (for ex., Office)

(2)The CS profession(3)A language, IDE, OS etc. That will get students into the job market(4) Concepts, habits, methodologies of programming

Four completely different courses, each valuable for

different reasons and audiences

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 45: Information Systems students learn to program by design

45

1st Course in the CS Track

What is a first CS course (usually) about?

(1)How to use computers/software packages (for ex., Office)

(2)The CS profession(3)A language, IDE, OS etc. That will get students into the job market(4) Concepts, habits, methodologies of programming

Four completely different courses, each valuable for

different reasons and audiences

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Usefull for students about to graduate

Page 46: Information Systems students learn to program by design

46

1st Course in the CS Track

What is a first CS course (usually) about?

(1)How to use computers/software packages (for ex., Office)

(2)The CS profession(3)A language, IDE, OS etc. That will get students into the job market(4) Concepts, habits, methodologies of programming

Four completely different courses, each valuable for

different reasons and audiences

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Usefull for students about to graduate

Page 47: Information Systems students learn to program by design

47

1st Course in the CS Track

What is a first CS course (usually) about?

(1)How to use computers/software packages (for ex., Office)

(2)The CS profession(3)A language, IDE, OS etc. That will get students into the job market(4) Concepts, habits, methodologies of programming

Four completely different courses, each valuable for

different reasons and audiences

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Usefull for students about to graduate

Page 48: Information Systems students learn to program by design

48

1st Course in the CS Track

What is a first CS course (usually) about?

(1)How to use computers/software packages (for ex., Office)

(2)The CS profession(3)A language, IDE, OS etc. That will get students into the job market(4) Concepts, habits, methodologies of programming

Four completely different courses, each valuable for

different reasons and audiences

Usefull as a first course for non-majors

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 49: Information Systems students learn to program by design

49

1st Course in the CS TrackFirst CS course for non-CS majors

(4) Concepts, habits, methodologies of programming

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 50: Information Systems students learn to program by design

50

1st Course in the CS Track

First CS course for non-CS majors

(4) Concepts, habits, methodologies of programming

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 51: Information Systems students learn to program by design

51

1st Course in the CS TrackFirst CS course for non-CS majors

(4) Concepts, habits, methodologies of programming

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 52: Information Systems students learn to program by design

52

1st Course in the CS TrackFirst CS course for non-CS majors

(4) Concepts, habits, methodologies of programming

Beginning programming students always think its about the syntax!

(thanks to Prof. Stephan Bloch, Adelphi University)

Page 53: Information Systems students learn to program by design

53

The Program By Design Idea

Problem-solving curriculum

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 54: Information Systems students learn to program by design

54

The Program By Design Idea

Problem-solving curriculum

Pedagogical IDE(Integrated

Development Environment)| ד"ר דלית לוי ILAIS Meeting | 08.06.2014

Page 55: Information Systems students learn to program by design

55

The Program By Design Idea A Trinity

Problem-solving curriculum

Pedagogical IDE(Integrated

Development Environment)

Simple-to-complex set of

student languagesILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 56: Information Systems students learn to program by design

56

The Program By Design Idea

Aim: To turn computing and programming into an indispensable part of the liberal arts curriculum

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 57: Information Systems students learn to program by design

57

The Program By Design Idea

Origin: Mathias Felleisen and colleagues, PLT, TeachScheme, DrRacket

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 58: Information Systems students learn to program by design

58

The Program By Design Idea

Origin: Mathias Felleisen and colleagues, PLT, TeachScheme, DrRacket

Felleisen (2011), SIGCSE award talk

Page 59: Information Systems students learn to program by design

59

The Program By Design Idea

PBD is a functions-first approach to teaching introductory programming and problem-solving.

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 60: Information Systems students learn to program by design

60

The Program By Design Idea

PBD is a functions-first approach to teaching introductory programming and problem-solving.

PBD emphasizes software engineering practices such as early testing from the beginning.

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 61: Information Systems students learn to program by design

61

The Program By Design Idea

PBD is a functions-first approach to teaching introductory programming and problem-solving.

PBD emphasizes software engineering practices such as early testing from the beginning.

PBD is combined with the Racket IDE, featuring different language levels, simple syntax, customized error messages, and support for 'algebra of images'

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 62: Information Systems students learn to program by design

62

The Program By Design Idea

PBD is combined with the Racket IDE, featuring different language levels, simple syntax, customized error messages, and support for 'algebra of images'

Felleisen (2011), SIGCSE award talk

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 63: Information Systems students learn to program by design

63

The Program By Design Idea

PBD is combined with the Racket IDE, featuring different language levels, simple syntax, customized error messages, and support for 'algebra of images'

Felleisen (2011), SIGCSE award talk

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 64: Information Systems students learn to program by design

64

The Program By Design Idea

PBD example: support for 'algebra of images' ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 65: Information Systems students learn to program by design

65

The Program By Design Idea

PBD example: support for 'algebra of images' ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 66: Information Systems students learn to program by design

66

The Program By Design Idea

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 67: Information Systems students learn to program by design

67

The Program By Design Idea

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 68: Information Systems students learn to program by design

68

The Program By Design Idea

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 69: Information Systems students learn to program by design

69

Most importantly, PBD offers design recipes to lead beginner students through a sequence of steps in order

to:(a)obtain an understanding of the problem's nature

(b)design the solution

The Program By Design Idea

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 72: Information Systems students learn to program by design

72

Design Recipe: Worlds and Data Definitions

Test-first DesignILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 73: Information Systems students learn to program by design

73

Test-first Design Recipes are (can be) language-independent

“Java contains features that the beginner does not understand, but the error messages refer to them”

Prolux, 2011

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 74: Information Systems students learn to program by design

74

Back on the CS Track

Goal: to enable the participation in professional discourse used among software designers.

THE FLOW OF THE REQUIRED COURSES IN THE CS TRACK

Year 1

Year 2 - Fall

Year 2 – Spring

Year 3

Program By DesignIntroduction to CS and programming, using RacketObject-Oriented ProgrammingIntroduction to OOP, using Java

Software Design MethodsDesign cycle and advanced programming, using JavaDeveloping Software SystemsAgile methods for software development teams ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 75: Information Systems students learn to program by design

75

Since ‘Program by Design’ also includes support for transitioning to OOP and libraries for using design

recipes as part of Java IDE, the second course in the computer science track builds naturally on the first while further focusing on the systematic design of

programs and classes

Back on the CS Track

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 76: Information Systems students learn to program by design

76

Program By Design - Summary

Step-by-step design recipe: from word problem to a tested, correct code

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

זוהי פונקציה הגדירו את פונקציית המרחק: חדשה שמקבלת שני פרמטרים מספריים,

ומחזירה את השורש הריבועי של סכום ריבועי המספרים.

Page 77: Information Systems students learn to program by design

77

Program By Design - Summary

Step-by-step design recipe: from word problem to a tested, correct code

Concrete questions & deliverables at each step

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 78: Information Systems students learn to program by design

78

Program By Design - Summary

Step-by-step design recipe: from word problem to a tested, correct code

Concrete questions & deliverables at each step

Test cases before code; part of analysis phase

Data-driven design:"shape of data determines shape of code"

ILAIS Meeting | 08.06.2014 ד"ר דלית לוי |

Page 79: Information Systems students learn to program by design

79

Program By Design - Summary

Step-by-step design recipe: from word problem to a tested, correct code

Concrete questions & deliverables at each step

Test cases before code; part of analysis phase

Data-driven design:"shape of data determines shape of code"

The features of ‘Program by Design’ make the approach especially suitable as a starter for a

computer science track in a liberal-arts-oriented undergraduate curriculum in Community Information

Systems. | ד"ר דלית לוי ILAIS Meeting | 08.06.2014

Page 80: Information Systems students learn to program by design

Program By Design - Summary

Thanks for [email protected]

The features of ‘Program by Design’ make the approach especially suitable as a starter for a

computer science track in a liberal-arts-oriented undergraduate curriculum in Community Information

Systems. | ד"ר דלית לוי ILAIS Meeting | 08.06.2014


Recommended