In this paper, we identify and analyze a set of issues that are more and more influencing the characteristics of today's complex software systems, and that distinguish them from "traditional" software systems. Several examples in different areas show that these issues do not influence a few application domains only, but are instead widespread. Then, we discuss how these issues are likely to dramatically impact on the very way software is modeled and engineered. In particular, we show that we are on the edge of a revolutionary shift of paradigm, likely to change our very attitudes, and making us conceive software systems no longer in terms of mechanical systems, but rather in terms of intentional or physical systems.