International Software Engineering

International Software Engineering
Software systems are used worldwide and for information systems in various languages as well. Development teams of software systems are distributed all over the world with team members of different nationalities and mother tongues. Special problems associated with these situations need adequate methods and tools.
The required knowledge of Software Engineering is described in
* Software Engineering Body of Knowledge 2004 (SWEBOK), describing the knowledge a software engineer should possess after four years of work after his graduation
* Graduate Software Engineering 2009 (GSwE2009) "GSwE2009 is a model which provides guidelines and recommendations for any master's level program in software engineering worldwide."
* Curriculum Guidelines for Undergraduate Degree Programs in Software Engineering 2004 (SE2004)
Software Engineering in these documents is organized into areas of the Software life cycle (SLC) like Software Requirements Engineering, Software Design, Programming, Testing, and Management aspects.
Because of the different systems and different techniques for development, Software Engineering can be focused on special aspects, where each area is covering all or at least most of the software life cycle:
* Component-based Software Engineering (CBSE), where software components are in the focus
* Real-time Software Engineering, where the software systems do include real-time parts
* Aspect-oriented Software Engineering, where aspects of software are the topic of interest
* Agile Software Engineering, where special techniques of agile methods are used
* Value-based Software Engineering
* Search-based Software Engineering
* Service-oriented Software Engineering
* International Software Engineering (ISE), where aspects of globalisation, i.e. Internationalisation (I18n) and Localisation (L10n), for mainly Global information systems (GLIS), do require special techniques in development as well as in management of international teams
Profession
Working in and leading of international teams is a very important issue for software engineers around the world.
Education
Education in International Software Engineering should cover the following topics more than the education in Computer Science or Software Engineering:
* Covering the four special areas of Software Engineering (sensu lato)
* Teaching in at least two languages (e.g. English and Spanish)
* Studying in at least two countries (e.g. Great Britain and Spain)
The focus of the courses should be around the four special areas of Software Engineering (sensu lato):
*
*Database Systems
*Human-Computer Interaction (HCI)
*Artificial Intelligence
After the finishing of the course with a degree students should be able to develop software systems with I18n and L10n aspects and manage software projects, which consists of international teams, whose members are located around the world and speak different languages.
Universities are starting to offer courses covering the requirements for an international Software Engineering education, e.g.
* European Master on Software Engineering. (Universidad Politecnica de Madrid, Spain, Blekinge Tekniska Högskola, Sweden et al.)
* M.Sc. in International Software Engineering (Universidade Federal de Santa Maria, Brazil and University of Applied Sciences Gelsenkirchen, Germany)
* B. Eng. in International Software Engineering (KMITL, Bangkok, Thailand)
 
< Prev   Next >