sp pr ri in ng g 1 11 1 p pd dc c i in n c cs s1 1 2 2 a
play

Sp pr ri in ng g 1 11 1: : P PD DC C i in n C CS S1 - PowerPoint PPT Presentation

Ed du uP Pa ar r ' '1 13 3 E Sp pr ri in ng g 1 11 1: : P PD DC C i in n C CS S1 1/ /2 2 a an nd d S a m mo ob bi il le e/ /c cl lo ou ud d i in nt te er rm me ed di ia at te e a so of


  1. Ed du uP Pa ar r ' '1 13 3 E Sp pr ri in ng g­ ­1 11 1: : P PD DC C i in n C CS S1 1/ /2 2 a an nd d S a m mo ob bi il le e/ /c cl lo ou ud d i in nt te er rm me ed di ia at te e a so of ft tw wa ar re e d de es si ig gn n c co ou ur rs se e s J. Kaylor • K. Läufer • C. Sekharan • G. K. Thiruvathukal Dept. of Computer Science • Loyola University Chicago www.cs.luc.edu • laufer@cs.luc.edu • edupar.cs.luc.edu

  2. Pr ri io or r O Ou ut tc co om me es s P Spring 2011: three 9h PDC modules ­> required second­ year courses AY 2011­12: four 9h advanced PDC course modules in programming and distributed computing ­> electives In ns st ti it tu ut ti io on na al l P Pr ro of fi il le e I • RU/H, L4/R, MU, Bal/HGC, FT4/MS/HTI, CompDoc/MedVet • Urban, private, Jesuit, liberal arts, ~16k students • College of Arts and Sciences, ~8k students • Department of Computer Science, ~250 students • ~10 FTE: 9 CS, 1 bioinf (1/2 FTE), 1 math (1/4 FTE CS) • ~140 undergrad majors in CS, SE, IT, Networks/Sec, Bioinf • ~110 master's students in CS, SE, IT • External funding: NSF S­STEM, NSF BPC lead institution, NSF research grants, industry grants and donations

  3. Ab bs st tr ra ac ct t/ /C Cu ur rr re en nt t F Fo oc cu us s A AY 2012­13: We are moving PDC topics further down into CS1 and CS2, fleshing out PDC coverage in our intermediate object­oriented development course (CS 313), and stepping up evaluation. Po os si it ti io on n S St ta at te em me en nt ts s P [for discussion] • To teach PDC topics effectively, they should not be taught in isolation. Instead, they should be taught in the context of relevant software engineering best practices. (Go beyond functional and performance requirements.) • Mobile applications backed by RESTful cloud services are rapidly emerging as the mainstream paradigm of computing [Christensen, OOPSLA '09]. PDC curricula should embrace it.

  4. CS S1 1 C • Spring 2013: separate section aimed at majors in physics and other hard sciences • includes some material on numerical methods at the K and C levels • about 9 class hours were dedicated to sequential and parallel versions of these algorithms and the possible resulting speedup using data parallelism in C# • example: threads for speeding up trapezoidal rule integration CS S2 2 C • emphasis on PDC topics in CS2 starting in fall 2011 • 9­hour PDC module on task parallelism, speedup, and load balancing in algorithms involving arbitrary precision arithmetics • presentation at C/A levels in the form of various examples • example: compute Fibonacci numbers based on repeated squaring of 2­by­2 matrices of BigIntegers in Java • experiment with the speedup and load balancing btw. tasks

  5. In nt te er rm me ed di ia at te e O Ob bj je ec ct t­ ­O Or ri ie en nt te ed d I De ev ve el lo op pm me en nt t ( (C CS S 3 31 13 3) ) D • since fall 2011: C#, emphasis on PDC topics • since fall 2012: Java + Android as context for concurrent/distributed comp. topics (18h C/A) • concurrency and coordination • design forces: safety, liveness, performance • external events and internal timers • background threads • progress reporting and cancelation • offloading computation to cloud // local task: i is number to check final long half = i / 2; for (long k = 2; k <= half; k += 1) { if (isCancelled() ) break; publishProgress((int) ((k / half) * 100) ) ; if (i % k == 0) return false; } return true;

  6. edupar.cs.luc.edu Ev va al l: : C Co ou ur rs se e E Ef ff fe ec ct ti iv ve en ne es ss s E Fu ut tu ur re e P Pl la an ns s F Sample questions (Likert • Computer Systems/CS3: PDC scale): Rate BEFORE/AFTER module with architecture, taking course programming, and cross­cutting • your event­based programming expertise • Algorithms/CS7: PDC module: • your thread­based models of computation and programming expertise complexity, basic algorithmic • your feeling of paradigms, specific problems preparedness for the job market and their algorithmic solutions • ... • Evaluation: longitudinal; work Ev va al l: : L Le ea ar rn ni in ng g E with Loyola’s Center for Sci & Math Education, TCPP, fellow As ss se es ss sm me en nt t A adopters Suppose we have 2 philosophers. The 1st • Dissemination: workshops for one, Kant, repeatedly behaves like so: think for 10 minutes other adopters in the Midwest ...

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend