• Contact Info

Montgomery, Bruce Ray, Jr.

Asst Professor Adjunct

Positions

Teaching

courses taught

  • CSCI 4448 - Object-Oriented Analysis and Design
    Primary Instructor - Spring 2019 / Fall 2019 / Spring 2020 / Fall 2020 / Summer 2021 / Fall 2021 / Spring 2022 / Summer 2022 / Fall 2022 / Spring 2023 / Summer 2023
    An applied analysis and design class that addresses the use of object-oriented techniques. Topics include domain modeling, use cases, architectural design and modeling notations. Students apply the techniques in analysis and design projects. Same as CSCI 5448.
  • CSCI 5040 - Professional Masters Project 1
    Primary Instructor - Fall 2020 / Fall 2021 / Fall 2022
    First class in a two semester cycle. Focuses on applied best practice in all facets of software engineering in industry and the application of those practices. Students are part of a development team involved in a two-semester project. Each student has a specific role on the project, and all will be responsible for some level of actual software development. The first semester focuses on design, requirements, and prototyping and is based on common waterfall project practices with gate reviews and project artifacts. Testing, soft skills for teamwork, project management, and other supporting aspects will be driven throughout the semester. The outcome of the two-semester cycle is a final project delivery of a software product for an institutional or industrial partner and/or for entry into software development competitions.
  • CSCI 5050 - Professional Masters Project 2
    Primary Instructor - Spring 2021 / Spring 2022 / Spring 2023
    Second class in a two-semester cycle. Focuses on applied best practice in all facets of software engineering in industry and the application of those practices. Students are part of a development team involved in a two-semester project. Each student has a specific role on the project, and all will be responsible for some level of actual software development. The second semester focuses on development, code construction, and delivery, using agile-based project management for development. Students work in both Scrum and Kanban agile project cycles. Testing, soft skills for teamwork, project management, and other supporting aspects will be driven throughout the semester. The outcome of the two-semester cycle is a final project delivery of a software product for an institutional or industrial partner and/or for entry into software development competitions.
  • CSCI 5448 - Object-Oriented Analysis and Design
    Primary Instructor - Spring 2019 / Fall 2019 / Spring 2020 / Fall 2020 / Summer 2021 / Fall 2021 / Spring 2022 / Summer 2022 / Fall 2022 / Spring 2023 / Summer 2023
    An applied analysis and design class addressing the use of object-oriented techniques. Topics include domain modeling, use cases, architectural design and modeling notations. Students apply the techniques in analysis and design projects. Same as CSCI 4448.
  • CSCI 6930 - Professional Internship
    Primary Instructor - Fall 2021 / Spring 2022 / Summer 2022 / Fall 2022 / Spring 2023 / Summer 2023
    This class provides a structure for CS graduate students to receive academic credit for internships with industry partners that have an academic component to them suitable for graduate-level work. Participation in the program will consist of an internship agreement between a student and an industry partner who will employ the student in a role that supports the academic goals of the internship. Instructor participation will include facilitation of mid-term and final assessments of student performance as well as support for any academic-related issues that may arise during the internship period. May be taken during any term following initial enrollment and participation in CS graduate programs.
  • ECEA 5346 - Embedded Interface Design: User Exp I/F Design for Emb Sys
    Primary Instructor - Fall 2020 / Spring 2021 / Summer 2021 / Fall 2021 / Spring 2022 / Summer 2022 / Fall 2022 / Spring 2023 / Summer 2023 / Fall 2023 / Spring 2024
    An introduction to usability and user experience (UX) design methods for embedded devices. UX methods are presented for user analysis, planning, research, design, and verification with discount and formal UX processes. Includes specifics on embedded interface components, human factors and cognitive psychology, applied UX tools for wireframes, sketches, testing, surveys. Includes practical design, programming exercises in Python, QT, Node.js, HTML.
  • ECEA 5347 - Embedded Interface Design: Rapid Prototyping Emb I/F Designs
    Primary Instructor - Fall 2020 / Spring 2021 / Summer 2021 / Fall 2021 / Spring 2022 / Summer 2022 / Fall 2022 / Spring 2023 / Summer 2023 / Fall 2023 / Spring 2024
    Presents methods, practices for rapid prototyping embedded interfaces for devices, systems, people. Introduces applied lean, UX methods for design decisions in the prototype cycle. Specific focus on using cloud-based services to prototype key system elements. Examines best practices for device data, wearables, voice user interfaces, connected product designs. Includes practical IoT-style development with programming in Python, Node.js, Amazon Web Services.
  • ECEA 5348 - Embedded Interface Design: M2M, IoT I/F Design & Protocols
    Primary Instructor - Spring 2021 / Summer 2021 / Fall 2021 / Spring 2022 / Summer 2022 / Fall 2022 / Spring 2023 / Summer 2023 / Fall 2023 / Spring 2024
    Study protocols and design practices for Machine to Machine (M2M) and Internet of Things (IoT) communications between embedded devices. Includes low-level, personal and local area network, IoT application, and low-power wide area network protocols. Also examines message queueing, API design, and cloud connectivity approaches. Programming exercises introduce Python, Node.js, and Amazon Web Services for learning interface and integration design methods.
  • ECEN 5053 - Special Topics
    Primary Instructor - Fall 2018
    Examines a special topic in Electrical, Computer and Energy Engineering - Embedded Engineering. May be repeated up to 9 total credit hours. Same as ECEN 4053.
  • ECEN 5783 - Embedded Interface Design
    Primary Instructor - Fall 2019 / Spring 2021
    This course deeply explores interface design approaches and architectures for creating embedded system prototypes and products. For both machine and user interfaces, we will examine best practices for the interface design process, including considerations of characteristics of the information to be transferred between devices or between a device and a user. Projects leverage the now standard Raspberry Pi 3 single-board computer (SBC), providing a strong foundation for exploring many elements of interface design. Recommended prerequisites: knowledge of programming, particularly Python, ECEN 2120, ECEN 2350, ECEN 1030, ECEN 1310, CSCI 1300.
  • ECEN 5813 - Principles of Embedded Software
    Primary Instructor - Fall 2019 / Spring 2020
    Introduces principles around embedded software elements and software development needed for the Embedded Systems Engineering core curriculum. Student will write C program applications hat employ efficient, high performance and robust software design techniques. Topics include bare-metal firmware, c-programming optimization and introductions to underlying embedded architecture. Sound testing and debug practices will be instilled and utilized in several application projects.
  • ECEN 5930 - Industry Internship
    Primary Instructor - Spring 2022 / Summer 2022
    Provides students with experience in working on a contemporary topic in an industrial or national laboratory setting.
  • INFO 5931 - Internship
    Primary Instructor - Summer 2021
    Internship

Background