Stevens Institute of Technology 2005-2006 Catalog
 
   Table of Contents
   Calendar
   Introduction
   Undergraduate
Programs
   Graduate
Programs
   School of
Sciences and Arts

- List of Programs
- Undergraduate Programs
- Department of Chemistry
and Chemical Biology

- Department of Computer Science
- Department of Humanities
and Social Sciences

- Department of Mathematical Sciences
- Department of Physics
and Engineering Physics

- Interdisciplinary Program:
Computational Science

   School of
Engineering
   School of
Technology
Management
   Interdisciplinary
Programs
   ESL and
Special Courses
   Physical Education,
Athletics and
Recreation
   Research
Environment
   Student
Services
   Financing
Education
   Student Life
   Learning About
The Campus
   Policies
   Administrative
Directory
   Faculty
Directory
   Travel
Directions
   Campus Map

The Arthur E. Imperatore School of Sciences and Arts

  ISSA_Computer_Science.pdf

 Department of Computer Science
 

STEPHEN L. BLOOM, DIRECTOR

FACULTY*

Professors

Stephen L. Bloom, Ph.D. (1968), Massachusetts Institute of Technology
Daniel Duchamp, Ph.D. (1988), Carnegie Mellon University
A. Satyanarayana, Ph.D. (1981), Jawaharlal Nehru Technological University

Associate Professors

Adriana Compagnoni, Ph.D. (1995), Katholieke University Nijmegen
Dominic Duggan, Ph.D. (1990), University of Maryland
George Kamberov, Ph.D. (1990), University of Pennsylvania
Aaron David Klappholz, Ph.D. (1974), University of Pennsylvania
David A. Naumann, Ph.D. (1992), University of Texas at Austin
John Oliensis, Ph.D. (1981), University of Chicago
Rebecca N. Wright, Ph.D. (1994), Yale University

Assistant Professors

Elli Angelopoulou, Ph.D. (1997), Johns Hopkins University
H. Quynh Dinh, Ph.D. (2002), Georgia Institute of Technology
Susanne Wetzel, Ph.D. (1998), Saarland University

Industry Research Professor

Larry Bernstein, M.S.E.E. (1962), New York University
Manu Malek, Ph.D. (1970), University of California Berkeley

*The list indicates the highest earned degree, year awarded and institution where earned.

UNDERGRADUATE PROGRAMS

     Computer science deals with the fundamental scientific laws and engineering principles which govern the design, manufacture and use of computers. A computer scientist is involved in work ranging from mathematical studies of problem-solving procedures to engineering research in advanced computing systems.

    The undergraduate curriculum is designed to continue the Stevens tradition of a broad-based education exceeding the requirements of the Computer Science Accreditation Board (CSAB) in both hardware and software courses, along with a strong theoretical component as a foundation for software engineering. It features basic courses in chemistry, physics and mathematics; a sequence of courses in the humanities, as well as physical education; plus an in-depth sequence of specialized computer science courses.

    The computer science courses at Stevens include the fundamentals needed by every computer scientist. As the software industry evolves, practitioners are increasingly expected to build reliable systems for mission- and life-critical applications. Such professionals distinguish themselves through mastery of scientific and mathematical foundations, mastery of software tools and methods, and experience in collaborative work on large projects. The Stevens computer science curriculum is designed to provide an outstanding education in all of these areas.

    Upon completion of the program, you are able to formulate problems in algorithmic terms and solve them by means of a computer, as well as manage and reason about large software systems, including the ability to use off-the-shelf components in the construction of software applications. You will have written multi-threaded programs, including thread synchronization, and will be able to reason informally about the correctness of programs. Electives provide you with an opportunity to delve deeper into specific areas of interest, including financial systems, software engineering, intelligent design and manufacturing, mathematics and security.

    Stevens computer science graduates are greatly prized by industry and find excellent positions in areas ranging from the financial industry to software and telecommunication companies such as AT&T, IBM, Microsoft, Sun Microsystems and Verizon. In addition, a significant number of Stevens graduates continue their education at the graduate level, including those programs offered at Stevens.

    The course sequence for computer science is as follows:

Freshman Year

 

 

 

 

Term I

 

 

Hrs. Per Wk.

 

 

Class

Lab

Sem.

 

 

 

 

Cred.

Ma 115

Math Analysis I

3

0

3

CS 115**

Intro. to Computer Science

3

2

4

PEP 111

Mechanics

3

0

3

Ch 115

General Chemistry I

3

0

3

Ch 117

General Chemistry Lab I

0

3

1

Hu

Humanities

3

0

3

PE 200

Physical Education I

0

2

1

 

 

 

 

 

 

TOTAL

15

7

18

 

 

 

 

 

Term II

 

 

Hrs. Per Wk.

 

 

Class

Lab

Sem.

 

 

 

 

Cred

Ma 116

Math Analysis II

3

0

3

CS 284

Data Structures & Alg.

3

0

3

Ma 134

Discrete Math

3

0

3

Ch 281

Biology & Biotechnology

3

0

3

Ch 282

Biology Laboratory

0

3

1

Hu

Humanities

3

0

3

PE 200

Physical Education II

0

2

1

 

 

 

 

 

 

TOTAL

15

5

17

 

 

 

 

 

Sophomore Year

 

 

 

 

Term III

 

 

Hrs. Per Wk.

 

 

Class

Lab

Sem.

 

 

 

 

Cred.

CS 383

Comp. Org. & Prog.

3

0

3

CS 385

Adv. DS & O-O Des.

3

0

3

CS 335

Computational Structures

3

0

3

Hu

Humanities

3

0

3

Hu

Humanities

3

0

3

PE 200

Physical Education III

0

2

1

 

 

 

 

 

 

TOTAL

15

2

16

 

 

 

 

 

Term IV

 

 

Hrs. Per Wk.

 

 

Class

Lab

Sem.

 

 

 

 

Cred

CS 488

Comp. Architecture

3

0

3

CS 434

Theory of Computation

3

0

3

 

Elective*

3

0

3

Ma 222

Probability & Statistics

3

0

3

Hu

Humanities

3

0

3

PE 200

Physical Education IV

0

2

1

 

 

 

 

 

 

TOTAL

15

2

16

 

 

 

 

 

Junior Year

 

 

 

 

Term V

 

 

Hrs. Per Wk.

 

 

Class

Lab

Sem.

 

 

 

 

Cred.

CS 492

Operating Systems

3

0

3

CS 496

Programming Languages

3

0

3

 

Elective*

3

0

3

Hu

Humanities

3

0

3

PE 200

Physical Education V

0

2

1

 

 

 

 

 

 

TOTAL

12

2

13

 

 

 

 

 

Term VI

 

 

Hrs. Per Wk.

 

 

Class

Lab

Sem.

 

 

 

 

Cred

CS 442

Database Mgmt. Systems

3

1

4

CS 494

Compiler Design

3

0

3

 

Elective*

3

0

3

Hu

Humanities

3

0

3

PE 200

Physical Education VI

0

2

1

 

 

 

 

 

 

TOTAL

12

3

14

 

 

 

 

 

Senior Year

 

 

 

 

Term VII

 

 

Hrs. Per Wk.

 

 

Class

Lab

Sem.

 

 

 

 

Cred.

CS 551

Software Eng. & Pract. I

3

1

3

CS

CS Elective

3

0

3

 

Elective*

3

0

3

 

Elective*

3

0

3

Hu

Humanities

3

0

3

 

 

 

 

 

 

TOTAL

15

1

15

 

 

 

 

 

Term VIII

 

 

Hrs. Per Wk.

 

 

Class

Lab

Sem.

 

 

 

 

Cred

CS 552

Software Eng. & Pract. II

3

1

3

CS

CS Elective

3

0

3

 

Elective*

3

0

3

 

Free Elective

3

0

3

Hu

Humanities

3

0

3

 

 

 

 

 

 

TOTAL

15

1

15

Humanities Electives must include HSS 371.
   * Must include a total of six electives, of which one must be Mgt 243, Mgt 111 or BT 121; one must be a science elective; and the remaining four must be CS courses or courses from a department approved Application Area sequence.
   **CS 115 assumes that the student has had prior experience with programming in C++, Java, or some other imperative programming language.  Students who have little or no background in programming should take CS 105 in Term I, CS 115 in Term II, CS 284 in Term III, and CS 385 in Term IV in place of the Term IV elective.

                                                                                                                     back to top

Application Areas
     The Application Areas defined below allow students to devote up to four of their electives (marked by * in the requirements) to disciplines outside computer science. Depending upon the Application Area, the science elective and/or the management elective may be chosen to support the course sequence.

    You must receive prior departmental approval in order to substitute an Application Area for computer science electives. The computer science department works with other departments to develop Application Area sequences in disciplines that are related to computer science. Below are Application Areas already approved.

Financial Systems
    Intended for students who contemplate a career in the financial sector. Those who select this Application Area option should take Mgt 243 (Macroeconomics) as their required management elective.
    Mgt 244 Microeconomics
    BT 115  Financial Accounting
    BT 215  Cost Accounting
    BT 321  Finance

Mathematics
    This Application Area focuses on topics in mathematics that utilize computing.
    Ma 221 Differential Equations
    Ma 331 Intermediate Statistics
    Ma 346 Numerical Methods
    Ma 520 Computational Linear Algebra I

Computational Chemistry & Biology
    Ch 116/118 Chemistry II/Chemistry Lab II
    Ch 321 Thermodynamics
    Ch 381 Cell Biology
    Ch 664 Computer Methods in Chemistry
    It is also suggested, but not required, that Ch 484 (Introduction to Molecular Genetics) be taken as the free elective.

Engineering
    For students with interest in hardware:
    E 245     Circuits and Systems
    CpE 358 Switching Theory and Logical Design
    CpE 390 Microprocessor Systems
    Ma 221  Differential Equations
    In addition, students should take PEP 112 as the science elective.

                                                                                                                     back to top

Concentration Areas Within Computer Science
    Here are suggested course sequences for students who are interested in specific areas within computer science. These sequences are optional - indeed, each student may choose the six CS electives according to personal interests. A concentration does not appear on the diploma. Students should understand that concentrated electives are merely suggestions. A student may choose to take all, some, or none of the courses in a concentration.

Networks
    CS 521 TCP/IP Networking
    CS 549 Distributed Systems
    CS 666 Information Networks I
    CS 668 Foundations of Cryptography
    CS 669 Network Management

Design of Games
    A five-course concentration in Game Design is designed to prepare the student for an entry-level position in the computer-games industry. The emphasis is on the creation of network, multi-player and 3D games.
    CS 437 Interactive Computer Graphics I
    CS 482 Artificial Intelligence
    CS 638 Interactive Computer Graphics II
    CS 521 TCP/IP Networking
    CS 549 Distributed Systems
    CS 638 Interactive Computer Graphics II
    It is further recommended that a game design be the subject of the student's CS 551/CS 552 software project.

Quantitative Software Engineering
    With two courses beyond the required CS 551 and CS 552, students will understand the fundamentals of software engineering with the unique Stevens emphasis on quantitative analysis and case histories.
    CS 533 Cost Estimation and Metrics  -- recommended
plus one of:
    CS 564 Software Requirements Acquisition and Analysis
    CS 565 Software Architecture and Component-based Design
    CS 567 Software Testing, Quality Assurance, and Maintenance
    CS 687 Engineering of Large Software Systems
    CS 689 Software Reliability Engineering

Minor in Computer Science
    You may qualify for a minor in computer science by taking the courses indicated below. Enrollment in a minor means you must meet the Institute's requirements for minor programs. You may not use the same courses for both a major and a minor. Only courses completed with grade of "C" or better are accepted towards a student's minor.

    Requirements for a Minor in Computer Science:

 

Prerequisite

CS 115 Introduction to Computer Science

 

Ma 134 Discrete Mathematics

 

CS 383 Computer Org. & Programming

CS 284

CS 284 Data Structures & Algorithms

CS 115, Coreq. Ma 334

CS 385 Adv. Data Structures & Obj. Oriented Design

CS 284

BACHELOR OF SCIENCE (Information Systems)

    This Bachelor of Science program is designed for those students who would like to acquire the background needed to apply information technology to support the major functions of a business or public institution. The management of information resources are as important as managing the capital, labor and raw materials of any industry. Information systems are needed to manage the collection, manipulation, storage, distribution and utilization of an organization’s information.

    People who manage information systems must have both business and technical knowledge. They must understand organizational structure, objectives and operations. They must understand systems development tools, information architecture, network configurations, databases and systems integration.
The curriculum below combines a strong background in the fundamentals of computer science with basic business management courses.

The course sequence for information systems is as follows:

Freshman Year

Term I

Hrs. Per Wk.

Class

Lab

Sem.

Cred.

Ma 115

Calculus I

3

0

3

CS 105

Intro. to Scientific Comp.

2

2

3

BT 101

Intro. to Business Plan.

3

0

3

Hu

Humanities

3

0

3