IT2603
Softwae Engineering II - New System Development paradigms
Last taught 2013
Autumn
Norwegian and English
About this course
Content
The course first gives an introduction to some newer methods for
software development vs. the classic Waterfall model. Several such
models and methods are presented and compared. The most important ones
are those for incremental and agile development (such as rapid
prototyping, scrum, and EXtreme Programming) and those for cooperative
and component-based software development (mainly open source). Such
components will typically be Commercial-Off-The-shelf Software (COTS)
or Open Source Software (OSS).
New cooperation and business models for distributed development of
partly own and partly OSS-based software will then be treated,
cf. "Global Software Engineering". An OSS-component is developed and
maintained jointly between several organisations and development
groups -- previously called an OSS "community", and is now being
generalized to a knowledge-based "ecosystem".
Lastly, the course gives an overview of technologies for
implementing large software systems. The actual methods include risk
analysis, estimation of development time and cost,
verification/validation and testing, software quality management and
control, maintenance and configuration management, and finally methods for
development and validation of critical software (especially
reliability, safety and security).
Learning outcomes
To give the students a broader knowledge of modern software
engineering methods, especially wrt. agile methods (like scrum) and
Open Source Software (OSS, Global Software Engineering,
knowledge-based ecosystems), in addition to other aspects of professional
software development, such as testing, quality assurance, estimation,
risk management and maintenance.
Teaching methods
Lectures, excercises and project work.