• Tidak ada hasil yang ditemukan

ACM Curricula Recommendations for Computer Science

N/A
N/A
Nguyễn Gia Hào

Academic year: 2023

Membagikan "ACM Curricula Recommendations for Computer Science"

Copied!
113
0
0

Teks penuh

A classification of the subject areas contained in computer science is presented and twenty-two courses in these areas are described. In Section 8, some of the problems of implementing an educational program in computer science are discussed.

FIG. 1. Prerequisite structure of courses
FIG. 1. Prerequisite structure of courses

Data Structures (3-0-3) Prerequisites: Courses B2 and B3

This course introduces the student to those fundamental, logical, and combinatorial concepts to the extent required in subsequent computer science courses and shows the applications of these concepts to various areas of computer science. This course is concerned with one of the most fundamental - but often insufficiently recognized - areas of computer science.

Programming Languages (3-0-3) Prerequisites: Courses B2 and B3

This course provides the student with an introduction to the basic numerical algorithms used in scientific computing—thereby supplementing his studies in beginning analysis—and gives him an opportunity to apply the programming techniques he has learned in course B l. . Because of these goals, many of the s t a n d elementary numerical analysis courses now offered in m a t i c s d e p a r t m e n cannot be considered substitutes for this course.

Includes basic discussion of error, polynomial interpolation, quadrature, linear systems of equations, solution of nonlinear equations, and numerical solution of ordinary differential equations. Its purpose is to acquaint the student with the relationships that exist between the data elements involved in problems, the structures of storage media and machines, the methods that are useful in representing structured data in storage, and the techniques for operating on data structures.

Systems Programming (3-0-3) Prerequisites: Courses II, 12, and 13

Compiler Construction (3-0-3)

Sequential Machines (3-0-3)

Numerical Analysis I (3-0-3)

Numerical Analysis II (3-0-3)

  • Undergraduate Programs As indicated in the Introduction, there has been con-
  • Master's The recommendations given in this section concern
  • Doctoral Programs Academic programs at the doctoral level reflect the
  • Service Courses, Mine Though it is now generally recognized t h a t a signifi-
  • Implt

Emphasis should be placed on the overall structure of the machines and programming techniques considered. Below are some of the books that can be used as texts and/or references for this course.

Table I gives some examples of how a student in com- com-puter science might be scheduled for the minimum set  of courses recommended for all majors
Table I gives some examples of how a student in com- com-puter science might be scheduled for the minimum set of courses recommended for all majors

Data Structures (3-0-3)

Examples of tree structures such as algebraic formulas, arrays and other hierarchical data structures (PL/I and COBOL). 2 on "Information Structures" contains the first comprehensive classification of data structures to be published.

Programming Languages (3-0-3)

Proceedings of the ACM Symposium on Symposium and Algebraic Manipulation, Washington, D. A number of languages ​​for symbolic and algebraic manipulation are described in this special issue. The structure of a language is defined by a phrase structure syntax and the meaning is defined in terms of the effects that the execution of a series of interpretation rules has on a fixed set of variables called the "environment".

Computer Organization (3-0-3) or (3-2-4)

The first two chapters devoted to machine organization, machine language and assembly language, the majority of the chapter. Proposes a generalization of ALGOL that involves eliminating "t y p e" statements and replacing procedure statements with a so-called "quote" assignment.

Systems Programming (3-0-3)

This course emphasizes the techniques involved in analyzing source language and creating efficient object code. Describes a three-pass compiler that represents a compromise between compilation speed and object code efficiency.

Most of the areas of automata theory are included with the exception of switching theory and other engineering topics. A collection of many of the early papers on finite automata, Turing machines, and synthesis of automata that stimulated the development of automata theory.

A well-written paper that contains the first statement of many of the most important results of context-free language. Laboratory tasks are used to make the student familiar with the function of the components. Provides a brief description of the hybrid simulation language MADBLOC (one of the Wisconsin " B L O C " programs), which is written in the MAD language.

The history of distribution sampling before the computer age and its importance to simulation. The focus should be on the development of computational techniques rather than on philosophical debates about the nature of information. An introduction to Turing machines (TM) and the invariance of general computability under model changes.

(4) the construction of the programs and procedures and the procurement of the hardware devices; and (5) testing and functioning of the assembled components in an integrated system.

A Computer Science

Course Program for Small Colleges

3 Credits)

Students should be required to make extensive use of sub-programs (both in-house and offered programs); A language manual should be used, either from the manufacturer or one of the many manuals and tutorials available. Students should be encouraged to discover and solve problems in their own area of ​​interest.

However, a discussion of various systems (time sharing, batching, etc.) should be included so that students are aware of the types of computer environments in which problems are solved. As the course progresses, students should be expected to do more analysis and algorithm writing than specified above. The topics are listed separately, but should be combined as much as possible when discussing problems.

Minicomputers should be discussed both as stand-alone computers and as components of larger systems.

CURRICULUM '78

  • Introduction 2. Core Curriculum
  • Introduction
  • Core Curriculum 1 Introduction
    • Objectives
    • Elementary Material
    • Implementation Considerations
    • Sample Elementary Level Courses
  • Computer Programming I (2-2-3) The objectives of this course are
  • Computer Programming II (2-2-3) Prerequisite: CS 1
  • Introduction to Computer Systems (2-2-3) Prerequisite: CS 2
  • Introduction to Computer Organization (3-0-3) or (2-2-3)
  • Introduction to File Processing (3-0-3) Prerequisite: CS 2
    • Examinations. (5%)
  • Operating Systems and Computer Architecture I (2-2-3)
  • Data Structures and Algorithm Analysis (3-0-3)
    • Computer Science Electives 1 Introduction
  • Computers and Society (3-0*3) Prerequisite: elementary core material
  • Operating Systems and Computer Architecture II (2-2-3)
  • Database Management Systems Design (3-0-3)
  • Artificial Intelligence (3-0-3) Prerequisite: CS 7
  • Algorithms (3-0-3)
  • Software Design and Development (3-0-3) or (2-2-3)
  • Theory of Programming Languages (3-0-3) Prerequisite: CS 8
  • Automata, Computability, and Formal Languages (3-0-3)
  • Numerical Mathematics: Analysis (3-0-3) Prerequisites: CS 1 and MA 5
  • Numerical Mathematics: Linear Algebra (3-0-3)
    • The Undergraduate Program 1 Introduction
    • Service Courses 1 Introduction
  • Computer Applications and Impact (3-0-3)
    • Supporting Areas
    • Continuing Education
    • Other Considerations 1 Introduction

The discussion of the core course material in this section concentrates on the computer science components required for the undergraduate program. The objectives of this course are: a) to introduce the organization and structuring of the most important hardware components of computers;. Careful selection of the level of abstraction appropriate for a given problem should be made as a means of adjusting student load in the course.

This course offers a diverse sample of the areas of theoretical computer science and their hierarchical interrelationships. Over time, some of the material must be integrated into previously specified courses or entire courses may be replaced in the curriculum. The supervision of this phase of the program should be an ongoing activity of the individual departments and C'S.

Implementing the computer science curriculum recommendations provided in this report means more than developing a coherent program of courses.

Fig. 1. Computer science core curriculum.
Fig. 1. Computer science core curriculum.

Recommendations for Master's Level Programs in Computer Science

A Report of the ACM Curriculum Committee on Computer Science

  • The Need for Masters Programs 3. Goals of Program
    • Basic Intent
    • Communication Skills 3.3 Current Literature Level
  • Entrance Requirements 1 Admission Requirements
  • Program Organization 1 Course Work
    • Culminating/Unifying Activity 5.3 Seminar
    • Thesis or Project
    • Comprehensive Examination 6. Resource Requirements
    • Faculty
    • Computing Equipment 6.3 Library
  • Specializations 8. Conclusions
    • Introduction
    • The Need for Master's Programs
    • Goals 3.1 Basic Intent
    • Communication Skills
    • Current Literature Level
    • Professionalism
    • Entrance Requirements 4.1 Admission Requirements
    • Prerequisites
    • Program Organization 5.1 Course Work
  • Software Design and Development CS 15 Theory of Programming Languages
  • Formal Methods in Programming Languages
  • Architecture of Assemblers CS 25 High Level Language Computer

Graduate programs in computer science preceded the introduction of undergraduate programs, the first programs appearing in the early 1960s. "Curriculum. This report seeks to identify the common aspects of computer science master's programs and highlight potential differences and distinctions. The Computer Science Curriculum Committee (C^S) became a subcommittee of the Computer Education Curriculum Committee in 1978.

The scope and extent of existing graduate programs in computer science have recently been investigated [4, 7]. Additionally, there will be an ongoing need for individuals with a bachelor's degree in computer science to update their education. For most faculty positions in such institutions, a master's degree is a minimum requirement and a master's degree in computer science is appropriate preparation.

The primary emphasis of the program should be on the concepts, theory and practice of computer science.

CS 22 Performance Evaluation

  • Analytical Models for Operating Systems CS 24 Computer Communication Networks and
  • Microcomputer Systems and Local Networks
  • Automata, Computability, and Formal Languages
  • Applied Combinatorics and Graph Theory CS 30 Theory of Computation
  • Database Management Systems Design CS 31 Information Systems Design
  • Information Storage and Access CS 33 Distributed Database Systems
  • Computers and Society CS 12 Artificial Intelligence
    • Students with strong undergraduate backgrounds in computer science may have already satisfied some of

The entire program must include at least four computer science courses intended for graduate students only. In addition to the faculty and computer equipment, considerable library resources are also necessary for an adequate master's program in computer science. A specialist program should build on a more general computer science master's program, rather than being a relatively cheap shortcut to a master's program.

This report makes some recommendations for what a Computer Science master's program should be and what it should not be. The Faculty of Informatics of an institution must ultimately determine what will and will not be included in the programme. Curriculum '78: Recommendations for the Computer Science Bachelor's Program, a report by the ACM Curriculum Committee Informatics.

Curriculum '68: Recommendations for Academic Computer Science Programs, Report of the ACM Curriculum Committee on Computer Science.

Trends in Graduate Computer Science Education (Will They All Find Work?)

Conte, Purdue University and Chair of the Computer Science Council; William Cotterman, Georgia State University and the ACM Board; Joel Cyprus, Texas Instruments; Gordon B. Nunamaker, University of Arizona and Chair of the ACM Committee on Curriculum on Computing Education for Management; Oliver R. University of Pittsburgh and Chair of the ACM Committee on Computer Science Conferences; Judy Townley, Harvard University; Marshall Yovits, Ohio State University and ACM Council.

But most who get degrees in computer science and engineering do so courtesy of the state, in whose universities these issues are real. The important consideration is that a successful Information Systems program must have the cooperation and support of the Computer Science department. The very nature of the university environment requires that Information Systems faculty members also be competent researchers.

But perhaps our biggest problem in the industry and in the acceptance of the "computer scientist".

Accreditation Guidelines for Bachelor's Degree Programs in Computer Science

Laboratory experience will be provided for some upper division courses on a dedicated computer or through simulation in a shared system. Academics have implicitly defined its content in terms of the curricula associated with computer science degrees. Finally, we come to the question of the professional status of people in computer-related professions.

This issue is related to two of the areas discussed above: educational degree programs and certification. I hope that this paper shows why I believe that a definition of essence should have a high priority. The quality effort will use the curriculum recommendations of the ACM curriculum committees to measure their effectiveness and program strengths rather than accreditation guidelines.

Maisel's perception of the lack of an actual "core" is an observation of operational reality.

Curriculum '78—Is Computer Science Really that Unmathematical?

We believe that a two-year sequence can and should be developed (by mathematicians, if possible, but without them, if necessary) for computer science majors. This sequence should be integrated with the first two years of the computer science curriculum. If not, then at least one semester of calculus would be mandatory for computer science students.

The mathematics at the heart of computer science has changed dramatically in the ten years from C68 to C78. But CUPM's 1965 recommendations are extremely inappropriate for the current needs of computer science. Curriculum recommendations for the bachelor's program in computer science. on the mathematical content of Curriculum '78.

The optional subject of mathematics would be adapted to the optional subjects of computer science at the higher level of students.

Table II. Prerequisite Structure.
Table II. Prerequisite Structure.

Gambar

FIG. 1. Prerequisite structure of courses
Table I gives some examples of how a student in com- com-puter science might be scheduled for the minimum set  of courses recommended for all majors
Fig. 1. Computer science core curriculum.
Fig. 2. Recommended computer science and mathematics courses.
+2

Referensi

Dokumen terkait

Pengaruh Current Ratio, Return On Equity terhadap Harga Saham pada Perusahaan Manufaktur yang Terdaftar di Bursa Efek Indonesia.. Pengaruh Ratio Profitabilitas dan