The Computer Science department offers 9 degrees: 2 BS majors, 5 MS degrees, an Engineer degree, and a doctoral program. The bachelor of science program in computer science is accredited by ABET. Enrollment and Graduation Data
The CAC Commission of ABET, Inc.
415 N. Charles Street
Baltimore, MD 21201
Telephone: (410) 347-7700
The remaining programs have never been submitted for accreditation. The BS in Cybersecurity has not been submitted for accreditation review because Cybersecurity is a new field; there are only a handful of universities that offer an undergraduate Cybersecurity major. Consequently, accreditation organizations have not yet developed criteria for such programs.
The department's remaining degrees are on the graduate level. Presently, American graduate computer science programs are not reviewed for accreditation by ABET or any other accreditation organization. Stevens Institute of Technology is accredited as a whole by The Commission on Higher Education of the Middle States Association of Colleges and Schools, an institutional accrediting agency recognized by the U.S. Secretary of Education and the Commission on Recognition of Postsecondary Accreditation.
ABET Accredited BS-CS Program
The major idea underlying ABET's accreditation criteria is that a department strive for continuous improvement of its offerings. The Stevens computer science department is committed to this goal and accordingly has a Plan for Continuous Improvement.
The aim of the Stevens BS-CS program is to produce graduates who have certain abilities that can be applied to their careers following graduation. These abilities are called "program objectives." Our program's objectives are listed below. The program objectives are aligned with the mission of the department, school, and Institute. The department's mission is listed at the top of this page. The mission of the School of Engineering and Science is available here (School Mission Statement) while that of the Institute is available here: Institute Mission Statement.
Program Objectives: B.S. in Computer Science
Program educational objectives are broad statements that describe the career and professional accomplishments that the program is preparing graduates to achieve. These are the professional accomplishments that students are expected to have achieved three years after graduation.
- [skills development] Be able to acquire new skills and knowledge on one's own.
- [skills application] Be able to create solutions to complex problems in computer system design.
- [communication] Be proficient in both oral and written technical communication.
- [teamwork] Be effective as either a member or a leader of a small team.
- [impact] Be able to evaluate the impact of one's work on the intended users and on society.
The Computer Science program is accredited by the Accreditation Board for Engineering and Technology (ABET). Enrollment and Graduation Data
Program outcomes are measureable goals for the learning that takes place during a student's time in the program. The overall outcomes for the program are listed below. Not only do outcome goals exist for the overall program, but each course has its own outcomes.
Program Outcomes: B.S. in Computer Science
Program outcomes are narrow statements that describe what students are expected to know and be able to do by the time of graduation. These relate to the skills, knowledge, and behaviors that students acquire in the program.
- All graduates of the BS/CS program in years 2011-12 and later are expected to have achieved these outcomes by graduation:
- [BS-CS A apply] An ability to apply knowledge of computing and mathematics appropriate to the program's student outcomes and to the discipline.
- [BS-CS B analyze] An ability to analyze a problem, and identify and define the computing requirements appropriate to its solution.
- [BS-CS C design] An ability to design, implement, and evaluate a computer-based system. process, component, or program to meet desired needs.
- [BS-CS D teamwork] An ability to function effectively on teams to accomplish a common goal.
- [BS-CS E responsibility] An understanding of professional, ethical, legal, security and social issues and responsibilities.
- [BS-CS F communicate] An ability to communicate effectively with a range of audiences.
- [BS-CS G impact] An ability to analyze the local and global impact of computing on individuals, organizations, and society.
- [BS-CS H professional development] Recognition of the need for and an ability to engage in continuing professional development.
- [BS-CS I currency] An ability to use current techniques, skills, and tools necessary for computing practice.
- [BS-CS J tradeoffs] An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices.
- [BS-CS K construction] An ability to apply design and development principles in the construction of software systems of varying complexity.
The outcomes of required CS courses map to these program outcomes. The mapping can be viewed two ways. First, a spreadsheet that gives an overview of which courses cover which program outcomes is available. Second, each course outcomes page lists the program outcome that each course outcome maps to. Course outcome pages are available as links.
All graduates of the BS/CS program in years 2010-11 and earlier were expected to have achieved these outcomes by graduation:
- [core:problem-solving] Use algorithmic problem-solving skills to analyze and solve software development problems. Examples include choice or development of appropriate data structures, and choice or development of appropriate algorithms.
- [core:software] Program with facility in at least two programming languages (Java and C); use abstraction and encapsulation in software design; and use modern object-oriented design techniques, including inheritance and UML diagrams.
- [core:math-stat] Apply discrete mathematics to software applications in areas such as databases, software engineering, and security; be able to use verification techniques from discrete mathematics (such as induction) to be able to reason at least informally about software correctness; and be able to solve basic problems requiring probabilistic reasoning and the application of standard statistical techniques.
- [core:environments] Build and integrate applications in at least one interactive programming environment (such as Drjava or Eclipse) and at least one operating systems environment (such as Unix), in the latter case using the development and debugging tools of that environment.
- [core:runtime] Reason about the runtime organization of modern programs and processes, including the runtime stack, heap, and network and disk input-output, in the development, debugging and performance tuning of software applications.
- [core:teams] Work cooperatively in team projects, and show awareness of and appreciation for group dynamics.
- [core:communication] Write and present technical reports at a level expected of the software engineering profession.
- [core:professional] Recognition of the need for, and an ability to engage in, continuing professional development.
- [core:ethics] Know about ethical problems that face computer scientists and software engineers, quote codes such as the IEEE Code of Ethics that specify the professional response to them, and act according to these codes of ethics.
- [core:impact] Analyze the local and global impact of computing on individuals, organizations and society
- [core:humanities] Exhibit an ability to think and argue critically on issues that are social, historical, literary and artistic; demonstrate a basic level of skills in communication and logical analysis.
- [core:science] Demonstrate an ability to use the scientific method of inquiry, as evinced by a substantial laboratory experience.
- [sys:networks] Describe network environments including the protocol stacks underlying internet and Web applications, and develop and run distributed programs using sockets and RPC.
- [cys:threats] Define and use security models to abstractly describe security properties of computer and communication systems in the face of current, emerging, and potential threats.
- [se:processes] Apply best current practices, software development processes, and software engineering technology to transform a program into a programming systems product.
- [se:project-management] Manage and schedule small to medium size software projects.
- [sys:hardware-interface] Work with both hardware and software, understanding the interface between the two to build software that exploits the capabilities of the underlying hardware, including interrupt-driven execution, the ready queue, process protection mechanisms, input-output and memory management.
- [core:concurrency] Develop both concurrent and distributed software, using synchronization and communication operations such as semaphores, monitors and message-passing.
The outcomes for the B.S. in Computer Science map to the requirements for ABET accreditation as follows:
|ABET OUTCOME, A THROUGH K||STEVENS BS-CS PROGRAM OUTCOME|