Software Engineering Minor
Have a major impact on the world by minoring in software engineering. A minor in software engineering (19 units) can dramatically expand your career opportunities. A recent CareerCast.com article ranked software engineering as the number one best job based on factors like starting income level, job outlook and stress levels.
With a minor in software engineering you can combine your subject matter expertise from your major with the skills and knowledge of software development and have a dynamic combination, opening more doors and making you more competitive in the job market.
Program Enrollment and Degree Data
Prerequisite
Choose one of the following:
CIS268 Computer Programming Languages
In this course concepts of computer programming languages are presented. Attention is given to the common constructs of programming languages as well as a structured approach to program development. The programming language may change from semester to semester. (3 units; Spring)
CIS268-A Corso, Anthony J. |
01/09/2023 | WF | 9:30 AM - 10:30 AM | Engineering ONLN |
CIS268-A Corso, Anthony J. |
09/05/2023 | WF | 9:30 AM - 10:30 AM | Engineering ONLN |
EGR121 Intro Computer Programming C++
Introduction to computer science. Covers problem solving methods and algorithm development; modern programming methodologies; and fundamentals of high-level block structured language using C++. Prerequisite: EGR 181 or MAT 115. (3 units; Fall/Spring & OPS)
EGR121-B Shade, Karen S |
01/09/2023 | MWF | 3:45 PM - 4:45 PM | Engineering 119 |
EGR121-C Shade, Karen S |
01/09/2023 | MWF | 2:30 PM - 3:30 PM | Engineering 119 |
EGR121-D Shade, Karen S |
01/09/2023 | MWF | 8:15 AM - 9:15 AM | Engineering 119 |
EGR121-A Shade, Karen S |
01/09/2023 | MWF | 10:45 AM - 11:45 AM | Engineering 119 |
EGR121-A Kim, Mark Sun |
09/05/2023 | MWF | 2:30 PM - 3:30 PM | Engineering 107 |
EGR121-B Shade, Karen S |
09/05/2023 | MWF | 8:15 AM - 9:15 AM | Engineering 107 |
EGR121-C Shade, Karen S |
09/05/2023 | MWF | 1:15 PM - 2:15 PM | Engineering 107 |
EGR121-D Shade, Karen S |
09/05/2023 | MWF | 9:30 AM - 10:30 AM | Engineering 214 |
EGR121-E STAFF, STAFF |
09/05/2023 | MWF | 3:45 PM - 4:45 PM | Engineering 107 |
Lower Division Requirements
EGR222 Software Engineering
Overview of the software development process. Includes requirements, design, construction, and testing of software. Software project planning. Analysis, architecture, and design of software systems using UML. Evaluating designs. Implementing designs using appropriate data structures, frameworks, and APIs. Prerequisite: CIS 268 or EGR 121. (3 units; Fall)
EGR222-A Clement, Larry W. |
01/09/2023 | TTh | 8:45 AM - 10:15 AM | Engineering 221 |
EGR222-A Clement, Larry W. |
09/05/2023 | TTh | 10:30 AM - 12:00 PM | Engineering 221 |
EGR222-B Clement, Larry W. |
09/05/2023 | TTh | 8:45 AM - 10:15 AM | Engineering 221 |
EGR227 Data Structures and Analysis
Fundamental data structures for implementation and analysis. Techniques for solving problems by programming. Analysis for complexity and performance trade-offs. Topics include object oriented design, debugging, abstract data types (ADTs), recursion, big-O notation, interfaces, inheritance, and encapsulation, linked lists, stacks, queues, hash tables, heap, trees, searching, sorting. Prerequisite: EGR 222. (3 units; Spring)
EGR227-B Knisley, Benjamin David |
01/09/2023 | TTh | 3:45 PM - 5:15 PM | Instructor OFFC |
EGR227-A Knisley, Benjamin David |
01/09/2023 | TTh | 2:00 PM - 3:30 PM | Instructor OFFC |
EGR227-A Knisley, Benjamin David |
05/08/2023 | MW | 2:00 PM - 3:30 PM | Instructor OFFC |
Upper Division Requirements
EGR325 Database Systems
Overview of current database technologies with an emphasis on relational database technology. Introduction to database design, entity relationship diagraming, structured query language, and stored procedures. Prerequisite: EGR 222. (3 units; Spring)
EGR325-A Clement, Larry W. |
01/09/2023 | TTh | 3:45 PM - 5:15 PM | Engineering 301 |
EGR325-B Clement, Larry W. |
01/09/2023 | TTh | 2:00 PM - 3:30 PM | Engineering 301 |
EGR327 Software Construction
Coverage of software construction fundamentals including minimizing complexity, anticipating change, and constructing for verification. Discussion will include best practices like patterns, object orientated programming and agility. Management of the construction process and accounting for practical considerations will also be examined. Prerequisites: EGR 222 and 227. (3 units; Fall)
EGR327-A Knisley, Benjamin David |
09/05/2023 | TTh | 2:00 PM - 3:30 PM | Instructor OFFC |
EGR491 Research Project
This special registration permits the completion of upper division degree requirements for transfer or other students, program requirement changes, or other special circumstances in which students have partial but not full credit toward a specific degree requirement. It also provides the opportunity for recognition of supervised academic experiences that are not included in traditional curriculum. Registration requires approval by the dean and sponsoring faculty member. The determination of degree credits is at the time of registration. Prerequisites: EGR 101 and Permission of the Dean. (1-3 units; Fall)
EGR491-B Kong, Seong Deok |
01/09/2023 | 2:00 PM - 3:00 PM | Instructor OFFC | |
EGR491-A Nalbandian, Michael J. |
01/09/2023 | TTh | - | CBU Online ONLN |
EGR491-A Nalbandian, Michael J. |
09/05/2023 | - | Engineering 222 |
Upper Division Elective Requirements
Complete three (3) upper division units in software engineering from the following:
EGR423 Mobile Applications Development
Investigation of mobile operating systems and associated software development environments. Consideration of unique constraints and techniques for creating software designed for mobile devices. Design and development of a mobile application. Prerequisites: EGR 325 and 327. (3 units; Fall)
EGR423-A Grissom, Daniel T. |
09/05/2023 | TTh | 2:00 PM - 3:30 PM | Engineering 229 |
EGR424 Web Applications Development
The design and development of data driven web applications. The integration and exploitation of HTML, JavaScript, server-side programming languages and database technology. Prerequisite: EGR 325. (3 units; Spring)
EGR424-A Kim, Mark Sun |
01/09/2023 | MWF | 9:30 AM - 10:30 AM | Engineering 104 |
EGR425 Real Time and Embedded Develpmnt
Focus on Programming real-time applications on an embedded platform running a real-time operating system (RTOS). Consideration will be given to cross-compiled software development, embedded system debugging, multitasking, real-time scheduling, inter-task communication, software design for deterministic execution time, software performance analysis and optimization, device drivers. Prerequisites: EGR 222 and 327. (3 units; Spring)
EGR425-A Grissom, Daniel T. |
01/09/2023 | TTh | 2:00 PM - 3:30 PM | Engineering 107 |
Additional Upper Division Elective Requirement
Complete three (3) additional upper division units in software engineering from the following:
EGR323 Sftwr Req, Analysis and Testing
This course covers techniques for discovering and eliciting requirements using languages and models for representing requirements, analysis, and validation techniques, including need, goal, and use case analysis, requirements in the context of system engineering, and requirements documentation standards. With a focus on traceability, human factors, and requirements management, software change requests become manageable. Quality assurance, verification, inspections, and reviews of the requirements proceed using statistical approaches to quality control. Prerequisite: EGR 222. (4 units; Spring)
EGR323-A Knaster, Andrew Gregg |
01/09/2023 | TTh | 5:30 PM - 7:00 PM | Instructor ONLN |
EGR324 Engineering Economics
Economic concepts of supply, demand, and production; cost-benefit analysis and break-even analysis; return on investment; analysis of options; time value of money; management of money: economic analysis, accounting for risk applied to the engineering process. (3 units; Fall/Spring)
EGR324-A Oyanader, Mario A. |
01/09/2023 | TTh | 12:15 PM - 1:45 PM | Engineering 305 |
EGR324-A Oyanader, Mario A. |
09/05/2023 | MWF | 10:45 AM - 11:45 AM | Engineering 221 |
EGR324-B Oyanader, Mario A. |
09/05/2023 | MWF | 9:30 AM - 10:30 AM | Engineering 221 |
EGR326 Software Design and Architecture
An in-depth look at software design. Study of design patterns, frameworks, and architectures. Survey of current middleware architectures. Component based design. Measurement theory and appropriate use of metrics in design. Designing for qualities such as performance, safety, security, reusability, reliability, etc. Measuring internal qualities and complexity of software. Evaluation and evolution of designs. Basics of software evolution, reengineering, and reverse engineering. Prerequisite: EGR 327. (3 units; Spring)
EGR326-A Hudnall, Dana L. |
01/09/2023 | M | 5:00 PM - 8:00 PM | Instructor OFFC |
EGR329 Computer Architecture
Introduces students to the organization and architecture of computer systems, beginning with the standard von Neumann model and then moving forward to more recent architectural concepts. Introduction to assembly language programming. Prerequisites: EGR 121 and 225. (3 units; Fall)
EGR329-A Grissom, Daniel T. |
09/05/2023 | TTh | 10:30 AM - 12:00 PM | Engineering 104 |
EGR329-B Grissom, Daniel T. |
09/05/2023 | TTh | 8:45 AM - 10:15 AM | Engineering 104 |
EGR423 Mobile Applications Development
Investigation of mobile operating systems and associated software development environments. Consideration of unique constraints and techniques for creating software designed for mobile devices. Design and development of a mobile application. Prerequisites: EGR 325 and 327. (3 units; Fall)
EGR423-A Grissom, Daniel T. |
09/05/2023 | TTh | 2:00 PM - 3:30 PM | Engineering 229 |
EGR424 Web Applications Development
The design and development of data driven web applications. The integration and exploitation of HTML, JavaScript, server-side programming languages and database technology. Prerequisite: EGR 325. (3 units; Spring)
EGR424-A Kim, Mark Sun |
01/09/2023 | MWF | 9:30 AM - 10:30 AM | Engineering 104 |
EGR425 Real Time and Embedded Develpmnt
Focus on Programming real-time applications on an embedded platform running a real-time operating system (RTOS). Consideration will be given to cross-compiled software development, embedded system debugging, multitasking, real-time scheduling, inter-task communication, software design for deterministic execution time, software performance analysis and optimization, device drivers. Prerequisites: EGR 222 and 327. (3 units; Spring)
EGR425-A Grissom, Daniel T. |
01/09/2023 | TTh | 2:00 PM - 3:30 PM | Engineering 107 |
EGR427 Software Project Management
Project planning, cost estimation and scheduling. Project management tools. Analysis of options and risks. Release and configuration management. Software process standards and process implementation. Approaches to maintenance and long-term software development. Prerequisite: EGR 222. (3 units; Fall)
EGR427-A Kim, Mark Sun |
09/05/2023 | MWF | 9:30 AM - 10:30 AM | Engineering 229 |