The course is held in the autumn semester, during periods 1 and 2. It is recommended to complete the course in the 1st autumn semester.
After completing the course, the student can define the key success factors of Global Software Design (GSD) and the potential problems in coordination of projects where teams are separated by physical and / or temporal distance; can define and evaluate the collaborative technologies, which in the best way support distributed software development; can choose the methods and tools for distributed software development; can apply the practices of GSD in a student project and use the supporting tools throughout the project life cycle.
Some of the topics covered are strategic issues in distributed development (off-shoring, near-shoring, outsourcing, OSS); cost-benefit-risk analysis; the triad of coordination, control and communication; team building (e.g. virtual teams); software process paradigms in the global environment (planned, agile); methods and tools for distributed software development; issues related to allocation of tasks; communication issues that arise due to distance and time zone differences; infrastructure support; geographical dispersion; lack of information communication; coordination complexity; cultural issues; technical issues related to information and artefact sharing; architectural design; and finally knowledge management issues. The lectures and seminars also review current research aspects of the GSD and related case studies from industry. The exercises demonstrate distributed software development as a virtual team with the support of appropriate methods and tools.
Lectures and seminars involving all the students as well as lecture assignments (reading articles and writing analyses) 70 h (20 h lecture attendances, 30 h lecture assignments, 20 h additional reading), and exercises 65 h. For lecture assignments each student will read, summarize and analyse selected academic articles. The exercises include laboratory demonstrations of different supporting tools for distributed software development. The students train in project software development and planning practices in a distributed environment. The student project groups are organised into virtual (distributed) teams of 4 students.
Basic knowledge of academic writing technique is needed. Basic understanding of software business is an advantage.
To be announced during the course implementation.
By active participation or alternatively exam, based on the course study materials.
Numerical scale 1-5 or fail