Software engineering encompasses a process, management and technical methods, and tools.
Software engineering is a layered technology.
Process defines a framework for a set of key process areas (KPAs) that must be established for effective delivery of software engineering technology.
Methods encompass a broad array of tasks that include requirements analysis, design, program construction, testing, and support.
Software engineering tools provide automated or semi-automated support for the process and the methods.