COMPUTER SCIENCE (COSC)
102 Computers and Society (3-0-3). A beginning course introducing the student to the use of computers and requiring no previous computer experience or technical background. The impact of computers on society is briefly discussed, along with an overview of the types, classifications, and functions of various computer hardware, software, and peripherals. The hands-on use of microcomputers is stressed and the ability to use word processing software is emphasized.
111 Introduction to Computer Science (3-0-3). A study of fundamental computer concepts for computer science majors. The course covers the parts of a computer, how computers store and process information, and how operating systems and common software applications work. The terminologies, binary and hexadecimal number bases, and standardized (ASCII) codes used involved in processing digital information are studied. Orientation to the Windows operating system and its basic commands is included, along with some simple word processing. Problem solving and structured programming techniques are introduced and several programming lab problems are required. CO: GNET 115 or MATH 109.
120 Introduction to Networking (3-3-4). An introductory level course in data networking. Topics include networking terminology, data communications protocols, networking standards, number systems, microcomputer hardware and software, basic electricity, structured wiring installations, OSI Reference Model, LANS (local area networks) and WANs (wide area networks), LAN topologies, physical (MAC) and logical (IP) addressing, and network management. Instruction and training are provided in the care, maintenance, and use of networking tools, software, and hardware. CO: COSC 111.
121 Introduction to Network Routing (3-3-4). This course is designed to provide students with classroom and laboratory experience in current and emerging networking technology that will empower them to enter employment and continue education and training in the computer networking field. Instruction includes, but is not limited to, networking safety, network terminology and protocols, network standards, Ethernet, Token Ring, Fiber Distributed Data Interface, TCP/IP addressing protocol, routing, dynamic routing, and the role and function of the network administrator. Particular emphasis is given to the use of decision-making and problem-solving techniques in applying science, mathematics, communication, and social studies concepts to solve networking problems. Instruction and training are provided in the proper care, maintenance, and use of networking software, tools, and equipment. PR: COSC 120.
201 PC Software Applications (3-0-3). This course expands the student’s knowledge of microcomputers through the use of various productivity software packages such as word processors, spreadsheets, database management systems, and presentation application software. Projects relating to the individual’s major and hands-on use of the microcomputer are emphasized. CO: GNET 115 or MATH 109.
209 Java (3-0-3). Covers the use of pre-written Java classes and methods and the development of new classes and methods, and emphasizes program structure and documentation along with algorithm development. Students learn algorithm development, program design, coding, testing and maintenance. Work includes compiling and debugging, input/output, selection statements, and looping statements, and the object-oriented concepts of class hierarchy, abstract data types, inheritance, polymorphism, abstract classes, and exception handling. Finally, students develop graphical user interfaces (GUls) using Java-supplied classes, and develop and execute several Java Applets on the World Wide Web (WWW). PR: GNET 115 OR MATH 109.
210 VISUAL BASIC (3-0-3). An introduction to the Visual BASIC event-driven programming language with emphasis on producing working programs. Includes how to design a Windows-interface, how to set the properties of objects on the interface/form, and how to code, debug, execute and document the actions/behaviors of selected objects. Also includes the coding of structured algorithms to do branching and looping along with other problem solving techniques and the development of an acceptable programming style. PR: GNET 115 or MATH 109 or written consent of the instructor.
216 Application Programming (3-0-3). An introduction to application programming concepts with primary emphasis on student-designed programs involving databases or spreadsheets joined to a controlling host program, probably designed with Visual Basic or some other visual software. Students gain hands-on experience in the use, customization, and design of application software by completing a real project of their own choosing, one which meets the specific course software design and program development requirements. PR: COSC 210.
218 Advanced Router Configurations (3-3-4). Topics include Novell IPX protocol, IPX addressing and encapsulation, router operation, LAN segmentation and internetworking devices, LAN switching methods, full- and half-duplex Ethernet operation, network congestion systems, microcomputer hardware and software, basic electricity, structured wiring installations, Spanning Tree protocol, and virtual LANS. PR: COSC 121.
221 WAN Theory and Design (3-3-4). This course focuses on WAN (wide area network) technologies and services. Topics include LAPB, Frame Relay ISDN/LAPB, HDLC, PPP and DDR services, configuring Frame Relay LMIs, maps, and subinterfaces, Frame Relay and PPP operation, ISDN protocols, function groups, reference points, and channels, and Cisco’s implementation of ISDN BRI. PR: COSC 218.
224 Web Programming (3-0-3). This course is an introduction to the concepts of Web Programming using HTML. Students will plan, develop, and implement web pages which incorporate text formatting, graphics insertion, internal and external hyperlinks, tables, and frames. Coding will be accomplished using standard HTM codes and a text editor coding environment. PR: COSC 210 or COSC 230.
225 Computer Operations (2-3-3). Students learn to manage a variety of operating systems including Windows, Unix/Linux, and VaxVMS. Hands-on operation of hardware using the various operating systems is emphasized. PR: COSC major with sophomore standing.
230 Structured Programming (3-0-3). Computer programming in a structured language, with emphasis on programming structures and algorithmic development methods. Includes how to design, code, debug, execute and document programs using structured problem solving techniques. Students will develop, test and debug their programs either on microcomputers or on the college computer system at the instructor’s discretion. PR: COSC 111, GNET 115 or MATH 109.
231 Object Oriented Programming (2-3-3). Object Oriented Programming complements structured programming, by defining and using objects to simplify the programming process. The relationship between abstract data types and classes of objects will be studied. Program design with objects, reuse of objects, and inheritance properties are also covered. PR: COSC 230 or consent of the instructor.
240 Computer Organization and Architecture (3-0-3). A course designed to give the student an introductory understanding of the internal operation and organization of the modern digital computer while providing hands-on assembly language programming experience. Topics include digital logic, digital systems, machine-level representation of data, assembly-level machine organization, memory organization and architecture, interfacing and communication, architectures for networks and distributed systems. Students write programs using one or more assembly languages. PR: COSC 230.
241 Introduction to Linux/UNIX (3-0-3). This course covers the basics of Linux/UNIX for desktop platforms. Topics covered include: file systems; GNOME desktop graphical user interface (GUI); X Windows; directory and file management commands; the vi editor and emacs; pipes; filters; permissions; redirection; and shell scripts. Students also get hands-on experience with one or more of the current offerings of Linux/UNIX, such as Red Hat, Solaris, and AIX. PR: COSC 111 or COSC 210.
290 Topics in Computer Science (3-0-3). A formal course in diverse areas of Computer Science. Course may be repeated for different topics. Specific topics will be announced and indicated by subtitle on transcript. PR: Consent of instructor.
311 Systems Analysis (3-0-3). A study of the methods used in analyzing business information systems. Students will analyze real-world business systems, describe information flow and data storage, and design related software to improve business operations. Data gathering, analytical tools and techniques, data flow, software specifications, prototyping, teamwork, and presentation skills are required. PR: COSC 210 AND COSC 230 AND COSC 216 (Required).
320 Data Structures (3-0-3). This course introduces various data structures used in problem solving. Arrays, queues, lists, trees, graphs, and files are represented by using abstract data types in high level programming language. Applications studied may include recursion, searching, sorting, scheduling, parsing, and memory management. PR: COSC 231.
324 Web Client Scripting (3-0-3). A continuation of COSC 224 Web Programming. This course will explore advanced concepts of Web Programming including Style Sheets, client-side scripting languages, and emerging technologies following a brief review of basic HTML components. PR: COSC 224.
326 Web Server Scripting (3-0-3). A study of the current server-side web scripting languages and techniques. Students will use the Apache/mySQL or similar environment and current scripting software to create complex and interactive web sites through use of data manipulation, control structures, file management, XML Content Management Systems, and other coding techniques. PR: COSC 324.
330 Programming Languages (3-0-3). This class includes specifications of languages (syntax and semantics), data types, data aggregations and abstractions, bindings, control structures, encapsulation, translation, and so on. Programs are planned and developed using accepted professional techniques in various programming languages, for example, Java, C++, Modula-2, ML, Lisp, Prolog, Smalltalk, and so on. PR: COSC 320.
340 Database Management Systems (3-0-3). Includes organization of databases; design and implementation; concepts of databases verses files; relational database; data retrieval structures and mechanisms; database normalization; and query languages, with emphasis on Oracle SQL. PR: COSC 216 OR COSC 311.
360 Structured C++ Programming (3-0-3). Computer programming using the ANSI C++ language, for students who have successfully programmed in a structured language. Students will learn to write structured programs for various applications. Emphasis is on the use of system and user defined functions, standard data types, various forms of addressing, and the complex data types available in the language. PR: COSC 230 or consent of the instructor.
403 Windows Application Programming (2-3-3). The study and implementation of applications which execute in the Windows system environment. Course topics include the Windows message loop, application program interface, Microsoft Foundation Classes, system resources, graphical user interfaces, and the role of object-oriented languages. The student will design and implement (individually and in teams) functioning Windows programs in one of the Visual languages. PR: COSC 210 and COSC 320
411 Scalable Internetworks (3-3-4). Topics covered include the hierarchical network design model, classful and classless addressing, variable-length subnet masks, private IP addresses and NAT, Easy IP/DHCP and helper address, configuring OSPF (open shortest path first) within a single area and across multiple areas, EIGRP (enhanced interior gateway routing protocol) design, technology, data structures, and configuration, static routes and gateways of last resort, RIP and OSPF redistribution, BGP (border gateway protocol) basic operations, configuring BGP to interact with ISP’s (Internet service providers), configuring lock-and-key security (dynamic access lists), configuring IP session filtering (reflexive access lists), and context-based access control. PR: CCNA Certification.
412 WANs and Remote Connections (3-3-4). Topics covered include configuring asynchronous connections with modems, configuring PPP (point-to-point protocol) and controlling network access, configuring a Windows 9x/2k dial-up connection, using ISDN (integrated services digital network) and DDR (dial-on-demand routing) technologies, time-based access lists, configuring X.25 for remote access, configuring Frame Relay, managing network performance with queuing and compression, scaling IP addresses with NAT (network address translation), using AAA (authentication, authorization, accounting), and emerging remote-access technologies such as wireless, DSL (digital subscriber line), and VHDR DSL (very-high-data-rate digital subscriber line). PR: COSC 411
421 Operating Systems (3-0-3). A study of basic operating systems concepts; including machine and OS structures, process and device management, memory and file management programming. A case study of an actual operating system (Unix) may be included, if the time and software are available. PR: COSC 320, ELET 305. CO: COSC 422.
422 Software Engineering (3-0-3). A study of the tools and techniques used in the analysis, design, and development of software systems. Requirement analysis w/BPP & SOW, design/review cycle, data flow, data modeling and database design, HW/SW specification determination, coding w/scheduling charts, testing, reliability, and maintenance are included as time permits. Teamwork, report presentations, and CASE tool use are required. PR: COSC 216 AND COSC 311 (COSC 340 recommended).
444 Computer Networking/Communications (2-3-3). Computer networks and computer communications are increasingly important topics in computer science. User applications of electronic mail, remote access to computing facilities, research using Internet, and many other applications require knowledge in the use of these topics. The underlying architectures, protocols, and network topologies are used to gain a practical knowledge of this important area of current technology. PR: COSC 320 or consent of the instructor.
474 Cyberinfrastructure (3-0-3). An introductory study of the cyberinfrastructure – the computational, communication, and storage resources required to support current and future scientific and engineering research. It focuses on biology information systems and applied genomics (bioinformatics). It provides students with a diverse array of backgrounds from mathematics, biology, computer science, and engineering with the capability to function at a high level and contribute solutions in the burgeoning professions of bioinformatics while retaining their own unique perspectives. Students will survey the relevant literature available online via graded discussion and forum postings and make application of the current body of knowledge for cyberinfrastructure and bioinformatics in all assignment submissions. The course emphasizes inter-disciplinary teaming in face-to-face and online environments. PR: Junior/Senior standing or consent of the instructor.
481 Multilayer Switched Networks (3-3-4). Topics covered include routing and multilayer switching concepts, VLAN types and basics, Fast Ethernet, Gigabit Ethernet, Spanning Tree Protocol, VLAN trunking protocol, multicasting protocols, configuring multilayer switching, and troubleshooting various configurations. These topics cover both layer 2 and layer 3 of the OSI (Open System Interconnection) reference model. Students learn how to build and maintain campus networks using multilayer switching technologies over high speed Ethernet. This is Semester 7 in the Cisco Networking Academies Program (CNAP) training. PR: COSC 472, CCNA Certification.
482 Troubleshooting Networks (3-3-4). Topics include all three layers of the OSI model, TCP/IP, LAN switching, Frame Relay, ISDN, AppleTalk, Novell, EIGRP, OSPF, and BGP. The laboratory environments involve Cisco routers and switches for multiprotocol client hosts and servers connected to Ethernet and Fast Ethernet LANs along with Serial, Frame Relay, and ISDN WAN connections. Students learn how to baseline and troubleshoot LANs (local area networks) and WANs (wide area networks). Students methodically practice network defect diagnosis and correction, using specific IOS (Internet Operating System) and Catalyst switch software features. This is Semester 8 in the Cisco Networking Academies Program (CNAP) training. PR: 481.
488 Introduction to Computer and Information Security (3-0-3). This course covers how systems can be protected while ensuring system reliability and integrity. Topics include examples of security problems, host security, access control, site security, TCP/IP review, attack methods, firewalls and access control lists (ACLs), basic cryptology, securing email and electronic commerce, disaster recovery, and security management functions. The student learner will understand key enterprise system components, how enterprise systems are exploited by intruders, how to utilize security tools, and how to establish policies and procedures to protect enterprise systems.
490 Topics in Computer Science (3 hours credit per semester). An advanced formal course in an area of computer science. Specific subject matter will be announced and indicated by a subtitle in the schedule and on the student transcript. PR: Consent of instructor.
499 Projects in COSC (0-12-4). Independent study or internship on a special project or practicum relating to computer science, under the supervision of an instructor or company supervisor, culminating in an oral and/or written report presented to a select faculty committee. PR: COSC 422 or COSC 311 and consent of instructor.