Loading...
Search for: software-architecture
0.007 seconds
Total 55 records

    An Engineering Approach to Software Modeling Language Development

    , Ph.D. Dissertation Sharif University of Technology Kamandi, Ali (Author) ; Habibi, Jafar (Supervisor)
    Abstract
    Nowadays, the essentiality of appropriate modeling languages has become evident, and with the introduction of new concepts such as domain-specific languages, the need for systematic research on designing and engineering new modeling languages has increased significantly. Several modeling languages have been developed and employed over the years, but the area of modeling languages still suffers from the lack of a proper framework: There is a strong need for an engineering framework that specifies the detailed steps of language development, the input and output artifacts of each step, the techniques applicable to each step, and quantifiable methods for quality measurement. From a unified point... 

    Partial scalability to ensure reliable dynamic reconfiguration

    , Article Proceedings - IEEE 7th International Conference on Self-Adaptation and Self-Organizing Systems Workshops, SASOW 2013 ; Sept , 2014 , p. 83-88 Ghafari, M ; Heydarnoori, A ; Sharif University of Technology
    Abstract
    In order to be adapted to changes in user requirements and/or the environment, many software systems need to run continuously while they evolve. Most current approaches for such dynamic reconfiguration assume that the evolved system will behave as expected and thus will be reliable if the reconfiguration is consistent. This assumption may not correspond to reality because the delivered quality estimated previously could vary due to parameter changes at runtime. To ensure that the system acts correctly in the field after the reconfiguration, reliability of changes has to be checked at runtime. Existing approaches, however, are not applicable in highly available systems due to the possibility... 

    A semantic framework for business process modeling based on architecture styles

    , Article Proceedings - 2012 IEEE/ACIS 11th International Conference on Computer and Information Science, ICIS 2012 ; 2012 , Pages 513-520 ; 9780769546940 (ISBN) Khalaj, M. E ; Moaven, S ; Habibi, J ; Ahmadi, H ; Sharif University of Technology
    IEEE  2012
    Abstract
    Business processes perform a significant role in increasing the success of organizational processes and functionalities. Due to the ever increasing growth in the scale and complexity of processes in line with taking advantage of combinational methods and ideas to optimize workflows and gain higher efficiency, lack of a framework considering both business process semantic and structure for business process modeling is completely sensible. Adding semantic to business process models will result in more comprehensible and automatically-executable processes. Moreover, preparing a suitable structure by making use of software architectural concepts will lead to a major decrease in misunderstanding... 

    Towards a framework for the application of Model-Driven Development in Situational Method Engineering

    , Article Proceedings - Asia-Pacific Software Engineering Conference, APSEC, 5 December 2011 through 8 December 2011, Ho Chi Minh ; 2011 , Pages 122-129 ; 15301362 (ISSN) ; 9780769546094 (ISBN) Zohrevand, Z ; Bibalan, Y. M ; Ramsin, R ; Sharif University of Technology
    2011
    Abstract
    Model-Driven Development (MDD) is a promising approach to software development, mainly due to the pivotal role of models in its process, and the high potential it provides for automated model/software generation. Since software processes can themselves be considered as software, any technique or approach applied in the context of software development is also of potential use in the development of software development processes. Accordingly, the MDD approach can potentially be applied in the context of Situational Method Engineering (SME) - a branch devoted to the study of developing bespoke software development processes and methods based on the specific characteristics of the development... 

    Towards a self-adaptive service-oriented methodology based on extended SOMA

    , Article Journal of Zhejiang University: Science C ; Volume 16, Issue 1 , 2015 , Pages 43-69 ; 18691951 (ISSN) Parvizi Mosaed, A ; Moaven, S ; Habibi, J ; Beigi, G ; Naser Shariat, M ; Sharif University of Technology
    Abstract
    We propose a self-adaptive process (SAP) that maintains the software architecture quality using the MAPE-K standard model. The proposed process can be plugged into various software development processes and service-oriented methodologies due to its explicitly defined inputs and outputs. To this aim, the proposed SAP is integrated with the service-oriented modeling and application (SOMA) methodology in a two-layered structure to create a novel methodology, named self-adaptive service-oriented architecture methodology (SASOAM), which provides a semi-automatic self-aware method by the composition of architectural tactics. Moreover, the maintenance activity of SOMA is improved using... 

    Towards a knowledge based approach to style driven architecture design

    , Article Procedia Computer Science, 5 March 2015 through 6 March 2015 ; Volume 62 , 2015 , Pages 236-244 ; 18770509 (ISSN) Moaven, S ; Habibi, J ; Alidoosti, R ; Parvizi Mosaed, A ; Bahrami, M ; Sharif University of Technology
    Abstract
    Nowadays, knowledge is the key to success in all software engineering processes. This valuable knowledge, obtained through analysis, design, development, and maintenance processes of the system, should be saved and reused in designing and developing current and similar systems. Using pre-existing knowledge is a practical approach which reduces design complexity, improves software architecture design and manages software quality. In this paper, we describe an approach to create architecture design knowledge using a hierarchical structure of architectural styles based on quality attributes. Knowledge is most importance asset of our approach that reuses similar domains, correlates architectures... 

    Towards a self-adaptive service-oriented methodology based on extended SOMA

    , Article Frontiers of Information Technology and Electronic Engineering ; Volume 16, Issue 1 , 2015 , Pages 43-69 ; 20959184 (ISSN) Parvizi Mosaed, A ; Moaven, S ; Habibi, J ; Beigi, G ; Naser Shariat, M ; Sharif University of Technology
    Abstract
    We propose a self-adaptive process (SAP) that maintains the software architecture quality using the MAPE-K standard model. The proposed process can be plugged into various software development processes and service-oriented methodologies due to its explicitly defined inputs and outputs. To this aim, the proposed SAP is integrated with the service-oriented modeling and application (SOMA) methodology in a two-layered structure to create a novel methodology, named self-adaptive service-oriented architecture methodology (SASOAM), which provides a semi-automatic self-aware method by the composition of architectural tactics. Moreover, the maintenance activity of SOMA is improved using... 

    A framework for decision support systems based on Zachman framework

    , Article Advanced Techniques in Computing Sciences and Software Engineering, 5 December 2008 through 13 December 2008 ; 2010 , Pages 497-502 ; 9789048136599 (ISBN) Ostadzadeh, S. S ; Habibi, J ; Ostadzadeh, S. A ; Sharif University of Technology
    Abstract
    Recent challenges have brought about an inevitable tendency for enterprises to lunge towards organizing their information activities in a comprehensive way. In this respect, Enterprise Architecture (EA) has proven to be the leading option for development and maintenance of information systems. EA clearly provides a thorough outline of the whole information system comprising an enterprise. To establish such an outline, a logical framework needs to be laid upon the entire information system. Zachman framework (ZF) has been widely accepted as a standard scheme for identifying and organizing descriptive representations that have critical roles in enterprise management and system development. In... 

    Process patterns for MDA-based software development

    , Article 8th ACIS International Conference on Software Engineering Research, Management and Applications, SERA 2010, 24 May 2010 through 26 May 2010, Montreal, QC ; 2010 , Pages 190-197 ; 9780769540757 (ISBN) Asadi, M ; Esfahani, N ; Ramsin, R ; Sharif University of Technology
    2010
    Abstract
    Information systems are expected to satisfy increasingly ambitious requirements, while reducing time-to-market has become a primary objective. This trend has necessitated the advent of development approaches that are better equipped and flexible enough to cope with modern challenges. Model-Driven Architecture (MDA) and Situational Method Engineering (SME) are approaches addressing this requirement: MDA provides promising means for automating the software process, and revitalizes the role of modeling in software development; SME focuses on project-specific methodology construction, mainly through assembling reusable method fragments (process patterns) retrieved from a method base. We provide... 

    Toward a business model for software product line architecture

    , Article 8th ACIS International Conference on Software Engineering Research, Management and Applications, SERA 2010, 24 May 2010 through 26 May 2010, Montreal, QC ; 2010 , Pages 50-56 ; 9780769540757 (ISBN) Tanhaei, M ; Moaven, S ; Habibi, J ; Ahmadi, H ; Sharif University of Technology
    2010
    Abstract
    Nowadays, software product line is an approach to reduce costs of software development, decrease time to market, and increase capabilities of reuse in designing and exploiting software development processes. Moreover, other quality attributes of the project domain should be considered to enhance quality of the product. Meanwhile, taking advantage of software product line makes developers capable of estimating development costs and time to market in a more realistic way. However, old approaches to estimate cost of development and foresee time to market are not suitable enough for software product line. In this paper, some important business parameters and a way to calculate cost and time to... 

    Strategies for improving MDA-based development processes

    , Article SMS 2010 - UKSim/AMSS 1st International Conference on Intelligent Systems, Modelling and Simulation, 27 January 2010 through 29 January 2010, Liverpool ; 2010 , Pages 152-157 ; 9780769539737 (ISBN) Fahmideh Gholami, M ; Ramsin, R ; Sharif University of Technology
    2010
    Abstract
    The Model Driven Architecture (MDA) is meant to facilitate system development by using models for representing both the "problem" and its "solution". In its ideal form, software development based on MDA would follow a development process that begins by producing models of the problem domain at a high level of abstraction, and then proceeds by gradually and automatically transforming them into executable code with the help of tools. However, MDA-based development has encountered several setbacks, the mitigation of which requires detailed scrutiny and analysis. In this research, MDA-based development is analyzed through applying SWOT (Strengths, Weaknesses, Opportunities, and Threats) analysis... 

    Towards a knowledge-based approach for creating software architecture patterns ontology

    , Article 2016 International Conference on Engineering and MIS, ICEMIS 2016, 22 September 2016 through 24 September 2016 ; 2016 ; 9781509055791 (ISBN) Rabinia, Z ; Moaven, S ; Habibi, J ; Sharif University of Technology
    Institute of Electrical and Electronics Engineers Inc  2016
    Abstract
    Software architecture patterns present solutions for software architecture problems and help to document architectural design decisions. Complexity and variability of patterns, and the required expertise for selecting an appropriate pattern, would cause some difficulties in utilizing architectural patterns. Using an ontology for registering architectural patterns is an efficient step in solving those problems. However, the mentioned difficulties make the process of constructing the architectural patterns ontology even more complicated. This paper proposes an approach that considers the construction of the architectural patterns ontology from four perspectives in order to overcome this... 

    Toward a collaborative method for knowledge management of software architectural decisions based on trust

    , Article 12th International Conference on Fuzzy Systems and Knowledge Discovery, 15 August 2015 through 17 August 2015 ; 2015 , Pages 828-834 ; 9781467376822 (ISBN) Samghani Nejad, M ; Moaven, S ; Habibi, J ; Alidousti, R
    Institute of Electrical and Electronics Engineers Inc 
    Abstract
    Design and implementation of Architecture is a knowledge-driven process. Evaluation and verification the knowledge, in order to ensure its quality, have important role in improving overall design process. Furthermore, Architectural decision making is a complex and multi-criteria decision making problem in which multiple stakeholders make decisions from their perspectives causing overlaps and conflicts in the adopted decisions. Therefore, the requirement for strategies to manage these issues and also to improve coordination and cooperation among the various stakeholders to improve the overall process design is necessary. In this regard, there have been several activities that focus on... 

    Why does data prefetching not work for modern workloads?

    , Article Computer Journal ; Volume 59, Issue 2 , 2016 , Pages 244-259 ; 00104620 (ISSN) Naderan Tahan, M ; Sarbazi Azad, H ; Sharif University of Technology
    Oxford University Press  2016
    Abstract
    Emerging cloud workloads in today's modern data centers have large memory footprints that make the processor's caches to be ineffective. Since L1 data cache is in the critical path, high data cache miss rates degrade the performance. To fix the issue in traditional workloads, data prefetchers predict the needed data to hide the memory latency and ultimately improve performance. In this paper, we focus on the L1 data cache to answer the question on why state-of-the-art prefetching methods are inefficient for modern workloads in terms of performance and energy consumption? This is because L1 cache is the most important player affecting the processor performance. Results show that, on the one... 

    A feature model based framework for refactoring software product line architecture

    , Article Journal of Computer Science and Technology ; Volume 31, Issue 5 , 2016 , Pages 951-986 ; 10009000 (ISSN) Tanhaei, M ; Habibi, J ; Mirian Hosseinabadi, S. H ; Sharif University of Technology
    Springer New York LLC  2016
    Abstract
    Software product line (SPL) is an approach used to develop a range of software products with a high degree of similarity. In this approach, a feature model is usually used to keep track of similarities and differences. Over time, as modifications are made to the SPL, inconsistencies with the feature model could arise. The first approach to dealing with these inconsistencies is refactoring. Refactoring consists of small steps which, when accumulated, may lead to large-scale changes in the SPL, resulting in features being added to or eliminated from the SPL. In this paper, we propose a framework for refactoring SPLs, which helps keep SPLs consistent with the feature model. After some... 

    Decision support system environment for software architecture style selection (DESAS v1.0)

    , Article Proceedings of the 21st International Conference on Software Engineering and Knowledge Engineering, SEKE 2009, 1 July 2009 through 3 July 2009, Boston, MA ; 2009 , Pages 147-151 ; 1891706241 (ISBN) ; 9781891706240 (ISBN) Moaven, S ; Ahmadi, H ; Habibi, J ; Kamandi, A ; Sharif University of Technology
    Abstract
    In software systems development lifecycle making use of software architecture, especially by taking advantage of architecture styles and patterns, is an essential part which increases product's quality. Nowadays, in order to cover complexity of systems, combination of different architecture styles should be used; therefore ambiguous behaviors might occur. Hence, due to the critical need for toolsets capable of selecting suitable styles and patterns, an environment is proposed in this paper which can perfectly cover different aspects of the implementation of decision support system (DSS). The designed environment obviates data implementation concepts and security considerations. Moreover, it... 

    Using design patterns for refactoring real-world models

    , Article Conference Proceedings of the EUROMICRO, 27 August 2009 through 29 August 2009 ; 2009 , Pages 436-441 ; 10896503 (ISSN) ; 9780769537849 (ISBN) Yaghoubi Shahir, H ; Kouroshfar, E ; Ramsin, R ; Sharif University of Technology
    Abstract
    Many software development methodologies are based on modeling the real world. In some of these methodologies, real-world models are gradually transformed into software models, while in others, the real world is only considered as a preliminary source of insight into the physical business domain. Real-world modeling was pushed to the sidelines due to anomalies in real-world modeling approaches; however, with the advent of the Model-Driven Architecture (MDA), real-world conceptual modeling is likely to regain its importance. We propose a method for using Design Patterns in the context of model transformation, where real-world models are refactored through application of these patterns.... 

    Toward a framework for evaluating heterogeneous architecture styles

    , Article Proceedings - 2009 1st Asian Conference on Intelligent Information and Database Systems, ACIIDS 2009, 1 April 2009 through 3 April 2009, Dong Hoi ; 2009 , Pages 155-160 ; 9780769535807 (ISBN) Moaven, S ; Kamandi, A ; Habibi, J ; Ahmadi, H ; Sharif University of Technology
    2009
    Abstract
    Evaluating architectures and choosing the correct one is a critical issue in software engineering domain, in accordance with extremely extension of architecturedriven designs. In the first years of defining architecture styles, some special quality attributes were introduced as their basic attributes. After a moment, by utilizing them in practice, some results were obtained confirming some of attributes; some others meanwhile were not witnessed. As software architecture construction process is dependent on and addressed by both usage conditions and quality attributes, in this paper a framework has been proposed to provide an environment and a platform that can cover evaluation of... 

    Using reo formalism for compliance checking of architecture evolution with evolutionary rules

    , Article 18th International Conference on New Trends in Intelligent Software Methodologies, Tools and Techniques, SoMeT 2019, 23 September 2019 through 25 September 2019 ; Volume 318 , 2019 , Pages 725-738 ; 09226389 (ISSN); 9781643680125 (ISBN) Liaghat, Z ; Besharati, M. R ; Izadi, M ; Khamespanah, E ; Sharif University of Technology
    IOS Press  2019
    Abstract
    Assessment of architectural evolution is a challenge and plays a significant role in system evolution management. Although the evolution rules of the software architecture are defined by some expert engineers or architects, there is no guarantee that applying them will end to the desired change. So, having a reliable assessment technique promotes the overall accuracy and quality of the evolution process. Compliance checking with expert-defined rules is a well-known assessment approach that can be applied in architectural evolution. In this paper, an approach is proposed for compliance checking of evolution processes. To this end, evolution paths and processes are modeled by Reo coordination... 

    A fuzzy-AHP-based approach to select software architecture based on quality attributes (FASSA)

    , Article Knowledge and Information Systems ; Volume 62, Issue 12 , 13 August , 2020 , Pages 4569-4597 Moaven, S ; Habibi, J ; Sharif University of Technology
    Springer Science and Business Media Deutschland GmbH  2020
    Abstract
    The software system design phase has recently received increasing attention due to continuous growth in both the size and complexity of software systems. As a key concept of this phase, software architecture plays an important role in the software extension cycle to the extent that the success of a software project is often determined by the degree of its design efficiency. In addition, software architecture evaluation is a fundamental step toward its subsequent validation. This paper is an attempt to propose an innovative method, based on fuzzy logic, to evaluate software architecture that addresses the inherent problems of existing methods found in the literature. The method can be used...