A digital ecosystem consists of distributed adaptive socio-technical systems. It mainly relies on software and exhibits properties of self-organization, scalability, flexibility and sustainability, inspired by natural ecosystems. Digital ecosystems are complex systems and continuously follow an incremental evolutionary process. In this paper, we study successive versions of digital ecosystems by examining evolutions and variations of software components with respect to different points of view, namely "Being," "Doing" and "Becoming." A new version helps to define a threshold which makes a transition from a current state to a new state. In order to reason on software versions, we distinguish between endogenous and exogenous evolutions and classify software into four categories: primitive, adaptive, evolutionary and self-aware. The digital ecosystem version results in diverse changes due to variations in software components.