Computer Science (CSIS) Courses

CSIS1000 Problem Solving and Programming Concepts

This introductory course teaches students the fundamentals of problem solving in computer programming. Students learn to use both textual and graphic algorithms as problem-solving tools. In hands-on learning exercises, students work from a problem statement, conduct a task analysis to solve the problem, decide what data is needed to solve the problem, create a visual representation of their solution, and then convert the visual representation to a textual step-by-step statement of their solution. Students use a range of tools currently used in industry, including functional decomposition diagrams, flowcharts, UML diagrams, use cases, metadata charts, data flow documents and pseudocode.
Offered at North Miami, Providence, Providence CE
4.5 Quarter Credit Hours

CSIS1101 Computer Science I

This course teaches students to think algorithmically and solve problems efficiently. This course is designed to present an introduction to computer science doctrine; an understanding of core algorithmic concepts (e.g., control structures, assignment, decision structures, mathematical/Boolean operations, etc.); an introduction to structured computer programming languages, problem classification, program development and specification; software development planning techniques; debugging techniques; an introduction to the power of development environments; and documentation of software projects. Students design algorithms to solve problems and learn how to translate these algorithms into working computer programs. Experience is acquired through programming projects in a high-level programming language.
Prerequisite(s): CSIS1000.
Offered at North Miami, Providence
4.5 Quarter Credit Hours

CSIS1112 Computer Science II

This course further enhances the student's understanding of computer science theory and methods, and provides an introduction to the study of important algorithms. Main themes include designing with appropriate data structures (Advanced Data Types — ADTs) and classic algorithms, and analyzing the efficiency of the algorithms developed. Classic algorithms studied include those used for recursion, sorting, searching, graph algorithms and maintaining dynamic data structures. ADTs are presented from a generic/usage-oriented perspective. This course also serves as an introduction to object oriented programming.
Prerequisite(s): CSIS1101.
Offered at North Miami, Providence
4.5 Quarter Credit Hours

CSIS2018 Advanced Data Structures

This is an essential course in the adaptation of ADTs for use in solving complex or computationally expensive problems efficiently. This course provides students with the implementation level details of various ADTs as they are applied to solving a wide array of problems. The course provides advanced programming techniques for implementing ADTs, such as recursion. Students also gain an appreciation of the trade-offs between competing ADT solutions as they pertain to problem solving.
Prerequisite(s): CSIS1112.
Offered at North Miami, Providence
4.5 Quarter Credit Hours

CSIS2023 Survey of Programming Languages

This course examines the evolution of programming languages and the nature of various types of computer languages, concentrating on their suitability, efficiency and effectiveness as they pertain to particular problem domains. General concepts common to all programming languages are discussed so as to facilitate learning new languages. Language paradigms (e.g., logic, functional, procedural, object-oriented) are compared and implementation strategies are discussed.
Prerequisite(s): CSIS2018, ENGN2014.
Offered at North Miami, Providence
4.5 Quarter Credit Hours

CSIS2030 Database Concepts

This course introduces students to the function of a database environment. The importance of databases to modern systems development provides the motivation for examining data structures and models as they relate to user needs. Relational data models are emphasized along with query languages and user-friendly packages. The various data structures and file storage techniques used with hierarchical, network and relational data management issues are developed. Out-of-class assignments are completed by all students.
Prerequisite(s): CSIS1000 or CSIS1101 or FIT1014 or FIT1040.
Offered at North Miami, Providence, Providence CE
4.5 Quarter Credit Hours

CSIS2045 Introduction to Operating Systems

This course includes a survey of the functional characteristics of complex operating systems and an introduction to the basic techniques of operating systems design. The course discusses the topics of hardware configuration, channel operation, interrupts, register functions, multiprogramming, multiprocessing, timesharing and JCL.
Prerequisite(s): CSIS1020 or CSIS1040 or CSIS1101.
Offered at North Miami, Providence, Providence CE
4.5 Quarter Credit Hours

CSIS2050 Advanced Programming Concepts

This course is designed to provide the student with an advanced understanding of the relationship between hardware and software through the use of higher level language (C programming language) facilities. Students learn how to create programs that interface with computer peripherals. Program design, coding, debugging, testing, execution and documentation are reinforced.
Prerequisite(s): CSIS1020 or CSIS1101.
Offered at North Miami, Providence, Providence CE
4.5 Quarter Credit Hours

CSIS2075 Interface Design for Mobile Devices

This course addresses the unique features and limitations of small, mobile computing devices such as smartphones and tablets. These devices are different from the traditional computing platforms in that they typically do not have mechanical keyboards or pointing devices, but use touch screens as the primary interface. The use of the screen as both the input and output device, the small size of the device, and the added features such as telephony, global positioning, accelerometer and camera provide both challenges and opportunities for the application developer. This course prepares students for application development for mobile computing devices.
Prerequisite(s): Sophomore status.
Offered at North Miami, Providence
4.5 Quarter Credit Hours

CSIS3030 Server Side Programming I

This course introduces contemporary scripting language to teach fundamental concepts and techniques for programming in a browser-based environment. Data representation, manipulation and how interactive data feeds information on a web page are explored. Current scripting languages are used.
Prerequisite(s): CSIS1101 or CSIS2025.
Offered at North Miami, Providence
4.5 Quarter Credit Hours

CSIS3040 Server Side Programming II

This advanced programming course focuses on data interaction and transaction processing in a client server environment. Students utilize current client and server side compiled programming languages to architect and implement web applications. This course emphasizes current industry best practices using compiled code in current programming environments.
Prerequisite(s): CSIS3030.
Offered at North Miami, Providence
4.5 Quarter Credit Hours

CSIS3070 Exploring Mobile Application Development with the iPhone

This course familiarizes students with the fundamentals of mobile platform development. The basics of Objective-C, Cocoa Touch and the iPhone SDK are taught in order to explore the limitations and concerns associated with handheld device user interfaces as well as features such as acceleration detection, location-awareness, multi-touch input and real-time notification.
Prerequisite(s): CSIS1020 or CSIS1101 or CSIS2065.
Offered at North Miami, Providence
4.5 Quarter Credit Hours

CSIS3075 Mobile Application Development with Android

This course extends students' programming interests and talents into the mobile platform. Students are taught to install and configure the Android development toolkit on a personal computer, and to design and code mobile applications that include the use of services that the Android operating system provides on the mobile platform.
Prerequisite(s): CSIS1101 or CSIS2060 or CSIS2065 (HY)
Offered at North Miami, Providence
4.5 Quarter Credit Hours

CSIS3106 Software Verification, Validation, Testing and Security

This course covers methods for evaluating software for correctness and reliability, including code inspections, program proofs and testing methodologies. Students learn formal and informal proofs of correctness, code inspections and their role in software verification, unit and system testing techniques, testing tools and limitations of testing. Statistical testing and reliability models address the testing of large scale systems. Students learn techniques for developing secure code, including: software data flow analysis, secure access, using cryptography, eliminating data residue and the need for content checking.
Prerequisite(s): CSIS2045, ITEC2085.
Offered at North Miami, Providence
4.5 Quarter Credit Hours

CSIS3126 Design Project I

This course is designed to allow for mid-program evaluation of the software development skills and abilities of students. Under the direction of faculty, students develop a solution to a complex problem (agreed upon with faculty) to be completed strictly within one term (11 weeks). Students must utilize all of the skills learned thus far in the program to complete the task required.
Prerequisite(s): CSIS2018, ENGN2014.
Offered at North Miami, Providence
4.5 Quarter Credit Hours

CSIS4010 Software Engineering

This course covers development life cycle choices, software code management, software project cost analysis, tools for developing software, productizing software, documenting software products, development effort estimating, software development team dynamics, and emerging trends in the software engineering field.
Prerequisite(s): CSIS3106, PRMG2010.
Offered at North Miami, Providence
4.5 Quarter Credit Hours