Parents

UAT ACCREDITATION

AND RECOGNITION

Higher Learning Commission Mark of Affiliation
Committee National Security Systems Department of Homeland Security National Security Agency Central Security Service The Princeton Review Unreal Engine

APPLY NOW!

Our Acceptance Office will notify
you of your acceptance status in
a timely manner after receiving
your completed application.

Apply Now

Program Requirements

REQUIREMENTS FOR THE BACHELOR OF ENTERPRISE SOFTWARE DEVELOPMENT DEGREE

CHECK OUT THIS QUICK OVERVIEW OF THE COURSES THAT LEAD TO A B.S. IN ENTERPRISE SOFTWARE DEVELOPMENT.
YOU CAN COMPLETE YOUR DEGREE IN LESS THAN THREE YEARS.

For more information and details on individual courses, please refer to the current University Course Catalog.

Program Length in Weeks

120

 

Minimum General Education Credits

36

 

Minimum Bachelor’s Core plus Degree-Specific/Elective Credits

84

 

Minimum Total Semester Credits

120

 
 

Within 120 minimum credit hours, the following requirements also apply:

  • Minimum Major Credits: 36
  • Minimum Total 300/400 Level Credits: 40
   

Conceptual/Foundational Courses

Complete 12 credits minimum, including MGT102, CSC102, CSC215, CSC280

CSC102 - Introduction to Programming
Credits: 3.00
Prerequisite(s): None
The purpose of this course is to introduce the fundamentals of computer science and programming to students majoring in this area. Students will become familiar with problem-solving techniques and algorithm development using computers, including a structured high-level programming language. Students will also explore object-oriented programming including the design considerations and conventions used in development of object-oriented applications. Topics will include flow of control, assignment, arrays, functions, and input and output, among others.
CSC202 - C# Programming I
Credits: 3.00
Prerequisite(s): CSC102
C# is a general purpose, object oriented programming language suited for all types of development. This course presents the entire language and gives an introduction to the Base Class Library (BCL) to the student. Students will learn the syntax, keywords and constructs, as well as how to leverage the resources of the BCL. This is a projects-based class and students will develop applications with C# using real world tools and practices.
CSC203 - Java Programming I
Credits: 3.00
Prerequisite(s): CSC102
Java is a general purpose, object oriented programming language suited for all types of development. This course presents the entire language and the standard libraries to the student. Students will learn the syntax, keywords and constructs, as well as how to leverage the resources of the standard libraries. This is a projects-based class and students will develop applications with Java using real world tools and practices.
CSC208 - Intro to Assembly
Credits: 3.00
Prerequisite(s): CSC215
Working in programming goes beyond high-level languages. It is important to understand the internal logic of computers. The objective of this course is to develop primitive programs with assembly and an understanding of concepts like registers, 32-bit microprocessor architecture, assembly language programming, I/O considerations, exception and interrupt handling.
CSC209 - Open Source Programming I
Credits: 3.00
Prerequisite(s): CSC102
This course presents an entire open source programming language and the standard libraries for that language to the student. Students will learn the syntax, keywords and constructs, as well as how to leverage the resources of the standard libraries. This is a projects-based class and students will develop applications with an open-source programming language, using real world tools and practices.
CSC215 - C/C++ Programming I
Credits: 3.00
Prerequisite(s): CSC102
This course provides an introduction to the syntax of C++ as a programming language, as well as an introduction to related concepts in C. Topics include data types, control structures, arrays, pointers, functions, classes, inheritance, virtual functions and polymorphism.
CSC280 - Data Structures I
Credits: 3.00
Prerequisite(s): CSC215, MAT250
This course surveys the specification and implementation of containers as abstract data types (ADTs). Structures covered include strings, vectors, stacks, queues, sequential lists and binary trees. Other topics include running time analysis, recursion, generic programming and dynamic memory management. Object design and object tools are emphasized.
MGT102 - Management in a Technology Environment
Credits: 3.00
Prerequisite(s): None
This course provides an introduction to management principles that specifically apply in contemporary technology environments, applications of management in technology organizations that include the management functions and processes of controlling, decision making, leading, motivating, organizing and communicating. This course will examine working in groups and teams, effective communication and adapting to change.

Skills Development Courses

Complete 12 credits minimum, including MGT215, CSC308, CSC318, CSC350

CSC262 - C# Programming II
Credits: 3.00
Prerequisite(s): CSC202 or CSC203
C# Programming II concentrates on object-oriented principles. Students will learn how to create and integrate class objects. Topics will include the use of inheritance, files access, error handling, collections, user-defined types, events and polymorphism. Student will also create assembly libraries.
CSC263 - Java Programming II
Credits: 3.00
Prerequisite(s): CSC202 or CSC203
This course introduces the advanced principles of object-oriented programming using the Java programming language. Students are introduced to the concepts of developing a business application, including user interfaces, file input and output (both data and text), security considerations and database connectivity.
CSC269 - Open Source Programming II
Credits: 3.00
Prerequisite(s): CSC209
This course focuses on the craft of software and advanced object oriented programming. Students will build upon their previously acquired programming and language fundamentals and develop additional skills essential for crafting high quality and maintainable software. This is a projects-based class and students will apply an open source programming language and real world tools and practices to solve common programming problems involving shared code, user interfaces, multi-threading, file and network I/O, security considerations and relational databases.
CSC275 - C++ Programming II
Credits: 3.00
Prerequisite(s): CSC215
Built upon CSC215, this course explores advanced coding techniques in C++. Topics include interface-based programming, basic data structures, exception handling, advanced algorithms, sockets, templates and the Standard Template Library.
CSC308 - Mathematics and Theory of Computation
Credits: 3.00
Prerequisite(s): CSC215, MAT220, MAT251
This course explores applied mathematical and scientific computing. Topics include discrete math of sets and Boolean logic, linear algebra (matrix manipulation and solution), differential equations (computational modeling of dynamic processes) and numerical methods (iterative approximation, optimization and error-analysis).
CSC318 - Software Engineering Principles
Credits: 3.00
Prerequisite(s): CSC262 or CSC263 or CSC269 or CSC275)
This course introduces the principles of software engineering. Students are introduced to the concepts of requirements development and analysis, scheduling, project estimation, design and development, statistical tracking, as well as testing and verification techniques. This course will involve a smallto- medium- scale software engineering project that will require team effort.
CSC330 - Mobile Platform Software Development
Credits: 3.00
Prerequisite(s): (CSC202 or CSC203) and CSC275
As the smart phone and mobile device market increases, so does the need for mobile platform software developers. This class will focus on the nuances of developing for mobile systems, including topics such as Android and iPhone development environments, GUI design for mobile devices, messaging protocols and application of streaming data ources.
CSC350 - Software Quality Assurance
Credits: 3.00
Prerequisite(s): CSC262, CSC263, CSC269, CSC275
Topics covered in this course include a thorough discussion of the function of the software quality assurance organization of a software development organization. Topics include the use of metrics, auditing, reviews, standards and audit of configuration management. Students will additionally be exposed to techniques associated with developing code that is efficient and secure.
MGT215 - Strategic Planning
Credits: 3.00
Prerequisite(s): MGT102
Business planning or strategic level planning in technology based environments faces specific challenges. This course introduces the student to the basics of creating a strategic plan in light of the unique needs and conditions faced by technology companies. Students will learn the dynamics of improving management and operational structures of the organization.

Synthesis Courses

Complete 12 credits minimum, including CSC413, CSC423, CSC441, MGT322

CSC313 - Operating Systems Theory
Credits: 3.00
Prerequisite(s): CSC382
This course explores operating system structure and services, processor scheduling, concurrent processes, synchronization techniques, memory management, virtual memory, input/output, storage management and file systems.
CSC360 - Artificial Life Programming
Credits: 3.00
Prerequisite(s): CSC382 and (CSC262 or CSC263 or CSC269 or CSC275)
This course provides a survey of programming methodologies that are inspired by living systems. Students will learn about cellular automata, evolutionary algorithms, agent based models, neural networks, and other related topics. This is a projects-based class and students will apply artificial life techniques and develop software using real world tools and practices.
CSC370 - Artificial Intelligence
Credits: 3.00
Prerequisite(s): CSC382 and (CSC262 or CSC263, or CSC269, or CSC275)
This course surveys artificial intelligence (AI) techniques, theories and applications including knowledge representation, searching, expert systems and machine learning. Modern AI research is concerned with producing useful machines to automate human tasks requiring intelligent behavior.
CSC406 - Special Topics in Artificial Life
Credits: 3.00
Prerequisite(s): CSC360
This course provides an in-depth exploration of one area of artificial life programming. The area explored may be cellular automata, evolutionary algorithms, agent based models, neural networks, or another related topic. This is a projects-based class and students will apply artificial life techniques and develop software using real world tools and practices.
CSC413 - Advanced Software Development I
Credits: 3.00
Prerequisite(s): CSC382 and (CSC262 or CSC263 or CSC269 or CSC275)
This course will introduce students to advanced Web 2.0 development using Open Source frameworks. Extensive use will be made of Object to Relational Frameworks to store and retrieve data in relational databases in an efficient fashion. Modern JavaScript frameworks such as Scriptaculous or JQuery will be used. Students will use modern continuous integration techniques using tools such as Maven, NMaven, Continuum, etc.
CSC423 - Data Visualization
Credits: 3.00
Prerequisite(s): CSC262 or CSC263 or CSC269 or CSC275
This course introduces theory and concepts relating to the effective display of data with a focus on quantitative data. Concepts provide the basis for selecting, designing and presenting graphs based on multi-dimensional data. Current tools are used to graph the correct data, alert decision makers to problems and display data geographically.
CSC441 - Business Intelligence
Credits: 3.00
Prerequisite(s): CSC382
Business intelligence focuses on use of information to drive effective business actions. It is the vehicle to achieve maximum business value from both developing and mature data warehouses. This course provides a comprehensive overview of business, technical and cultural implications of business intelligence. It explores a wide range of contemporary issues, including data warehousing and data mining theory and practice, tools and techniques for delivering business intelligence, information and knowledge management, implementation and exploitation of emerging technologies, CRM, process reengineering, supply chain management and geographic information systems.
CSC452 - Compilers
Credits: 3.00
Prerequisite(s): CSC413
The compiler is one of the most important tools that computer scientists utilize. This class explores the inner workings of compilers through hands-on compiler development. Students will design and construct a working compiler from scratch, exploring concepts of programming language grammars, parsing, code generation and code optimization.
CSC453 - Advanced Software Development II
Credits: 3.00
Prerequisite(s): CSC413
This course will extend students’ knowledge of advanced Web 2.0 development using Open Source frameworks. Students will build on their current skills by developing loosely coupled applications using Web Services, integration with current mobile development platforms using both browser-based and native mobile applications. Much focus will be placed on the deployment aspects of application development, including performance monitoring, security issues and application monitoring.
CSC470 - Service Oriented Architecture
Credits: 3.00
Prerequisite(s): CSC413
SOAP is a protocol for exchanging XML-based messages over a computer network, normally using HTTP. SOAP forms the foundation layer of the Web services stack, providing a basic messaging framework on which to build more abstract layers. This course will discuss the design, creation and application of this process.
CSC471 - Parallel Programming
Credits: 3.00
Prerequisite(s): CSC215 and (CSC262 or CSC263 or CSC269 or CSC275)
This course will examine parallel programming techniques needed for multiprocessor shared-memory computer systems. Multi-processor architectures will be studied to illustrate their effect on program efficiency. Messagepassing API, process synchronization and communication using appropriate languages are also applied.
MGT322 - Financial Management in a Technology Environment
Credits: 3.00
Prerequisite(s): MAT174, MGT102
Students will examine the role of risk in financial decision making. Various methods of corporate financing will also be discussed. The student will understand financial markets, interest rates, risk and rates of return. This course discusses the concepts of basic accounting and financial reporting and forecasting germane to a manager.

CORE COURSES: BACHELOR'S DEGREE

university core curriculum

General Education Requirements: BACHELOR'S DEGREE

Minimum 36 total general education credit hours, including:

  • Humanities:
    - Minimum 15 credit hours, including:
    COM226 - Communication in Technology
    Credits: 3.00
    Prerequisite(s): none
    Through the exploration of technology concepts, students will introduce, demonstrate, inform and/or persuade the audience. Effective use of voice, nonverbal skills and visuals will be applied to topics such as robotics, virtual reality, internet speech and privacy, and/or technology ethics. Presentations will be followed by student-led discussions and brainstorming sessions about each technology topic. The art of seeing pros and cons pertaining to controversial concepts will be explored through group discussions. And, students will have the opportunity to create a resume and be formally interviewed for a technology position.
    ENG101 - Composition I
    Credits: 3.00
    Prerequisite(s): ENG060 or placement test
    This course is designed to present effective techniques in organizing, developing and writing academic essays that reflect a collegiate level of writing. The purpose of this course is to help students write correctly, clearly and thoughtfully. Students will receive an introduction to basic writing, thinking and reading skills required for success in college, with emphasis on fluency in analytical, rhetorical, and creative non-fiction presentation.
    ENG102 - Composition II
    Credits: 3.00
    (GE, Humanities)
    Prerequisite(s): ENG101
    ENG102 is designed to introduce students to the essential language, theories and strategies of argumentation and research. The purpose of the course is to provide students with the tools necessary to develop arguments for specific audiences within specific rhetorical situations. Students will also develop their critical reading skills: analyzing, evaluating and critiquing the claims and evidence used by various authors. Finally, students will learn proper research skills and write an in-depth research essay/project.
  • Social Sciences:
    - Minimum 9 credit hours including:
    PSY150 - Psychology of Thinking
    Credits: 3.00
    Prerequisite(s): none
    PSY150 will examine the writings of Pythagoras, the father of formal mathematical thinking; Aristotle’s major works, including his 100-plus tests for the truth of any proposition; and other major thinkers from the classical period to modern times, including Francis Bacon, Galileo and other progenitors
    of the natural and behavioral sciences. The course will close with a survey of living thinkers, including “system thinkers” and a study of the major books by Edward de Bono.
  • Mathematics:
    - Minimum 3 credit hours for Bachelor of Arts
    - Minimum 6 credit hours with 3 credit hours at 200-level or higher for Bachelor of Science
  • Natural and Life Sciences:
    - Minimum 3 credit hours for Bachelor of Arts
    - Minimum 6 credit hours for Bachelor of Science.
  • Advanced exposure requirement:
    Minimum of 12 credit hours at a 300/400 level.
    - These credits require another general education course as a prerequisite, and represent a topical extension of prior general education studies