COSC 506 - Methods of Teaching Computer Science in the Secondary School
This course encompasses information and materials needed to prepare students for the teaching of computer science in grades seven through 12. Topics include curricular development, course content, laboratory arrangement, pedagogical methods, security and maintenance of equipment, software selection and evaluation and copyright considerations. In addition, the course presents approaches for dealing with diversity of student abilities and backgrounds, techniques and strategies for teaching problem-solving, algorithm development and program debugging. Time will be spent fitting previous teaching experiences and backgrounds into the computer science class and laboratory environments.
Complexity measures of algorithms; searching, sorting, string matching and graph algorithms; design and analysis of greedy algorithms, backtracking, divide and conquer approach, dynamic programming; NP-complete and NP-hard problems are studied.
Principles of logical reasoning and their application to the development of reliable software, propositional and predicate logic, mathematical induction, semantics of control and data structures are studied. Examples are drawn from various applications areas. Emphasis is on the use of formal methods as practical tools that aid in software development.
Computer Organization II. Topics include: machine language and arithmetic; assembly language programming; implementation of high-level run time structures; structure of assemblers, loaders and command interpreters. Logic design and computer architecture. No credit for
COSC 522 - Computer Communication Networks and Distributed Systems
A study of networks of interacting computers. Topics covered: principles of data communication; major national and international protocols; models for network design and analysis; local and long-haul networks; distributed processing, distributed databases and distributed operating systems. A laboratory project involving a network of microcomputer systems is included.
Processor design, fixed and floating point arithmetic processing and nonarithmetic processing are studied. Topics covered: control design and microprogramming; memory organization and input-output; system organization. Case studies will be drawn from computer systems designed to make special types of processing more efficient: stack computers, pipelined processors and vector computer multiprocessing.
The fundamentals of small-system software development as it applies to microprocessors and minicomputers. Introduction to microprocessors and peripheral hardware; software and software development; applications. Students will have access to both microcomputers and a minicomputer to gain first-hand knowledge of this field.
Computer operating systems functions and concepts. Processor allocation: multiprogramming and scheduling algorithms. Memory tasks and data management. The deadlock problem. Virtual memory, allocation strategies and analysis of their algorithms. Design, implementation and protection of I/O files. Survey of available computer operating systems.
This course involves the study of wireless communication technologies and standards. Communication issues such as frequency reuse, signal coding, error control coding and spread spectrum technology as well as technologies including cellular telephony, personal communications systems and wireless local area networks and international wireless standards will be discussed.
Students will learn how to set up and configure a web server and associated services. Topics covered will include: CGI, JavaScript, Web security tools, server-side programming multifiles applets, data description languages, database connectivity, scripting languages and distributed applications. Exposure to security and efficiency issues.
COSC 541 - Automata, Computability and Formal Languages
A survey of the principal mathematical models of computation and formal languages. Finite automata, regular languages and sets, the Chomsky hierarchy, context-free languages, computability and undecidable problems, computational complexity and NP-completeness are studied.
Review of programming language structures, translation, loading, execution and storage allocation. Compilation of simple statements. Organization and overall design of a compiler. Use of compiler writing languages.
Introduction to the LISP language with emphasis on artificial intelligence applications. Pure LISP, built-in and user-defined functions, PROG feature, MAP-functionals and property lists.
An introduction to one of the most widely used languages of artificial intelligence. Topics include Prolog’s inference procedure, assertions of facts and rules, recursion, list structures, functors, the cut, numerical operations and principles of good Prolog style.
Methods for modeling, designing, implementing and evaluating dialogues between people and computer systems, taking into account modern interface technologies, human limitations and trade-offs between competing design objectives.
Topics covered: mathematics for 3-D graphics; polygon clipping; polygon filling; modeling methods; 3-D transformations; parallel and perspective projections; hidden line and hidden surface removal algorithms; shading and color models.
Introduces the central components of 3D computer game programming: game design, using a 3D graphics engine (lighting, shading, textures, etc.), terrain modeling, solid modeling, kinematics, collision detection, real-time animation, simple AI agency, sound integration.
This course introduces the student to basic concepts and techniques of artificial intelligence. Topics covered: strategies for choosing representations, notational systems and structures; search strategies; control issues; examples of current systems in natural language processing, pattern recognition, problem-solving, learning and information retrieval. Students with no prior knowledge of LISP should take
COSC 562 - Information Retrieval and Recommendation
Explores the fields of information retrieval and recommendation. Searching for and recommending relevant information to a user. Topics include set-theoretic, algebraic and probabilistic models common to both fields, evaluation of retrieval and recommendation techniques, queries, indexing and issues related to format (text, multimedia, etc.).
Topics covered: file and data organization techniques; the hierarchical, network and relational data models with examples; query facilities; data normalization; security and integrity; design and implementation of a simple DBMS system.
An introduction to tools for programming and data management commonly used in bioinformatics. Topics include Perl programming, bioinformatics programming libraries for Perl and Java, Web and data markup languages and database technology (database design and queries).
Software engineering techniques for the organization, management and development of a large software project are studied, including specification, structured design, segmentation and documentation.
This course covers the analysis and design aspects of a software development process from an object-oriented perspective. The Unified Software Development Process along with the Unified Modeling Language (UML) will be used for modeling software systems. Requirements gathering and planning activities will be dealt with only from a modeling perspective.
A graduate-level course in a specific area of computer science to be determined by the field of specialization of the instructor and the interest of the students. Not more than six hours of special topics may be used on a degree program.
Credit Hours: 1 hr Grade Mode: Normal (A-F)
Department Permission isrequired
Prerequisite(s): Six hours of graduate computer science courses
A graduate-level course in a specific area of computer science to be determined by the field of specialization of the instructor and the interest of the students. Not more than six hours of special topics may be used on a degree program.
Credit Hours: 2 hrs Grade Mode: Normal (A-F)
Department Permission isrequired
Prerequisite(s): Six hours of graduate computer science (COSC) courses
A graduate-level course in a specific area of computer science to be determined by the field of specialization of the instructor and the interest of the students. Not more than six hours of special topics may be used on a degree program.
Credit Hours: 3 hrs Grade Mode: Normal (A-F)
Department Permission isrequired
Prerequisite(s): Six hours of graduate computer science (COSC) courses
A course in design and analysis of algorithms for parallel programming. Sorting, searching, matrix multiplication, graph theory and other fundamental areas of computation are considered for parallel program design.
Coverage of fundamental algorithmic techniques used to solve problems in bioinformatics, relating to DNA sequences, microarrays and evolutionary computations. Also, covers intractability of biological problems, and techniques to deal with intractability.
Selected topics from areas such as concurrent processing, memory management, resource allocation and scheduling, multiprocessing and multiprogramming, protection, performance evaluation and modeling will be covered in depth.
An introduction to the problems, concepts and techniques involved in computer systems that must interface with external devices; computer characteristics needed for real time use, operating system considerations, analog signal processing and conversion, and inter-computer communication. Students will be involved in several laboratory projects involving a mini- or microcomputer system.
COSC 631 - eCommerce and Web Database Infrastructure
This course involves the study of the technical details necessary for building electronic commerce systems and web databases. Such technical details include the operating system, Web and database servers, client/server communications, security issues, audit trails, payment systems and modern Web application programming languages.
An introduction to the major methods of compiler implementation. These include: lexical analysis, LL and LR parsing, semantic analysis and code generation, error detection and recovery, and code optimization. Compiler engineering techniques including portability, validation and the use of automated compiler-writing tools are also studied. Course project will involve implementation of a compiler.
This course teaches the student how to determine clients’ software needs, formally specify operations and data, quantitatively assess risks involved in a software project, estimate resources necessary to create software, coordinate a requirements team, measure and evaluate requirements documents, and investigate current research issues in this field.
A theoretical and practical survey of different reasoning techniques, both classical and nonclassical, and methods for implementing them as computer programs. Topics will include resolution proofs, fuzzy logic, nonmonotonic reasoning, default reasoning and uncertainty measures. Applications will include expert systems.
COSC 663 - Fuzzy Logic and Design of Fuzzy Systems
An applied and theoretical treatment of fuzzy logic concepts. Discrete and continuous representations of fuzzy sets and fuzzy operations. Types of fuzzy reasoning, their computational and logic consistency, and stability in fuzzy systems. Design of fuzzy systems in a variety of case studies such as controllers, traffic simulations, pattern recognition.
Introduction to the theory and practice of automated data discovery and inference over large data sets. Students will implement various automated learning algorithms and learn the impact of inductive bias, overfitting and data representation on these algorithms. Applications covered include information retrieval, genetic sequencing and Web based mining.
A graduate level course in a specific area of computer science to be determined by the field of specialization of the instructor and the interest of the students.
Credit Hours: 1 hr Grade Mode: Normal (A-F)
Department Permission isrequired
Prerequisite(s): 12 hours of graduate computer science courses
A graduate level course in a specific area of computer science to be determined by the field of specialization of the instructor and the interest of the students.
Credit Hours: 2 hrs Grade Mode: Normal (A-F)
Department Permission isrequired
Prerequisite(s): 12 hours of graduate computer science courses
A graduate level course in a specific area of computer science to be determined by the field of specialization of the instructor and the interest of the students.
Credit Hours: 3 hrs Grade Mode: Normal (A-F)
Department Permission isrequired
Prerequisite(s): 12 hours of graduate computer science courses
Working in a software project team, students will develop a large software system, carrying the project through from requirements analysis to acceptance testing. Teams will analyze “live” problems, that is, projects selected for their functionality to the user(s) involved. This is a laboratory course with formal class meetings only for the distribution of projects.
Credit Hours: 3 hrs Grade Mode: Normal (A-F)
Department Permission isrequired
Prerequisite(s): 18 hours of graduate computer science courses
This course covers various techniques for assessing the quality of software. Topics include types of testing techniques, inspection and technical review, complexity measures and test planning, design and execution. An introduction to one or more software testing automation tools will also be covered.
Intensive research into a computer science problem and the preparation of a report consistent in substance and form with the standards of the discipline.
Credit Hours: 1 hr Grade Mode: Normal (A-F)
Department Permission isrequired
Prerequisite(s): 18 hours of graduate computer science courses
Intensive research into a computer science problem and the preparation of a report consistent in substance and form with the standards of the discipline.
Credit Hours: 2 hrs Grade Mode: Normal (A-F)
Department Permission isrequired
Prerequisite(s): 18 hours of graduate computer science courses
Intensive research into a computer science problem and the preparation of a report consistent in substance and form with the standards of the discipline.
Credit Hours: 3 hrs Grade Mode: Normal (A-F)
Department Permission isrequired
Prerequisite(s): 18 hours of graduate computer science courses
An experimental course for subject matter not provided in other departmental offerings. Subject matter will change from semester to semester. Students may elect this course more than once, provided different topics are covered.
An experimental course for subject matter not provided in other departmental offerings. Subject matter will change from semester to semester. Students may elect this course more than once, provided different topics are covered.
An experimental course for subject matter not provided in other departmental offerings. Subject matter will change from semester to semester. Students may elect this course more than once, provided different topics are covered.
An experimental course for subject matter not provided in other departmental offerings. Subject matter will change from semester to semester. Students may elect this course more than once, provided different topics are covered.
An experimental course for subject matter not provided in other departmental offerings. Subject matter will change from semester to semester. Students may elect this course more than once, provided different topics are covered.
An experimental course for subject matter not provided in other departmental offerings. The content will change from semester to semester. Students may elect this course several times, provided different topics are studied. Not more than six hours of special topics may be used on a degree program.
An experimental course for subject matter not provided in other departmental offerings. The content will change from semester to semester. Students may elect this course several times, provided different topics are studied. Not more than six hours of special topics may be used on a degree program.
COT 700 - Introduction to the Interdisciplinary Study of Technology
This course severs as an introduction to the interdisciplinary study of technology by acquainting students with science, technology and society (STS) studies, and with technology philosophies and theoretical paradigms such as social constructivism, scientific rationalism, technological determinism, appropriate technology, technology ethics and socio-technological systems theory. Students will apply these theoretical and analytical concepts to the study of technological systems.
This course exposes students to cutting-edge technological trends and issues in a variety of scientific and industrial fields through reading and guest lectures by campus experts. Students will have an opportunity to conduct in-depth examinations of selected topics presented, and may use this research as an opportunity to identify or refine potential dissertation topics by linking them to the most current research in a given field of study.
In this course, the need for technology planning is conveyed, as it applies to organizations and society. At the organizational level, principles of strategic planning are reviewed, the business strategies of well-known companies are studied and a case is made for the needed linkage between strategic business planning and technology planning. In this course, students are introduced generally to the technology “life cycle” concept, and the importance of planning to effective technology utilization.
The information revolution has granted a myriad of questions pertaining to the relationships between technology, social institutions and the human condition. The purpose of this course is to explore various extant theories that can be utilized as a heuristic guideline for developing a more lucid understanding of the relationships. Two main conceptual frameworks will be examined: Structural-Functionalism and Symbolic Interactionism. Several theories that are extensions of these frameworks will also be examined.
Credit Hours: 3 hrs May not be repeated for credit Grade Mode: Normal (A-F)
Previously listed as COT 704 - Legal and Policy Aspects of New Technologies Last Updated: Change to course title, description, and prerequisites 4/2016, effective Fall 2016
The course studies principles, practices, and management of innovation as applied to the individual, group and organization - academic literature will be referenced. Course content included: design principles and method, group creativity exercises, process for managing intangible assets, and the patent system for both protecting and communicating intellectual property.
Credit Hours: 3 hrs May not be repeated for credit Grade Mode: Normal (A-F)
Previously listed as COT 705 - Technology Design, Development and Transfer Last Updated: Change to title, description, and prerequisite 4/2016, effective Fall 2016; Links 05/2011
COT 709 - Introduction to Statistical Reasoning in Technology
This course will introduce the basic concepts, logic and operations related to statistical reasoning. Topics explored within this class include computing descriptive statistics, probability and statistical inference, hypotheses testing, one-way and two-way analysis of variance, nonparametric testing and linear regression and correlations. The course will also describe how to use the Statistical Package for the Social Science (SPSS) for analyzing data.
Credit Hours: 3 hrs May not be repeated for credit Grade Mode: Normal (A-F)
Last Updated: New Course 11/2012, effective Winter 2013
An application of introductory research methods in technology. Emphasis is on the identification of a technology dissertation topic and committee. Topics include: focusing of research efforts, use of search tools, formulating research questions, identifying alternative qualitative and quantitative methods and planning the research project.
Previously listed as COT 710 - Introductory Research Design and Applied Statistics in Technology Last Updated: Title/Course Description/Prerequisite Change 05/2012, effective Fall 2012
COT 711 - Advanced Research Design and Applied Statistics in Technology
This course is an application of experimental research design and parametric statistics to scholarly inquiry in technology. Emphasis is on the relationships between true and quasi-experimental research designs, methods and associated statistics. Includes multi-variant statistical procedures, such as factor analysis. Students will learn how to transpose qualitative data into quantitative data as well as learning how to utilize various computer programs within qualitative and quantitative research. Utilizes SPSS software.
COT 712 - Qualitative Methods and Research Design in Technology
This course will describe how to use qualitative research methods and designs for conducting technology research. Students will acquire an understanding of the inherent differences between quantitative and qualitative research. Specific qualitative approaches for collecting, coding and analyzing data will be presented. Students will learn how to transpose qualitative data into quantitative data as well as learning how to utilize various computer programs within qualitative research.
This course provides the research methods and guidelines for conducting practical scientific surveys in technological fields of study. The students will learn the techniques, skills, principles, and research activities to conduct an effective survey researching including planning the survey study and designing the instrument to preparing the data for analysis.
COT 715 - Implementing and Managing Technological Change
This course covers the concepts of technology management as a field of study, the rationale for technology introduction, the value of partnership approaches to technology introduction and implementation, the role of organizational culture in contributing to technology success or failure and the importance of training and competency building. Students will study best-practice scenarios, apply the principles learned to case studies and critically analyze technological change practices at their own workplaces or an organization of their choosing.
Graduate students who are completing dissertation research or internship experiences and have completed all other graduate program course requirements may remain affiliated with the University through continuous enrollment. Enrollment enables access to library, health services and other resources. Credit will not apply toward degree completion.
An experimental course for subject matter not provided in other departmental offerings. Subject matter will change from semester to semester. Students may elect this course more than once, provided different topics are covered.
An experimental course for subject matter not provided in other departmental offerings. Subject matter will change from semester to semester. Students may elect this course more than once, provided different topics are covered.
An experimental course for subject matter not provided in other departmental offerings. Subject matter will change from semester to semester. Students may elect this course more than once, provided different topics are covered.