Computer Science

Associate in Science Degree

The Associate in Science degree in Computer Science prepares students for transfer to a bachelor’s-level degree program in Computer Science. Degree requirements are based on national standards. Core Computer Science knowledge and skills are acquired in the following courses: Computer Science I, II and III (Data Structures and Algorithms), Operating Systems, Computer Assembly Language, and Systems Analysis and Design.

Today most career opportunities in Computer Science require a minimum of a bachelor’s degree. This is due to not only increased competition for IT jobs on a worldwide basis but also because the demands of an IT position require a solid foundation in several and varied areas of computing, a broad range that simply cannot be completed in two years. The United States Department of Labor estimates that the job growth for computer-related fields is much higher than the average growth rate – a promising outlook for Computer Science students. It projects the job growth rate to be 20 percent from 2008 through 2018. The New Jersey Department of Labor predicts that 6,000 new jobs will be added to the technology sector during this time period. Some examples of positions available to B.S. Computer Science degree graduates include programmer, database manager, game developer, web developer, mobile applications developer, systems engineer, software engineer and systems analyst.

There are numerous opportunities to transfer to a four-year institution and study Computer Science. The following public and private New Jersey colleges and universities offer a bachelor’s-level Computer Science degree: The College of New Jersey, Kean University, Montclair State University, New Jersey City University, Ramapo College, Richard Stockton State College, Rowan University, Thomas Edison State College, William Paterson University, New Jersey Institute of Technology, Rutgers University, Drew University, Fairleigh Dickinson University, Monmouth University, Princeton University, College of Saint Elizabeth, Saint Peter’s College, Seton Hall University and Stevens Institute of Technology.

For more information, visit the Department of Information Technologies website.

AS Computer Science

(P2500)

General Education Foundation
Communication6
English Composition I
English Composition II
Math-Science-Technology12
Precalculus
Analytic Geometry and Calculus I
Analytic Geometry and Calculus II
Social Science/Diversity6
Choose from General Education list (Social Science) 1
Choose from General Education list (Diversity) 1
Humanities3
Choose from General Education list (Humanities) 1
General Education8
Laboratory Science Sequence
Laboratory Science Sequence
General Education Foundation Credits35
Computer Science Core
CMP-123Systems Analysis and Design3
CMP-128Computer Science I3
CMP-129Computer Science II3
CMP-230Computer Architecture and Assembly Language3
CMP-233Data Structures and Algorithms3
CMP-246Operating Systems3
CIS Electives6
MAT-225Discrete Mathematics4
Computer Science Core Credits28
Total Credits63
1

 Students should consult their academic advisors when selecting these courses.

Nancy Binowski
Chairperson, Associate Professor, Information Technologies
M.S., Courant Institute of Mathematics, New York University
B.A., Rutgers University
EH 225   973-328-5775   nbinowski@ccm.edu

Colleen Bamford
Assistant Professor, Information Technologies
M.S., Nova Southeastern University
B.S., SUNY College at Brockport
CH 276  973-328-5669   cbamford@ccm.edu

Vickram Sawh
Assistant Professor, Information Technologies
M.S., New Jersey Institute of Technology
B.S., Jersey City State College
EH 201   973-328-5772   vsawh@ccm.edu 

Jason Sim
Assistant Professor, Information Technologies
M.A., Northeastern University
M.B.A., St. Peter’s University
B.A., Kean University
EH 201   973-328-5773   jsim@ccm.edu

June Scott
Professor, Information Technologies
M.A., Montclair State University
B.A., Montclair State University
CH 276   973-328-5788   jscott@ccm.edu

Michael Sidaras-Tirrito
Assistant Professor, Information Technologies
M.S., Pace University
B.S., Pace University
EH 221   973-328-5793  mtirrito@ccm.edu

Patricia Tamburelli
Assistant Professor, Information Technologies
M.S., Seton Hall University
B.A., Jersey City State College
B.S., Jersey City State College
EH 221   973-328-5799   ptamburelli@ccm.edu

Courses

Course usage information

CMP-101. Computer Information Literacy. 1 Credit.

LAB 2 hrs
This general education course provides students with an introduction to basic computer concepts that include learning the fundamentals of Windows, accessing the Internet and using Microsoft Word. Not for Computer Information Systems majors. Students will not receive credit towards graduation for more than one of the following courses: CMP-101, CMP-110, CMP-126, CMP-203 or BUS-119.
Additional Fees: Course fee applies.

Course usage information

CMP-108. Game Design Concepts. 3 Credits.

LECT 3 hrs
This course provides the student with an introduction to fundamental game design concepts. The range of topics includes game worlds and settings, character creation, storytelling, game audio, game art and animation, gameplay and user interface design. In addition, the history of the game industry, social impact and the future of gaming are discussed. Students analyze various games and genres and create their own game design document.
Additional Fees: Course fee applies.

Course usage information

CMP-120. Foundations of Information Security. 3 Credits.

LECT 3 hrs
This course provides a principled introduction to the field of information security. History, characteristics and models of information and computer security are explored. Topics such as risk management, logical and physical security, continuity, cryptography, and architecture are discussed. The National Centers of Academic Excellence in Cyber Defense Education Knowledge Units and the CISSP CBK domains are incorporated into the course content affording the student reinforcement and mastery of information security terminology and concepts.
Additional Fees: Course fee applies.

Course usage information

CMP-123. Systems Analysis and Design. 3 Credits.

LECT 3 hrs
Techniques of object-oriented and structured systems analysis and design are examined in the context of the software development life cycle. Topics include project management, Unified Modeling Language (UML) diagrams, data flow diagrams, system flow charts, application and user-interface design. Class projects provide students with practice in using CASE tools in the analysis and design of application systems. Students participate in a semester-long team project to design an application.
Prerequisites: CMP-128 and one of the following: CMP-129, CMP-150, CMP-237, CMP-239
Additional Fees: Course fee applies.

Course usage information

CMP-124. Network Security. 3 Credits.

LECT 3 hrs
This course provides an in-depth study of network attack techniques and methods to defend against them. Areas of study include communication security, infrastructure security, cryptography, and operational and organizational security as it relates to network hardware, software and data. Topics include authentication, attacks, virtual private networks, email protection, web security, wireless, firewalls, intrusion detection, cryptography, disaster recovery and computer forensics regarding networked systems. Using a hands-on approach, powerful tools to diagnose and correct security breaches are investigated and manipulated. This course is mapped to the National Centers of Academic Excellence in Cyber Defense Education Knowledge Units and vendor-neutral certification exam.
Additional Fees: Course fee applies.

Course usage information

CMP-125. Information Security Management. 3 Credits.

LECT 3 hrs
This course entails identifying an organization's information assets and the development, documentation and implementation of policies, standards, procedures and guidelines that ensure confidentiality, integrity and availability of those assets. This course, which is mapped to the National Centers of Academic Excellence in Cyber Defense Education Knowledge Units, prepares students to understand the planning, organization and roles of individuals involved in security, to develop security policies, and to utilize management tools to identify threats, classify assets and rate vulnerabilities. A detailed, real-world security plan is developed using customized strategies.
Additional Fees: Course fee applies.

Course usage information

CMP-126. Computer Technology and Applications. 4 Credits.

LECT 3 hrs, LAB 2 hrs
This general education course teaches: (1) basic computer-use concepts such as hardware and peripherals, file organization and management, and operating system use; (2) Internet use, browsers and search engines; (3) software applications including word processing, spreadsheet, electronic slideshow presentations, database use and calendaring; (4) netiquette, ethics and copyright policies; (5) downloading and installing software and plug-ins; (6) communications technologies including email, blogs and Web technologies; (7) personal computer and information security; and (8) career exploration, job search strategies and portfolio development. Students are required to complete a series of laboratory assignments that illustrate skills and use technologies in the areas listed including a cross-applications/technologies project. Students will not receive credit towards graduation for more than one of the following courses: CMP-101, CMP-110, CMP-126, CMP-203 or BUS-119.
Prerequisites: Placement basis or ENG-025 or ENG-022 or ENG-007
Additional Fees: Course fee applies.

Course usage information

CMP-128. Computer Science I. 3 Credits.

LECT 2 hrs, LAB 2 hrs
In this introductory course, students obtain fundamental computer science knowledge and develop programming skills using an object-oriented approach, incorporating security awareness,human-computer interactions and social responsibility. This course provides students with a basic foundation in computing history, computing careers, computer organization, operating system responsibilities, software development process, algorithm design and analysis, programming paradigms, and human interaction design.
Prerequisites: MAT-007 or equivalent
Additional Fees: Course fee applies.

Course usage information

CMP-129. Computer Science II. 3 Credits.

LECT 2 hrs, LAB 2 hrs
This course is the second in a three-course sequence that provides students with a foundation in Computer Science. Students develop intermediate-level programming skills using an object-oriented approach with an emphasis on software development, fundamental algorithms and data structures, software assurance, and ethical conduct.
Prerequisites: CMP-128 or equivalent
Additional Fees: Course fee applies.

Course usage information

CMP-130. Introduction to Information Technology. 3 Credits.

LECT 2 hrs, LAB 2 hrs
This is the introductory course in the field of study of Information Technology. This course introduces the student to the software and hardware found in today's computing environment and the basic skills and tools required to install, support and upgrade common information technology used by businesses, organizations and academic institutions. This course helps the student prepare for the CompTIA A+ certification examination. In addition, the basics of network architecture, database management, information security and web infrastructure are covered. At completion the student will be prepared for further study in the curriculum of Information Technology and equipped with the fundamental knowledge required of an IT Professional. The students use popular desktop applications to organize and perform IT laboratory activities.
Additional Fees: Course fee applies.

Course usage information

CMP-135. Computer Concepts with Applications. 3 Credits.

LECT 2 hrs, LAB 2 hrs
This general education course is designed to provide familiarity with current software for word processing, spreadsheet, presentation and database applications. An introduction to web browsers, computer and information security, social impact of computing, concepts in computer hardware, and application and system software is also included. Students are required to complete a series of laboratory assignments that illustrate skills in using the above software applications. Students must allocate time to complete assignments using the same software (available on campus). Not for Computer Information Systems majors. Students will not receive credit towards graduation for more than one of the following courses: CMP-135, CMP-126 or BUS-119.
Additional Fees: Course fee applies.

Course usage information

CMP-150. Game Programming. 3 Credits.

LECT 2 hrs, LAB 2 hrs
This course covers fundamental game programming techniques using an industry-standard scripting language. Students learn how to use a popular game engine to build game programs. Topics include sprites, animation, collisions, timers, game state variables, player input, audio, user interface design and storyboarding. Laboratory work includes several game element programming exercises,leading up to a final game project.
Prerequisites: CMP-128 or equivalent
Additional Fees: Course fee applies.

Course usage information

CMP-160. Digital Forensics I. 3 Credits.

LECT 2 hrs, LAB 2 hrs
This course introduces the student to the fundamental concepts of computer forensics. By conducting a detailed examination of data media for structure, file system type, volumes, lost and hidden areas, the student will develop the ability to collect and analyze computer data for digital evidence. An understanding of specific resources and an exploration of software tools available for data recovery and forensic analysis will be conducted in a laboratory setting. Upon completion of this coursed the student will demonstrate various data recovery techniques as the basis for forensic evaluation.
Additional Fees: Course fee applies.

Course usage information

CMP-170. Mobile App Design. 3 Credits.

LECT 2 hrs, LAB 2 hrs
This course introduces students to the design and development of mobile applications. Students will learn how to install and use a leading mobile app software development kit, design the user interfaces using different design patterns, create and edit app resources, and design and develop native source code. Students will strengthen their programming skills in user input, variables, operations, decision control structures, methods, lists and arrays. Audio, images, animation and other application controls will be incorporated into apps. Other topics include testing, deployment and publishing apps.
Prerequisites: CMP-128
Additional Fees: Course fee applies.

Course usage information

CMP-200. Computer Operating Systems and Utilities. 3 Credits.

LECT 3 hrs, LAB 1 hr
This is an introductory course in personal computer operating systems. Topics include the features and characteristics of operating system software; installation and configuration including customization, file organization and management; memory and storage management; control of peripheral devices; troubleshooting; networking wizards; and the use of utilities to monitor system performance, backup data and optimize disks. Laboratory assignments provide hands-on opportunities for students to apply the information related in lectures.
Additional Fees: Course fee applies.

Course usage information

CMP-205. Database Programming (MS Access). 3 Credits.

LECT 3 hrs, LAB 1 hr
It is recommended that students take CMP-207 Electronic Spreadsheets before taking CMP-205. This course is designed to develop skill in the use of a leading database management system. Topics include the design and maintenance of relational databases and their objects(tables,queries, forms and reports). Also covered is the use of macros to implement procedures. The final portion of the course covers automation techniques by introducing the Visual Basic for Applications programming language and the use of this code to create a user-friendly interface.
Additional Fees: Course fee applies.

Course usage information

CMP-207. Electronic Spreadsheets (MS Excel). 3 Credits.

LECT 3 hrs, LAB 1 hr
It is recommended that students take CMP-207 Electronic Spreadsheets before taking CMP-205. This is a course in problem solving using a popular spreadsheet program. Emphasis is on construction of elementary to moderately complex worksheets; charting worksheet data, database definitions and reporting; and using VBA (Visual Basic for Applications) to construct simple macros.
Additional Fees: Course fee applies.

Course usage information

CMP-209. Introduction to UNIX. 3 Credits.

LECT 3 hrs, LAB 1 hr
This course combines lecture with hands-on training in the UNIX Operating System. Upon successful completion of this course, students are proficient in using the UNIX Operating System commands and utilities. Topics include purpose and functions of an operating system, hierarchical file system, the shell, vi editor, file security, process management, sorting, networking theory and communications, redirection, piping, and an introduction to shell scripts.
Prerequisites: CMP-128 or equivalent
Additional Fees: Course fee applies.

Course usage information

CMP-217. Cooperative Work Experience-Information Technologies. 3 Credits.

COOP 3 hrs
This course provides students in the Department of Information Technologies programs with job training and practical experience in a work environment prior to permanent career employment. This course may be taken in fulfillment of the Computer Information Systems elective. Interested students should consult with the department chair. Computer Information Systems majors only
Prerequisites: Permission of department chair
Corequisites: CMP-218.

Course usage information

CMP-218. Cooperative Work Experience Information Technologies - Related Class. 1 Credit.

LECT 1 hr
A supplement to the Department of Information Technologies Cooperative Work Experience, this course provides a variety of exercises that further develop the students' technical and communication skills, occupational adjustment, and career planning. This course is offered online. Computer Information Systems majors only.
Prerequisites: Permission of department chair
Corequisites: CMP-217.

Course usage information

CMP-230. Computer Architecture and Assembly Language. 3 Credits.

LECT 3 hrs, LAB 1 hr
This course is an introduction to computer architecture and assembly language programming. Topics covered include digital logic and data representation, computer architecture and organization, interfacing and input/output strategies, memory architecture, functional organization, and multiprocessing. Students are exposed to basic assembly language programming techniques in laboratory assignments.
Prerequisites: CMP-128 or equivalent
Additional Fees: Course fee applies.

Course usage information

CMP-233. Data Structures and Algorithms. 3 Credits.

LECT 3 hrs, LAB 1 hr
The course includes advanced computer science topics dealing with logical structures of data and the design and analysis of computer algorithms operating on these structures. The course concentrates on data structures such as linked lists, trees, queues, stacks, hash tables and graphs. Algorithms covered include stacks, queues, hash tables, trees, graphs,heaps, sorting and searching. Both iterative and recursive algorithms are explored with analysis of their efficiency. Problems and computer exercises implementing the above structures and techniques are assigned.
Prerequisites: CMP-129 or equivalent and MAT-123 or higher
Additional Fees: Course fee applies.

Course usage information

CMP-235. Advanced UNIX. 3 Credits.

LECT 3 hrs, LAB 1 hr
This is a continuation course in UNIX programming with emphasis on building upon the previously developed skills. Topics include an in-depth coverage of shell scripts, system administration, GUIs, differences and similarities between shells, higher-level programming languages in the UNIX environment, the Internet, sorting, and other advanced topics.
Prerequisites: CMP-209
Additional Fees: Course fee applies.

Course usage information

CMP-237. Visual Basic (VB.Net). 3 Credits.

LECT 3 hrs, LAB 1 hr
This is a fundamental course in object-oriented programming in a Windows environment. Topics include form design, managing controls, handling variables and constants, using decision and loop structures to construct efficient code, handling built-in functions, and simple debugging techniques for detecting errors. Basic fundamentals of classes are introduced.
Prerequisites: CMP-128 or equivalent
Additional Fees: Course fee applies.

Course usage information

CMP-239. The Internet and Web Page Design. 3 Credits.

LECT 3 hrs, LAB 1 hr
This course is an in-depth study of the Internet and its various services that allows students to appreciate the impact of the Internet in society. Students create World Wide Web home pages using strict Hypertext Markup Language, Cascading Style Sheets (CSS) and XHTML. Other current specifications also are discussed.
Additional Fees: Course fee applies.

Course usage information

CMP-241. Database Programming (Oracle). 3 Credits.

LECT 3 hrs, LAB 1 hr
This course uses the rules and syntax of an "industrial-strength" database programming language that can be used on all types of computers. Topics include relational database aspects, data input and validation, creation and maintenance of files, query, user control center, and application generator. Emphasis is on development of programs related to business database applications.
Prerequisites: CMP-113 or CMP-128 or equivalent or permission of department chair
Additional Fees: Course fee applies.

Course usage information

CMP-243. Ethical Hacking and Systems Defense. 3 Credits.

LECT 2 hrs, LAB 2 hrs
This course combines an ethical methodology with the hands-on application of security tools, techniques,and methodologies in performing computer system and network security vulnerability - risk analyses - to better help students secure and defend their systems. Topics to be covered include internal and external penetration tests, risk analysis methodology, and security audits. Students are introduced to common countermeasures that effectively reduce and/or mitigate attacks. This class is designed to help students prepare for professional careers in the information security field and the Certified Ethical Hacker (CEH)certification exam.
Prerequisites: CMP-124
Additional Fees: Course fee applies.

Course usage information

CMP-244. Web Design II. 3 Credits.

LECT 3 hrs, LAB 1 hr
This course is a continuation of The Internet and Web Page Design with an emphasis on more advanced concepts and techniques. Topics include Cascading Style Sheets, forms, JavaScript and other current scripting languages. Students learn to work with hosting and web server technology. For their final project, students build a website using these techniques.
Prerequisites: CMP-239
Additional Fees: Course fee applies.

Course usage information

CMP-245. Web Design Tools. 3 Credits.

LECT 2 hrs, LAB 3 hrs
Students learn the leading web design and development tools including the Adobe Creative Suite. Instruction and practice in the suite provides seamless integration and a unified user interface across all tools to streamline multimedia and web development. Through hands-on practice, activities and relevant project application, students develop competence in the use of industry-leading development tools.
Prerequisites: CMP-108 or CMP-128 or CMP-239 or MED-110 or GRD-111
Additional Fees: Course fee applies.

Course usage information

CMP-246. Operating Systems. 3 Credits.

LECT 2 hrs, LAB 2 hrs
This course introduces students to operating systems and their uses and design concerns. Covered are the roles and responsibilities of operating systems including scheduling, concurrency and process synchronization, memory management, file organization and management, and control of peripheral devices. Security and protection topics are also addressed. Laboratory assignments provide interactive learning experiences which demonstrate operating system concepts using programming, operating system commands and scripting.
Prerequisites: CMP-129
Additional Fees: Course fee applies.

Course usage information

CMP-249. Advanced Web Programming. 3 Credits.

LECT 2 hrs, LAB 2 hrs
This advanced course in Web Development introduces the student to creating interactive and dynamic Web sites using current Web programming. Building on concepts and principles of computer programming and scripting languages, students will interact with Web server technologies and develop front end, advanced professional Web sites with fully functioning back end support.
Prerequisites: CMP-128 and CMP-244
Additional Fees: Course fee applies.

Course usage information

CMP-250. Game Production. 3 Credits.

LECT 2 hrs, LAB 2 hrs
Working in teams, students combine their game design and programming skills to explore the practical challenges of managing the development of games. Industry-standard software and advanced programming are used in this capstone course to develop a functioning game of the highest professional quality. Emphasis is placed on the game design document, storyboarding, the game production process, user interface and game design, interactive storytelling, character development, 3D animation, special effects, audio, the collaborative process, and usability testing.
Prerequisites: CMP-150 or MED-220
Additional Fees: Course fee applies.

Course usage information

CMP-261. Digital Forensics II. 3 Credits.

LECT 2 hrs, LAB 2 hrs
This advanced course in digital forensics will enable the student to understand advanced file system forensics, the theory of forensic procedures, review of identification, imaging, and authentication, review of FAT file system, NTFS and EXT3 file systems, partitioning, Window's logical analysis, email analysis, and web history analysis conducted in a laboratory setting. Upon completion of this course the student will apply investigative methodology as it applies to data artifacts, including where they are found in computer operating systems, and how they are deployed in digital forensics. The student will perform forensic media acquisition and verification.
Prerequisites: CMP-160
Additional Fees: Course fee applies.

Course usage information

CMP-271. Mobile App Programming. 3 Credits.

LECT 2 hrs, LAB 2 hrs
This second course in a series of mobile app development courses covers advanced design elements and programming constructs. Topics include accessing device resources including the camera, accelerometer, and GPS; utilizing local and networked database services; animation and gaming; accessing background services; file management; designing for multiple devices including wearables; and localization/internationalization and accessibility design. Students will create apps individually and as part of a team and their learning will culminate with the development of a final project that will be of industry-level quality.
Prerequisites: CMP-170
Additional Fees: Course fee applies.

Course usage information

CMP-290. Independent Study in Information Technology. 3 Credits.

LECT 3 hrs
Students, in consultation with the department chair, undertake an in-depth analysis of a selected topic, problem or issue related to information technology or pursue additional computer-related work experience. Students are responsible for developing a statement of goals and strategies, maintaining a weekly log, and preparing a written and oral summary report. Computer Information Systems majors only.
Prerequisites: Permission of department chair
Additional Fees: Course fee applies.

Course usage information

CMP-291. Special Topics in Information Technology. 3 Credits.

LECT 3 hrs, LAB 1 hr
An examination of selected topics or issues in information technologies. Topics may differ each time the course is offered. Students should consult the department chair for additional information. Computer Information Systems majors only.
Prerequisites: Permission of department chair
Additional Fees: Course fee applies.

Course usage information

CMP-292. Special Topics in Information Technology. 3 Credits.

LECT 3 hrs, LAB 1 hr
An examination of selected topics or issues in information technologies. Topics may differ each time the course(s) is offered. Students should consult the department chair for additional information. Computer Information Systems majors only.
Prerequisites: Permission of department chair
Additional Fees: Course fee applies.

Course usage information

CMP-293. Special Topics in Information Technology II. 1 Credit.

LECT 1 hr
An examination of selected topics or issues in information technologies. Topics may differ each time the course is offered. Students should consult the department chair for additional information. Computer Information Systems majors only.
Prerequisites: Permission of department chair
Additional Fees: Course fee applies.

Course usage information

CMP-296. Cooperative Work Experience-Information Technology (45-100 hours). 1 Credit.

COOP 1 hr
This course provides students in the Department of Information Technologies programs with job training and practical experience in a work environment prior to permanent employment amounting to between 45-100 hours in duration. The course may be taken in fulfillment of a Computer Information System (CIS) elective. Students desiring to participate in this experience should make their intention known to the department at the beginning of their second semester. Computing majors only.
Prerequisites: Permission of department chair.

Course usage information

CMP-297. Cooperative Work Experience-Information Technology (90-200 hours). 2 Credits.

COOP 2 hrs
This course provides students in the Department of Information Technologies programs with job training and practical experience in a work environment prior to permanent employment amounting to between 90 to 200 hours in duration. The course may be taken in fulfillment of a Computer Information System(CIS) elective. Students desiring to participate in this experience should make their intention known to the department at the beginning of their second semester. Computing majors only.
Prerequisites: Permission of department chair.

Course usage information

CMP-298. Cooperative Work Experience-Information Technology (135-300 hours). 3 Credits.

COOP 3 hrs
This course provides students in the Department of Information Technologies programs with job training and practical experience in a work environment prior to permanent employment amounting to between 135 to 300 hours in duration. The course may be taken in fulfillment of a Computer Information System(CIS) elective. Students desiring to participate in this experience should make their intention known to the department at the beginning of their second semester. Computing majors only.
Prerequisites: Permission of department chair.