Course Descriptions ICS
INFORMATION & COMPUTER SCIENCE (ICS)
Updated for 2013-2014
ICS 100 Computing Literacy and Applications (3)
An introductory survey of computers and their role in the modern world. Emphasis is on computer terminology and hardware and software. Opportunities for “hands-on” experience using microcomputer applications software may include spreadsheets, word processing, graphics and database management systems. (45 lecture hours) (DO)
Prerequisite: ENG 21 or ENG 22 and MATH 73 or equivalent, all with a grade of C or better, or consent of instructor.
ICS 101 Digital Tools for the Information World (3)
Hands-on computer class with emphasis on producing professional-level documents, spreadsheets, presentations, databases, and web pages for problem solving. Includes concepts, terminology, and a contemporary operation system. Meets requirements for College of Business (UHM and UHH) and UHM’s Biology program and Botany Department.
Prerequisite: ENG 100 and MATH 100 or equivalent, all with a grade of C or better, or consent of instructor.
ICS 110 Introduction to Programming (3)
A practical introduction to the theory of stored program digital computers. Students are taught flowcharting, documentation techniques and the use of a programming language to solve various scientific and business-oriented problems. The emphasis is on basic concepts and functional characteristics in the design and development of computer programs.
Prerequisite: ENG 21 and MATH 83 with a C or better or equivalent.
Rec Preparation: ICS 100.
ICS 111 Introduction to Computer Science I (3)
This is an introductory course in computer programming. Emphasis is on structured programming, problem solving, algorithm development, computer language coding, implementation, and debugging/testing. (45 lecture hours) (DO)
Prerequisite: Math 103 with a grade of C or better or consent of instructor.
ICS 113 Database Fundamentals (3) This course covers the fundamental concepts in database technology, including storage structures, access methods, recovery, concurrency and integrity. The relational model and its implementation will be covered in depth together with an overview of SQL and its role in application development. The course will also present an overview of database administration, including modeling and design activities. A substantial part of the course involves the development of an understanding of database concepts. * (45 lecture hours) (Formerly ICS 106)
Prerequisite: ENG 21 and ENG 22 with a grade of C or better or equivalent, and successful completion of MATH 82 or equivalent, or consent of instructor.
ICS 125 Personal Computer Maintenance and Repair (3) Introduction to the hardware components of microcomputer systems. The specification, selection, installation, and configuration of PC hardware components including motherboards, RAM, video, sound, network cards, storage devices, monitors, and printers are covered. Advantages and disadvantages of hardware components, and compatibility issues are discussed. Opportunities for “hands-on” activities include the installation and configuration of said components and system software.
Prerequisite: ENG 21, ENG 22, and MATH 82 or their equivalents with grades of C or better; consent of instructor.
Rec Preparation: ICS 100 or ICS 101.
ICS 135 Introduction to Programming in Visual Basic (3) An introduction to window-based programming using Visual Basic. Topics covered include the Visual Basic environment, user-interface design, data types, scope, control structures, data structures, files and graphics. (45 lecture hours) (DO) Prerequisite: ICS 110. ICS 136 Introduction to Mobile Device Application Development (3) This course will provide the initial background on applications development for mobile devices, as well as tools to be used for development in mobile platforms. Students will learn to create basic web pages optimized for mobile devices. Usability, documentation and testing for mobile applications and mobile websites will also be covered.Prerequisite: ICS 111 with a grade of C or better or instructor consent. Recommended preparation: ICS 113
ICS 141 Discrete Math for Computer Science I (3)
Covers logic, sets, functions, algorithms, number theory, matrices, mathematical reasoning, counting techniques, and relations (including closures, equivalence relations and partial orders). Selected algorithms/programs will be observed and compared on the computer. (45 lecture hours)
Prerequisite: MATH 100 or higher and ICS 111 (or concurrent), all with a grade of C or better.
ICS 151 Structured Database Programming (3) An introduction to creating interactive webpages. Students will develop dynamic web applications using a programming language and a database. (45 lecture hours) (formerly ICS 151Z)
Prerequisite: Completion or concurrent enrollment in ICS 113, or consent of instructor Recommended Preparation: DMED 120 ICS 170 Ethics for the Digital World (3) An overview of ethical issues and regulations in the digital world related to networked communications, intellectual property, privacy, computer and network security, computer reliability, and workplace issues. (DH) ICS 171 Introduction to Computer Security (3) This course covers the essentials of computer security, including risk management, the use of encryption, activity monitoring, intrusion detection; and the creation and implementation of security policies and procedures to aid in security administration. Prerequisite: ICS 184 with a grade of C or better, or consent of the instructor. Recommended preparation: ICS 170 ICS 172 Network Design and Administration (3) This course covers the network design fundamentals including basic switching and routing, layer 2 and 3 protocols, wired and wireless networking and wide area networking. Fundamental network administration techniques will also be covered as the complement to network design. Corequisite: ICS 184 with a grade of C or better or consent of instructor.
ICS 184 Introduction to Networking (3)
This course provides the student with the knowledge and skills to manage, maintain, troubleshoot, install, operate and configure basic network infrastructure, as well as to describe networking technologies, basic design principles, and adhere to wiring standards and use testing tools. Corequisite: ICS 125
ICS 185 Introduction to Local Area Networks (3) This course is designed to familiarize the student with current and relevant topics in local area network (LAN) technologies by providing a comprehensive introduction to the concepts, technologies, components and acronyms inherited in today’s local area networking environments. Recommended Preparation: ICS 184 ICS 185L Local Area Networks Lab (1) This course covers the essentials of computer networking at the local area level from a practical perspective. Students will learn computer configuration and basic troubleshooting of Local Area Networks (LANs) and Virtual Local Area Networks (VLANs). The lab will include the making and testing of different cables as well as network troubleshooting using current methods such as link state and packet analyzers for traffic monitoring across a local area network. Prerequisite: Satisfactory completion, or current enrollment in ICS 185, or consent of instructor. ICS 186 Introduction to Wide Area Networks (3) This course is designed to provide the student with an understanding of how communications channels of the public switched telephone networks are used for data communications and how voice and data communications have become integrated over both the legacy and the cutting edge technologies. Recommended Preparation: ICS 184 ICS 186L Wide Area Networks Lab (1) This course covers the essentials of computer networking at the wide area level. Students will design and implement a small wide area network (WAN). Students will become familiar with WAN protocols, equipment, components, cabling, connectivity and troubleshooting issues regarding the communication of local area networks over a wide area network. Prerequisite: Satisfactory completion, or current enrollment in ICS 186, or consent of onstructor. ICS 187 TCP/IP Network Architectures (3) This course covers the operation of the TCP/IP standard and related protocols. It introduces the student to the underlying components and protocols that make up the Internet as well as the tools currently in use to navigate and access information on the Internet. Recommended Preparation: ICS 184 ICS 187L TCP/IP Lab (1) This course covers the essentials of network design and implementation using TCP/IP. Students will learn and practice subnetting as well as dynamic and static routing. Different tools such as network analyzers will be in use. Students will learn different network troubleshooting techniques. Prerequisite: Satisfactory completion, or current enrollment in ICS 187, or consent of onstructor.
ICS 198G Introduction to Gamification (3) This is an introductory course on the emerging practice of Gamification. Emphasis is placed on understanding what gamification entails and how it can be used to design and develop more engaging and effective systems. In order to do so, topics such as games and human motivation need to be understood. This course will also introduce a six steps framework to gamification and conclude with the reflection on of its possible risks and future directions. Rec Preparation: ICS 100
ICS 211 Introduction to Computer Science II (3)
This is a second course in programming. The course will cover topics subsequent to those covered in ICS 111. This course emphasizes data structures: lists, queues, stacks, binary trees. (45 lecture hours)
Prerequisite: ICS 111 and ICS 141 or equivalent, all with a grade of C or better, or instructor consent.
ICS 212 Program Structure (3)
A programming intensive course which covers program organization paradigms, programming environments, implementation of a module from specifications, the C and C++ programming languages.
Prerequisite: ICS 211 with a grade of C or better.
ICS 236 Mobile Device Management and Programming (3) This course will prepare students to effectively manage and secure mobile devices within an enterprise system. This course will also cover advanced programming tools for at least two different mobile devices. Prerequisites: ICS 136 with a grade of C or better or instructor consent.
ICS 240 Operating Systems (3)
This course is an overview of operating systems. The concepts of microcomputer and multiuser operating systems are covered. The topics covered will include operating systems as a software interface with hardware, CPU memory and secondary storage, compilers, linkers and interpreters, single and multi-user systems, command languages, segmentation, paging and virtual memory, and operating systems in distributed and networked environments. (45 lecture hours)
Prerequisite: ICS 111 with a grade of C or better, or instructor consent.
ICS 241 Discrete Math for Computer Science II (3)
Recursive algorithms, program correctness, structured programs, graph theory, trees and their applications, probability theory, Boolean algebra, introduction to formal languages and automata theory. (45 lecture hours)
Prerequisite: ICS 111 and ICS 141.
ICS 250 Introduction to Object Oriented Programming (C++) (3)
This is an introductory course in object-oriented programming, designed for students with previous structured programming experience. It covers C++ syntax for standard input/output, arithmetic, conditional and iterative statements. It introduces the student to object-oriented design and implementation of classes, objects, functions, and methods. It also introduces the student to programming with graphical user interfaces.
Prerequisite: ICS 111 or ICS 135.
ICS 251 Advanced Database Programming (3) A second course in creating interactive webpages. Students will develop dynamic web applications using a programming language and a database with a focus on open source. (45 lecture hours)
Prerequisite: Completion or concurrent enrollment in ICS 113, or consent of instructor Recommended Preparation: DMED 120
ICS 270 Systems Analysis (3)
A study of data processing systems and procedures including the advantages and disadvantages of different types of systems, forms design, controls, conversion techniques and facilities planning. Emphasis on various techniques and tools of Systems Analysis, such as interviewing, procedure analysis and flowcharting. (45 lecture hours)
Prerequisite: ICS 111 with a grade of C or better, or instructor consent.
ICS 281 Ethical Hacking (3) This course covers basic ethical hacking techniques also known as white hat hacking. It stresses the moral and legal issues about hacking and how these techniques can be used to defend against attacks as well as to perform authorized system security evaluation testing.Prerequisite: ICS 170 and ICS 171 with a grade of C or better or consent of instructor. ICS 282 Computer Forensics (3) This course covers basic computer forensics including operating system diagnostics, the use of forensic toolkits to examine and validate computer activity and techniques for the proper collection, examination and preservation of forensic evidence. Prerequisite: ICS 170 and ICS 171 with a grade of C or better or consent of instructor. ICS 283 Advanced Network Routing and Optimization (3) This course covers the advanced network design components including advanced Internet Protocol Version 4 (IPv4) and Internet Protocol Version 6 (IPv6) routing, route optimization and three of the most widely used routing protocols. Prerequisite: ICS 172 with a grade of C or better, or consent of instructor. ICS 290 NetPrep Introduction to Internet Technologies (3) The Internet Technologies course begins with an overview of the Internet, its organization and structure. Once the general structure is understood, we look at different ways to access the Internet, both as an individual user and as a group of users. Web clients and servers and the underlying protocols used by both are also covered reviews the many applications that are used for retrieving information or providing information across this global network of networks. Current web server operating systems will be explored. Prerequisite: ICS 187 or consent of instructor Rec Preparation: ICS 184, ICS 185, and ICS 186. ICS 291 NetPrep Internetworking (3) This is an advanced course intended for networking professionals and students who already grasp the general concepts of data communications and networking, but would like a more detailed understanding of internetworking. Techniques and components for managing network growth and connecting disparate network architectures will be presented and solutions to internetworking problems will be developed. Prerequisite: ICS 187 or consent of instructor or Certificate of Completion in Basic Computer Networking. Rec Preparation: ICS 184, ICS 185, and ICS 186. ICS 292 NetPrep Processes and Protocols (3) This is an advanced course intended for networking professionals and students who grasp the basic concepts of networking but would like to understand, in more detail, some of the major protocols controlling the flow of information between data communications layers and between cooperating processes on network nodes. Trace and analysis tools will be used to analyze the frames and packets traversing a network. Prerequisite: ICS 187 or consent of instructor or Certificate of Completion in Basic Computer Networking. Rec Preparation: ICS 184, ICS 185, and ICS 186. ICS 294 NetPrep Network Analysis & Design (3) The student will gain a more in-depth understanding of methods used to analyze, design and manage LANs and point-to-point networks. Exercises are geared toward learning techniques in network design and analysis. Network diagrams from several corporate networks will be analyzed and discussed. Prerequisite: ICS 187 or consent of instructor. Rec Preparation: ICS 184, ICS 185, and ICS 186.
ICS 293D Cooperative Education (3) Provides practical work experiences in the computer area to apply classroom knowledge and to develop job skills. May be part-time work in the private sectors of the business, government or industrial communities or may be directed study in a particular computer area. The student will meet with the instructor at least once a month and prepare written reports as directed. Acceptance into the courses is by permission of the instructor. A student may take both courses for a total of six credits.
ICS 298C Topics in Networking: Security (3)
This course covers network security. Topics may include workstation and server operating system vulnerabilities; firewalls; packet filtering; network data analyzers; wired and wireless security issues; and virus, spam and spybot.
Prerequisite: ICS 187 or consent of instructor.