University of Great Falls Logo a Catholic university preparing students for living and making a living

1-800-856-9544

About UGF Learning & Teaching Prospective Students Students Library Parents Alumni & Giving Athletics

Computer Science

Workstudy positions and internships are available. Contact Professor Marshall for more information.

 

 

Welcome to Computer Science at the University of Great Falls

Computer Science at the University of Great Falls emphasizes the hands-on solution of practical problems. Emphasizing real-world skills in Systems Analysis, Database Management, Computer Graphics, Computer Programming, and Networking, the University’s programs uniquely prepare students to function effectively as professionals in many of today’s hottest technological areas. Students who plan to major in computer science should have at least a minimal aptitude for logic as well as an interest in analysis and deduction. Graduates can look forward to employment in industry, business or government, or to continued education at the graduate level.

The University of Great Falls offers a major in Computer Science plus concentrations in three different areas. The major in Computer Science was developed from a model curriculum for professional education and trains students to be programmers, systems analyst, database administrators, and information resource managers, and network administrators. Students in the Computer Science major will learn systems analysis, networking, programming and program design, computer architecture, and the ethical issues inherent in being a computer professional. Students in Computer Science are strongly encouraged to participate in professional societies and in professional certification programs related to computing. University of Great Falls Computer Science students have performed consistently well on professional certifying examinations including those from the ICCP (Institute for Certification of Computer Professionals) and from commercial providers such as Microsoft.

Computer Science Major

Competency Objectives

Students who earn a major in Computer Science will

  • Appraise the structure and organization of popular software development languages.
  • Apply software documentation.
  • Apply software problem solving methods.
  • Apply structured programming principles.
  • Apply software design heuristics.
  • Apply the relational model.
  • Organize systems to make use of logical and physical data independence.
  • Organize data into the 1 st, 2 nd, and 3 rd normal forms.
  • Use keys, foreign keys, secondary keys, primary keys and candidate keys to implement maximally effective data organization.
  • Appraise the phases of the systems design lifecycle.
  • Appraise the role of methodologies in both analysis and design.
  • Show how to use systems analysis tools such as data flow diagramming and data dictionaries.
  • Develop a requirements document.
  • Interpret and appraise ways in which the social, economic, and organizational needs of business entity can be reconciled to the functional characteristics of technology.
  • Evaluate when technological solutions are appropriate and when technological solutions are not appropriate.
  • Appraise different physical network organizations.
  • Appraise the role of protocols in networking.
  • Show how to use the OSI Reference Model.
  • Appraise the various physical components of a network.
  • Appraise the major operating characteristics of different major network operating systems.
  • Appraise the elements of the Von Neumann architecture.
  • Name the characteristics of non-Von Neumann architectures.
  • Discuss how memory is managed inside computer systems.
  • Discuss the workings of interrupt processing and direct memory access.
  • Show how to use elementary machine and assembly language programming.
  • Appraise the social implications of the technology that they use.
  • Appraise the impact that technologies have on personal privacy.
  • Appraise the ethical implications of new technologies.
Course-name and number
CR
CPS 120 - Concepts of Information Processing
3
CPS 201 - Database Fundamentals
3
CPS 210 - Computer Network Fundamentals
3
CPS 234 - Social and Legal Issues in Computing
3
CPS 270 - Introduction to Programming
3
CPS 300 - Systems Analysis and Design
3
CPS 310 - Digital Computer Fundamentals
3
CPS 330 - Operating Systems Theory
3
CPS 370 - Advanced Programming
3
CPS 450 - Advanced Networking
3
CPS 498 - Senior Seminar
3
Approved Electives
3
Total credits for major
33

 

Click here to download your Computer Science degree planning sheet.

 

Computer Science Minor

Competency Objectives

Students who earn a minor in Computer Science will

  • Appraise the structure and organization of popular software development languages.
  • Apply software documentation.
  • Apply software problem solving methods.
  • Apply structured programming principles.
  • Apply the relational model.
  • Organize systems to make use of logical and physical data independence.
  • Appraise the phases of the systems design lifecycle.
  • Appraise the role of methodologies in both analysis and design.
  • Apply use of systems analysis tools such as data flow diagramming and data dictionaries.
  • Evaluate when technological solutions are appropriate and when technological solutions are not appropriate.
  • Appraise different physical network organizations.
  • Appraise the role of protocols in networking.
  • Appraise the various physical components of a network.
  • Appraise the elements of the Von Neumann architecture.
  • Name the characteristics of non-Von Neumann architectures.
  • Discuss how memory is managed inside computer systems.
  • Discuss the workings of interrupt processing and direct memory access.
  • Apply elementary machine and assembly language programming.
  • Appraise the social implications of the technology that they use.
  • Appraise the ethical implications of new technologies.
Course-name and number
CR
CPS 120 - Concepts of Information Processing
3
CPS 201 - Database Fundamentals
3
CPS 210 - Computer Network Fundamentals
3
CPS 234 - Social and Legal Issues in Computing
3
CPS 270 - Introduction to Programming
3
CPS 300 - Systems Analysis and Design
3
CPS 310 - Digital Computer Fundamentals
3
Total credits for minor
21

 

Click here to download your Computer Science minor planning sheet.

 

Computer Networking Minor

Networking provides the backbone for the computer revolution. Networking specialists are increasingly needed to integrate the software and hardware that make geographically diverse computer systems able to communicate. The Networking Concentration will prepare the professional with the background needed in hardware, software, and networking architectures to succeed in implementing small enterprise-scale and large-scale corporate networks – including enterprise scale networks. Students will learn the operating characteristics of both network operating systems and workstation operating systems. Students will learn networking from top-level practitioners in the field. Practical hardware, local area network, and wide area network issues and troubleshooting will be emphasized.

Competency Objectives

Students who earn a minor in Computer Networking will

  • Setup and do maintenance of major workstation operating systems.
  • Appraise how workstation operating systems interact with the network operating system.
  • Integrate different workstation operating systems.
  • Setup and do maintenance of a major network operating system.
  • Configure a server.
  • Apply implementing of network security.
  • Share network resources.
  • Monitor network performance.
  • Appraise setup of network policies.
  • Create user accounts.
  • Appraise how to optimize the operation of networks through segmentation.
  • Appraise how to interconnect segmented networks while maintaining security using trust relationships.
  • Use the functioning of domain name services.
  • Use active directory services.
  • Use routers.
  • Use gateways.
  • Use switches.
  • Appraise the functioning of routers.
  • Use the tools for connecting heterogeneous networks.
Course-name and number
CR
CPS 220 - Desktop Operating Platforms
3
CPS 250 - Server Operating Platforms
3
CPS 275 - Introduction to Router Technologies
3
CPS 320 - Enterprise Networking
3
CPS 375 - Advanced Router Technologies
3
CPS 450 - Advanced Networking
3
CPS 475 - Network Integration
3
Total credits for minor
21

 

Click here to download your Computer Networking minor planning sheet.

 

 

Computer Graphics Concentration

Available only with a major in Art or Computer Science.

Computer graphics are everywhere – from the internet to the latest computer generated images that are part of our movies. The need for trained professionals who can develop graphics, animate them, and integrate them into documents and web pages continues to grow at an astounding rate. The concentration in Computer Graphics will prepare students to work with the latest graphics design and implementation software. Students will learn digital photography, multimedia techniques, web development, desktop publishing, and animation.

Competency Objectives

Students who earn a Computer Graphics Concentration will

  • Appraise the basic operational characteristics of common digital image manipulation software.
  • Appraise the aesthetic considerations inherent in the manipulation of digital images.
  • Appraise the characteristics of different graphical image formats.
  • Appraise the basic operational characteristics of common desktop publishing software.
  • Appraise the aesthetic considerations inherent in designing different kinds of published documents.
  • Comprehend the TWAIN standard.
  • Create animations and integrate them into web products and into other products.
  • Apply how web publishing works.
  • Create multimedia.
  • Program the world wide web using common development tools such as HTML, javascript, and XML.
Course-name and number
CR
CPS 230 - Digital Image Manipulation
3
CPS 233 - Desktop Publishing
3
CPS 346 - Web Programming
3
CPS 361 - Two Dimensional Animation
3
CPS 446 - Advanced Multimedia
3
ART 485 - Career Seminar
OR  
Approved Elective
3
Total credits for concentration
18

 

Click here to download your Computer Graphics concentration planning sheet.

 

Computer Programming Concentration

 

The concentration in Computer Programming prepares students to work as programmers in the modern programming environment. Students will get experience developing programs using the latest tools in C++ and in Visual Basic. As part of learning how to program, students will learn about programming in both procedural and database languages, how to develop desktop applications, how to develop distributed applications in a networked environment, and how to analyze algorithms to come up with the most efficient program. Students will also learn to design, document, and implement modern object-oriented programming solutions.

Competency Objectives

Students who earn a Computer Programming Concentration will

  • Program file applications.
  • Appraise the limitations of different file organizations.
  • Program different common programming algorithms.
  • Evaluate the efficiency of different algorithms.
  • Appraise and program different sorting and searching algorithms.
  • Appraise complex data types and their role in the development of software.
  • Appraise the role of representation in software development.
  • Appraise different types of data structures and the programming environments in which they are used.
  • Program in a common systems programming language.
  • Program in common database management procedural programming languages.
  • Use common database management query languages.
  • Develop distributed applications.
  • Develop desktop applications.
  • Apply flowcharting and pseudo code.
  • Develop software architectures and how these software architectures derive form system and hardware architectures.
Course-name and number
CR
CPS 230 - Digital Image Manipulation
3
CPS 281 - Query Languages
3
CPS 346 - Web Development
3
CPS 366 - Advanced Web Development
3
CPS 371 - Web Database Development
3
Approved Electives
6
Total credits for concentration
21

 

Click here to download your Computer Programming concentration planning sheet.

 

 

Information Technology Minor

Competency Objectives

Students who earn a minor in Information Technology will
  • Use general computer technology terminology and concepts.
  • Use basic operating characteristics of common word-processing, spreadsheet, and database software.
  • Program in common scripting languages to automate advanced functions in spreadsheet and database software.
  • Integrate information between different common applications.
  • Program in common database management, procedural programming languages in common environments.
  • Appraise how to support common applications software.
  • Apply advanced operating characteristics of spreadsheets and database management software.
  • Use the command line interface.
  • Apply hardware support issues.
Course-name and number
CR
CPS 120 - Concepts of Information Processing
3
CPS 201 - Database Fundamentals
3
CPS 205 - Spreadsheet
3
CPS 210 - Computer Networking Fundamentals
3
CPS 325 - Operating Systems File Management
3
CPS 410 - Hardware and Software Configuration
3
Approved elective
3
Total credits for minor
21

 

Click here to download your Information Technology minor planning sheet.

 

 

Course Descriptions

Spring semesters 3 credits CPS 370 Advanced Programming. This course will serve as an advanced course in computer programming including file programming, arrays, algorithms, and data structures. Prerequisite: CPS 270 Expected to be offered: Fall semesters 3 credits

CPS 371 Web Database Development. This course is an examination of the methods used to integrate databases with web applications. Database security in web development will be considered. Prerequisite: CPS 281 Expected to be offered: Sufficient demand 3 credits

CPS 375 Advanced Router Technologies. This course covers advanced router configruations. Topics include LAN switching, network management, and advanced network design. Prerequisite: CPS 275 Expected to be offered: Spring semesters 3 credits

CPS 400 Advanced Systems Design. Emphasizes theories of software engineering. Methods of structured design, hierarchy charts, system flowcharting, modern design methodologies, prototyping, designing for software reliability, methods of systems testing, and systems conversions. Prerequisite: CPS 300 Expected to be offered: Sufficient demand 3 credits

CPS 410 Hardware and Software Configuration. Advanced study of software applications and hardware trouble shooting and design. Prerequisite: CPS 120; CPS 205 or CPS 211 Expected to be offered: Distance Learning: Fall semesters, even years 3 credits

CPS 440 Information Management. An introduction to the concepts and ideas implicit in the management of information systems. Ideas addressed include: long and short range information resource planning, applications portfolios, developing institutional information architectures, budgeting and planning for information resources, and project planning and administration. Prerequisite: CPS 300, Senior standing for Business Majors Expected to be offered: Fall semesters 3 credits

CPS 446 Advanced Multimedia. Creating interactive projects using tools such as Macromedia Director. Prerequisite: CPS 230 Expected to be offered: Fall semesters, odd years 3 credits

CPS 450 Advanced Networking. Advanced look at local area networks. Emphasis on the use, planning, and implementation of Local Area Networks (LAN). Students will gain an advanced knowledge of LAN hardware and software. Emphasis will be placed on LAN architecture and performance considerations. Prerequisite: CPS 120, CPS 210 Expected to be offered: Spring semesters 3 credits

CPS 475 Network Integration. An advanced course that examines the enterprise networking problem of integrating different networking systems and architectures. Emphasis will be placed on the problems that come from the use of heterogeneous networks. Prerequisite CPS 320 Expected to be offered: Spring semesters, odd years 3 credits

CPS 495 Internship. Prerequisite: Consent of instructor Expected to be offered: Sufficient demand 1-15 credits

CPS 498 Senior Seminar. A capstone course that investigates leading edge topics in the field of computer science. Advanced topics in artificial intelligence, software design, database organization, hardware organization, and the social impacts of computers will be considered. Prerequisite: Consent of instructor Expected to be offered: Spring semesters 3 credits

 

Meet Your Professors

     

 

 

 
  Professor Lyndon Marshall   Professor James Croft  

 

 
University of Great Falls, 1301 20th Street South, Great Falls, Montana 59405 • Contact

1-800-856-9544