Software Programming Specialization Courses
In addition to the core coursework you will take as part of your Computer Information Systems degree program, following are courses specific to the Software Programming Specialization. This targeted curriculum provides you with the chance to learn to design user interfaces and graphic elements; code responsive web-based content; and apply animations, videos, and other media used in the creation of websites.
Software Programming Course Descriptions
Software Engineering I
Data Structures and Algorithms
Introduction to Mobile Device Programming
Product, Project, and People Management
Software Engineering II
Programming Languages and Advanced Techniques
CEIS200 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.
CEIS295 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.
CEIS320 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.
CEIS390 Product, Project, and People Management
This course introduces basic concepts of project management in an organization and explores both technical and human aspects of projects. The roles and responsibilities of a project manager and contributions to the management of small projects are covered.
CEIS400 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.
CEIS420 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.