Top Banner
Computer Science Curriculum 2008 Summary by Zaheer 1
24

Computer Science Curriculum 2008

Mar 22, 2016

Download

Documents

ana_hid

Computer Science Curriculum 2008. Summary by Zaheer. More attention needed on. Security Certain Topics Concurrency Net-centric computing Human computer interaction Software engineering Management information systems Systems issues Professional practice Learning outcomes - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Computer Science Curriculum 2008

1

Computer ScienceCurriculum 2008

Summary by Zaheer

Page 2: Computer Science Curriculum 2008

2

More attention needed onSecurityCertain Topics

ConcurrencyNet-centric computingHuman computer interactionSoftware engineeringManagement information systemsSystems issuesProfessional practice

Learning outcomesCommunication skillsTeaching of PL and multiple paradigms

Page 3: Computer Science Curriculum 2008

3

Industry feedbackSecurity

Access, encryption, networking, safe programmingQuality issues

Debugging, reliability, documentationSoftware engineering principles and techniques

Release mgmt, source control principles, working in teams

Code archeology Making sense of big, ill-documented code bases

Performance tuning

Page 4: Computer Science Curriculum 2008

4

Industry feedbackWant students who have contributed to open sourceHave industry internshipsHave done systems software projectsGood compiler writers (even if the company is not in

that business) The thing that we can't afford to do […] is teach candidates

how to think critically, to be effective problem, solvers, and to have basic mastery of programming languages, data structures, algorithms, concurrency, networking, computer architecture, and discrete math / probability / statistics. I can't begin to emphasize the importance of algorithms and data structures to the work we do here

Page 5: Computer Science Curriculum 2008

5

Knowledge AreasDiscrete Structures

Programming Fundamentals

Algorithms and Complexity

Architecture and Organization

Information Management

Net-Centric Computing

Programming Languages

Human-Computer Interaction

Graphics and Visual Computing

Intelligent Systems

Operating Systems

Social and Professional Issues

Software Engineering

Computational Science

Page 6: Computer Science Curriculum 2008

6

ChangesDiscrete Structures

Less on purely formal (symbolic) proof, more on rigorous and sound proof arguments.

Programming Fundamentals More on care and attention in the teaching of basic

programming.

Computer Architecture Less on logic design level, more on architectural issues

(multi-core processors, devices)

Net-centric computing circuit switching, packet switching, streams and datagrams,

common gateway interface programs dropped. service-oriented-architecture and grid computing added.

Page 7: Computer Science Curriculum 2008

7

Changes (contd.)Intelligent Systems

more on Perception, planning, ontologies, games, or entertainment software

Social and Professional Issues more on identity theft, cultural issues

Computational Science Numerical methods have been dropped

Page 8: Computer Science Curriculum 2008

8

Characteristics of GraduatesSystem-level perspective.

No fragmented view

Appreciation of the interplay between theory and practice.

how that theory influences practice.

Familiarity with common themes and principles. abstraction, complexity, and evolutionary change. the principle of locality, sharing a common resource,

security, concurrency,

Page 9: Computer Science Curriculum 2008

9

Characteristics of GraduatesSignificant project experience

at least one substantial software projectthe need for domain knowledge for

certain applicationsAttention to rigorous thinking

planning, tracking progress, measuring and generally managing quality

Adaptabilityenormous pace of change

Page 10: Computer Science Curriculum 2008

10

DS. Discrete Structures (43 core hours)

DS/Functions Relations and Sets (6)DS/Basic Logic (10)DS/Proof Techniques (12)DS/Basics of Counting (5)DS/Graphs and Trees (4)DS/Discrete Probability (6)

Page 11: Computer Science Curriculum 2008

11

PF. Programming Fundamentals (47 core hours)

PF/Fundamental Constructs (9)PF/Algorithmic Problem Solving (6)PF/Data Structures (10)PF/Recursion (4)PF/Event Driven Programming (4)PF/Object Oriented (8)PF/Foundations Information Security (4)PF/Secure Programming (2)

Page 12: Computer Science Curriculum 2008

12

AL. Algorithms and Complexity (31 core hours)

AL/Basic Analysis (4)AL/Algorithmic Strategies (6)AL/Fundamental Algorithms (12)AL/Distributed Algorithms (3)AL/Basic Computability (6)AL/P versus NPAL/Automata TheoryAL/Advanced AnalysisAL/Cryptographic AlgorithmsAL/Geometric AlgorithmsAL/Parallel Algorithms

Page 13: Computer Science Curriculum 2008

13

AR. Architecture and Organization (36 core hours)

AR/Digital Logic and Data Representation (7)AR/Computer Architecture and Organization (9)AR/Interfacing and I/O Strategies (3)AR/Memory Architecture (5)AR/Functional Organization (6)AR/Multiprocessing (6)AR/Performance EnhancementsAR/Distributed ArchitecturesAR/DevicesAR/Directions in Computing

Page 14: Computer Science Curriculum 2008

14

OS. Operating Systems (18 core hours)

OS/Overview of Operating Systems (2)OS/Operating System Principles (2)OS/Concurrency (6)OS/Scheduling and Dispatch (3) OS/Memory Management (3)OS/Device ManagementOS/Security and Protection (2)OS/File SystemsOS/Real Time and Embedded SystemsOS/Fault ToleranceOS/System Performance EvaluationOS/ScriptingOS/Digital ForensicsOS/Security Models

Page 15: Computer Science Curriculum 2008

15

NC. Net-Centric Computing (15 core hours)

NC/Introduction(2)NC/Network Communication (7)NC/Network Security (6)NC/Web OrganizationNC/Networked ApplicationsNC/Network ManagementNC/CompressionNC/Multimedia TechnologiesNC/Mobile Computing

Page 16: Computer Science Curriculum 2008

16

PL. Programming Languages (21 core hours)

PL/Overview(2)PL/Virtual Machines(1)PL/Basic Language Translation(2)PL/Declarations and Types(3)PL/Abstraction Mechanisms(3)PL/Object Oriented Programming(10)PL/Functional ProgrammingPL/Language Translation SystemsPL/Type SystemsPL/Programming Language SemanticsPL/Programming Language Design

Page 17: Computer Science Curriculum 2008

17

HC. Human-Computer Interaction (8 core hours)

HC/Foundations (6)HC/Building GUI Interfaces (2)HC/User Centered Software EvaluationHC/User Centered Software DevelopmentHC/GUI DesignHC/GUI ProgrammingHC/Multimedia and Multimodal SystemsHC/Collaboration and CommunicationHC/Interaction Design for new EnvironmentsHC/Human Factors and Security

Page 18: Computer Science Curriculum 2008

18

GV. Graphics and Visual Computing (3 core hours)

GV/Fundamental Techniques (2)GV/Graphic Systems (1)GV/Graphic CommunicationGV/Geometric ModelingGV/Basic RenderingGV/Advanced RenderingGV/Advanced TechniquesGV/Computer AnimationGV/VisualizationGV/Virtual RealityGV/Computer VisionGV/Computational GeometryGV/Game Engine Programming

Page 19: Computer Science Curriculum 2008

19

IS. Intelligent Systems (10 core hours)

IS/Fundamental Issues (1)IS/Basic Search Strategies (5)IS/Knowledge Based Reasoning (4)IS/Advanced SearchIS/Advanced ReasoningIS/AgentsIS/Natural Language ProcessingIS/Machine LearningIS/Planning SystemsIS/RoboticsIS/Perception

Page 20: Computer Science Curriculum 2008

20

IM. Information Management (11 core hours)

IM/Information Models (4) IM/Database Systems (3) IM/Data Modeling (4) IM/Indexing IM/Relational Databases IM/Query Languages IM/Relational Database Design IM/Transaction Processing IM/Distributed Databases IM/Physical Database Design IM/Data Mining IM/Information Storage and Retrieval IM/Hypermedia IM/Multimedia Systems IM/Digital Libraries

Page 21: Computer Science Curriculum 2008

21

SP. Social and Professional Issues (16 core hours)

SP/History of Computing (1)SP/Social Context (3)SP/Analytical Tools (2)SP/Professional Ethics (3)SP/Risks (2)SP/Security OperationsSP/Intellectual Property (3)SP/Privacy and Civil Liberties (2)SP/Computer CrimeSP/Economics of ComputingSP/Philosophical Frameworks

Page 22: Computer Science Curriculum 2008

22

SE. Software Engineering (31 core hours)

SE/Software Design (8)SE/Using APIs (5)SE/Tools and Environments (3)SE/Software Processes (2)SE/Requirements Specifications (4)SE/Software Verification Validation (3)SE/Software Evolution (3)SE/Software Project Management (3)SE/Component Based ComputingSE/Formal MethodsSE/Software ReliabilitySE/Specialized SystemsSE/Risk AssessmentSE/Robust and Security-Enhanced Programming

Page 23: Computer Science Curriculum 2008

23

CN. Computational Science (no core hours)

CN/Modeling and SimulationCN/Operations ResearchCN/Parallel Computation

Page 24: Computer Science Curriculum 2008

24