REQUEST INFO

  


Software Programming Specialization Courses

In addition to the core coursework you will take as part of your Computer Information Systems degree program, the following are courses specific to the Software Programming Specialization. This program is anchored with Tech Core, curriculum designed with hands-on learning experiences to give you a relevant skillset and a solid foundation in technology – preparing you for today’s IoT economy.  

Software Engineering I

Data Structures and Algorithms

Introduction to Mobile Device Programming

Software Engineering II

Programming Languages and Advanced Techniques

Software Engineering I

This course applies tools that are typical of software engineering settings and explores requirements; design; testing; metrics; process improvement; quality assurance; software configuration management, maintenance, and release, as well as ethics.  

Data Structures and Algorithms

This course introduces structures that allow efficient organization and data retrieval, frequently used algorithms, and basic techniques for modeling, as well as understanding and solving algorithmic problems. Arrays and linked lists; hash tables and associative arrays; sorting and selection; priority queues; sorted sequences; trees; graph representation; graph traversal; and graph algorithms are covered.  

Introduction to Mobile Device Programming

This course introduces mobile operating systems programming. Students explore the Android and the iOS operating systems with the goal of creating an application for one of these systems. Topics include menu systems, user interfaces, 2D graphics, and audio.  

Software Engineering II

This course emphasizes best practices in the implementation phase of the software development life cycle (SDLC). Application software engineering techniques are reinforced using UML/OOAD and project management skills covered in CEIS200 to an application-oriented team project based on a business scenario. The project provides real-world experience by integrating software engineering practices focusing on programming, testing, and other implementation activities to deliver a product that meets approved specifications through lab assignments.  

Programming Languages and Advanced Techniques

Students focus on programming language concepts and design principles of programming paradigms (imperative, functional, object-oriented and logical). Topics include a history of programming languages, data types supported, control structures, and run-time management of dynamic structures.  

The courses above are specific to the specialization in Software Programming. Please visit the academic catalog for a complete list of degree program coursework, pre-requisites, and general education requirements needed to complete this degree program.