Most previously published case studies in architecture recovery have been performed on statically linked software systems. Due to the increase in use of middleware technologies, such as CORBA, and OOP concepts, such as polymorphism, there is an opportunity and a need to analyze architectures of these dynamically linked systems. This paper presents the results of software architecture extraction of the Nautilus file manager, which employs CORBA in its implementation. A combination of existing static analysis and use-case modeling architecture recovery techniques was used with the expectation of complex but complete architecture extraction of a system such as Nautilus. We have found that this combined approach named Dynamo-1 presented in this paper provided successful focused architecture recovery and guidance for the future work in complete architecture recovery of dynamically linked applications.
Igor Ivkovic, Michael W. Godfrey