Department of Computer and Information Sciences

http://www.towson.edu/cosc

OFFICE

7800 York Road, Room 406
410-704-2633

PROGRAMS OF THE DEPARTMENT

Computer Science

The Department of Computer and Information Sciences offers several programs of study leading to baccalaureate, Master of Science and Doctor of Science degrees. The undergraduate programs in computer science include a major in Computer Science, a major in Computer Science with a track in Computer Security, a major in Computer Science with a track in Software Engineering, a combined major in Computer Science and Mathematics, a combined major in Computer Science and Mathematics with a track in computer security, and a minor in Computer Science.

The B.S. in Computer Science is accredited by the Computing Accreditation Commission of ABET, www.abet.org.

Information Systems

Graduates from the Information Systems major at Towson University are in high demand by employers due to their unique combination of technical, organizational and behavioral skills. The Information Systems major is a great fit for students who enjoy technology and like working with people. Information Systems, as a field, primarily focuses on the 4 “Ps”: 

  • people (understanding user interface design and user task goals for information systems)
  • process (incorporating stakeholder input into technology development processes)
  • policy (understanding the context of state and national laws and international technical standards)
  • profit (using technology to meet business and organizational goals).

The flagship program is the undergraduate major in Information Systems, which includes four career track options: Systems, Business, Interface Design, and e-Government. The department also offers a combined major in Information Systems and Business Administration, a combined major in Information Systems and e-Business, and a minor in Information Systems.

Information Technology

Information technology (IT) involves the selection, creation, application, integration and administration of computing and communication technologies to meet individual organizational and societal needs. Emphasis is on applying current technology in various real world domains. As such, a complementary mix of knowledge and practical hands-on skills are needed. The undergraduate information technology program prepares students to enter the workplace as IT professionals or to pursue graduate studies in the IT field. Programs include a major in Information Technology and a minor in Information Technology.

OVERVIEW

Students in any of the department’s undergraduate programs are prepared with a broad foundation in the principles and concepts of computing, both theoretical and applied. Elective courses may be selected from a variety of topic areas including artificial intelligence, bioinformatics, computer graphics, decision support systems, e-commerce, human-computer interaction, robotics, scientific modeling, software engineering, software project management, systems analysis and design, and web-based programming. In addition, the department offers numerous courses in the area of information security including operating systems security, network security, and application software security. (Since 2002, Towson University has been designated as one of the National Centers of Academic Excellence in Information Assurance Education (CAE/IAE) by the National Security Agency and the Department of shy;Homeland shy;Security.)

Matriculated students attending classes either full- or part-time may fulfill degree requirements. Students attending part-time in the evening are advised that not all required courses are available in the evening every term.

The department has 38 full-time faculty members and a number of part-time faculty. Research specialties include:

  • assistive technology
  • automated reasoning
  • cryptography
  • data mining
  • decision support systems
  • distance learning
  • distributed computing
  • genomics
  • geographical information systems
  • human-computer interaction
  • information assurance
  • information visualization
  • neural networks
  • universal usability
  • virtual collaboration
  • voice-over IP
  • wireless networks

The department has 15 computing laboratories including:

  • smart classrooms
  • undergraduate majors open labs
  • graduate research lab
  • NSF-funded Security Lab
  • Linux Lab
  • Software Engineering Lab
  • Universal Usability Lab
  • Robotics Lab

The computing needs of department majors are also met by the facilities and services provided by the university’s Office of Technology Services.

Students electing one of the majors should contact the Department of Computer and Information Sciences and be assigned faculty advisers to assist them in planning their academic schedules, identifying educational goals and maintaining good academic progress.

2+2 PROGRAMS FOR TRANSFER STUDENTS FROM HARFORD COMMUNITY COLLEGE

Students transferring from Harford Community College with an A.S. in Computer Science can major in either Computer Science, Computer Science with Security Track, or Information Systems by completing the following major requirements. Students transferring from HCC with an A.A.S. in Computer Information Systems can major in Information Technology by completing the following major requirements. (Refer to the Harford Community College catalog for the specific courses that are required to be taken at HCC as part of the A.S. and A.A.S. programs for program for transfer to these majors.)

TRANSFER CREDIT POLICY

Students intending to transfer into the Computer Science or Information Systems program should provide course descriptions and supportive materials from their institution for review by a departmental adviser. Community college students from local public institutions should be aware that agreements on equivalency of courses are maintained; they should inquire about the current agreement either at their institution or at Towson University. They should also be aware that community college courses can only be counted as lower-division work. Transfer students are urged to gain a good background in mathematics.

SECOND BACHELOR’S PROGRAM

Baccalaureate degree holders may apply for enrollment in the Second Bachelor’s Program through the University Admissions Office. Because of the high demand for computer personnel, the Computer Science, Information Systems or Information Technology major is often of interest to persons who wish to change careers. Students in this program must satisfy the requirements for the major and earn at least the last 30 units in the IS/COSC major at Towson University. Although there are computer science or information systems courses offered in the evening, students may find that some required courses must be taken during the day. Because of the sequence of prerequisites, a minimum of five terms is normally needed to complete the program.

DEPARTMENTAL ACTIVITIES

A student chapter of the Association for Computing Machinery (ACM) is the basis for the Students for the Advancement of IT. Meetings are held during the term, with field trips and speakers featured. To recognize outstanding talent in the field of computer science, Towson University has a charter chapter of Upsilon Pi Epsilon (UPE), the first and only international honor society for the computing and information disciplines. Members of UPE are outstanding undergraduate and graduate students in Computer Science or Information Systems.

Scholarships

The department offers a number of scholarships, including the James W. Smith Scholarship (for computer science majors demonstrating academic excellence and enthusiasm for the field); the Doris K. Lidtke Excellence in Service Award (a monetary award for graduating seniors majoring in computer science or information systems with a minimum 3.50 GPA and significant service in their discipline); the Applied Information Sciences Scholarship (for information systems majors demonstrating academic excellence); and the Mid-Atlantic CIO Forum Scholarship (for computer science and information systems majors with a minimum GPA of 3.50).

Awards

The department also offers several academic awards, including the Mary Hudson Scarborough Award for outstanding academic achievement by graduating seniors majoring in computer science or information systems, and the Upsilon Pi Epsilon (UPE) Award for students majoring in computer science or information systems with a minimum overall GPA of 3.00 and a minimum GPA in the major of 3.14.

Minors in Computer and Information Sciences

Admission to the Combined Major in e-Business and Information Systems

Students are admitted to the combined major in e-Business and Information Systems on a competitive basis after first being admitted to the university. Admission to the university does not guarantee admission to this combined major. Each term, the Department of e-Business and Technology Management considers applications for admission to the major in the following term. In order to be admitted to the major, students must satisfy specific screening requirements (listed under the e-Business major) and complete an application form for admission. Degree candidates intending to pursue the combined major in e-Business and Information Systems are designated as “pre-e-Business” (PEBU) until admitted into the major. Students are required to meet each term with their assigned faculty adviser to evaluate their progress in completing the requirements for admission to the EBUS major and the degree.

Admission Requirements

Candidates for the combined major in e-Business and Information Systems must satisfy the admission requirements for the e-Business major.

Application Procedure

Refer to the Application Procedure section in this catalog under the e-Business major.

Computer Information Systems Courses

CIS 211 FUNDAMENTALS OF INFORMATION SYSTEMS & TECHNOLOGY (3)

An introduction to information systems and technology in today's organizations. Topics include hardware, software and communications fundamentals, systems development, information management, work force considerations, and related societal, legal, and ethical issues. Prerequisite: COSC 111 (may be taken concurrently).

CIS 212 INTRO TO BUSINESS PROG (3)

A study of computer programming for business applications using a language such as COBOL. Students will design, implement, test and document programs in application areas such as payroll, accounting, inventory and file maintenance. Not open to those who successfully completed COBOL programming. Prerequisite: COSC 111 or programming experience.

CIS 239 ENTERPRISE SYSTEMS AND ARCHITECTURE (3)

Key concepts of ERP systems and approaches to business process improvement through the use of Information Technology (IT) infrastructures including IT infrastructure frameworks, information architecture, the design, implementation, and management of enterprise IT Solutions, and related theoretical and practical issues. Prerequisites: COSC 236, MATH 263, and CIS 211.

CIS 265 VISUAL BASIC PROGRAMMING (3)

Concepts, tools and techniques of software development using an event-driven language that supports a graphical user interface and an object-oriented environment. Two lecture hours and two laboratory hours. Prerequisite: Programming experience required.

CIS 334 DATA ORGANIZATION (3)

Information abstraction, representation and organization, including realization of data and the logic to manipulate it, concepts of levels of abstraction, and information organization, particularly within organization. Not open to students who successfully completed COSC 336. Prerequisite: COSC 237.

CIS 341 ADV CONCEPTS INFO SYST (3)

Relationships among information systems, objectives and systems structure, covering human aspects, systems models and applications. Prerequisites: COSC 237 and COSC 111 or CIS 115.

CIS 350 TELECOMMUNICATIONS (3)

Addresses telecommunications from the perspectives of technology, systems, and management. Prerequisites: (CIS 239 and (CIS 334 or COSC 336)) or (ITEC 315 and ITEC 325).

CIS 377 INFORMATION SYSTEMS SECURITY (3)

Information systems security threats, technologies and business requirements, emphasizing human and technological aspects of IT security problems. Not open to students who successfully completed CIS 477. Prerequisite: CIS 211.

CIS 379 SYSTEMS ANALYSIS AND DESIGN (3)

Guides students through the stages of the evolution of data processing systems, including analyses of present information flow, system specifications, equipment selection, and implementation of the system to provide an understanding of the skills and knowledge needed for effective use of data processing equipment in meeting information needs. Prerequisite: CIS 211 AND COSC 237.

CIS 397 INTERNSHIP IN CIS (3)

Students work in a local computing facility under on-site and faculty supervision. May be repeated for a maximum of 6 units Only 3 units can be applied toward the major. Graded S/U. Prerequisites: 6 units of upper-division COSC or CIS courses and consent of instructor.

CIS 425 DECISION SUPPORT SYSTEMS (3)

Computer-based information systems for managerial decision-making. Includes mathematical modeling and decision support systems, systems architecture, DDS development tools, organization issues of decision support, multiparticipant DSS, and integration with other information systems. Prerequisites: (CIS 379 or ITEC 411) and MATH 231.

CIS 426 GAMING INTERFACE DESIGN (3)

Focuses on game design and the computer gaming industry. Designed to introduce the fundamental elements, frameworks and standards related to computer gaming. Instruction will be a combination of lectures, group/individual projects and class assignments aimed at the dissemination of conceptual elements with practical application. Prerequisite: CIS 379 or ITEC 411.

CIS 433 SELECT TOPICS INFO SYST (1-3)

Studies in selected areas of computer information systems. May be repeated for a maximum of 3 units. Prerequisites: 9 units of Computer Information Science and consent of instructor.

CIS 435 HUMAN-COMPUTER INTERACTION (3)

Effective, productive information systems, including interactive computer systems, input and output devices, screen layouts, machine design, health issues, organizational impacts, and computers and the disabled. Prerequisite: CIS 379 or ITEC 411.

CIS 436 E-GOVERNMENT (3)

Provides an overview of information technology development and use within federal, state, and local government. Addresses both external-facing systems (used by citizens) and internal systems (used by government employees), as well as current topic such as electronic voting, crowdsourcing, government datasets, and open government. Prerequisite: CIS 379 or ITEC 411.

CIS 440 SYSTEM DEVELOPMENT / E-COMMERCE (3)

Developing an organization's electronic commerce technical infrastructure, hardware and software specification issues, strategic development of computer-mediated business and tools, policy and societal impact issues as well as future directions in electronic commerce. Prerequisite: CIS 379 or ITEC 411.

CIS 445 UNIVERSAL USABILITY: DESIGNING COMPUTER INTERFACES FOR BLIND USERS (3)

Designing computer interfaces for the needs of blind users. Prerequisite: CIS 379 or ITEC 411.

CIS 458 ORGANIZATIONAL DATABASE MANAGEMENT (3)

The database environment in an organization. Database development, analysis, design, implementation, and administration. Applications of database programs for organizational information processing. Students cannot earn credit for both COSC 457 and CIS 458. Prerequisite: CIS 334 or COSC 336.

CIS 468 APPLIED DATA MINING AND VISUAL ANALYTICS (3)

Provides students with a background in traditional data mining approaches using computational models as well as visual analytic approaches which map data onto a visual model enabling knowledge discovery through human perception. Prerequisites: MATH 231 and (CIS 334 or COSC 336), or consent of the instructor.

CIS 475 ANLYSIS AND DESIGN FOR WEB SITES (3)

Information architecture; conceptual design of the web page interface, HTML, Javascript, CSS, usability testing, implementation, and management. Prerequisite: CIS 379 or ITEC 411.

CIS 479 SOFTWARE PROJECT MNGT (3)

Technical and behavioral aspects of project management: concepts, needs identification, software project manager, software teams, software project organizations, project communications, software project planning, scheduling, control, associated costs, using management software tools. Prerequisite: CIS 379.

CIS 495 INDEPENDENT STUDY IN COMPUTER INFORMATION SYSTEMS (3)

Directed study in selected areas of Computer Information Systems for which there is no regular course offered. The use of a proposal and well-defined objectives as well as a formal paper or project report are required. Prerequisites: Senior standing in CIS and consent of instructor.

Computer Science Courses

COSC 109 COMPUTERS AND CREATIVITY (3)

Creative activities involving symbolic manipulation and computer graphics; animation, dynamic story telling, computer music, visual effects, Web publishing, computer games, artwork and multimedia. Additional laboratory time required. GenEd I.E or Core: Creativity & Creative Development.

COSC 111 INFORMATION AND TECHNOLOGY FOR BUSINESS (3)

Retrieve, process, classify, sort and evaluate data and information. Problem solving techniques, creative thinking skills, communication skills, team building, and professional ethics. Laboratories covering the Internet, spreadsheets, and databases. Additional laboratory time required. Students cannot earn credit for both this course and IDNM 101. GenEd I.B.

COSC 112 HONORS INFORMATION AND TECHNOLOGY FOR BUSINESS (3)

Introduction to the use of information technology to retrieve, filter, process, classify, sort, and evaluate data and information in a business environment. Problem solving, creative thinking, effective communication, team building, and professional ethics within an information systems framework. Labs covering library information systems, the Internet, word processing, presentation software, spreadsheets, and databases will be emphasized. Students cannot earn credit for both this course and IDNM 101. Honors College course. GenEd I.B.

COSC 119 UIE:INFORMATION EFFECTIVELY IN THE COMPUTING SCIENCES (3)

Identifying, retrieving, filtering, storing, processing, classifying, sorting, evaluating and presenting data and information in a technology and computing environment. Emphasis will be placed on problem solving techniques with the computing field. Team-based case studies will be utilized and hands-on labs will be an important component of the course. Two hours lecture and one hour lecture in the lab. GenEd I.B.

COSC 175 GEN COMPUTER SCI (4)

Computer systems overview, algorithm development, data representation, software design and testing methodologies, and brief overview of advanced topics.

COSC 210 INTRODUCTION TO DIGITAL SECURITY AND DIGITAL FORENSICS (3)

Introduction to digital security and digital forensics for computer science and non-computer science majors. Topics include the history and scope of digital crime, characteristics of various types of digital crime, the interrelationship of the fields of forensic science, behavioral science and computer science, and societal, legal and ethical issues related to digital security and forensics. GenEd II.B.3.

COSC 225 HONORS INTRODUCTION TO LEGO ROBOTICS (3)

Basic mechanical, electronics and control issues in Robotics using the LEGO Mindstorms platform. Design, implement and program robotic systems of interdisciplinary nature. Prerequisite: Honors students only. GenEd I.E or Core: Creativity & Creative Development.

COSC 236 INTRODUCTION TO COMPUTER SCIENCE I (4)

Introduction to structured problem solving, algorithm development and computer programming. Three lecture hours and two laboratory hours. Prerequisites: demonstrable programming knowledge and experience and MATH 119 or equivalent.

COSC 237 INTRODUCTION TO COMPUTER SCIENCE II (4)

Development of programming and problem-solving skills, with a focus on object-oriented programming and design. Students will design and develop programs using encapsulation and information hiding, inheritance, polymorphism, and generics. Introduction to data structures and their implementations (lists, stacks, queues, and trees), recursion, and searching and sorting algorithms. Includes two laboratory hours per week. Corequisite: MATH 211 or MATH 273. Prerequisite: COSC 236.

COSC 290 PRINCIPLES OF COMPUTER ORGANIZATION (4)

Computer organization and architecture including computer arithmetic, digital logic, principles of assembly language, memory system organization, computer interfacing, CISC and RISC architecture. Three hours per week of laboratory work required. Prerequisites: COSC 236 and (MATH 263 or MATH 267).

COSC 301 PROB SOLV/PROGRAM (6)

Designed for graduate students with deficiencies in programming concepts. Topics include: Structured problem solving, algorithm development, data representation, basic data structures, sort and search techniques, computer structures. Not open to undergraduate students.

COSC 302 COMPUTER SYS ARCH (4)

Architecture. The topics covered: assembly language, introduction to computer architecture, internal representation of data and instruction, memory organization, microprogramming, multi-.

COSC 304 FUNDAMENTALS OF COMPUTER SCIENCES (6)

Designed for graduate students to learn programming and computer architecture. Software topics include: structured problem solving, algorithm development, basic data structures and their implementations, sort and search techniques, and introduction to software development. Hardware topics include: digital logic and digital systems, combinatorial and sequential logic, computer arithmetic, the central processing unit, assembly level machine organization, memory system organization, interfacing, and communications. Corequisite: MATH 363.

COSC 310 SPECIAL TOPICS: ADVANCED PROGRAMMING (3)

Advanced programming concepts within the context of a specific programming language for computer science and related majors. It does not count towards the major. The course may be repeated up to 6 units when a different programming language is offered. Programming languages offered may include C, C++, C#, Python, Ruby, and others. Prerequisites: COSC 237 and COSC 290.

COSC 311 DIGITAL TECH SOCI (3)

Foundations and impacts of computing and digital technologies, including history, applications, and societal impacts. Prerequisite: junior status and two science courses or one math course and one science course. GenEd II.A.

COSC 314 INTRODUCTION TO CRYPTOGRAPHY (3)

A broad introduction to cryptography and its mathematical foundations, including applications to computer-network security services and mechanisms (confidentiality, integrity, authentication, electronic case and others) and to various protocols in distributed computation. Prerequisites: COSC 236, either MATH 263 or MATH 267, and junior standing or permission of the instructor.

COSC 321 COMPUTERIZATION AND ITS IMPACTS (3)

Computer technology and its social and economic impacts on organizations and individuals. Prerequisites: Junior/senior status and completion of two science courses or one math and one science course. GenEd II.A.

COSC 336 DATA STRUCTURES AND ALGORITHM ANALYSIS (4)

Fundamental data structures used in programming and the basic techniques used to design and analyze algorithms. Topics include: complexity analysis of elementary algorithms, linear data structures, trees, heaps, graphs, search algorithms (balanced binary trees, B-trees, hashing), sorting algorithms, basic graph algorithms (graph traversal, topological sorting, shortest path, minimum spanning trees), and paradigms in the design of algorithms (divide and conquer, dynamic programming, greedy). Prerequisite: COSC 237; MATH 274 (may be taken concurrently).

COSC 350 DATA COMMUNICATIONS AND NETWORKING (3)

Networks, topologies, architectures and protocols, circuit and packet switching. TCP/IP suite, network management and security, and network programming. Prerequisites: COSC 336 and COSC 290.

COSC 397 INTERNSHIP/COSC (3)

Students work in local computing facility under on-site and faculty supervision. May be repeated for a maximum of 6 units. Only 3 units can be applied to the major. Graded S/U. Prerequisites: 6 units of upper division Computer Science or Computer Information Systems courses and consent of the instructor.

COSC 412 SOFTWARE ENGINEERING (3)

Methodology of designing and programming for a wide area of applications with a high degree of modifiability, efficiency, reliability, and understanding. Prerequisite: COSC 336.

COSC 415 COMPILER DESIGN (3)

Principles, techniques, algorithms and structures involved in the design and construction of compilers. Topics include: lexical analysis, formal grammars, syntax and semantics analysis, error recovery, code generation and optimization. Prerequisite: COSC 336.

COSC 417 INT THEORY COMP (3)

A general introduction to the theory of computation, including finite automata, compatibility, formal languages and their relation to automata, algorithms, and algorithmic complexity. The major emphasis will be on developing formal descriptions of computers and computational processes, and practical implications of theoretical results. Prerequisite: COSC 336.

COSC 418 ETHICAL AND SOCIETAL CONCERNS OF COMPUTER SCIENTISTS (3)

Ethical questions and societal concerns related to the widespread use of computers and the resulting responsibilities of computer scientists. Prerequisites: junior/senior standing; ENGL 317 or BUSX 301; must have previously taken a computing class. GenEd II.A or Core: Ethical Issues & Perspectives.

COSC 431 SELECTED TOPICS COMPUTER SCIENCE (1-3)

Independent studies in selected areas of computer science. A maximum of 4 units may be earned in selected topics. Prerequisites: consent of the instructor and 9 units of computer science.

COSC 432 REQUIREMENTS ANALYSIS & MODELING (3)

Introduces the basic concepts as well as the principles of software requirements development. Students will learn how to elicit, analyze, and model requirements and gain practical knowledge of tools and techniques related to these requirements activities. Develops theoretical knowledge and practitioner skills critical for real world applications. Prerequisite: COSC 412.

COSC 436 OBJECT-ORIENTED DESIGN & PROGRAMMING (3)

Introduction to object-oriented design and programming technology (OOD/OOP). Main phases in object-oriented design and techniques in object-oriented programming. Programming language design and implementation issues for object-oriented languages. Prerequisite: COSC 336.

COSC 439 OPERATING SYSTEMS (3)

Operating systems as resource managers with emphasis on file processor, memory and device management and processes. Design and implementation of a simulated multiprogramming operating system. Prerequisite: COSC 336.

COSC 440 OPERATING SYSTEMS SECURITY (3)

an in-depth discussion of security concepts in operating systems. This course examines some of the security issues in current operating systems and discusses the existing tools and technologies for setting up a secure system. Prerequisite: COSC 439.

COSC 442 SOFTWARE QUALITY ASSURANCE AND TESTING (3)

A comprehensive study of concepts, techniques, and tools for software quality assurance and testing. Software testing at the unit, subsystem and system levels; test models and test design techniques; integration, regression, and system testing methods; static and dynamic analysis; security and reliability testing and assessment. Prerequisite: COSC 412.

COSC 450 NETWORK SECURITY (3)

Network security principles and applications, including authentication applications. IP security, Web security, network management security, wireless security and system security. Prerequisites: COSC 314 or MATH 314, and COSC 350.

COSC 455 PROGRAMMING LANGUAGES: DESIGN & IMPLEMENTATION (3)

Underlying concepts in high-level programming languages and techniques for their implementation, a survey of a selected group of such languages along with a discussion of the interrelationship between programming and programming languages. Prerequisite: COSC 336.

COSC 457 DATABSE MNGT SYS (3)

Data models and sublanguages; security and integrity problems; functions of the database administrator; implementation and use of a database management system; a comparison of widely used DBMS packages. Prerequisite: COSC 336.

COSC 458 APPLICATION SOFTWARE SECURITY (3)

A study of security concepts in developing software applications. Discusses design principles for secure software development, and some of the security issues in current programming and scripting languages, database systems and Web servers. Corequisite: COSC 457. Prerequisite: COSC 455.

COSC 459 COMPUTER SIMULATION & MODELING (3)

Simulation models and languages, data collection and output analysis, random number generation and Monte Carlo integration, model verification and validation, variance reduction techniques, optimization, the implementation and use of simulation techniques in problem solving. Prerequisites: COSC 336 and MATH 330 or CIS 334 and MATH 231.

COSC 461 ARTIFICIAL INTELLIGENCE (3)

A survey of the problems and techniques involved in producing or modeling intelligence in computers. Particular emphasis will be placed on representation of knowledge and basic paradigms of problem solving. Topics include game playing, theorem proving, natural language, and learning systems. Prerequisite: COSC 336 or CIS 334.

COSC 465 ROBOTICS (3)

Physical mechanisms of robotics, issues of modeling, planning control and programming. Principles underlying the design and analysis of robotic systems, with emphasis on the autonomous, and behavior-based systems. Prerequisites: COSC 336.

COSC 471 COMPUTER GRAPHICS (3)

An introduction to the field of computer generated and/or displayed graphics data. Covers the topics of representation, transformations, curve and 3-D problems, graphics hardware, and programming considerations. Prerequisite: COSC 336.

COSC 481 CASE STUDIES IN COMPUTER SECURITY (3)

An in-depth study of the practical aspects of computer security, including the study of common computer security vulnerabilities in a laboratory setting. Prerequisites: COSC 440 and COSC 450.

COSC 483 DESIGN & ANALYSIS ALGORITHMS (3)

Algorithm design methods such as heuristics, backtrack programming, branch and bound, recursion, simulation, divide-and-conquer, balancing, and dynamic programming. Efficiency of algorithms - NP-complete problems. Prerequisite: COSC 336.

COSC 484 WEB-BASED PROGRAM (3)

Applications executing on a client-server system, emphasizing client side. Technologies include HTTP protocol, dynamic HTML, common gateway interface (CGI) programming and Java applets. Prerequisites: COSC 336.

COSC 485 REVERSE ENGINEERING AND MALWARE ANALYSIS (3)

Provides students with effective conceptual as well as hands-on knowledge in the areas of Reverse Engineering and Malware Analysis. It follows a progressive approach that introduces relevant concepts and techniques while preparing students to become effective reverse engineering and malware analysts able to use standard methodologies for detecting, analyzing, reverse engineering and eradicating malware in computing systems. Prerequisites: COSC 310, COSC 450.

COSC 490 SOFTWARE PROJECT PRACTICUM (3)

A project-based course for computer science majors that provides students with the experience of working as part of a project team using current software design and development tools and environments. Projects will consist of all aspects of software development, including requirements analysis, design, and implementation. Prerequisites: COSC 412; majors only; senior standing.

COSC 493 DIR ECTED READINGS IN COMPUTER SCIENCE (3)

Individual readings and background research, under the direction of a faculty member, in preparation for writing an honors thesis. (Restricted to students in the departmental honors program). Prerequisite: admission to the departmental honors program.

COSC 495 INDEPENDENT STUDY (1-3)

Directed study in selected areas of Computer Science for which there is no regular course offered. The use of a proposal and well-defined objectives as well as a formal paper or project report are required. Prerequisites: senior standing in Computer Science and consent of instructor.

COSC 499 HONORS THESIS IN COSC (3-6)

Writing of an honors thesis based on individual research. (Open only to advanced honors candidates). Prerequisite: permission of Departmental Honors Committee.

Information Technology Courses

ITEC 201 METROPOLITAN INFORMATION TECHNOLOGY INFRASTRUCTURE (3)

Technological aspects that drive the Greater Baltimore area and its surroundings by placing them in a social and economic context. Students will be able to evaluate how these technologies affect our metropolitan area's status and development by comparing our systems to the ones of other cities. Core: Metropolitan Perspectives.

ITEC 217 COMPUTING HARDWARE AND INFRASTRUCTURE (3)

Provides the foundational principles of computer hardware and IT infrastructure. Topics include electricity and circuits, PC components and organization, system performance and tuning, cloud services and virtualization. Prerequisite: CIS 211.

ITEC 231 FUNDAMENTALS OF WEB TECHNOLOGIES (3)

Introduction to web systems and technologies, including the fundamentals of design, implementation, and evaluation of web-based applications including related software, databases, interfaces, and digital media. Social, ethical, and security issues related to web-based systems are also explored. Prerequisites: CIS 211 and (COSC 236 or ITEC 236).

ITEC 250 FUNDAMENTALS OF COMPUTER NETWORKS (3)

Based upon the Open Systems Interconnection Reference Model developed by the International Standards Organization. Topics include networking basics, network types and topologies, network protocols, reference models, network hardware, network applications and services, network operating systems and basic network security. Virtual lab, network management, and network simulation tools will be used. Prerequisites: COSC 236 or ITEC 236.

ITEC 274 FUNDAMENTALS OF SYSTEM MANAGEMENT (3)

Provides foundational principles of system management along with hands-on experience with operating systems. Topics covered include file and directory management, graphical and command line user interfaces, process and thread mechanics and user management. In addition, students will install, manage and safely remove applications. Prerequisite: COSC 236 or ITEC 236.

ITEC 315 DATA AND INFORMATION MANAGEMENT (3)

Introduction to data and information management, including the collection, organization, modeling, transformation, presentation, safety, and security of data and information. Prerequisites: CIS 211 and (COSC 236 or ITEC 236).

ITEC 325 SYSTEM ADMINISTRATION AND MAINTENANCE (3)

Essentials for effective administration and maintenance of applications, operating systems and networks, including IT system documentation, policies and procedures, and the education and support of the users of these systems. Prerequisites: (COSC 236 or ITEC 236) and ITEC 274.

ITEC 336 LEGAL AND POLICY ISSUES IN INFORMATION TECHNOLOGY (3)

An in-depth exploration of the civil and common law issues that apply to information technology. In addition, the course explores statutes, jurisdictional, and constitutional issues related to computer crime and privacy in the digital age. Course content includes addressing the legal system, rules of evidence, evidence seizure and handling, court presentation, individual rights, and free speech. Prerequisite: CIS 211. Corequisite: COSC 236 or ITEC 236.

ITEC 345 SCRIPTING LANGUAGES (3)

Provides students with a solid foundation in the concepts which underlie many scripting languages and environments without focusing exclusively on any on elanguage. The emphasis will be on the underlying concepts behind the development of small programs in various scripting languages commonly found in industry. Student will develop, test, and execute programs in a hands-on environment. Prerequisite: COSC 236 or ITEC 236.

ITEC 397 INFORMATION TECHNOLOGY INTERNSHIP (3)

Opportunity to develop knowledge and skills in information technology by working in a local computing facility with on-site and faculty supervision. May be repeated for a maximum of 6 units. S/U Grading. Prerequisites: 6 units of upper level ITEC, CIS, or COSC courses and consent of instructor.

ITEC 411 SYSTEM ARCHITECTURE AND INTEGRATION (3)

Architecture and integration of systems. Gathering requirements, sourcing, evaluating and integrating components into a single system. Also covers the fundamentals of project management and the interplay between IT applications and organizational processes. Corequisite: ITEC 325. Prerequisite: ITEC 315.

ITEC 423 EMERGING INTERNET TECHNOLOGIES (3)

Focuses on emerging technologies that are essential in current trends and techniques related to Internet-based applications and their role in the IT field. Surveys the framework and essential elements in emerging Internet technology. Innovative technologies and related topics will be introduced along with the basic foundations required for their implementation and use. Prerequisite: ITEC 231 or consent of instructor.

ITEC 425 IT ENTERPRISE ARCHITECTURE (3)

Various standards and methodologies in designing and analyzing enterprise architectures including frameworks, layered architectures, strategic alignment between IT and business, modeling processes, and various viewpoints. Prerequisite: ITEC 411.

ITEC 427 CLOUD COMPUTING FOR ENTERPRISES (3)

Focuses on cloud computing and its role in the IT field. Introduces the fundamental elements, frameworks and standards of cloud computing. Students will work on group and individual projects related to cloud computing. Prerequisite: ITEC 231 or consent of instructor.

ITEC 437 DISASTER RECOVERY AND ENTERPRISE CONTINUITY (3)

Focuses on assessing vulnerabilities to the organization and taking appropriate countermeasures to avoid or mitigate disruption of IT services. Emphasis is on techniques for developing an enterprise continuity plan and building an IT infrastructure to sustain organizational operations. Prerequisite: ITEC 325.

ITEC 450 ADVANCED COMPUTER NETWORKING (3)

Provides thorough grounding in advanced topics in computer networking. Focus is on wired and wireless networking, including technologies in application, transport, and network layers, multimedia networking, and network management and security. Prerequisites: ITEC 250 and ITEC 325.

ITEC 451 ADVANCED DATA MANAGEMENT & ANALYSIS (3)

Data-centric approach of information management and analysis. Students will become familiar with data standards, manipulation, analysis, and management techniques. A survey of popular tools. Prerequisite: ITEC 315.

ITEC 464 WEB DEVELOPMENT (3)

Focuses on client/server side processing, with emphasis on client-server applications. Students are introduced to design and implementation of client-side scripting and server-side database connectivity using a content management system, including dynamic HTML, CSS, scripting, and databases, as well as emerging technologies. Also integrates web security and accessibility as they pertain to advanced web development. Prerequisite: ITEC 231.

ITEC 470 SPECIAL TOPICS IN INFORMATION TECHNOLOGY (3)

Studies in selected areas of information technology. May be repeated for a maximum of 6 units provided a different topic is taken. Prerequisites: 12 units of ITEC, CIS, or COSC courses.

ITEC 485 INFORMATION TECHNOLOGY CAPSTONE (3)

Design and implement an IT project with consideration for real-world issues including cost, safety, efficiency, and suitability for the intended user. Display ability to integrate and apply critical technical skills with a variety of management concepts, principles, techniques, and practices, while effectively managing people, information, information and communication technologies, and business processes for the organizational strategic goals. Prerequisites: ITEC 411, senior standing in Information Technology.

ITEC 495 INDEPENDENT STUDY IN INFORMATION TECHNOLOGY (3)

Directed study in selected areas of Information Technology for which there is no regular course offered. The use of a proposal with well-defined objectives and a formal paper or project is required. Prerequisites: Senior standing in Information Technology and consent of instructor.

Faculty

Professors: Shiva Azadegan, Darush Davani, Robert Hammell II, Ramesh Karne, Yanggon Kim, Jonathan Lazar, Chao Lu (Chairperson), Alexander Wijesinha, Marius Zimand

Associate Professors: Subrata Acharya, Nadim Alkharouf, Suranjan Chakraborty, Joshua Dehlinger, Charles Dierbach, Jinjuan Feng, Sung-Chul Hong, Siddharth Kaza, Gabriele Meiselwitz, Yeong-Tae Song, Yuanqiong Wang, Wei Yu

Assistant Professors: Joyram Chakraborty, Sandro Fouche, Michael McGuire, Nam Nguyen, Ziying Tang

Lecturers: Cheryl Brown, Adam Conover, Robert Eyer, Ahmed Ismail, KyungEun Park, Mona Tavakolan, Iliana Zimand

Clinical Associate Professors: Alfreda Dudley-Sponaugle, J. Scott Hilberg, Barbara Taylor

Clinical Assistant Professors: Andrew Mangle, Jinie Pak