Hossein Safyallah

Learn More
Software system analysis for extracting system functionality remains as a major problem in the reverse engineering literature and the early approaches mainly rely on static properties of software. In this paper, we propose a novel technique for dynamic analysis of software systems to identify the implementation of the software features that are specified(More)
Alborz is a multi-view, interactive, and wizard-based software architecture reconstruction and evaluation toolkit that takes advantage of the Eclipse plug-in technology to provide feature extensibility, and uses GXL format to interoperate with other reverse engineering tools. The current version of Alborz toolkit supports static and dynamic views of a(More)
Most approaches in reverse engineering literature generate a single view of a software system that restricts the scope of the reconstruction process. We propose an orchestrated set of techniques and a multi-view toolkit to reconstruct three views of a software system such as design, behavior, and structure. Scenarios are central in generating design and(More)
Software maintenance activities for producing a featurerich system tend to impair the software’s structure into an unshaped and cost-prone legacy system. Thus, it is desirable to keep track and measure the impacts of the newly added features on the structure of the software system. The proposed technique in this paper is based on extracting frequent(More)
Software system analysis for identifying software functionality in source code remains as a major problem in the reverse engineering literature. The early approaches for extracting software functionality mainly relied on static properties of software system. However the static approaches by nature suffer from the lack of semantic and hence are not(More)
Since software is often deployed in safety critical applications, there is a constant need to know whether a system is behaving correctly and reliably in its environment. This research work integrates concepts of static and dynamic analyses to verify the behavioral correctness of a Java software system based on certain safety properties. We also apply the(More)
  • 1