Division of Computer Science
Website: https://twu.edu/computer-science/
Location: MCL 302
Phone: 940-898-2718
Fax: 940-898-2179
E-Mail: cs@twu.edu
The Division of Computer Science provides programs that culminate in the awarding of Bachelor of Science and Master of Science degrees.
Undergraduate Degrees Offered
- Minors
- B.S. in Computer Science
- B.S. in Computer Science (Cyber Security)
- B.S. in Health Informatics (Clinical Applications)
- B.S. in Health Informatics (Health Studies)
- B.S. in Data Science & Informatics (Community Informatics)
- B.S. in Data Science & Informatics (Data Science)
- Accelerated B.S. in Data Science & Informatics (Data Science) / M.S. in Data Science & Informatics (Data Science)
Computer Science
The baccalaureate program in Computer Science or the dedicated program in Computer Science with a Cybersecurity emphasis is intended to prepare the student for further work in computer science at the graduate level, for employment as a computer scientist, or for employment in a computer science-related area in industry or government.
Data Science and Informatics
The baccalaureate program in Data Science and Informatics and the program in Health Informatics prepare students for graduate study in Data Science and Informatics-related disciplines or for employment in high-demand areas such as data analytics, business, and healthcare informatics. With an adaptable, interdisciplinary, and inter-professional approach, the two programs are offered in a hybrid learning environment. The program is delivered collaboratively by academic components, including Computer Science, Nursing, Health Studies, Kinesiology, and Library and Information Studies.
Special Requirements
Students seeking a baccalaureate in Computer Science must complete a minor of at least 18 semester credit hours, including a minimum of 6 upper-division credits. Within this academic framework, two equally rigorous paths are available: a general minor drawn from any of the university's offerings, or a dedicated Cybersecurity track that integrates specialized cybersecurity coursework with the foundational Computer Science curriculum. Within an academic framework that emphasizes scholarly excellence and diverse specialization, Data Science and Informatics majors choose from three distinct minor tracks-Data Science, Cybersecurity, or Community Informatics. Similarly, Health Informatics majors enhance their study by selecting a minor in either Clinical Applications or Health Studies.
Only courses in which a grade of C or higher is received may be counted as part of a Computer Science, Data Science and Informatics, or Health Informatics major/minor.
Admissions
All applicants must meet the general undergraduate admission requirements. The following degrees have additional secondary admission criteria:
Policies
Academic Policies
The following policies apply to students enrolled in courses or degree programs in the Division of Computer Science:
- A minimum grade of C is mandatory in all major and departmental requirement courses for Computer Science majors. If a student earns a grade of D, F, or W in a required course, the student must repeat the course and earn at least a C.
- A student who earns a grade of D, F, or W in a course in the Division of Computer Science may not progress to courses for which that course is a prerequisite. Instead, the student must repeat the prerequisite course and earn at least a C.
- Once enrolled as a student at Texas Woman's University, Computer Science majors must complete upper-level (3000 and 4000 level) major and departmental requirement CSCI courses at Texas Woman's University.
- The Division of Computer Science will not approve a schedule override for courses with a schedule conflict.
Student Conduct
A university degree is a major professional accomplishment, and as such, the Division of Computer Science expects students to conduct themselves as future professionals. Students are expected to:
- Maintain good attendance.
- Attend and engage in class. Repeat absences will negatively impact student learning and course grades.
- Arrive to class on time and remain in class until the end of the scheduled time or until the instructor has signaled that class activities are concluded, whichever occurs first.
- An instructor is not obligated to re-teach class material during lecture or office hours to students who arrive late or do not attend class, regardless of the reason.
- Invest 2-3 hours of preparation outside of class time per credit hour. For example, for a 3-credit course, expect to spend 6-9 hours per week studying outside of class.
- Display a positive and respectful attitude to faculty, staff, and other students according to the university’s guidelines on civility.
- Complete work with honesty and integrity. Violations of academic integrity will be reported to the university.
- Follow university and class syllabus policies and procedures when dealing with problems or issues. The syllabus functions as a contract between faculty and students regarding the policies for a course.
- Represent the Division of Computer Science and TWU in a professional and responsible manner.
These policies are in addition to the state of Texas and university academic policies listed in the TWU Catalog. Exceptions will be considered on a case-by-case basis and are rarely granted.
Faculty
Asterisk (*) denotes Graduate Faculty status.
Courses
Contact hours identified in the course descriptions are based on a 15-week term. Students who enroll in Summer or mini-terms are expected to meet the same total number of contact hours as a 15-week term.
CSCI 1203. Computing Skills for a Digital World. (TCCN COSC 1301) Computer systems, their structure, operating systems (OS), and applications; internet and the World Wide Web; and the current state of technology and implications for the future. Software packages, such as: word processing, presentation software, spreadsheets, graphics, and databases. Does not apply to a major in computer science. Three lecture hours a week. Credit: Three hours.
CSCI 1421. Programming Fundamentals I - Laboratory. This lab serves as the practical component to the co-requisite course CSCI 1423, providing hands-on applications to support the learning of fundamental programming concepts and software development methodologies discussed in the lecture. Co-requisite: CSCI 1423. Two laboratory hours a week. Credit: One hour.
CSCI 1423. Programming Fundamentals I. (TCCN COSC 1436) Introduction to the fundamental concepts of structured and Object Oriented programming. Topics include software development methodology, data types, control structures, functions, arrays, files, classes, program testing and debugging techniques. Co-requisite: CSCI 1421. Three lecture hours a week. Credit: Three hours.
CSCI 1513. Introduction to Data Science and Informatics. Survey of fundamentals of data science and informatics components: people, information, and technology. Topics include user-centered data collection and information generation, impact of technologies in people's lives, security and ethics issues, and interprofessional applications such as healthcare, nursing, and business analytics. Prerequisite: Computer literacy. Three lecture hours a week. Credit: Three hours.
CSCI 2003. Software Systems Design and Tools. Systematic study of program design, development techniques, and programming tools. Use of command-line interface, build-management tools, and version-control systems. Software system design methods and tools, web-based interface design, and web-based database access and implementation. Students majoring in Computer Science, Informatics, or Health Informatics may not count this course in their program if they have taken CSCI 2493. Prerequisite: Permission of instructor. Three lecture hours a week. Credit: Three hours.
CSCI 2443. Computer Organization and Machine Language. (TCCN COSC 2425) Basic theory of computer organization. Reviews of the mechanism of the machine cycle, digital representation of data and instructions. Introduction to assembly (machine) language, assemblers, loaders, macros, subroutines, and linking. Prerequisite: CSCI 1423. Three lecture hours a week. Credit: Three hours.
CSCI 2493. Programming Fundamentals II. (TCCN COSC 1437) Advanced topics include object oriented problem solving, software design, methodology and development; introduction to basic principles of algorithm analysis and design, searching and sorting techniques, recursion. GUI design and development, data structures and software engineering. Prerequisites: CSCI 1421 and CSCI 1423. Three lecture hours a week. Credit: Three hours.
CSCI 2513. Information Security and Ethics. Security and ethical issues important to informatics professionals. Emphasizes ethical decision-making, legal and social responsibility, and security threats and countermeasures. Topics include information security, ethics, limits, and effects of computing in informatics fields. Prerequisite: Computer literacy. Three lecture hours a week. Credit: Three hours.
CSCI 3002. Advanced Computing Technology. Advanced study of integrated computing technologies within a project-oriented, real-world environment. Exploration of client/server architectures, distributed computing systems, and database-driven application development. Includes the design and implementation of interactive, network-based solutions using contemporary programming paradigms and data-intensive frameworks. One lecture and two laboratory hours a week. Credit: Two hours.
CSCI 3013. Applied Computational Thinking. Application and programming of software to engage computational thinking approaches to scientific processes: understanding what can be computed and its use to solve, model, analyze, and visualize problems scientifically. Explore a broad array of programming and software tools to create and modify models. Three lecture hours a week. Credit: Three hours.
CSCI 3053. Data Structures. Introduction to the representation of information; data objects, classes, and structures; string processing; searching and sorting; stacks and queues; hash coding; lists, trees, and manipulation of data structures. Prerequisites: CSCI 2493. Three lecture hours a week. Credit: Three hours.
CSCI 3103. Applied Computer Graphics. Evaluation and use of 2D and 3D graphics software for presentations and visualization; study of computer animation and programming techniques for use in Web-based applications and in computer games; analysis of file structures used for computer graphics images and methods of acquiring and manipulating graphic images. Prerequisite: CSCI 2493 or CSCI 2003. Three lecture hours a week. Credit: Three hours.
CSCI 3113. Fundamentals of Statistical Programming. Use of Statistical Programming to generate queries and reports, to access local data sources, to create user-defined data formats, to generate descriptive statistics and tabular reports. Reviews elementary programming techniques to solve problems related to data analysis, list reports, t-test, ANOVA, regression analysis, data clustering, and data mining. Prerequisite: MATH 1713 or equivalent. Three lecture hours a week. Credit: Three hours.
CSCI 3313. App Development for Mobile Devices. Overview of mobile application development using a range of technologies including software developers' kits, object-oriented programming, and mobile interaction design principles. Prerequisite: CSCI 2493 or CSCI 2003. Three lecture hours a week. Credit: Three hours.
CSCI 3323. Robotics Design and Development. Basic concepts of robotics including kinematics, localization, motion planning, and sensors. Prerequisite: CSCI 2003 or CSCI 2493. Three lecture hours a week. Credit: Three hours.
CSCI 3353. Interactive Digital Art. Exploration of microcontrollers and computers as tools for interactive artistic expression; investigation of technical issues, programming, and the use of sensors and other input to create audience interfaces; and examination of conceptual issues related to current work in the field of Emergent Media. Three lecture hours a week. Credit: Three hours.
CSCI 3373. Geographic Information Systems. Configuration, usage, and management of geographic information systems to gather, process, interpret, visualize, and contextualize data from varied disciplines. Topics include API usage, visualization, scripting, data processing and analysis, web and mobile access, and presentation. Prerequisite: CSCI 2003 or CSCI 2493. Three lecture hours a week. Credit: Three hours.
CSCI 3413. Software Engineering. Introduction to the concepts, principles, and design issues in software engineering. Planning, designing, creating, testing, and maintaining efficient and robust software systems. Modeling and simulation of systems in organizations and systems flow charting. Prerequisite: CSCI 3053. Three lecture hours a week. Credit: Three hours.
CSCI 3423. Database Management. Organization and retrieval techniques for computer-based information systems, techniques of design, implementation, and utilization of database management systems. Prerequisite: CSCI 2003 or CSCI 2493. Three lecture hours a week. Credit: Three hours.
CSCI 3441. Digital Logic and Computer Architecture - Laboratory. A laboratory course providing hands-on experience and practical applications to support the learning of digital logic, number systems, and computer architecture concepts discussed in the co-requisite course, CSCI 3443. Co-requisite: CSCI 3443. Two laboratory hours a week. Credit: One hour.
CSCI 3443. Digital Logic and Computer Architecture. An introduction to the concepts of digital logic, number systems, and codes. Digital circuit design, combinatorial logic design, decoder, multiplexers, adders, sequential design of flip-flops, latches, counters, and shift registers. Elements of CPU arithmetic, architecture, and instruction sets provide the basic concepts associated with computer architecture. Prerequisite: CSCI 2443 or equivalent, and advanced standing. Co-requisite: CSCI 3441. Three lecture hours a week. Credit: Three hours.
CSCI 3503. Operating Systems. Computer system and operating system architectures, processes, inter-process communication and synchronization, mutual exclusion, deadlocks, memory, CPU scheduling, file systems, I/O device management, and security. Prerequisite: CSCI 2443 or CSCI 2493. Three lecture hours a week. Credit: Three hours.
CSCI 3513. Information Systems Project Management. Technical and behavioral aspects of information systems project management. Topics include the knowledge areas, standards, processes, and professional responsibility as established by the Project Management Institute (PMI), and their application in managing informatics projects. Prerequisite: CSCI 1513 or CSCI 1423, or equivalent. Three lecture hours a week. Credit: Three hours.
CSCI 3603. Data Science and Analytics. Data science and analytics concepts including data management, data manipulation, data analysis techniques, decision making from rich data sets, information visualization, data mining, and machine learning/Artificial Intelligence. Programming, data manipulation, and modeling software. Prerequisites: CSCI 3423 and MATH 1713, or equivalents. Three lecture hours a week. Credit: Three hours.
CSCI 3613. Algorithm Analysis and Design. Techniques for design of efficient algorithms and their performance. Design of algorithms that operate on common data structures including sorting and searching. Advanced design and analysis techniques and advanced graph algorithms. Prerequisite: CSCI 3053. Three lecture hours a week. Credit: Three hours.
CSCI 3703. Interface Design and Development. Design, development, and evaluation of computer/technical device user interfaces in their various forms. Usability, accessibility, efficiency, transferability, and maintainability. Theory, practice, and discipline-grounded applications. Prerequisite: CSCI 2003 or CSCI 2493. Three lecture hours a week. Credit: Three hours.
CSCI 3713. Fundamentals of Cryptography. Basics of cryptographic techniques used in computer security. History of cryptography, symmetric and asymmetric encryption systems, message integrity, digital signatures, and hiding information in images. Prerequisite: CSCI 2513. Three lecture hours a week. Credit: Three hours.
CSCI 3803. Website Development. Introduction to the creation and development of websites with markup languages, styles, scripting languages, and dynamic content; includes multimedia, forms, adaptive page layout, navigation, and content. Web authoring software. Site architecture, screen, and page layout. Site navigation, color templates, and frontend technologies. Prerequisite: CSCI 2003 or CSCI 2493. Three lecture hours a week. Credit: Three hours.
CSCI 4303. Advanced Modeling and Visualization. Exploration of the techniques and algorithms used in the data modeling and visualization process. Applications of visualization tools and software. Prerequisites: CSCI 2003 or CSCI 2493. Three lecture hours a week. Credit: Three hours.
CSCI 4311. Seminar in Computer Science. Capstone course. Compilation of a professional portfolio, completion of a multifaceted project on a current issue in or application of computer science, development of skills in defining problems and opportunities, and generation of strategies and solutions for those problems. Requires a written component, an oral presentation of project, and an exit exam. Prerequisite: 24 hours of coursework in computer science or permission of instructor. One seminar hour a week. Credit: One hour.
CSCI 4313. Networking and Data Communication. Introduction to hardware, software design, and protocols used in networking and data communication. Depending on emphasis, topics will be selected from architectures, OSI Reference Models, transmission media, software design, LANs, performance modeling, and other related subjects. Prerequisite: CSCI 2003 or CSCI 2493. Three lecture hours a week. Credit: Three hours.
CSCI 4343. Digital Forensics. Methods of investigation, information acquisition, and management of Internet and computer forensics. Record-searching, note taking and report writing, and use of scientific methodology in Cyber investigations. Tools and techniques for forensic analysis of computers, networks systems, and mobile devices. Prerequisite: CSCI 3423. Three lecture hours a week. Credit: Three hours.
CSCI 4353. Advanced Interactive Digital Art. Advanced development of interactive digital art technologies in terms of artistic concepts, physical presentation, and the use of electronic components and code; involves iterative development of participatory work for public exhibition; teaches organizational and leadership skills for working in creative teams. Prerequisite: CSCI 3353. Two lecture and two laboratory hours a week. Credit: Three hours.
CSCI 4463. Ethical Hacking and Systems Defense. Technical study of offensive and defensive techniques for protecting cyber assets. Security testing, risk mitigation techniques, and threat response. Penetration testing theory, techniques, and tools; network, systems, and application vulnerability scanning; risk analysis and response; and intrusion detection and response. Prerequisites: CSCI 3423 and CSCI 4313. Three lecture hours a week. Credit: Three hours.
CSCI 4483. Digital Trust and Privacy. Digital trust concepts built upon new technologies such as cryptography, distributed systems, and blockchain. Potential impacts on financial services, government, contracting, identity management, and other applications. Prerequisite: CSCI 3713. Three lecture hours a week. Credit: Three hours.
CSCI 4513. Data Warehousing. Concepts, principles, and tools for designing, implementing, and using data warehouses. Includes constructs such as operational data store (ODS), data warehouse, data mart, and their components. Roles and responsibilities in the design and implementation of a data warehouse; management guidelines and techniques; requirements gathering; dimensional modeling; Extract, Transform, and Load (ETL) architecture; data management; security; analytical reporting concepts; and recent trends in the data warehouse domain. Prerequisite: CSCI 3423. Three lecture hours a week. Credit: Three hours.
CSCI 4533. Trends and Issues in Computer Science. Focuses on contemporary issues in computer science by addressing the current designs in both software and hardware. Topics of specialized nature in Computer Science, Informatics, and Data Science. May be repeated for credit. Three lecture hours a week. Credit: Three hours.
CSCI 4623. Big Data and High Performance Computing. Big data, the challenges its analysis presents, the role of high performance computing in big data analytics, and the distributed frameworks and scalable data management strategies used in big data scenarios. Exploration of case studies in varied application domains. Prerequisites: CSCI 3423 and computational analytics software knowledge. Three lecture hours a week. Credit: Three hours.
CSCI 4723. Machine Learning and Artificial Intelligence. Theories and algorithms of machine learning and artificial intelligence, with emphasis on how they are used to solve real world problems from diverse application areas. Searching, knowledge representation and reasoning, machine learning algorithms, and rule-based systems. Prerequisite: CSCI 3053 or CSCI 4823. Three lecture hours a week. Credit: Three hours.
CSCI 4803. Programming for the Web. Creation and development of websites with scripting and programming languages focusing on backend technologies to generate dynamic content; application of structured and Object-oriented programming principles, design, implementation, testing, and evaluation techniques. Prerequisites: CSCI 3803 or equivalent. Three lecture hours a week. Credit: Three hours.
CSCI 4823. Principles of Data Mining. Methodologies, technologies, mathematics, and algorithms of data mining; nontrivial extraction of implicit, previously unknown, and potentially useful information from data; analysis of algorithms which merge knowledge from statistics, machine learning database, and computer science; and application to real data sets. Prerequisites: CSCI 2003 or CSCI 2493, and Statistical software knowledge. Three lecture hours a week. Credit: Three hours.
CSCI 4903. Special Topics. Variable content in computer science. Three lecture hours a week. Credit: Three hours.
CSCI 4911. Independent Study. Individual study in computer science. Credit: One hour.
CSCI 4913. Independent Study. Individual study in computer science. Credit: Three hours.
CSCI 4923. Capstone in Interprofessional Informatics. Culminating organization and/or community-based interdisciplinary/interprofessional project supported through informatics and technology and applied to a specific domain to demonstrate knowledge and skills acquired in the informatics or health informatics program. Prerequisite: Completion of all but the last 24 hours (SCHs) of the program and permission of instructor. Credit: Three hours.
CSCI 4951. Internship. Cooperative work-study arrangement between business, industry, or selected institutions with the University. 3 practicum hours a week. Credit: One hour.
CSCI 4953. Internship. Cooperative work-study arrangement between business, industry, or selected institutions with the University. Nine practicum hours a week. Credit: Three hours.
CSCI 4956. Internship. Cooperative work-study arrangement between business, industry, or selected institutions with the University. Eighteen practicum hours a week. Credit: Six hours.