24
Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin Bădică Sabin Simionescu University of Craiova, Romania Faculty of Automatics, Computers and Electronics 15 th Workshop “Software Engineering Education and Reverse Engineering” Bohinj, Slovenia, 24-29 August 2015

Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

Embed Size (px)

Citation preview

Page 1: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

Analyzing academic computing curricula with a focus on

practical aspects for software engineering

Costin Bădică Sabin Simionescu

University of Craiova, RomaniaFaculty of Automatics, Computers and Electronics

15th Workshop “Software Engineering Education and Reverse Engineering”Bohinj, Slovenia, 24-29 August 2015

Page 2: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

1. Curricula now

2. An EU-wide problem

3. A potential solution

Outline

Page 3: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

BACHELOR IN COMPUTER SCIENCE, 4 YEARS, 240 CREDITS

First, a look at the yearly curricula

Page 4: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

• Digital Systems Design

• Introduction to Electrical Engineering

• Mechanical Engineering Fundamentals

• Numerical methods

• Programming Techniques

• Special chapters of mathematics

• Computer programming

• Knowledge, Human Communication and Internet course

• Linear algebra, analytical and differential geometry

• Logical design of digital computers

• Mathematical analysis

• Physics

Year 1/4

Page 5: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

• Accounting

• Algorithm Complexity Analysis

• Artificial Intelligence

• Assembly Language Programming

• Computer Graphics

• Measurements Techniques

• Computers architecture

• Data Structures and Algorithms

• Electronics

• Object Oriented Programming

• Project Management

• Systems Theory

Year 2/4

Page 6: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

• Computer Networks

• Computer Systems Modeling

• Database Design

• Distributed Network Application Development

• Microprocessors System Design

• Software Engineering

• Computer Structure and Organization

• Data Communication

• Databases

• Digital Integrated Circuits

• Operating Systems

• Visual programming environments

Year 3/4

Page 7: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

• Algorithms for Information Retrieval

• Compiler Design

• Expert Systems

• Graphical Systems

• Multimedia Application Development

• Computer Networks Management

• E-Commerce

• Formal Languages and Automata

• Models and Algorithms for Parallel Computing

• Real Time Computing Systems

• Web Applications’ Design

Year 4/4

Page 8: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

Percentage of studies in software engineering, every year and

semester

I II III IV0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

33%

67%

83%

100%

33%

67%

83%

100%

1st 2nd

Page 9: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

Actual time spent in years 1-4

1212

2

Year 1Weekly hours

CoursesLaboratoryForeign language

1212

Year 2Weekly hours

Courses Laboratory

1212

Year 3Weekly hours

Courses Laboratory

1111

Year 4Weekly hours

Courses Laboratory

Theory

Page 10: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

Actual time spent in years 1-4

168

168

28

120

Year 1Total hours

CoursesLaboratoryForeign languagePractice

168

168

120

Year 2Total hours

Courses LaboratoryPractice

168

168

120

Year 3Total hours

Courses LaboratoryPractice

134

134

240

Year 4Total hours

Courses LaboratoryFinal paper

Theory + summer practice/thesis

Page 11: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

EMPLOYABILITY

Tackling a huge problem

Page 12: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

Unemployment

across

Europe

Greece 25.8Spain 22.9Croatia 16.7Cyprus 16.3Portugal 13.2Italy 12.6Slovakia 12.0France 10.3Bulgaria 9.9Latvia 9.9Ireland 9.8Finland 9.3Slovenia 9.3Lithuania 9.0Belgium 8.7Poland 7.9Sweden 7.7Hungary 7.3Netherlands 7.0Romania 6.8Denmark 6.3Estonia 6.2Luxembourg 5.8Malta 5.7Austria 5.6Czech Republic 5.6United Kingdom 5.5Germany 4.8Iceland 4.3Norway 4.2

Page 13: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

Unemployment

across

Europe

<25yo

Greece 52.3Spain 49.8Croatia 43.5Italy 42.2Cyprus 34.5Portugal 32.5Slovakia 26.2France 24.4Romania 23.3Finland 22.5Poland 21.6Ireland 21.3Sweden 21.3Bulgaria 21.2Belgium 20.6Luxembourg 20.0Hungary 19.3Slovenia 17.0Lithuania 16.9Latvia 15.8United Kingdom 15.7Czech Republic 14.2Estonia 11.8Netherlands 10.8Denmark 10.5Malta 10.2Austria 9.9Norway 9.5Iceland 8.9Germany 7.2

Page 14: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

WHY???

“Teaching in lessons cannot replace experience!”Klaus Bothe, 2016-08-26

Because companies that are actually willing to hire

these graduates are looking for practical skills with

good theoretical background.

Page 15: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

In 2014, out of 42966 positions on the largest jobs website in .ro, 4348 were in IT-SOFTWARE, and 3021 were entry-level.

Romanian IT jobs market in 2014SQL 1150Java 959HTML 740CSS 609JavaScript 592PHP 562MySQL 466JQUERY 367Oracle 344C# 301C++ 273Scala 265XML 260HTML5 181

ASP.NET 144Adobe 104Python 97Perl 92C/C++ 76Ruby 58Microsoft SQL 54Rails 33NoSQL 27Objective C 21Assembly 18Matlab 20Swift 11NodeJS 11

Page 16: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

REDISTRIBUTION OF TIME ALLOCATION FOR PRACTICAL KNOWLEDGE

A potential solution

Page 17: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

• Why is the practical experience grouped into a 3 week period at the end of years 1-3?

• Is it truly efficient to place it after both semesters?• The first semester is discriminated, as it takes many months

between teaching and practice

• Would it be more efficient to place practice after every semester?

Practical experience reallocation168

168

120

Year 2Total hours

CoursesLaboratoryPractice

Page 18: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

• Why not intercalate the practice with the theory??

Practical experience reallocation (2)

Monday Tuesday Wednesday

Thursday Friday

08:00 – 09:50

1 6 11 16 21

10:00 – 11:50

2 7 12 17 22

12:00 – 13:50

3 8 13 18 23

14:00 – 15:50

4 9 14 19 24

16:00 – 17:50

5 10 15 20 25

18:00 – 19:50

- - - - -25 slots available, only 12 required right now (6 course & 6 lab)

Computer Networks Management

E-Commerce

Formal Languages and Automata

Models and Algorithms for Parallel Computing

Real Time Computing Systems

Web Applications’ Design

Y4Sem

1

Page 19: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

• Why not intercalate the practice with the theory??

Practical experience reallocation (2)

Monday Tuesday Wednesday

Thursday Friday

08:00 – 09:50

1 6 11 16

10:00 – 11:50

2 7 12 17

12:00 – 13:50

3 8 13 18

14:00 – 15:50

4 9 14 19

16:00 – 17:50

5 10 15 20 -

18:00 – 19:50

- - - - -

Computer Networks Management

E-Commerce

Formal Languages and Automata

Models and Algorithms for Parallel Computing

Real Time Computing Systems

Web Applications’ Design

Weekly8 hours

of practice

Y4Sem

1

25 slots available, only 12 required right now (6 course & 6 lab)

Page 20: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

Practical experience reallocation (3)

Monday Tuesday Friday

08:00 – 09:50

1 6 11 16

10:00 – 11:50

2 7 12 17

12:00 – 13:50

3 8 13 18

14:00 – 15:50

4 9 14 19

16:00 – 17:50

5 10 - 15 20

18:00 – 19:50

- - - - -

Monday Tuesday Wednesday

Thursday Friday

08:00 – 09:50

1 6 11 16

10:00 – 11:50

2 7 12 17

12:00 – 13:50

3 8 13 18

14:00 – 15:50

4 9 14 19

16:00 – 17:50

5 10 15 20 -

18:00 – 19:50

- - - - -

Y1

Monday Tuesday Wednesday

Friday

08:00 – 09:50

1 6 11 16

10:00 – 11:50

2 7 12 17

12:00 – 13:50

3 8 13 18

14:00 – 15:50

4 9 14 19

16:00 – 17:50

5 10 15 - 20

18:00 – 19:50

- - - -- -Monday Friday

08:00 – 09:50

1 6 11 16

10:00 – 11:50

2 7 12 17

12:00 – 13:50

3 8 13 18

14:00 – 15:50

4 9 14 19

16:00 – 17:50

5 - 10 15 20

18:00 – 19:50

- - - - -

Y2

Y3 Y4

Yearly distribution across bachelor studies

Page 21: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

Practical experience reallocation (3)

Hours allocated

168

168

120

Year 2Total hours

Courses LaboratoryPractice

8h * 14w = 112h each semester

224h both semesters together

40% of school time

168

168

224

Year 2Total hours

Courses LaboratoryPractice

Current ProposedNo time is cut from academic curricula!

Page 22: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

• Year 1, Semester 1• time can be filled with optional courses on case studies

• Year 1, Semester 2• students present their own case studies on existing software, in

teams

• contest at the end of the semester, results being presented to companies that want to take part of the program• Students have to be selected by a company, just like in the jobs market

Details & niche ideas

Page 23: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

• Years 2-4, Semesters 3-7• Internship style day, every week, at a company

• Students may change companies

• Students get the opportunity to see what their carriers will look like

• Students can ask teachers to further explain theoretical aspects that they meet inside the companies

• Year 4, Semester 8• Students prepare and present a THESYS with assistance from both

academic and commercial/business overseers

Details & niche ideas

Page 24: Analyzing academic computing curricula with a focus on practical aspects for software engineering Costin B ă dic ă Sabin Simionescu University of Craiova,

15th Workshop “Software Engineering Education and Reverse Engineering”

Bohinj, Slovenia, 24-29 August 2015

Q&AAll comments are welcome

Thank you!