Software Engineering for the Uncertain World

Traditionally, software systems have been used to derive mechanical advantage through automation. The underlying assumptions being: objectives for the software system and the environment within which it will operate will remain largely unchanged; and the required information is available fully and with total certainty. Software development is then viewed as a refinement exercise from high-level human-understandable requirements to a deterministic machine-executable implementation. However, for a variety of reasons, these assumptions no longer hold. This calls for a new look at engineering software that’s expected to deliver on the stated objectives in an everchanging environment characterized with partial information and inherent uncertainty. The workshop aims to brainstorm this emerging challenge of ”Software Engineering for the Uncertain World”.