Site Map | Feedback | Contact Us
Kerala Education Grid
Search
 
Education is the key to unlock the golden door of freedom
--- George Washington Carver
 

Software Engineering
is an engineering discipline which is concerned with all aspects of software production from the early stages of system specification through to maintaining the system after it has gone into use.This term refers to a movement, methods and techniques aimed at making software development more systematic. Software methodologies, like the OMG's UML, and software tools (See CASE tools) that help developers model application designs and then generate code are all closely associated with software engineering.

Software engineering is concerned with large and complex software systems built by teams of developers and programmers. It uses engineering principles in the development, creation and maintenance of software and contains both technical and non-technical aspects. The principal discipline involved is computer science, but knowledge from fields such as mathematics, psychology, ergonomics and management science must also be incorporated into its methodologies and theory.

Software is not just computer programs. Software also includes all the documentation which is necessary to develop, install, use and maintain a complete software system. The challenge for software engineers is to produce high quality software using a finite number of resources and within a predictable amount of time. Because of the complexity and range of the tasks to be automated, a software engineer must be able to assess and apply existing computing knowledge, derived from more fundamental subjects, in a cost-effective and functional way.