Software Systems
S. Hekmat; S. Parsa; B. Vaziri
Abstract
Background and Objectives: Several service identification methods have been proposed to identify services using a business process-based strategy. However, these methods are still not accurate enough and adequately automated and thus need improvements. The present study addresses this gap by proposing ...
Read More
Background and Objectives: Several service identification methods have been proposed to identify services using a business process-based strategy. However, these methods are still not accurate enough and adequately automated and thus need improvements. The present study addresses this gap by proposing a new semi-automated combinational method that applies process mining techniques and simultaneously considers different aspects of the business domain (e.g., goal and data). We argue that this method facilitates service identification more comprehensively and accurately and helps enhance organizational performance and lower cost structure.Methods: Our method includes three Phases. In the first phase, the system log is inspected, and the running business process is extracted using process mining techniques. After validating this model, we create a goal and data model in the next phase. In the third phase, we establish connections between the introduced models by defining some matrices. These connections are of two types: structural and conceptual. Finally, we propose a couple of algorithms that lead to the identification of services. Results: We evaluate the utility of our proposed method by conducting a case study and using the experts’ opinions from different perspectives as follows: (1) assessing the accuracy and reusability of the identified services, (2) appraising the efficiency of employing this method in more complex processes, (3) calculating the cohesion to coupling ratio, and (4) assessing the performance of the method and other service quality measures. The results indicate that the average accuracy of this method is about 12 % higher than the previously identified methods for both simple and complex processes. Additionally, it empirically proves that using the process mining techniques improves the service identification considerably (8%). Moreover, according to the experts’ opinions, the combination of goal and data model and process mining has increased the performance by 8%. In comparison, the cohesion to coupling ratio demonstrated a 7% increase compared to other methods. In sum, we conclude that this method is an advanced and reliable way of service identification regardless of the process size and the complexity. Conclusion: The findings reveal that considering different aspects of business processes together and using process mining techniques improves the ratio of cohesion to coupling and accuracy of the identified services. Adherence to this approach enables companies to mine their business processes, modify them, and quickly identify services with higher performance. Besides, using this method provides a semi-automated and more effective way of service identification
Software Systems
M. Rahmanian; R. Nassiri; M. Mohsenzadeh; R. Ravanmehr
Abstract
Background and Objectives: The area of enterprise architecture encompasses various domains, the most complicated of which concerns developing an enterprise business architecture. Although many state-of-the-art enterprise architecture frameworks describe the architecture by abstract levels, they still ...
Read More
Background and Objectives: The area of enterprise architecture encompasses various domains, the most complicated of which concerns developing an enterprise business architecture. Although many state-of-the-art enterprise architecture frameworks describe the architecture by abstract levels, they still fail to provide accurate syntactic and semantic descriptions. Several previous conducted studies were looking for different objectives elaborated on modeling enterprise architectures. However, none of those studies tried to develop a modeling that generates test cases which would later be used for validation and/or verification. Therefore, the main contribution of this study is generating a set of test cases based on the descriptions yielded from enterprise business processes in early steps; then, the amount of later reviews and changes can be significantly lessened.Methods: Following the objective of accurate validation and/or verification of the enterprise business processes within an enterprise's architecture development, this paper proposes a new method based on the enterprise architecture design. Throughout the iterative cycle of the proposed method, initially, the enterprise goals will be extracted based on the TOGAF framework. Afterwards, it will be subjected to syntactical modeling based on the Archimate language. Then, semantics will be added to the syntactic model of the enterprise business processes based on the WSMO framework and formalize manually to B language by using defined transition rule. Therefore, in order to discover test cases, a set of test coverage will be tested on the formal model. Results: The proposed method has been implemented in the marketing and sales department of a petrochemical corporation, where the results show the validity and also the effectiveness of the method. Based on the implementation of our method on the selected case study, the details of the business process have been defined based on an enterprise level, the level of abstraction is decreased by syntactic and semantic modeling of enterprise architecture description, the formal descriptions created using the proposed transition rules for sampling.Conclusion: The proposed method starts from the goals of enterprises; therefore, the output samples are efficiently precise. By adding semantics to the syntactic models of enterprise architecture, the degree of abstraction has been decreased. By creating a formal model, the model can be subjected to sampling. For future work, it is suggested to use the proposed method for the automatic generation of codes.
Software Systems
Z. Rahmani Ghobadi; H. Rashidi; S. H. Alizadeh
Abstract
Background and Objectives: Applications and systems software that are running constantly become obsolete due to the accumulation of error conditions or the depletion of resources like physical memory or performance degradation. In this regard, software rejuvenation has been proposed to deal with such ...
Read More
Background and Objectives: Applications and systems software that are running constantly become obsolete due to the accumulation of error conditions or the depletion of resources like physical memory or performance degradation. In this regard, software rejuvenation has been proposed to deal with such a phenomenon and prevent software failure in the future. This paper proposes a multiple objective of software rejuvenation models with several policies. The purpose is to identify the right rejuvenation policy in practical situations.Methods: We model software system with four policies using the Markov process. These policies are: (a) Software system without rejuvenation; (b) Software system with partial rejuvenation; (c) Software system with partial and full rejuvenation; and (d) Software system with four different types of rejuvenation. In the models and each policy, we consider assigning the level of performance on which the availability and operating costs are calculated. Results: To evaluate the models with the four policies, many numerical experiments were performed. For each policy, we evaluated and compared three objectives, namely performance, availability and operating costs. The experimental results states that for Software System with the policy of four different type of rejuvenation has about 18 and 16 percent improvement in performance and availability, respectively, compared with those other policies. Moreover, the operating cost of the software system with partial rejuvenation policy is lower and more efficient than other policies.Conclusion: According to the calculated objectives and the results of the policies, it can be concluded that in systems with lower operational costs, the most appropriate policy is the software system with four different types of rejuvenation because this policy bring the maximum possible value for the performance and availability.