Loading...
Search for: software-engineering
0.008 seconds
Total 108 records

    Correction to: a lightweight signcryption scheme for defense against fragment duplication attack in the 6LoWPAN networks

    , Article Peer-to-Peer Networking and Applications ; 7 June , 2018 , Pages 1- ; 19366442 (ISSN) Nikravan, M ; Movaghar, A ; Hosseinzadeh, M ; Sharif University of Technology
    Springer New York LLC  2018
    Abstract
    The Publisher regrets an incorrect figure was placed in the pdf version of the article. © 2018 Springer Science+Business Media, LLC, part of Springer Nature  

    Emphasizing experiences in teaching software engineering courses

    , Article ICETC 2010 - 2010 2nd International Conference on Education Technology and Computer, 22 June 2010 through 24 June 2010 ; Volume 2 , 2010 , Pages V2149-V2153 ; 9781424463688 (ISBN) Mirian Hosseinabadi, S. H ; Aghakasiri, Z ; Sadeghi, A ; Delfani, P ; Ghandehari, M ; Sharif University of Technology
    Abstract
    Using software products as engineering artifacts is becoming more widespread in industry. It leads to increasing the need for training students and experts in the academic centers with software developing skills in accordance with the engineering principles and disciplines. However, one of the main challenges in the software engineering education is how to teach engineering disciplines to the students so that we can inspire the engineering concept to them. To do so if we use educational methods for teaching this course, which can show the usage of engineering disciplines to the students in practice and demonstrate the impact of their application on creating the engineered software products,... 

    Improvement strategies for Agile processes: A SWOT analysis approach

    , Article 6th ACIS International Conference on Software Engineering Research, Management and Applications, SERA 2008, Prague, 20 August 2008 through 22 August 2008 ; 2008 , Pages 221-228 ; 9780769533025 (ISBN) Yaghoubi Shahir, H ; Daneshpajouh, S ; Ramsin, R ; Sharif University of Technology
    2008
    Abstract
    Agile software development methodologies have been greeted with enthusiasm by many software developers, yet their widespread adoption has also resulted in closer examination of their strengths and weaknesses. While analyses and evaluations abound, the need still remains for an objective and systematic appraisal of Agile processes specifically aimed at defining strategies for their improvement. We provide a review of the strengths and weaknesses identified in Agile processes, based on which a Strengths-Weaknesses-Opportunities-Threats (SWOT) analysis of the processes is performed. We suggest this type of analysis as a useful tool for highlighting and addressing the problem issues in Agile... 

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

    GMWASC: Graph matching with weighted affine and sparse constraints

    , Article CSSE 2015 - 20th International Symposium on Computer Science and Software Engineering, 18 August 2015 ; 2015 ; 9781467391818 (ISBN) Taheri Dezaki , F ; Ghaffari, A ; Fatemizadeh, E ; Sharif University of Technology
    Institute of Electrical and Electronics Engineers Inc  2015
    Abstract
    Graph Matching (GM) plays an essential role in computer vision and machine learning. The ability of using pairwise agreement in GM makes it a powerful approach in feature matching. In this paper, a new formulation is proposed which is more robust when it faces with outlier points. We add weights to the one-to-one constraints, and modify them in the process of optimization in order to diminish the effect of outlier points in the matching procedure. We execute our proposed method on different real and synthetic databases to show both robustness and accuracy in contrast to several conventional GM methods  

    Change-request buffer role in configuration management process

    , Article International Conference on Software Engineering Theory and Practice 2010, SETP 2010, 12 July 2010 through 14 July 2010 ; 2010 , Pages 130-133 ; 9781617820731 (ISBN) Salajegheh, A ; Rastegari, Y ; Sayadiharikandeh, M ; Rastegari, S ; Sharif University of Technology
    Abstract
    CMMI is a unified model for software and system engineering in organizations. The initial CMM has been designed for software development. According to its successes, different models were developed by different groups such as: SECM, SACMM, IPDCMM, and FAAICMM. CMM Integration was introduced due to some problems such as lack of uniformity, overlapping, and incompatibility of mentioned models. Current paper is a research on CMMI, especially on configuration management process. We believe that accepting all change requests lead to ad-hoc versions and rejecting them lead to customer dissatisfaction. Therefore a Change-Request buffer is needed in configuration management process based on CMMI... 

    An introduction to the quantitative, rational and scientific process of software development (Part 2)

    , Article 6th International Conference on Software Methodologies, Tools and Techniques, SoMeT_07, Rome, 7 November 2007 through 9 November 2007 ; 2007 Koono, Z ; Chen, H ; Abolhassani, H ; Sharif University of Technology
    2007
    Abstract
    "Product" and "process" are two mutually orthogonal and important aspects of software. As Part 1 discusses "product", Part 2 discusses "process". "Process" is independent of "product" and is used commonly by various "producers". This paper first explains the structure of "process" and then introduces important technique by "divide and conquer". Various important management issues are discussed  

    An ensemble-based predictive mutation testing approach that considers impact of unreached mutants

    , Article Software Testing Verification and Reliability ; Volume 31, Issue 7 , 2021 ; 09600833 (ISSN) Aghamohammadi, A ; Mirian Hosseinabadi, S. H ; Sharif University of Technology
    John Wiley and Sons Ltd  2021
    Abstract
    Predictive mutation testing (PMT) is a technique to predict whether a mutant is killed, using machine learning approaches. Researchers have proposed various methods for PMT over the years. However, the impact of unreached mutants on PMT is not fully addressed. A mutant is unreached if the statement on which the mutant is generated is not executed by any test cases. We aim at showing that unreached mutants can inflate PMT results. Moreover, we propose an alternative approach to PMT, suggesting a different interpretation for PMT. To this end, we replicated the previous PMT research. We empirically evaluated the suggested approach on 654 Java projects provided by prior literature. Our results... 

    An ensemble-based predictive mutation testing approach that considers impact of unreached mutants

    , Article Software Testing Verification and Reliability ; Volume 31, Issue 7 , 2021 ; 09600833 (ISSN) Aghamohammadi, A ; Mirian Hosseinabadi, S. H ; Sharif University of Technology
    John Wiley and Sons Ltd  2021
    Abstract
    Predictive mutation testing (PMT) is a technique to predict whether a mutant is killed, using machine learning approaches. Researchers have proposed various methods for PMT over the years. However, the impact of unreached mutants on PMT is not fully addressed. A mutant is unreached if the statement on which the mutant is generated is not executed by any test cases. We aim at showing that unreached mutants can inflate PMT results. Moreover, we propose an alternative approach to PMT, suggesting a different interpretation for PMT. To this end, we replicated the previous PMT research. We empirically evaluated the suggested approach on 654 Java projects provided by prior literature. Our results... 

    Combination of car following and lane changing models as a drivers' optimization process

    , Article Proceedings of the Eighth International Conference on Applications of Advanced Technologies in Transportaion Engineering, Beijing, 26 May 2004 through 28 May 2004 ; 2004 , Pages 601-605 Hoseini, S. M. S ; Vaziri, M ; Shafahi, Y ; Sharif University of Technology
    ASCE - American Society of Civil Engineers  2004
    Abstract
    There are many reported researches considering movement behavior of vehicles. In these studies the two basic types of movement of a vehicle are longitudinal movement, car following, and lateral movement, lane changing. Dependency between car following and lane changing models and the fact that many of drivers does not consider driving lanes, necessitate developing of models that combine the car following and lane changing without considering the driving lanes. Utilizing computer simulation, the work can also be applied to conditions where lane disciplines are strictly observed. Microscopic simulation models considering the movement of individual vehicles in a traffic stream can be... 

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

    A FPGA based time analyser for stochastic methods in experimental physics

    , Article Instruments and Experimental Techniques ; Volume 58, Issue 3 , May , 2015 , Pages 350-358 ; 00204412 (ISSN) Arkani, M ; Khalafi, H ; Vosoughi, N ; Khakshournia, S ; Sharif University of Technology
    Maik Nauka Publishing / Springer SBM  2015
    Abstract
    A two-channel time analyser data acquisition system is developed for analysis of stochastic processes of random time interval pulses. The system is implemented on a typical low cost FPGA device. Two stochastic processes of nuclear interactions can be recorded by the system independently without any inter-channel dead time behaviour. The experimental results without any hardware based data reduction are transferred to the computer to perform arbitrary post analysis of the data using powerful software engineering tools to estimate the statistical properties of the processes. The performance of the system is verified experimentally. The maximum time digitization period and the minimum channel... 

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

    Using formal methods in component based software development

    , Article 2008 International Conference on Systems, Computing Sciences and Software Engineering, SCSS 2008, Part of the International Joint Conferences on Computer, Information, and Systems Sciences, and Engineering, CISSE 2008, 5 December 2013 through 13 December 2013 ; 2010 , Pages 429-432 ; 9789048136575 (ISBN) Shirali Shahreza, S ; Shirali Shahreza, M ; Sharif University of Technology
    2010
    Abstract
    Reusing the programs which have already been developed can shorten the production time and reduce costs and expenses. One of the important issues in software reuse is finding a program or a program component in a program library which has been already developed and using it in the new program. In view of precision and automation that formal methods can provide, we can use formal methods in retrieval appropriate components from the software libraries. In this paper, some of the works done in the field of retrieval of the components from the libraries by the help of formal methods have been surveyed and reviewed  

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

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

    Improving self-care and health literacy in hemodialysis patients: Using software engineering

    , Article Proceedings - 2012 7th International Conference on Computing and Convergence Technology (ICCIT, ICEI and ICACT), ICCCT 2012, 3 December 2012 through 5 December 2012 ; December , 2012 , Pages 317-320 ; 9788994364216 (ISBN) Shahbazi, B ; Edalat-Nejad, M ; Edalat-Nejad, N ; Sharif University of Technology
    2012
    Abstract
    The use of Computer Science in order to categorize and store information, improve diagnostic and therapeutic procedures, patient education and the training of a skilled labor force, has taken important steps and there are constantly new developments in this area  

    Envy free chain store pricing

    , Article 2011 CSI International Symposium on Computer Science and Software Engineering, CSSE 2011, 15 June 2011 through 16 June 2011 ; June , 2011 , Pages 44-47 ; 9781612842073 (ISBN) Fazli, M ; Nikparto, N ; Saghafian, M ; Sharif University of Technology
    2011
    Abstract
    In this paper we study envy free pricing problem in general graphs where there is not a seller in every graph's nodes. We assume unique establishment cost for initiating a store in each node and we wish to find an optimal set of nodes in which we would make the maximum profit by initiating stores in them. Our model is motivated from the observation that a same product has different prices in different locations and there is also an establishing cost for initiating any store. We consider both of these issues in our model: first where should we establish the stores, and second at what price should we sell our items in them to gain maximum possible profit. We prove that in a case of constant... 

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