Elective

FUNDAMENTALS OF MACHINE DESIGN

Building on the Engineering Mechanics course, this course introduces students to the fundamental principles of machine design. Topics include analysis and calculation of key metrics like forces, moments, stresses, strains, friction, and kinematics that influence machine design Upon completion, students should be able to analyze machine components and make recommendations on component selections for a particular application.

OPERATING SYSTEMS

This course provides an overview of operating systems, their history and their evolution. It covers the fundamentals of operating system function, design and implementation, and typical problems associated with designing and implementing operating systems. Topics covered in the course include concurrency, memory management, file systems, device management, interrupts, multitasking, deadlocking, scheduling and security

MOBILE APPLICATION DEVELOPMENT

This project-oriented course examines the principles of mobile application design and development. Students will learn application development on the Android platform. Topics will include memory management; user interface design; user interface building; input methods; data handling; network techniques and URL loading; and, finally, specifics such as GPS and motion sensing. Students are expected to work on a project that produces a professional-quality mobile application.

SOFTWARE APPLICATION SECURITY

This course deals with designing and implementing secure system and application software, that is, software that is not vulnerable to malicious attacks. This course addresses application and web server security and the methodologies required to ensure web servers are not vulnerable to security breaches. By the end of the course, students should be familiar with why security is important, what types of vulnerabilities can be present in applications, how they can be exploited, and how to go about developing applications that is sufficiently secure. The course will involve reading technical papers as well as written assignments. The course explains some of the most common security issues involved in the development of software, including secure database access, secure data communications, security of web applications and use of encryption techniques.

MECHATRONICS AND ROBOTICS

Modern practicing engineers encounter an assembly of mechanical, electrical electronic and software components. This is a blend of disciplines that is being called Mechatronics. In order to participate fully in all stages of engineering, from conceptualization to final product design, a working understanding of the capabilities and limitations of mechatronics is essential. This course provides the student an interdisciplinary approach that combines the study of electrical linear circuit analysis with sensors, measurements, and computer control and interfacing. This course also provides an overview of robot mechanisms, dynamics, and intelligent controls.

ENTERPRISE RESOURCE PLANNING

This course provides an overview of Enterprise Resource Planning (ERP) systems, which are essentially software applications that runs all business areas of an organization including accounting and finance, HR, sales and distribution, production, purchasing and inventory. It is cross-functional, process-centered, real time, and based on industry best practices, from service to manufacturing to not-for-profit. It is important that business and systems engineers obtain working knowledge of these systems as in their careers they will be ERP users, auditors, consultants, and/or developers. This course covers ERP theory and practice. Course content includes evolution of ERP systems, business process reengineering, process mapping, the ERP life cycle, ERP functionality, auditing and risk issues.