The application of systematic approaches to developing software. [1] [2]
computer science
software engineering