• Tidak ada hasil yang ditemukan

CS 22 Performance Evaluation

Dalam dokumen of the (Halaman 144-147)

Some schools may admit students who do not meet the entrance requirements listed above. These students will have to remove deficiencies early in their graduate studies.

Removal of academic deficiencies might be through any or all of the following approaches:

a. Require students to take specific existing under- graduate courses for no credit toward the mas- ter's degree;

b. Establish special "immigration" courses that rap- idly cover the material in the areas of deficiency;

or

c. Provide the students with self-study outlines in conjunction with appropriate proficiency exam- inations.

Any courses taken to remove deficiencies must be in addition to the program required for the master's degree.

5.0 Program Organization 5.1 Course Work

Formal course work is provided to give the students a mixture of practical and theoretical work. Such courses will typically begin at a level in which the courses may be taken by advanced undergraduate students or grad- uate students.

T h e specific graduate courses which are offered re- flect the expertise and judgment of the faculty involved.

G r a d u a t e programs reflect their specific environments far more than do undergraduate programs. It is possible to envision several independent axes, e.g., software/hard- ware, theory/practice, and numeric/nonnumeric com- putation. Each department should determine where on each axis its program should be, consistent with available resources and expertise. These emphases should be re- evaluated at least every three years.

Nevertheless, the Committee believes all master's programs should have some aspects in common. Accord- ingly, a list of possible courses is given below. Depart- ments planning master's programs should start with this list. In preparing these course descriptions, the Commit- tee drew on material from well-established master's de- gree programs at

Georgia Institute of Technology University of Illinois

University of Maryland University of Missouri-Rolla Northwestern University

University of North Carolina at Chapel Hill Ohio State University

Purdue University

Rutgers: T h e State University of New Jersey Stanford Unversity

T h e University of Texas at Austin [13],

Computer Science is a rapidly changing field. T h e courses listed here reflect the present state of the field

and will require periodic updating. Descriptions of these courses are given in Appendix B. They provide a starting point for developing or updating a master's degree pro- gram.

Typical courses which should be offered, under the topical areas within which they fall, might be as follows.

Courses CS 9 through CS 18 are described in [2], Courses CS 19 through CS 38 are described in Appendix B.

A. Programming Languages

CS 14 Software Design and Development CS 15 Theory of Programming Languages CS 19 Compiler Construction

CS 20 Formal Methods in Programming Languages

CS 21 Architecture of Assemblers CS 25 High Level Language Computer

. Architecture

B. Operating Systems and Computer Architecture CS 10 Operating Systems and Computer

Architecture II

lap considerably with others, e.g., CS 19 and CS 21 or CS 22 and CS 23. These pairs are included to provide alternative examples. The Committee does not propose that both members of a pair be offered. Further, the Committee expects the appropriate courses to change frequently as the field matures. Additional courses may be offered to reflect the interests of the faculty.

In considering the courses that should be taken in the master's program it should be recognized that one of the purposes of such a program is to supply the opportunity for additional course work over that possible in an undergraduate program. Some of the courses, appropri- ately, are available for the graduate student and ad- vanced undergraduates, although the reasons for selec- tion may be different.

The master's program should provide both breadth in several areas, and depth in a few. In addition, it should allow a degree of flexibility to address individual needs.

T h e typical program will consist of 30 to 36 semester hours.

The program should include at least two courses from A, two courses from B, and one course from each of C, D, and E. The student who has not been exposed to numerical analysis as an undergraduate should take CS

17. Students with strong undergraduate backgrounds in computer science may have already satisfied some of these requirements and may thus proceed to more ad- vanced courses. Their degrees probably will be more specialized than those of students with weaker back- grounds.

The entire program should contain at least four computer science courses which are for graduate students only.

5.2 Culminating/Unifying Activity

Beyond the course work, each student should be required to participate in some summarizing activity.

A thesis, project, seminar, or comprehensive exami- nation exemplifies a kind of culminating activity for the program. They provide a format for a student to combine concepts and knowledge from a number of different courses. They also provide a method of judging a stu- dent's performance outside the narrow confines of a single course. They may also be useful in insuring a uniform standard in a program that may cover many years and use many different instructors.

These culminating activities can be very time-con- suming for both students and faculty. Faculty loads must allow the necessary time for the preparation, supervision, and evaluation of these activities.

5.3 Seminar

A seminar in which the students make presentations can be useful for providing experience and improving the communication skills of students. The seminar pro- vides an opportunity for the student to explore the literature and make formal presentations. The seminar is also useful in developing and encouraging the habit of

reading and discussing the current literature in computer science.

5.4 Thesis or Project

A thesis or project usually taking more than one semester should be done by each student. This is sug- gested to extend the student's experience in analysis and design and the evaluation and application of new re- search findings or technological advances. Relating proj- ects to work environments can strengthen a professional program.

The thesis or project provides the primary means by which the student gains practical experience in applying computing techniques and methodologies. It also pro- vides a basis for developing written and oral communi- cation skills and documentation experience. Finally, it provides the opportunity for exploring recent concepts in the literature and demonstrating an understanding of those concepts.

A project is much more difficult to evaluate than course work or a thesis. However, because of the impor- tance of the project within the program its careful evaluation is vitally important. Successful completion means:

a. T h e product produced performs as prescribed.

b. The project has been properly documented both in terms of nontechnical descriptions and in terms of technical diagrams and formal docu- mentation.

c. A formal public oral presentation has been given.

This is seen as a mechanism for encouraging both a high level of presentation and a high technical standard for the project.

Through a seminar and a project the student can gain practical experience in the evaluation, selection, and decision making process.

5.5 Comprehensive Examination

An alternative to the thesis may be a comprehensive examination. This examination serves a purpose similar to the thesis or project discussed previously. It summa- rizes the entire program. The examination should consist of:

a. review and analysis of articles from current lit- erature; a n d / o r

b. questions that integrate material from more than one course.

The period of time over which degree requirements

are satisfied will be considerably longer for part-time

students than for full-time students. The former, there-

fore, should be supplied with reading guides prior to the

comprehensive examination. Indeed, in order to encour-

age a reading habit in all students some examination

questions should be related to required readings rather

than to course work.

6.0 Resource Requirements 6.1 Faculty

Most faculty are qualified to teach in more than one area of specialization. Although in the past most com- puter science faculty received degrees in other disciplines, it is recommended that master's programs not be imple- mented without experienced computer science faculty or faculty formally trained in computer science. A mini- m u m of five computer science faculty members is re- quired to provide adequate breadth for a stand-alone master's program. If the department offers a bachelor's program as well, then at least eight faculty members would be required for both programs. Limited use of qualified adjunct faculty is appropriate in some special circumstances, but at least three quarters of the courses must be offered by regular full-time faculty.

6.2 Computing Equipment

Every computer science master's program must have access to adequate computer systems. T h e amount of computing power which must be available depends on how many students will be in the program at one time a n d their specializations.

An area of specialization such as computer graphics or design automation requires very special and possibly dedicated computing facilities, both hardware and soft- ware. Programs specializing in information systems place heavy demands on a large computer system with appro- priate software.

F o r the study of computer systems and languages a variety of languages and operating systems must be available. A dedicated system under departmental con- trol is optimal for hands-on experience. Programs and experiments dealing with the security of systems usually require a dedicated system.

Proper arrangements must be made for maintenance of the computing facility and laboratory equipment.

Plans and provisions also need to be m a d e for growth a n d periodic modernization of equipment resources.

6.3 Library

T h e list of books and magazines for undergraduate programs prepared by a joint committee of A C M and IEEE is the only available list of reference material [10], It is a good starting point, but suffers from being for undergraduates rather than graduate students and being current only to 1977. Additional materials, particularly selected applied and theoretical journals, are required for a master's program. Besides faculty and computing equipment, substantial library resources are essential for an adequate master's program in computer science. Siz- able current expenditure funds are needed to maintain collections, but at most universities such funds will be insufficient by themselves. An additional special alloca- tion of tens of thousands of dollars will be needed to establish a basic holding in the first place.

7.0 Specializations

A specialization program in the context of "master's level programs in computer science" is defined as a professional program which, in general, would be ad- ministered by a Computer Science department, but which differs from traditional a n d / o r academic pro- grams in several important aspects. Here the emphasis is on the "specialist." A number of schools have already developed such programs. Almost always the title of the program is the key to the area of specialization and alerts the potential student to the nontraditional (in the com- puter science sense) nature of the offering. Examples of such programs include health computing (also called medical information science), library information sci- ence, and software design a n d development. In each case the professional practitioner produced by these specialist programs is expected to draw upon a broadly based knowledge of the technical foundations of computer science and be able to apply these concepts in the context of a particular application area, e.g., medicine or software development. These specialists are expected to be the professional level link between computer science and another specific technical area. Justification for suggest- ing that these programs be administered by computer science rests with the degree to which computer science dominates the course load imposed on the student.

There are intrinsic benefits from Computer Science departments having specialist programs. Nevertheless, it is not feasible for a particular department to have a specialist program unless it has a nucleus of faculty with appropriate similar interests and expertise. Emphasis and content will vary widely.

O n the other hand, the Committee wants to discour- age a somewhat frivolous proliferation of programs with specialist names. A specialist program should build on a more general Computer Science master's program rather than be a relatively inexpensive shortcut to a master's level program. Therefore, the following guidelines are presented:

a. There must be a clear and continuing need for individuals with a particular training both locally and nationally. This need must be expected to last for several years.

b. There must be a distinct body of knowledge which these individuals need and which is not provided by a generalist degree of the type pre- sented earlier in this report.

c. There must be at least three full-time faculty members available with expertise in this body of knowledge.

d. Any needed resources (e.g., special hardware, databases) must be available in sufficient quan- tity locally. Provision must be made for periodic updating and improvement of these resources to keep pace with the state of the art.

144

a A /VHdnfiions

This report is the product of compromise. More than 200 Computer Science educators were consulted in its preparation. The Committee started out to produce a model curriculum for Computer Science master's degree programs similar to the model curriculum for bachelor's degree programs described in [2]. We quickly determined that even a small group of computer scientists could not agree on a model curriculum. We tried to develop sepa- rate model curricula for academic,, professional, and specialization programs, but could not reach a consensus on any of those. Next we tried to develop a list of core concepts which every master's graduate should know.

Lists of anywhere from five to thirty concepts were generated and rejected. What one person felt should be in the core another felt was relatively unimportant.

Computer Science is a volatile field. The Committee

tried to determine in which directions the field was moving. W e wanted to produce a f o r ^ w i ^sK&vfcfj,

Again, we could not reach a consensus. Each expert disagreed with the others.

This report makes some recommendations for what a master's degree in Computer Science should be and what it should not be. T h e report does not provide a blueprint for a master's program because the Committee believes the field is too new to have just one or even a small number of blueprints. The Computer Science fac- ulty at an institution must be the ultimate determiners of what should and what should not be in the program.

This report provides some recommendations for mini- m u m s which should be in every program. Beyond that we must defer to the mature, reasoned judgments of the local faculty.

Appendix A

Dalam dokumen of the (Halaman 144-147)