Software engineering comprises several components: requirements
gathering and analysis, design, implementation, testing,
maintenance, and continuous improvement.