department menu

Frequently Asked Questions

Electrical Engineering FAQ

  • What is Electrical Engineering?

     Engineering is broadly described as the creative application of scientific and mathematical principles used to design, develop, improve, and analyze structures, machines, devices, components, systems, and industrial processes useful to society.  Electrical engineering is the field of engineering that deals with the application and study of electricity, electronics, and electromagnetism. It originated as a branch of physics and has dramatically changed society.  Inventions associated with electrical engineering include the telephone, light bulb, radio, television, electric motor, power plant, as well as modern computers, phones, cameras, and robots.

    The curriculum for electrical engineering begins with the necessary preparatory courses in mathematics, physics, and computer science. Core courses and electives cover a wide range of topics including digital and analog electronic circuits and systems, solid-state devices, instrumentation, control systems, electromagnetics, and signal processing.  Students will take courses that include laboratory activities. Students are also required to do a senior research project, which involves planning, design, implementation, documentation, and presentation.
  • What are preparatory and majors courses for Electrical Engineering?

  • What are the Student Learning Outcomes for the degree in Electrical Engineering?

    Students who graduate with a BS degree in Software Engineering will be able to identify, analyze, and apply skills and professional standards in:

Software Engineering FAQ

  • What is Software Engineering?

    Software Engineering is the application of engineering principles and techniques in the process of software design, development,and construction while dealing with the constraints of computers. With computing as its foundations, software engineering seeks to develop and use systematic models and reliable techniques to produce high‐quality software. A software engineer applies a wide range of knowledge from the humanities to the sciences and can lead a team responsible for constructing a software system containing millions of lines of code across hundreds of files written by dozens of programmers, reusing major components of other systems, executing on multiple machines and platforms, interacting with globally distributed systems, and ensuring security across the systems they are configuring.
  • What is the difference between Computer Science and Software Engineering?

    The Computer Science and Software Engineering curricula have some overlaps, such as design and development of programs, discrete structures, data structures, computer architecture, human‐ computer interaction, information security, and programming languages. However, the Computer Science curriculum includes other knowledge areas such as algorithms and complexity, graphics and visualization, information management, networking and communications, and operating systems, whereas the Software Engineering curriculum includes other knowledge areas such as software modeling and analysis, requirements analysis and specification; software design; software verification and validation; software process; and software quality; and security. Basically, “software engineers begin by analyzing users' needs, and then design, test, and develop software to meet those needs. During this process they create flowcharts, diagrams, and other documentation, and may also create the detailed sets of instructions, called algorithms, that actually tell the computer what to do.”
  • What are preparatory and majors courses for Software Engineering?

  • What are the Student Learning Outcomes for the degree in Software Engineering?

    Students who graduate with a BS degree in Software Engineering will be able to identify, analyze, and apply skills and professional standards in:
    • computing essentials in terms of computer science foundations, construction technologies and tools
    • mathematical and engineering fundamentals, and engineering economics for software.
    • professional practice in terms of group dynamics and psychology, communication skills, and professionalism
    • software modeling and analysis
    • requirements analysis and specification, requirements fundamentals, eliciting requirements, requirements specification and documentation, and requirements validation
    • software design concepts, design strategies, architectural design, human‐computer interaction design, detailed design, and design evaluation
    • software verification and validation terminology and foundations and its deployment at different points in the life cycle, testing, and problem analysis and reporting
    • software process concepts, process implementation, project planning and tracking, software configuration management, and evolution processes and activities
    • software quality concepts and culture, process assurance, and product assurance
    • security fundamentals, computer and network security, and developing secure software