IMPERATIVES OF SOFTWARE ENGINEERING EDUCATION

Abstract: Software Engineering education is the focal point for the future and success of a software development industry. Training and education of software engineering at graduate level is aimed at developing basic software development skills and fundamental theoretical concepts of software development, project management and other supporting areas. It is also meant to prepare the perspective software engineers for real life software development as it is important to understand the environment and setting of professional software development industry, which is quite different in nature as compared to the academic setting. Learning outcome is optimized when imperatives of Software Engineering education are properly understood. Expertise in Software Engineering is two-fold - requiring strong theoretical background of fundamental concepts together with application of these theoretical concepts. This is attained with practice and experience not only on technical side but also requires working with certain soft skills. Hence Software engineering education requires training in multiple dimensions, that is, theory, technology, application, business environment and setup, and soft skills to deal with human factor. The aim of this talk is to broaden the concept of teaching Software Engineering, by extending the scenario from lecture-based class room teaching to using multiple teaching styles - including project- based and game-based teaching.

Dr. Sarah Shahzad ( Department of Computer Sciences, University of Peshawar )