Curriculum
The Application Development Bachelor of Applied Science (AD B.A.S.) degree focuses on four major concepts: web application development, cloud computing, mobile application development, and data science.
Each major topic includes a practicum, where students apply the concepts learned in class to build larger group-based projects. These include an MVC-based web application, a native mobile application and a cloud-hosted service.
All students are required to complete either an internship or capstone project to provide more real-world professional experience as part of the AD B.A.S. degree requirement.
Additional courses include software lifecycle, discrete math for computer science, and project management. All classes are five (5) credits.
Non-matriculated students can take AD courses upon faculty and program manager approval. Contact program manager if interested. Please note that AD courses are non-transferable courses and follow the upper division tuition chart.
AD 300 Component Software
This course focuses on object-oriented programming using Java with an emphasis in the creation and use of software components. It also presents other programming concepts such as reusability, the model-view-controller (MVC) design pattern, elementary data structures (linked lists, binary trees), recursion, and algorithmic analysis using Big-O notation.
Prerequisite: Program entry.
D 315 Discrete Math for Computer Science
This course provides hands-on application of the (abstract) discrete structures that constitute the backbone of computer science.
Topics shall include: numerical representation and limitations for numerical methods, discretization, discrete probability, finite-state machines. Other topics may be included at instructor discretion. Topics shall be explored within the context of student-written application programs.
Prerequisite: AD 300 or CSC 143.
AD 320 Web Application Development
This is an intermediate course in developing a database-driven Web application incorporating MVC patterns. The course covers state maintenance, CRUD and REST integration on both server and client side. Students parse, cache and integrate API data achieved by third party providers into their application. Technologies can include jQuery, CURL, AJAX and parsing JSON and XML. Students explore legal and ethical issues that are specific to the Web application environment, such as security and privacy of information and how Web applications bring benefits as well as unintended consequences.
Prerequisite: Program entry.
AD 325 Data Structures and Algorithms
This course covers fundamental data structures and their algorithms and applications in problem solving by programming. Includes linked lists, stacks, queues, priority queues, binary and multi-way trees, directed graphs, hashing, and internal and external sorting.
Prerequisite: Component Software (AD 300).
AD 340 Mobile Application Development
This course introduces students to the fundamentals of mobile application development, both in terms of native and Web applications. Students incorporate REST-based services and integrate location aware third party APIs and mapping tools to build device agnostic applications. Students explore legal and ethical issues that are specific to the mobile environment, such as security and privacy of information, and how mobile apps can bring benefits as well as unintended consequences.
Prerequisite: Program entry.
AD 350 Relational Database Technology
This course covers intermediate programming in a relational database. The course provides an introduction to non-relational databases as used in Cloud Computing and Big Data. The RDMS topics include stored procedures, triggers, indexing and abstraction techniques, query construct efficiency. Compare and contrast RDMS to noSQL databases: uses, terminology, indexing, storage, compute consumption, ROI, reliability.
Prerequisite: Program entry.
AD 400 Project Management in Software Development
This course provides a comprehensive overview of current processes, practices and tools used to manage software development projects. Using a combination of case studies and projects, students apply best practices for planning, organizing, scheduling, and controlling software projects. Emphasizes legal and ethical issues that relate to project management.
Prerequisite: Program entry.
AD 410 Web Applications Practicum
In this course students work in teams to create an MVC-based Web application. Students store and share code via a software versioning system and utilize small team agile strategies. Students write requirements documents, build the application in stages, and integrate components into a larger group project. During the practicum, students discuss legal and ethical issues that relate to working in a diverse and technical collaborative environment, and issues that are specific to Web application development and software lifecycle.
Prerequisite: Web Application Development (AD 320).
AD 420 Cloud Computing/Software as Service
This course introduces students to the fundamentals of cloud computing, both in terms of software as a service (SaaS ) and infrastructure as a service (IaaS). Students learn tools and strategies to build Web applications based on cloud services, integrate third party APIs and integrate big data tools such as predictive analytics. Students explore legal and ethical issues that are specific to the cloud computing environment, such as security, integrity and privacy of data; and continuity of service.
Prerequisite: Web Application Development (AD 320) and Data Science Development (AD 450).
AD 430 Mobile Application Practicum
In this course students work in teams to create a native mobile application. Students store and share code via a software versioning system and utilize small team agile strategies. Students write requirements documents, build the application in stages, and integrate components into a larger group project. During the practicum, students discuss legal and ethical issues that relate to working in a diverse and technical collaborative environment, and issues that are specific to mobile application development and implementation.
Prerequisite: Mobile Application Development (AD 340).
AD 440 Cloud Computing Practicum
In this course students work in teams to create cloud-hosted applications. Students store and share code via a software versioning system and utilize small team agile strategies. Students write requirements documents, build the application in stages, and integrate components into a larger group project. During the practicum, students discuss legal and ethical issues that relate to working in a diverse and technical collaborative environment, and issues that are specific to the cloud computing environment.
Prerequisite: Cloud Computing.
AD 450 Data Science Development
Fundamentals of data science course with topics that include data wrangling, visualization, exploratory data analysis, and machine learning. Students will gain hands-on data science experience with Python or R. AD450 is the first of a two-course sequence.
Prerequisite: AD325 Data Structures and Algorithms
AD 470 Data Science Practicum
This course is the second of the two-course sequence. Students integrate and apply the data analytics skills they have learned in Data Science Development course (AD450) to conduct real-world data science projects. In the projects, students engage in processing real-world data, using a variety of visualization tools and applying appropriate data analytics models. Students conclude the projects with presenting key insights and findings.
Prerequisite: AD 450 Data Science Development
AD 490 Internship – or – Capstone
Provides practical work experience and employment contacts by integrating academic studies with actual on-the-job training situations. Orientation to internships required prior to registration. Students produce a major project that responds to a client problem or request. Students can work in teams or carry out an individual project as an intern/extern. Select and work closely with industry mentors. Emphasis on research, accuracy, technology skills, timeliness, teamwork, professional ethics, quality, client/customer satisfaction and usability.
Prerequisite: Faculty permission.