Loading...
Search for: software-systems
0.006 seconds
Total 28 records

    A performance-based approach to automatic redeployment of enterprise software applications

    , Article Applied Mathematics and Information Sciences ; Volume 10, Issue 2 , 2016 , Pages 537-556 ; 19350090 (ISSN) Seifzadeh, H ; Abolhassani, H ; Sadighi moshkenani, M ; Sharif University of Technology
    Natural Sciences Publishing Co 
    Abstract
    Update of software usually equates disruption to a program's execution. However, such disruptions in the execution of applications that provide round-the-clock services is not desirable. Examples of such applications include multi-tier enterprise systems with which users may interact via distinct presentation tiers at the same time. Existing software updating systems do not operate in the enterprise applications, or they need most of the redeployment tasks to be performed manually. In this paper, we present a framework capable of Automatically Redeploying Enterprise Software Applications (ARESA). This system combines the idea of incremental and integral updates to preserve the consistency of... 

    A service based approach to self-adaptive software systems based on constructing a group of autonomic elements

    , Article Proceedings of the 7th IEEE International Conference and Workshop on Engineering of Autonomic and Autonomous Systems, EASe 2010, 22 March 2010 through 26 March 2010 ; March , 2010 , Pages 101-105 ; 9780769540047 (ISBN) Safi, G ; Mirian Hosseinabadi, S. H ; Sharif University of Technology
    2010
    Abstract
    As requirements and environments become much more complex, the need for self-adaptive and self-healing software system grows. There are several existing works which present such systems by using different approaches. Using alternative solutions to provide a service or requirement is one of the most important approaches among existing works. In this paper an alternative-based approach for adding self-adaptive capabilities to software systems is proposed. In this approach a group of autonomic elements will be constructed based on different design or implementations that could be considered for a specific service or requirement. By using this approach, a highly adaptive software system could be... 

    TCvisor: A hypervisor level secure storage

    , Article 2010 International Conference for Internet Technology and Secured Transactions, ICITST 2010, 8 November 2010 through 11 November 2010, London ; 2010 ; 9781424488629 (ISBN) Rezaei, M ; Moosavi, N. S ; Nemati, H ; Azmi, R ; Sharif University of Technology
    2010
    Abstract
    In this paper, we present design and implementation of TCvisor, a new trusted hypervisor. To this end, TCvisor provides a secure storage with different isolated view per user by using para-passthrough and combined key. In this regard, virtualization technology of processors has been used for complete isolation from operating system. By combining TPM base key, user's password and geo function key, TCvisor provides a secure storage in an environment with split data. We have applied feature wise security analysis TCvisor's secure storage from software system layers point then we have compared performance of TCvisor to selected candidates of existing layers  

    A safe stopping protocol to enable reliable reconfiguration for component-based distributed systems

    , Article 6th International Conference on Fundamentals of Software Engineering, FSEN 2015, 22 April 2015 through 24 April 2015 ; Volume 9392 , November , 2015 , Pages 100-109 ; 03029743 (ISSN) ; 9783319246437 (ISBN) Ghafari, M ; Heydarnoori, A ; Haghighi, H ; Sharif University of Technology
    Springer Verlag  2015
    Abstract
    Despite the need for change, highly available software systems cannot be stopped to perform changes because disruption in their services may consequent irrecoverable losses. Current work on runtime evolution are either too disruptive, e.g., "blackouts" in unnecessary components in the quiescence criterion approach or presume restrictive assumptions such as the "black-box design" in the tranquility approach. In this paper, an architecture-based approach, called SAFER, is proposed which provides a better timeliness by relaxing any precondition required to start reconfiguration. We demonstrate the validity of the SAFER through model checking and a realization of the approach on a component... 

    Modeling and evaluation of software systems with object stochastic activity networks

    , Article 2006 International Conference on Software Engineering Advances, ICSEA'06, Tahiti, 29 October 2006 through 3 November 2006 ; 2006 , Pages 58-63 ; 0769527035 (ISBN); 9780769527031 (ISBN) Abdollahi Azgomi, M ; Movaghar, A ; Sharif University of Technology
    IEEE Computer Society  2006
    Abstract
    Stochastic activity networks (SANs) are a stochastic generalization of Petri nets. SAN models have been used to evaluate a wide range of systems and are supported by several modeling tools. We have introduced object stochastic activity networks (OSANs) to overcome some restrictions of these models. OSANs integrate the concepts of object-orientation into SAN models. Elements of OSANs and their submodels are defined as classes. OSANs are more appropriate that most other objectoriented or high-level extensions of Petri nets for application on software systems. In this paper, we will present the definitions, behavior and an example of OSAN models. The objectorientation of OSANs and the... 

    Automata based model checking for reo connectors

    , Article Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 15 April 2009 through 17 April 2009 ; Volume 5961 LNCS , 2010 , Pages 260-275 ; 03029743 (ISSN) ; 3642116221 (ISBN) Bonsangue, M. M ; Izadi, M ; Sharif University of Technology
    Abstract
    Reo is a connector language for the exogenous composition and orchestration of components in a software system. An operational semantics of Reo connectors can be given in terms of Büchi automata over a suitable alphabet of records, capturing both synchronization and context dependency requirements. In this paper, we define an action based linear time temporal logic for expressing properties of Reo connectors. Formulas can be synthesized into Büchi automata representing Reo connectors, thus leading to an automata based model checking algorithm. By generalizing standard automata based model checking algorithms for linear time temporal logic, we give an efficient on-the-fly algorithm for the... 

    Testing Android Event-Driven Applications

    , M.Sc. Thesis Sharif University of Technology Hassantabar, Navid (Author) ; Mirian Hosseinabadi, Hassan (Supervisor)
    Abstract
    There are different classes of event-driven softwares. These softwares include Graphical user interface, web application or embedded software. In these kinds of softwares, each user’s action while using application, is known as “event”. The application responds to the action through changing behavior and then waiting for another event. Testing software is the best way for checking the quality assurance of event-driven softwares. However, there are some problems, such as lengthy event sequences, in testing these kinds of softwares. Therefore, many solutions are introduced for these problems. The goal of this report, is presenting new testing procedure for event-driven Android applications.... 

    Activities performed by programmers while using framework examples as a guide

    , Article Proceedings of the ACM Symposium on Applied Computing ; 2014 , p. 1146-1151 Boghrati, R ; Heydarnoori, A ; Kazemitabaar, M ; Sharif University of Technology
    Abstract
    It is now a common approach pursued by programmers to develop new software systems using Object-Oriented Application Frameworks such as Spring, Struts and, Eclipse. This improves the quality and the maintainability of the code. Furthermore, it reduces development cost and time. However, the main problem is that these frameworks usually have a complicated Application Programming Interface (API), and typically suffer from the lack of enough documentation and appropriate user manuals. To solve these problems, programmers often refer to existing sample applications of those frameworks to learn how to implement the desired functionality in their own code. This is called the Monkey See, Monkey Do... 

    Measuring software security using SAN models

    , Article 2012 9th International ISC Conference on Information Security and Cryptology, ISCISC 2012, 13 September 2012 through 14 September 2012 ; September , 2012 , Pages 80-86 ; 9781467323864 (ISBN) Nogoorani, S. D ; Hadavi, M. A ; Jalili, R ; Sharif University of Technology
    2012
    Abstract
    Security is one of the important issues in developing and implementing software systems especially in highly critical applications. Quantification and measurement of security is one of the approaches adopted to achieve the desired degree of security. In this paper, Stochastic Activity Networks (SANs) are used to formally model the attacks on the system under investigation. To this end, the semi-Markov attack model is sketched. Having the semi-Markov model, Probability of Attack Success (PAS), Mean Time to First Breach (MTFB), and System Misuse Proportion (SMP) are measured according to the appropriate transformation of the model to a SAN model. As a case study, we have studied a high-level... 

    An analytical review of process-centered software engineering environments

    , Article Proceedings - 2012 IEEE 19th International Conference and Workshops on Engineering of Computer-Based Systems, ECBS 2012 ; 2012 , Pages 64-73 ; 9780769546643 (ISBN) Matinnejad, R ; Ramsin, R ; Sharif University of Technology
    2012
    Abstract
    Process-centered Software Engineering Environments, or PSEEs, are intended for the definition, modification, and enactment of software process models, they thus bring software development processes into effect. Even though research efforts in process-centered software engineering abound, PSEE technology has not received the attention that it deserves. In order to create a concise but effective and practically applicable evaluation framework for PSEEs, this paper first presents a survey of PSEEs and highlights the current state of the art of the technology. The PSEEs which have been reviewed herein have been regarded as software systems, and as such, have been characterized in terms of their... 

    Tracing distributed collaborative development in apache software foundation projects

    , Article Empirical Software Engineering ; 2016 , Pages 1-36 ; 13823256 (ISSN) Gharehyazie, M ; Filkov, V ; Sharif University of Technology
    Springer New York LLC  2016
    Abstract
    Developing and maintaining large software systems typically requires that developers collaborate on many tasks. During such collaborations, when multiple people work on the same chunk of code at the same time, they communicate with each other and employ safeguards in various ways. Recent studies have considered group co-development in OSS projects and found that it is an essential part of many projects. However, those studies were limited to groups of size two, i.e., pairs of developers. Here we go further and characterize co-development in larger groups. We develop an effective methodology for capturing distributed collaboration beyond groups of size two, based on synchronized commit... 

    Tracing distributed collaborative development in apache software foundation projects

    , Article Empirical Software Engineering ; Volume 22, Issue 4 , 2017 , Pages 1795-1830 ; 13823256 (ISSN) Gharehyazie, M ; Filkov, V ; Sharif University of Technology
    Springer New York LLC  2017
    Abstract
    Developing and maintaining large software systems typically requires that developers collaborate on many tasks. During such collaborations, when multiple people work on the same chunk of code at the same time, they communicate with each other and employ safeguards in various ways. Recent studies have considered group co-development in OSS projects and found that it is an essential part of many projects. However, those studies were limited to groups of size two, i.e., pairs of developers. Here we go further and characterize co-development in larger groups. We develop an effective methodology for capturing distributed collaboration beyond groups of size two, based on synchronized commit... 

    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... 

    Performance evaluation of mobile software systems: Challenges for a software engineer

    , Article 2008 5th International Conference on Electrical Engineering, Computing Science and Automatic Control, CCE 2008, Mexico City, 12 November 2008 through 14 November 2008 ; December , 2008 , Pages 346-351 ; 9781424424993 (ISBN) Rahimian, V ; Habibi, J ; Sharif University of Technology
    2008
    Abstract
    New Advances in mobile computer technology, along with rapid growth of quality and quantity of wireless networks, introduce new capabilities, applications, and concerns to computer science and industry. Unique requirements and constraints of mobile systems bring new challenges to software development for such environments. It demands reconsidering the traditional approaches of information access, software design, and performance evaluation. Despite the various constraints and problems, research endeavors aimed at ameliorating the status quo through enhancing/devising software design and performance evaluation techniques for mobile software systems have been relatively few and far in between.... 

    A novel method for modeling and evaluation of uncertain information systems

    , Article Proceedings - 11th International Conference on Information Technology, ICIT 2008, 17 December 2008 through 20 December 2008, Bhubaneswar ; 2008 , Pages 238-243 ; 9780769535135 (ISBN) Haroonabadi, A ; Teshnehlab, M ; Movaghar, A ; Sharif University of Technology
    2008
    Abstract
    None of the processing models in the software development has explained the software systems performance evaluation and modeling; likewise, there exist uncertainty in the information systems because of the natural essence of requirements and this may cause other challenges in the processing of software development. By the definition of UML extended version (Fuzzy UML), software functionality requirements that are stated in an uncertain way are supported; moreover, the concrete model is converted to formal model for modeling and performance evaluation of the software systems. This paper describes a methodology to develop a fuzzy coloured Petri net (F-CPN) model of a system. The F-CPN model... 

    Recasting constraint automata into Büchi automata

    , Article 5th International Colloquium on Theoretical Aspects of Computing, ICTAC 2008, Istanbul, 1 September 2008 through 3 September 2008 ; Volume 5160 LNCS , 2008 , Pages 156-170 ; 03029743 (ISSN) ; 3540857613 (ISBN); 9783540857617 (ISBN) Izadi, M ; Bonsangue, M. M ; Sharif University of Technology
    2008
    Abstract
    Constraint automata have been proposed as the operational semantics of Reo, a glue-code language for the exogenous composition and orchestration of components in a software system. In this paper we recast the theory of constraint automata into that of Büchi automata on infinite strings of records. We use records to express simultaneity constraints of I/O operations and show that every constraint automaton can be expressed as a Büchi automaton on an appropriate alphabet of records. Further, we give examples of component compositions that are expressible as Büchi automata but not as constraint automata. Finally, we show that the join composition operator for constraint automata and its... 

    Toward a new analyzable architectural description language based on OSAN

    , Article 2nd International Conference on Software Engineering Advances - ICSEA 2007, Cap Esterel, 25 August 2007 through 31 August 2007 ; 2007 ; 0769529372 (ISBN); 9780769529370 (ISBN) Kamandi, A ; Habibi, J ; Sharif University of Technology
    2007
    Abstract
    In the last two decades, a number of architecture-based software development notations, methods, techniques, and tools were formulated. Of particular interest to the software architecture researchers and practitioners were the notations and languages for modeling software architectures, known as ADLs. Object Stochastic Activity Network (OSAN) is a new model which inherits useful features from Petri nets, stochastic activity networks and queue networks, which made it a powerful and flexible tool to model concurrent systems and evaluate and verify them. This paper introduces OSAN as a new analyzable architecture description language, which can be used both for modeling architectural aspects of... 

    Towards a process factory for developing situational requirements engineering processes

    , Article Proceedings of the ACM Symposium on Applied Computing, 26 March 2012 through 30 March 2012 ; March , 2012 , Pages 1089-1090 ; 9781450308571 (ISBN) Jafarinezhad, O ; Ramsin, R ; Sharif University of Technology
    2012
    Abstract
    Selecting a suitable Requirements Engineering (RE) process is usually based on personal preferences or existing company practices rather than on the characteristics of the project at hand (project situation). Feature-oriented software development is the overall process of developing software systems in terms of their features. The Software Product Line (SPL) approach is a paradigm for systematic reuse of software products, and a Software Factory is a SPL aimed at the industrialization of software development. Based on the notion that a software/RE process can be developed via an engineering process, this research aims to provide a feature-based RE process factory to develop RE processes... 

    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... 

    Studying the relationship between the usage of APIS discussed in the crowd and post-release defects

    , Article Journal of Systems and Software ; Volume 170 , 2020 Tahmooresi, H ; Heydarnoori, A ; Nadri, R ; Sharif University of Technology
    Elsevier Inc  2020
    Abstract
    Software development nowadays is heavily based on libraries, frameworks and their proposed Application Programming Interfaces (APIs). However, due to challenges such as the complexity and the lack of documentation, these APIs may introduce various obstacles for developers and common defects in software systems. To resolve these issues, developers usually utilize Question and Answer (Q&A) websites such as Stack Overflow by asking their questions and finding proper solutions for their problems on APIs. Therefore, these websites have become inevitable sources of knowledge for developers, which is also known as the crowd knowledge. However, the relation of this knowledge to the software quality...