for Journals by Title or ISSN
for Articles by Keywords

Publisher: Elsevier   (Total: 3175 journals)

 A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z  

        1 2 3 4 5 6 7 8 | Last   [Sort by number of followers]   [Restore default list]

Showing 1 - 200 of 3175 Journals sorted alphabetically
A Practical Logic of Cognitive Systems     Full-text available via subscription   (Followers: 8)
AASRI Procedia     Open Access   (Followers: 14)
Academic Pediatrics     Hybrid Journal   (Followers: 28, SJR: 1.402, h-index: 51)
Academic Radiology     Hybrid Journal   (Followers: 22, SJR: 1.008, h-index: 75)
Accident Analysis & Prevention     Partially Free   (Followers: 90, SJR: 1.109, h-index: 94)
Accounting Forum     Hybrid Journal   (Followers: 25, SJR: 0.612, h-index: 27)
Accounting, Organizations and Society     Hybrid Journal   (Followers: 33, SJR: 2.515, h-index: 90)
Achievements in the Life Sciences     Open Access   (Followers: 5)
Acta Anaesthesiologica Taiwanica     Open Access   (Followers: 6, SJR: 0.338, h-index: 19)
Acta Astronautica     Hybrid Journal   (Followers: 377, SJR: 0.726, h-index: 43)
Acta Automatica Sinica     Full-text available via subscription   (Followers: 2)
Acta Biomaterialia     Hybrid Journal   (Followers: 27, SJR: 2.02, h-index: 104)
Acta Colombiana de Cuidado Intensivo     Full-text available via subscription   (Followers: 2)
Acta de Investigación Psicológica     Open Access   (Followers: 3)
Acta Ecologica Sinica     Open Access   (Followers: 8, SJR: 0.172, h-index: 29)
Acta Haematologica Polonica     Free   (Followers: 1, SJR: 0.123, h-index: 8)
Acta Histochemica     Hybrid Journal   (Followers: 3, SJR: 0.604, h-index: 38)
Acta Materialia     Hybrid Journal   (Followers: 236, SJR: 3.683, h-index: 202)
Acta Mathematica Scientia     Full-text available via subscription   (Followers: 5, SJR: 0.615, h-index: 21)
Acta Mechanica Solida Sinica     Full-text available via subscription   (Followers: 9, SJR: 0.442, h-index: 21)
Acta Oecologica     Hybrid Journal   (Followers: 10, SJR: 0.915, h-index: 53)
Acta Otorrinolaringologica (English Edition)     Full-text available via subscription  
Acta Otorrinolaringológica Española     Full-text available via subscription   (Followers: 2, SJR: 0.311, h-index: 16)
Acta Pharmaceutica Sinica B     Open Access   (Followers: 1)
Acta Poética     Open Access   (Followers: 4)
Acta Psychologica     Hybrid Journal   (Followers: 25, SJR: 1.365, h-index: 73)
Acta Sociológica     Open Access  
Acta Tropica     Hybrid Journal   (Followers: 6, SJR: 1.059, h-index: 77)
Acta Urológica Portuguesa     Open Access  
Actas Dermo-Sifiliograficas     Full-text available via subscription   (Followers: 3)
Actas Dermo-Sifiliográficas (English Edition)     Full-text available via subscription   (Followers: 2)
Actas Urológicas Españolas     Full-text available via subscription   (Followers: 3, SJR: 0.383, h-index: 19)
Actas Urológicas Españolas (English Edition)     Full-text available via subscription   (Followers: 1)
Actualites Pharmaceutiques     Full-text available via subscription   (Followers: 5, SJR: 0.141, h-index: 3)
Actualites Pharmaceutiques Hospitalieres     Full-text available via subscription   (Followers: 3, SJR: 0.112, h-index: 2)
Acupuncture and Related Therapies     Hybrid Journal   (Followers: 6)
Acute Pain     Full-text available via subscription   (Followers: 14)
Ad Hoc Networks     Hybrid Journal   (Followers: 11, SJR: 0.967, h-index: 57)
Addictive Behaviors     Hybrid Journal   (Followers: 15, SJR: 1.514, h-index: 92)
Addictive Behaviors Reports     Open Access   (Followers: 7)
Additive Manufacturing     Hybrid Journal   (Followers: 9, SJR: 1.039, h-index: 5)
Additives for Polymers     Full-text available via subscription   (Followers: 22)
Advanced Cement Based Materials     Full-text available via subscription   (Followers: 3)
Advanced Drug Delivery Reviews     Hybrid Journal   (Followers: 129, SJR: 5.2, h-index: 222)
Advanced Engineering Informatics     Hybrid Journal   (Followers: 11, SJR: 1.265, h-index: 53)
Advanced Powder Technology     Hybrid Journal   (Followers: 16, SJR: 0.739, h-index: 33)
Advances in Accounting     Hybrid Journal   (Followers: 8, SJR: 0.299, h-index: 15)
Advances in Agronomy     Full-text available via subscription   (Followers: 12, SJR: 2.071, h-index: 82)
Advances in Anesthesia     Full-text available via subscription   (Followers: 27, SJR: 0.169, h-index: 4)
Advances in Antiviral Drug Design     Full-text available via subscription   (Followers: 2)
Advances in Applied Mathematics     Full-text available via subscription   (Followers: 10, SJR: 1.054, h-index: 35)
Advances in Applied Mechanics     Full-text available via subscription   (Followers: 10, SJR: 0.801, h-index: 26)
Advances in Applied Microbiology     Full-text available via subscription   (Followers: 22, SJR: 1.286, h-index: 49)
Advances In Atomic, Molecular, and Optical Physics     Full-text available via subscription   (Followers: 14, SJR: 3.31, h-index: 42)
Advances in Biological Regulation     Hybrid Journal   (Followers: 4, SJR: 2.277, h-index: 43)
Advances in Botanical Research     Full-text available via subscription   (Followers: 2, SJR: 0.619, h-index: 48)
Advances in Cancer Research     Full-text available via subscription   (Followers: 28, SJR: 2.215, h-index: 78)
Advances in Carbohydrate Chemistry and Biochemistry     Full-text available via subscription   (Followers: 7, SJR: 0.9, h-index: 30)
Advances in Catalysis     Full-text available via subscription   (Followers: 5, SJR: 2.139, h-index: 42)
Advances in Cell Aging and Gerontology     Full-text available via subscription   (Followers: 3)
Advances in Cellular and Molecular Biology of Membranes and Organelles     Full-text available via subscription   (Followers: 12)
Advances in Chemical Engineering     Full-text available via subscription   (Followers: 27, SJR: 0.183, h-index: 23)
Advances in Child Development and Behavior     Full-text available via subscription   (Followers: 10, SJR: 0.665, h-index: 29)
Advances in Chronic Kidney Disease     Full-text available via subscription   (Followers: 10, SJR: 1.268, h-index: 45)
Advances in Clinical Chemistry     Full-text available via subscription   (Followers: 28, SJR: 0.938, h-index: 33)
Advances in Colloid and Interface Science     Full-text available via subscription   (Followers: 19, SJR: 2.314, h-index: 130)
Advances in Computers     Full-text available via subscription   (Followers: 14, SJR: 0.223, h-index: 22)
Advances in Dermatology     Full-text available via subscription   (Followers: 14)
Advances in Developmental Biology     Full-text available via subscription   (Followers: 10)
Advances in Digestive Medicine     Open Access   (Followers: 8)
Advances in DNA Sequence-Specific Agents     Full-text available via subscription   (Followers: 5)
Advances in Drug Research     Full-text available via subscription   (Followers: 21)
Advances in Ecological Research     Full-text available via subscription   (Followers: 42, SJR: 3.25, h-index: 43)
Advances in Engineering Software     Hybrid Journal   (Followers: 27, SJR: 0.486, h-index: 10)
Advances in Experimental Biology     Full-text available via subscription   (Followers: 6)
Advances in Experimental Social Psychology     Full-text available via subscription   (Followers: 42, SJR: 5.465, h-index: 64)
Advances in Exploration Geophysics     Full-text available via subscription   (Followers: 1)
Advances in Fluorine Science     Full-text available via subscription   (Followers: 7)
Advances in Food and Nutrition Research     Full-text available via subscription   (Followers: 54, SJR: 0.674, h-index: 38)
Advances in Fuel Cells     Full-text available via subscription   (Followers: 15)
Advances in Genetics     Full-text available via subscription   (Followers: 14, SJR: 2.558, h-index: 54)
Advances in Genome Biology     Full-text available via subscription   (Followers: 7)
Advances in Geophysics     Full-text available via subscription   (Followers: 6, SJR: 2.325, h-index: 20)
Advances in Heat Transfer     Full-text available via subscription   (Followers: 21, SJR: 0.906, h-index: 24)
Advances in Heterocyclic Chemistry     Full-text available via subscription   (Followers: 9, SJR: 0.497, h-index: 31)
Advances in Human Factors/Ergonomics     Full-text available via subscription   (Followers: 23)
Advances in Imaging and Electron Physics     Full-text available via subscription   (Followers: 1, SJR: 0.396, h-index: 27)
Advances in Immunology     Full-text available via subscription   (Followers: 36, SJR: 4.152, h-index: 85)
Advances in Inorganic Chemistry     Full-text available via subscription   (Followers: 8, SJR: 1.132, h-index: 42)
Advances in Insect Physiology     Full-text available via subscription   (Followers: 2, SJR: 1.274, h-index: 27)
Advances in Integrative Medicine     Hybrid Journal   (Followers: 6)
Advances in Intl. Accounting     Full-text available via subscription   (Followers: 3)
Advances in Life Course Research     Hybrid Journal   (Followers: 8, SJR: 0.764, h-index: 15)
Advances in Lipobiology     Full-text available via subscription   (Followers: 1)
Advances in Magnetic and Optical Resonance     Full-text available via subscription   (Followers: 9)
Advances in Marine Biology     Full-text available via subscription   (Followers: 14, SJR: 1.645, h-index: 45)
Advances in Mathematics     Full-text available via subscription   (Followers: 10, SJR: 3.261, h-index: 65)
Advances in Medical Sciences     Hybrid Journal   (Followers: 6, SJR: 0.489, h-index: 25)
Advances in Medicinal Chemistry     Full-text available via subscription   (Followers: 5)
Advances in Microbial Physiology     Full-text available via subscription   (Followers: 4, SJR: 1.44, h-index: 51)
Advances in Molecular and Cell Biology     Full-text available via subscription   (Followers: 21)
Advances in Molecular and Cellular Endocrinology     Full-text available via subscription   (Followers: 8)
Advances in Molecular Toxicology     Full-text available via subscription   (Followers: 7, SJR: 0.324, h-index: 8)
Advances in Nanoporous Materials     Full-text available via subscription   (Followers: 3)
Advances in Oncobiology     Full-text available via subscription   (Followers: 1)
Advances in Organ Biology     Full-text available via subscription   (Followers: 1)
Advances in Organometallic Chemistry     Full-text available via subscription   (Followers: 15, SJR: 2.885, h-index: 45)
Advances in Parallel Computing     Full-text available via subscription   (Followers: 6, SJR: 0.148, h-index: 11)
Advances in Parasitology     Full-text available via subscription   (Followers: 5, SJR: 2.37, h-index: 73)
Advances in Pediatrics     Full-text available via subscription   (Followers: 24, SJR: 0.4, h-index: 28)
Advances in Pharmaceutical Sciences     Full-text available via subscription   (Followers: 10)
Advances in Pharmacology     Full-text available via subscription   (Followers: 15, SJR: 1.718, h-index: 58)
Advances in Physical Organic Chemistry     Full-text available via subscription   (Followers: 8, SJR: 0.384, h-index: 26)
Advances in Phytomedicine     Full-text available via subscription  
Advances in Planar Lipid Bilayers and Liposomes     Full-text available via subscription   (Followers: 3, SJR: 0.248, h-index: 11)
Advances in Plant Biochemistry and Molecular Biology     Full-text available via subscription   (Followers: 7)
Advances in Plant Pathology     Full-text available via subscription   (Followers: 5)
Advances in Porous Media     Full-text available via subscription   (Followers: 5)
Advances in Protein Chemistry     Full-text available via subscription   (Followers: 17)
Advances in Protein Chemistry and Structural Biology     Full-text available via subscription   (Followers: 18, SJR: 1.5, h-index: 62)
Advances in Psychology     Full-text available via subscription   (Followers: 59)
Advances in Quantum Chemistry     Full-text available via subscription   (Followers: 6, SJR: 0.478, h-index: 32)
Advances in Radiation Oncology     Open Access  
Advances in Small Animal Medicine and Surgery     Hybrid Journal   (Followers: 3, SJR: 0.1, h-index: 2)
Advances in Space Biology and Medicine     Full-text available via subscription   (Followers: 5)
Advances in Space Research     Full-text available via subscription   (Followers: 378, SJR: 0.606, h-index: 65)
Advances in Structural Biology     Full-text available via subscription   (Followers: 5)
Advances in Surgery     Full-text available via subscription   (Followers: 9, SJR: 0.823, h-index: 27)
Advances in the Study of Behavior     Full-text available via subscription   (Followers: 29, SJR: 1.321, h-index: 56)
Advances in Veterinary Medicine     Full-text available via subscription   (Followers: 17)
Advances in Veterinary Science and Comparative Medicine     Full-text available via subscription   (Followers: 13)
Advances in Virus Research     Full-text available via subscription   (Followers: 5, SJR: 1.878, h-index: 68)
Advances in Water Resources     Hybrid Journal   (Followers: 46, SJR: 2.408, h-index: 94)
Aeolian Research     Hybrid Journal   (Followers: 6, SJR: 0.973, h-index: 22)
Aerospace Science and Technology     Hybrid Journal   (Followers: 334, SJR: 0.816, h-index: 49)
AEU - Intl. J. of Electronics and Communications     Hybrid Journal   (Followers: 8, SJR: 0.318, h-index: 36)
African J. of Emergency Medicine     Open Access   (Followers: 6, SJR: 0.344, h-index: 6)
Ageing Research Reviews     Hybrid Journal   (Followers: 9, SJR: 3.289, h-index: 78)
Aggression and Violent Behavior     Hybrid Journal   (Followers: 432, SJR: 1.385, h-index: 72)
Agri Gene     Hybrid Journal  
Agricultural and Forest Meteorology     Hybrid Journal   (Followers: 15, SJR: 2.18, h-index: 116)
Agricultural Systems     Hybrid Journal   (Followers: 31, SJR: 1.275, h-index: 74)
Agricultural Water Management     Hybrid Journal   (Followers: 43, SJR: 1.546, h-index: 79)
Agriculture and Agricultural Science Procedia     Open Access   (Followers: 1)
Agriculture and Natural Resources     Open Access   (Followers: 2)
Agriculture, Ecosystems & Environment     Hybrid Journal   (Followers: 56, SJR: 1.879, h-index: 120)
Ain Shams Engineering J.     Open Access   (Followers: 5, SJR: 0.434, h-index: 14)
Air Medical J.     Hybrid Journal   (Followers: 5, SJR: 0.234, h-index: 18)
AKCE Intl. J. of Graphs and Combinatorics     Open Access   (SJR: 0.285, h-index: 3)
Alcohol     Hybrid Journal   (Followers: 11, SJR: 0.922, h-index: 66)
Alcoholism and Drug Addiction     Open Access   (Followers: 9)
Alergologia Polska : Polish J. of Allergology     Full-text available via subscription   (Followers: 1)
Alexandria Engineering J.     Open Access   (Followers: 1, SJR: 0.436, h-index: 12)
Alexandria J. of Medicine     Open Access   (Followers: 1)
Algal Research     Partially Free   (Followers: 9, SJR: 2.05, h-index: 20)
Alkaloids: Chemical and Biological Perspectives     Full-text available via subscription   (Followers: 2)
Allergologia et Immunopathologia     Full-text available via subscription   (Followers: 1, SJR: 0.46, h-index: 29)
Allergology Intl.     Open Access   (Followers: 5, SJR: 0.776, h-index: 35)
Alpha Omegan     Full-text available via subscription   (SJR: 0.121, h-index: 9)
ALTER - European J. of Disability Research / Revue Européenne de Recherche sur le Handicap     Full-text available via subscription   (Followers: 9, SJR: 0.158, h-index: 9)
Alzheimer's & Dementia     Hybrid Journal   (Followers: 48, SJR: 4.289, h-index: 64)
Alzheimer's & Dementia: Diagnosis, Assessment & Disease Monitoring     Open Access   (Followers: 4)
Alzheimer's & Dementia: Translational Research & Clinical Interventions     Open Access   (Followers: 4)
Ambulatory Pediatrics     Hybrid Journal   (Followers: 6)
American Heart J.     Hybrid Journal   (Followers: 50, SJR: 3.157, h-index: 153)
American J. of Cardiology     Hybrid Journal   (Followers: 50, SJR: 2.063, h-index: 186)
American J. of Emergency Medicine     Hybrid Journal   (Followers: 42, SJR: 0.574, h-index: 65)
American J. of Geriatric Pharmacotherapy     Full-text available via subscription   (Followers: 10, SJR: 1.091, h-index: 45)
American J. of Geriatric Psychiatry     Hybrid Journal   (Followers: 14, SJR: 1.653, h-index: 93)
American J. of Human Genetics     Hybrid Journal   (Followers: 31, SJR: 8.769, h-index: 256)
American J. of Infection Control     Hybrid Journal   (Followers: 26, SJR: 1.259, h-index: 81)
American J. of Kidney Diseases     Hybrid Journal   (Followers: 32, SJR: 2.313, h-index: 172)
American J. of Medicine     Hybrid Journal   (Followers: 42, SJR: 2.023, h-index: 189)
American J. of Medicine Supplements     Full-text available via subscription   (Followers: 3)
American J. of Obstetrics and Gynecology     Hybrid Journal   (Followers: 190, SJR: 2.255, h-index: 171)
American J. of Ophthalmology     Hybrid Journal   (Followers: 62, SJR: 2.803, h-index: 148)
American J. of Ophthalmology Case Reports     Open Access   (Followers: 6)
American J. of Orthodontics and Dentofacial Orthopedics     Full-text available via subscription   (Followers: 6, SJR: 1.249, h-index: 88)
American J. of Otolaryngology     Hybrid Journal   (Followers: 25, SJR: 0.59, h-index: 45)
American J. of Pathology     Hybrid Journal   (Followers: 27, SJR: 2.653, h-index: 228)
American J. of Preventive Medicine     Hybrid Journal   (Followers: 27, SJR: 2.764, h-index: 154)
American J. of Surgery     Hybrid Journal   (Followers: 36, SJR: 1.286, h-index: 125)
American J. of the Medical Sciences     Hybrid Journal   (Followers: 12, SJR: 0.653, h-index: 70)
Ampersand : An Intl. J. of General and Applied Linguistics     Open Access   (Followers: 6)
Anaerobe     Hybrid Journal   (Followers: 4, SJR: 1.066, h-index: 51)
Anaesthesia & Intensive Care Medicine     Full-text available via subscription   (Followers: 61, SJR: 0.124, h-index: 9)
Anaesthesia Critical Care & Pain Medicine     Full-text available via subscription   (Followers: 14)
Anales de Cirugia Vascular     Full-text available via subscription  
Anales de Pediatría     Full-text available via subscription   (Followers: 2, SJR: 0.209, h-index: 27)
Anales de Pediatría (English Edition)     Full-text available via subscription  
Anales de Pediatría Continuada     Full-text available via subscription   (SJR: 0.104, h-index: 3)
Analytic Methods in Accident Research     Hybrid Journal   (Followers: 4, SJR: 2.577, h-index: 7)
Analytica Chimica Acta     Hybrid Journal   (Followers: 39, SJR: 1.548, h-index: 152)
Analytical Biochemistry     Hybrid Journal   (Followers: 165, SJR: 0.725, h-index: 154)
Analytical Chemistry Research     Open Access   (Followers: 10, SJR: 0.18, h-index: 2)
Analytical Spectroscopy Library     Full-text available via subscription   (Followers: 11)
Anesthésie & Réanimation     Full-text available via subscription   (Followers: 1)
Anesthesiology Clinics     Full-text available via subscription   (Followers: 22, SJR: 0.421, h-index: 40)
Angiología     Full-text available via subscription   (SJR: 0.124, h-index: 9)
Angiologia e Cirurgia Vascular     Open Access   (Followers: 1)

        1 2 3 4 5 6 7 8 | Last   [Sort by number of followers]   [Restore default list]

Journal Cover Advances in Computers
  [SJR: 0.223]   [H-I: 22]   [14 followers]  Follow
   Full-text available via subscription Subscription journal
   ISSN (Print) 0065-2458
   Published by Elsevier Homepage  [3175 journals]
  • Event-Based Concurrency: Applications, Abstractions, and Analyses
    • Authors: Aditya Kanade
      Abstract: Publication date: Available online 26 February 2018
      Source:Advances in Computers
      Author(s): Aditya Kanade
      Due to the increased emphasis on responsiveness, event-based design has become mainstream in software development. Software applications are required to maintain responsiveness even while performing multiple tasks simultaneously. This has resulted in the adoption of a combination of thread and event-based concurrency in modern software such as smartphone applications. In this chapter, we present the fundamental programming and semantic concepts in the combined concurrency model of threads and events. The paradigm of event-based concurrency cuts across programming languages and application frameworks. We give a flavor of event-driven programming in a few languages and application frameworks. The mix of threads and events complicates reasoning about correctness of applications under all possible interleavings. We discuss advances in the core concurrency analysis techniques for event-driven applications with focus on happens-before analysis, race detection, and model checking. We also survey other analysis techniques and related programming abstractions.

      PubDate: 2018-02-26T18:04:22Z
      DOI: 10.1016/bs.adcom.2017.12.006
  • NoSQL Security
    • Authors: Neha Gupta; Rashmi Agrawal
      Abstract: Publication date: Available online 26 February 2018
      Source:Advances in Computers
      Author(s): Neha Gupta, Rashmi Agrawal
      The increased demand of Big Data and Cloud Computing technologies has forced the organizations to move from relational databases to nonrelational databases like NoSQL. A NoSQL database, also referred as non-SQL or nonrelational or not only SQL database, is scalable, distributed, and highly reliable and has been designed to support the requirements of modern web-based applications. However, security remains a very challenging issue even in NoSQL database as security challenges that were inherent in the previous databases have not spared even NoSQL. The key for ensuring adequate security of the NoSQL database system is a detailed consideration of security issues for the NoSQL database solution and implementation of corresponding security mechanisms. The aim of this chapter is to discuss security issues inherent in NoSQL databases and further explore it to find the best security mechanism for this environment. In this chapter, we will deliberate upon various security threats of NoSQL databases, security architecture of NoSQL databases, and the steps that can be taken to secure the NoSQL database. A comparative study of Relational & NoSQL database is also given to provide a better understanding of the databases, their relative advantages, and the security pitfalls. The technology/technical terms used in this book chapter are explained wherever they appear and at the “Glossary” section. At the end of the chapter, references are included for further reading for the benefit of advanced readers.

      PubDate: 2018-02-26T18:04:22Z
      DOI: 10.1016/bs.adcom.2018.01.003
  • Model-Based Test Cases Reuse and Optimization
    • Authors: Mohamed Mussa; Ferhat Khendek
      Abstract: Publication date: Available online 22 February 2018
      Source:Advances in Computers
      Author(s): Mohamed Mussa, Ferhat Khendek
      Several test generation techniques have been proposed in the literature. These techniques target separately specific levels of testing without relating them to each other in order to avoid redundancy and enable reuse and optimization. In this chapter, we look into connecting different levels of testing. We propose a model-based testing framework that enables reusability and optimization across different levels of testing. Test cases at one level are reused to generate test cases of subsequent levels of testing. Furthermore, test cases at one level are optimized by relating them to test cases of preceding testing levels and removed if they are found redundant.

      PubDate: 2018-02-26T18:04:22Z
      DOI: 10.1016/bs.adcom.2018.01.001
  • Advances in Techniques for Test Prioritization
    • Authors: Hadi Hemmati
      Abstract: Publication date: Available online 14 February 2018
      Source:Advances in Computers
      Author(s): Hadi Hemmati
      With the increasing size of software systems and the continuous changes that are committed to the software's codebase, regression testing has become very expensive for real-world software applications. Test case prioritization is a classic solution in this context. Test case prioritization is the process of ranking existing test cases for execution with the goal of finding defects sooner. It is useful when the testing budget is limited and one needs to limit their test execution cost, by only running top n test cases, according to the testing budget. There are many heuristics and algorithms to rank test cases. In this chapter, we will see some of the most common test case prioritization techniques from software testing literature as well as trends and advances in this domain.

      PubDate: 2018-02-26T18:04:22Z
      DOI: 10.1016/bs.adcom.2017.12.004
  • Mobile Application Quality Assurance
    • Authors: Konstantin Holl; Frank Elberzhager
      Abstract: Publication date: Available online 13 February 2018
      Source:Advances in Computers
      Author(s): Konstantin Holl, Frank Elberzhager
      Mobile applications have become highly pervasive in recent years. Their quality is essential since application failures can lead to serious consequences, such as damage of corporate reputation or financial loss. The goal of this work is to identify and expose approaches that address the issue of quality assurance for mobile applications. In order to drive our systematic mapping study, we derived eight research questions based on the stated goal. Ultimately, we systematically identified 311 articles based on 4607 captured records. We created clustered views to answer the research questions and used existing surveys to complement our overview of current challenges. The results show an overall upward trend of publications since 2003. Hot topics include automation of GUI tests and assurance of nonfunctional qualities. Aspects of future research could be the integration of review techniques into existing approaches and focusing more strongly on defects addressing the specific characteristics of mobile applications.

      PubDate: 2018-02-26T18:04:22Z
      DOI: 10.1016/bs.adcom.2017.12.001
  • Advances in Combinatorial Testing
    • Authors: Rachel Tzoref-Brill
      Abstract: Publication date: Available online 12 February 2018
      Source:Advances in Computers
      Author(s): Rachel Tzoref-Brill
      Since their introduction into software testing in the mid-1980s, combinatorial methods for test design gathered popularity as a testing best practice and as a prominent software testing research area. This chapter reviews recent advances in combinatorial testing, with special focus on the research since 2011. It provides a brief background on the theory behind combinatorial testing and on its use in practice. Requirements from industry usage have led to advances in various areas examined in this chapter, including constraints handling in combinatorial algorithms, support for the combinatorial modeling process, and studies on metrics to support the effectiveness of combinatorial testing. We also highlight recent case studies describing novel use cases for test and field quality improvement in the context of system test, and for optimization of test data. Finally, we examine recent developments in advanced topics such as utilization of existing tests, test case prioritization, fault localization, and evolution of combinatorial models.

      PubDate: 2018-02-26T18:04:22Z
      DOI: 10.1016/bs.adcom.2017.12.002
  • A Taxonomy of Software Integrity Protection Techniques
    • Authors: Mohsen Ahmadvand; Alexander Pretschner; Florian Kelbert
      Abstract: Publication date: Available online 12 February 2018
      Source:Advances in Computers
      Author(s): Mohsen Ahmadvand, Alexander Pretschner, Florian Kelbert
      Tampering with software by man-at-the-end (MATE) attackers is an attack that can lead to security circumvention, privacy violation, reputation damage, and revenue loss. In this model, adversaries are end users who have full control over software as well as its execution environment. This full control enables them to tamper with programs to their benefit and to the detriment of software vendors or other end users. Software integrity protection research seeks for means to mitigate those attacks. Since the seminal work of Aucsmith, a great deal of research effort has been devoted to fight MATE attacks, and many protection schemes were designed by both academia and industry. Advances in trusted hardware, such as TPM and Intel SGX, have also enabled researchers to utilize such technologies for additional protection. Despite the introduction of various protection schemes, there is no comprehensive comparison study that points out advantages and disadvantages of different schemes. Constraints of different schemes and their applicability in various industrial settings have not been studied. More importantly, except for some partial classifications, to the best of our knowledge, there is no taxonomy of integrity protection techniques. These limitations have left practitioners in doubt about effectiveness and applicability of such schemes to their infrastructure. In this work, we propose a taxonomy that captures protection processes by encompassing system, defense and attack perspectives. Later, we carry out a survey and map reviewed papers on our taxonomy. Finally, we correlate different dimensions of the taxonomy and discuss observations along with research gaps in the field.

      PubDate: 2018-02-26T18:04:22Z
      DOI: 10.1016/bs.adcom.2017.12.007
  • Advances in Applications of Object Constraint Language for Software
    • Authors: Atif A. Jilani; Muhammad Z. Iqbal; Muhammad U. Khan; Muhammad Usman
      Abstract: Publication date: Available online 7 February 2018
      Source:Advances in Computers
      Author(s): Atif A. Jilani, Muhammad Z. Iqbal, Muhammad U. Khan, Muhammad Usman
      Object Constraint Language (OCL) is a standard language defined by Object Management Group for specifying constraints on models. Since its introduction as part of Unified Modeling Language, OCL has received significant attention by researchers with works in the literature ranging from temporal extensions of OCL to automated test generation by solving OCL constraints. In this chapter, we provide a survey of the various works discussed in literature related to OCL with the aim of highlighting the advances made in the field. We classify the literature into five broad categories and provide summaries for various works in the literature. The chapter also provides insights and highlights the potentials areas of further research in the field.

      PubDate: 2018-02-26T18:04:22Z
      DOI: 10.1016/bs.adcom.2017.12.003
  • Emerging Software Testing Technologies
    • Authors: Francesca Lonetti; Eda Marchetti
      Abstract: Publication date: Available online 5 January 2018
      Source:Advances in Computers
      Author(s): Francesca Lonetti, Eda Marchetti
      Software testing encompasses a variety of activities along the software development process and may consume a large part of the effort required for producing software. It represents a key aspect to assess the adequate functional and nonfunctional software behavior aiming to prevent and remedy malfunctions. The increasing complexity and heterogeneity of software poses many challenges to the development of testing strategies and tools. In this chapter, we provide a comprehensive overview of emerging software testing technologies. Beyond the basic concepts of software testing, we address prominent test case generation approaches and focus on more relevant challenges of testing activity as well as its role in recent development processes. An emphasis is also given to testing solutions tailored to the specific needs of emerging application domains.

      PubDate: 2018-02-05T09:02:43Z
      DOI: 10.1016/bs.adcom.2017.11.003
  • Advances in Software Model Checking
    • Authors: Junaid H. Siddiqui; Affan Rauf; Maryam A. Ghafoor
      Abstract: Publication date: Available online 29 December 2017
      Source:Advances in Computers
      Author(s): Junaid H. Siddiqui, Affan Rauf, Maryam A. Ghafoor
      Society is becoming increasingly dependent on software which results in an increasing cost of software malfunction. At the same time, software is getting increasingly complex and testing and verification are becoming harder and harder. Software model checking is a set of techniques to automatically check properties in a model of the software. The properties can be written in specialized languages or be embedded in software in the form of exceptions or assertions. The model can be explicitly provided in a specification language, can be derived from the software system, or the software system itself can be used as a model. Software model checkers check the given properties in a large number of states of the model. If a model checker is able to verify a property on all model states, it is proven that the property holds and the model checker works like a theorem prover. If a model checker is unable to verify a property on all model states, the model checker is still an efficient automated testing technique. This chapter discusses advances in software model checking and focuses on techniques that use the software as its model and embedded exceptions or assertions as the properties to be verified. Such techniques are most likely to be widespread in the software industry in the coming decade due to their minimal overhead on the programmer and due to recent advances in research making these techniques scale.

      PubDate: 2018-02-05T09:02:43Z
      DOI: 10.1016/bs.adcom.2017.11.001
  • Chapter One Pitfalls and Countermeasures in Software Quality Measurements
           and Evaluations
    • Authors: Hironori Washizaki
      Pages: 1 - 22
      Abstract: Publication date: 2017
      Source:Advances in Computers, Volume 107
      Author(s): Hironori Washizaki
      This chapter discusses common pitfalls and their countermeasures in software quality measurements and evaluations based on research and practical achievements. The pitfalls include negative Hawthorne effects, organization misalignment, uncertain future, and self-certified quality. Corresponding countermeasures include goal-oriented multidimensional measurements, alignment visualization and exhaustive identification of rationales, prediction incorporating uncertainty and machine learning-based measurement improvement, and standard/pattern-based evaluation.

      PubDate: 2017-09-13T01:52:15Z
      DOI: 10.1016/bs.adcom.2017.06.003
      Issue No: Vol. 107 (2017)
  • Chapter Three Testing the Control-Flow, Data-Flow, and Time Aspects of
           Communication Systems: A Survey
    • Authors: Rachida Dssouli; Ahmed Khoumsi; Mounia Elqortobi; Jamal Bentahar
      Pages: 95 - 155
      Abstract: Publication date: 2017
      Source:Advances in Computers, Volume 107
      Author(s): Rachida Dssouli, Ahmed Khoumsi, Mounia Elqortobi, Jamal Bentahar
      Communication software systems are considered as critical national infrastructures that support users, corporations, and governments. Their description, implementation, and testing are subject to verification by standardization bodies. Formal models have been investigated to establish the conformity of communication protocols to these systems’ standards over the past four decades, including Finite State Machine (FSM) models for control aspects, Extended Finite State Machine (EFSM) models for both the control-flow and the data-flow aspects, and Timed Automata (TA) for modeling the time aspect. Testing is a labor-intensive activity within a system's life cycle. It is a part of software quality assurance and claims a large portion of the total development cycle. Testing automation will enhance both product quality and budget optimization. This chapter provides a survey of control-flow, data-flow, and time aspects of test sequence generation approaches for communication software systems.

      PubDate: 2017-09-13T01:52:15Z
      DOI: 10.1016/bs.adcom.2017.06.002
      Issue No: Vol. 107 (2017)
  • Chapter Four Advances in Testing Software Product Lines
    • Authors: Hartmut Lackner; Bernd-Holger Schlingloff
      Pages: 157 - 217
      Abstract: Publication date: 2017
      Source:Advances in Computers, Volume 107
      Author(s): Hartmut Lackner, Bernd-Holger Schlingloff
      In this chapter, we describe some recent techniques and results in model-based testing of software product lines. Presently, more and more software-based products and services are available in many different variants to choose from. However, this brings about challenges for the software quality assurance processes. Since only few of all possible variants can be tested at the developer's site, several questions arise. How shall the variability be described in order to make sure that all features are being tested' Is it better to test selected variants on a concrete level, or shall the whole software product line be tested abstractly' What is the quality of a test suite for a product line, anyway' If it is impossible to test all possible variants, which products should be selected for testing' Given a certain product, which test cases are appropriate for it, and given a test case, which products can be tested with it' We address these questions from an empirical software engineering point of view. We sketch modeling formalisms for software product lines. Then, we compare domain-centered and application-centered approaches to software product line testing. We define mutation operators for assessing software product line test suites. Subsequently, we analyze methods for selecting product variants on the basis of a given test suite. Finally, we show how model checking can be used to determine whether a certain test case is applicable for a certain product variant. For all our methods we describe supporting tools and algorithms. Currently, we are integrating these in an integrated tool suite supporting several aspects of model-based testing for software product lines.

      PubDate: 2017-09-13T01:52:15Z
      DOI: 10.1016/bs.adcom.2017.07.001
      Issue No: Vol. 107 (2017)
  • Chapter Five Advances in Model-Based Testing of Graphical User Interfaces
    • Authors: Fevzi Belli; Mutlu Beyazıt; Christof J. Budnik; Tugkan Tuglular
      Pages: 219 - 280
      Abstract: Publication date: 2017
      Source:Advances in Computers, Volume 107
      Author(s): Fevzi Belli, Mutlu Beyazıt, Christof J. Budnik, Tugkan Tuglular
      Graphical user interfaces (GUIs) enable comfortable interactions of the computer-based systems with their environment. Large systems usually require complex GUIs, which are commonly fault prone and thus are to be carefully designed, implemented, and tested. As a thorough testing is not feasible, techniques are favored to test relevant features of the system under test that will be specifically modeled. This chapter summarizes, reviews, and exemplifies conventional and novel techniques for model-based GUI testing.

      PubDate: 2017-09-13T01:52:15Z
      DOI: 10.1016/bs.adcom.2017.06.004
      Issue No: Vol. 107 (2017)
  • Model-Based Testing for Internet of Things Systems
    • Authors: Abbas Ahmad; Fabrice Bouquet; Elizabeta Fourneret; Bruno Legeard
      Abstract: Publication date: Available online 23 December 2017
      Source:Advances in Computers
      Author(s): Abbas Ahmad, Fabrice Bouquet, Elizabeta Fourneret, Bruno Legeard
      The Internet of Things (IoT) is nowadays globally a mean of innovation and transformation for many companies. Applications extend to a large number of domains, such as smart cities, smart homes, and health care. The Gartner Group estimates an increase up to 21 billion connected things by 2020. The large span of “things” introduces problematic aspects, such as interoperability due to the heterogeneity of communication protocols and the lack of a globally accepted standard. The large span of usages introduces problems regarding secure deployments and scalability of the network over large-scale infrastructures. This chapter describes the challenges for the IoT testing, includes state-of-the-art testing of IoT systems using models, and presents a model-based testing as a service approach to respond to its challenges through demonstrations with real use cases involving two of the most accepted standards worldwide: FIWARE and oneM2M.

      PubDate: 2017-12-26T15:04:33Z
      DOI: 10.1016/bs.adcom.2017.11.002
  • Optimizing the Symbolic Execution of Evolving Rhapsody Statecharts
    • Authors: Amal Khalil; Juergen Dingel
      Abstract: Publication date: Available online 6 December 2017
      Source:Advances in Computers
      Author(s): Amal Khalil, Juergen Dingel
      Model-driven engineering (MDE) is an iterative and incremental software development process. Supporting the analysis and the verification of software systems developed following the MDE paradigm requires to adopt incrementality when carrying out these crucial tasks in a more optimized way. Communicating state machines are one of the various formalisms used in MDE tools to model and describe the behavior of distributed, concurrent, and real-time reactive systems (e.g., automotive and avionics systems). Modeling the overall behavior of such systems is carried out in a modular way and on different levels of abstraction (i.e., it starts with modeling the behavior of the individual objects in the system first then modeling the interaction between these objects). Similarly, analyzing and verifying the correctness of the developed models to ensure their quality and their integrity is performed on two main levels. The intralevel is used to analyze the correctness of the individual models in isolation of the others, while the interlevel is used to analyze the overall interoperability of those that are communicating with each other. One way to facilitate the analysis of the overall behavior of a system of communicating state machines is to build the global state space (also known as the global reachability tree) of the system. This process is very expensive and in some cases it may suffer from the state explosion problem. Symbolic execution is a technique that can be used to construct an abstract and a bounded version of the system global state space that is known as a symbolic execution tree (SET), yet the size of the generated trees can be very large especially with big and complex systems that are composed of multiple objects. As the system evolves, one way to avoid regenerating the entire SET and repeating any SET-based analyses that have been already conducted is to utilize the previous SET and its analysis results in optimizing the process of generating the SET of the system after the change. In this chapter, we propose two optimization techniques to direct the successive runs of the symbolic execution technique toward the impacted parts of an evolving state machine model using memoization (MSE) and dependency analysis (DSE), respectively. The evaluation results of both techniques showed significant reduction in some cases compared with the standard symbolic execution technique.

      PubDate: 2017-12-12T10:06:41Z
      DOI: 10.1016/bs.adcom.2017.09.003
  • A Tutorial on Software Obfuscation
    • Authors: Sebastian Banescu; Alexander Pretschner
      Abstract: Publication date: Available online 15 November 2017
      Source:Advances in Computers
      Author(s): Sebastian Banescu, Alexander Pretschner
      Protecting a digital asset once it leaves the cyber trust boundary of its creator is a challenging security problem. The creator is an entity which can range from a single person to an entire organization. The trust boundary of an entity is represented by all the (virtual or physical) machines controlled by that entity. Digital assets range from media content to code and include items such as: music, movies, computer games, and premium software features. The business model of the creator implies sending digital assets to end-users—such that they can be consumed—in exchange for some form of compensation. A security threat in this context is represented by malicious end-users, who attack the confidentiality or integrity of digital assets, in detriment to digital asset creators and/or other end-users. Software obfuscation transformations have been proposed to protect digital assets against malicious end-users, also called Man-At-The-End (MATE) attackers. Obfuscation transforms a program into a functionally equivalent program which is harder for MATE to attack. However, obfuscation can be use both for benign and malicious purposes. Malware developers rely on obfuscation techniques to circumvent detection mechanisms and to prevent malware analysts from understanding the logic implemented by the malware. This chapter presents a tutorial of the most popular existing software obfuscation transformations and mentions published attacks against each transformation. We present a snapshot of the field of software obfuscation and indicate possible directions, which require more research.

      PubDate: 2017-12-12T10:06:41Z
      DOI: 10.1016/bs.adcom.2017.09.004
  • NoSQL Polyglot Persistence
    • Authors: Ganesh Chandra Deka
      Abstract: Publication date: Available online 6 November 2017
      Source:Advances in Computers
      Author(s): Ganesh Chandra Deka
      Polyglot persistence facilitates use of most suitable database technology based on the requirement of an application. There are lots of use cases as well as huge potential for Polyglot Persistence in e-Commerce web portals, Search Engines, and Healthcare Information Ecosystem applications. But, designing and implementation of an application in a Polyglot environment is not a straightforward task, since adding more data storage technologies increases complexity in programming. Further knowledge of multiple programming languages, maintainability of the Polyglot application, and tool support for Polyglot persistence are the challenges of Polyglot Persistence. This chapter discusses the various aspects of Polyglot persistence with a focus on NoSQL database.

      PubDate: 2017-11-08T15:53:39Z
      DOI: 10.1016/bs.adcom.2017.08.003
  • NoSQL Hands On
    • Authors: Rebika Rai; Prashant Chettri
      Abstract: Publication date: Available online 19 October 2017
      Source:Advances in Computers
      Author(s): Rebika Rai, Prashant Chettri
      With the expansion of huge and complex real-time data that is wandering across the internet today, the dimensions of data transmitted are escalating exponentially with each passing years. This makes working with standard database systems or on personal computers difficult because of its inability to handle outsized, unstructured, and complicated data. Various institutes store and use massive amounts of data which are further utilized for generating reports to guarantee stability regarding the services they propose. However, the challenge is how to analyze, capture, share, store, transfer, visualize, query, update, and finally manipulate an impressive volume of data that have to be delivered through the internet to reach its destination intact maintaining its information privacy. Almost all the applications developed using any programming languages require some external component to store and access data. The components for the same could be a local network, a cloud file, or even a database. While sources like the network and cloud file systems store the unstructured data, the structured data are usually stored in a typical relational database management system (RDBMS). Usually it is a time-consuming process to define, structure, distribute, and access data from RDBMS through SQL and hence, an alternative was developed for this called the NoSQL (“Non SQL,” “Nonrelational,” or “Not only SQL”) database. NoSQL encompasses a wide variety of different database technologies that were developed in response to the demands presented in building modern applications wherein developers are working with applications that create massive volumes of new, rapidly changing data types structured, semistructured, unstructured, and polymorphic data. Applications that once served a finite audience are now delivered as services that must be always-on, accessible from many different devices, and scaled globally to millions of users. Organizations are now turning to scale-out architectures using open source software, commodity servers, and cloud computing instead of large monolithic servers and storage infrastructure. There are several categories of NoSQL databases. Each of these categories has its own specific attributes and limitations. There is not a single solution which is better than all the others; however, there are some databases that are better to solve specific problems. This chapter provides NoSQL hands on and attention has been paid to various types of NoSQL databases such as MongoDB, CloudDB, OrientDB, Cloudant, Neo4j, Redis, Aerospike, InfluxDB, and MariaDB, focusing on the details such as installation steps, setting environment, and various operations performed on various types of NoSQL databases.

      PubDate: 2017-10-25T10:02:04Z
      DOI: 10.1016/bs.adcom.2017.08.004
  • The Hadoop Ecosystem Technologies and Tools
    • Authors: Pethuru Raj Chelliah
      Abstract: Publication date: Available online 16 October 2017
      Source:Advances in Computers
      Author(s): Pethuru Raj Chelliah
      There are several interesting and inspiring trends and transitions succulently happening in the business as well as IT spaces. One noteworthy factor and fact is that there are fresh data sources emerging and pouring out a lot of usable and reusable data. With the number of different, distributed, and decentralized data sources is consistently on the rise, the resulting data scope, size, structure, schema, and speed are greatly changing and challenging too. The other dominant and prominent aspects include polyglot microservices are solidifying deeply as the new building and deployment/execution block in the software world toward the much-needed accelerated software design, development, deployment, and delivery. The device ecosystem expands frenetically with the arrival of trendy and handy, slim and sleek, disappearing and disposable gadgets, gizmos thereby ubiquitous (anywhere, anytime, and any device) access, and usage of web-scale information, content, and services get fructified. Finally, all sorts of casually found and cheap articles in our everyday environments (homes, hotels, hospitals, etc.) are being systematically digitized and service enabled in order to exhibit a kind of real-world smartness and sagacity in their individual as well as collective actions and reactions. Thus trillions of digitized objects, billions of connected devices, and millions of polyglot software services are bound to interact insightfully with one another over locally as well as with remote ones over any networks purposefully. And hence the amount of transactional, operational, analytical, commercial, social, personal, and professional data created through a growing array of interactions and collaborations is growing very rapidly. Now if the data getting collected, processed, and stocked are not subjected to deeper, deft, and decisive investigations, then the tactically as well as strategically sound knowledge (the beneficial patterns, tips, techniques, associations, alerts, risk factors, fresh opportunities, possibilities, etc.) hidden inside the data heaps goes unused literally. For collecting, stocking, and processing such a large amount of multistructured data, the traditional databases, analytics platforms, the ETL tools, etc., are found insufficient. Hence the Apache Hadoop ecosystem technologies and tools are being touted as the best way forward to squeeze out the right and relevant knowledge. In this chapter, you can find the details about the emerging technologies and platforms for spearheading the big data movement.

      PubDate: 2017-10-18T04:25:22Z
      DOI: 10.1016/bs.adcom.2017.09.002
  • Comparative Study of Different In-Memory (No/New) SQL Databases
    • Authors: Krishnarajanagar Srinivasa; Srinidhi Hiriyannaiah
      Abstract: Publication date: Available online 6 October 2017
      Source:Advances in Computers
      Author(s): Krishnarajanagar G. Srinivasa, Srinidhi Hiriyannaiah
      With the advancement and changes in the hardware, availability of data, collection of data at a faster rate, emerging applications; database systems have been evolving over the last few decades. The application areas where the databases are used have moved over from relational data to graph-based data and stream data. The expanding cloud computing services that use internet and require big data has come upfront due to data-intensive computing problems. Social media companies such as Amazon, Facebook, Google use the world wide web as a large distributed data repository. This large data repository on the web cannot be processed with traditional RDBMS systems. In-memory databases play a key role in the upcoming years for processing data that is huge in volume with wide variety of data formats. In this chapter, an overview around in-memory databases with advanced processing, techniques, case studies are presented.

      PubDate: 2017-10-11T00:35:09Z
  • NoSQL Web Crawler Application
    • Authors: Ganesh Chandra Deka
      Abstract: Publication date: Available online 21 September 2017
      Source:Advances in Computers
      Author(s): Ganesh Chandra Deka
      With the advent of Web technology, the Web is full of unstructured data called Big Data. However, these data are not easy to collect, access, and process at large scale. Web Crawling is an optimization problem. Site-specific crawling of various social media platforms, e-Commerce websites, Blogs, News websites, and Forums is a requirement for various business organizations to answer a search quarry from webpages. Indexing of huge number of webpage requires a cluster with several petabytes of usable disk. Since the NoSQL databases are highly scalable, use of NoSQL database for storing the Crawler data is increasing along with the growing popularity of NoSQL databases. This chapter discusses about the application of NoSQL database in Web Crawler application to store the data collected by the Web Crawler.

      PubDate: 2017-09-25T17:25:36Z
      DOI: 10.1016/bs.adcom.2017.08.001
  • Biological Big Data Analytics
    • Authors: Mohammad Samadi Gharajeh
      Abstract: Publication date: Available online 12 September 2017
      Source:Advances in Computers
      Author(s): Mohammad Samadi Gharajeh
      Big data analytics uses efficient analytic techniques to discover hidden patterns, correlations, and other insights from big data. It brings significant cost advantages, enhances the performance of decision making, and creates new products to meet customers’ needs. This method has various applications in plants, bioinformatics, healthcare, etc. It can be improved with various techniques such as machine learning, intelligent tools, and network analysis. This chapter describes applications of big data analytics in biological systems. These applications can be conducted in systems biology by using cloud-based databases (e.g., NoSQL). The chapter explains the improvement of big data technology in plants community with machine learning. Furthermore, it presents various tools to apply big data analytics in bioinformatics systems. Medical signal and genomics are two major fields in healthcare environments that would be improved by this type of analytical method. Finally, the chapter discusses on several use cases of healthcare information system.

      PubDate: 2017-09-13T01:52:15Z
      DOI: 10.1016/bs.adcom.2017.08.002
  • Uncertainty-Wise Testing of Cyber-Physical Systems
    • Authors: Shaukat Ali; Hong Lu; Shuai Wang; Tao Yue; Man Zhang
      Abstract: Publication date: Available online 24 July 2017
      Source:Advances in Computers
      Author(s): Shaukat Ali, Hong Lu, Shuai Wang, Tao Yue, Man Zhang
      As compared with classical software/system testing, uncertainty-wise testing explicitly addresses known uncertainty about the behavior of a System Under Test (SUT), its operating environment, and interactions between the SUT and its operational environment, across all testing phases, including test design, test generation, test optimization, and test execution, with the aim to mainly achieve the following two goals. First, uncertainty-wise testing aims to ensure that the SUT deals with known uncertainty adequately. Second, uncertainty-wise testing should be also capable of learning new (previously unknown) uncertainties such that the SUT's implementation can be improved to guard against newly learned uncertainties during its operation. The necessity to integrate uncertainty in testing is becoming imperative because of the emergence of new types of intelligent and communicating software-based systems such as Cyber-Physical Systems (CPSs). Intrinsically, such systems are exposed to uncertainty because of their interactions with highly indeterminate physical environments. In this chapter, we provide our understanding and experience of uncertainty-wise testing from the aspects of uncertainty-wise model-based testing, uncertainty-wise modeling and evolution of test ready models, and uncertainty-wise multiobjective test optimization, in the context of testing CPSs under uncertainty. Furthermore, we present our vision about this new testing paradigm and its plausible future research directions.

      PubDate: 2017-07-28T05:09:50Z
      DOI: 10.1016/bs.adcom.2017.06.001
  • Adaptation and Evaluation of the Simplex Algorithm for a Data-Flow
    • Authors: Jurij
      Abstract: Publication date: Available online 13 June 2017
      Source:Advances in Computers
      Author(s): Uroš Čibej, Jurij Mihelič
      The main goal of this chapter is to present a novel adaptation of the classical simplex algorithm for a data-flow architecture. Due to the recent reemergence of the data-flow paradigm, most of the algorithms need to be reengineered in order to use the features of the new platform. By exploring various possibilities of implementations and by extensive empirical testing we manage to show the suitability of the data-flow paradigm for the simplex algorithm, as well as pinpoint the strengths and some of the weaknesses of the used architecture.

      PubDate: 2017-06-14T13:22:13Z
  • A Novel Infrastructure for Synergistic Dataflow Research, Development,
           Education, and Deployment: The Maxeler AppGallery Project
    • Authors: Nemanja Trifunovic; Boris Perovic; Petar Trifunovic; Zoran Babovic; Ali Hurson
      Abstract: Publication date: Available online 10 June 2017
      Source:Advances in Computers
      Author(s): Nemanja Trifunovic, Boris Perovic, Petar Trifunovic, Zoran Babovic, Ali Hurson
      This chapter presents the essence and the details of a novel infrastructure that synergizes research, development, education, and deployment in the context of dataflow research. To make it clearer to fundamental scientists, the essence of the approach is explained by referencing the results of the work of four different Nobel laureates. To make it clearer to research community, crucial details are presented in the form of a manual. Till this point, the development of dataflow applications was based on tools inherited from the controlflow environment. We here describe a set of tools developed from scratch with dataflow specifics in mind. These tools are not only tuned to the dataflow environment, but they are also tuned to synergize with each other, for the best possible performance in minimal time, counting from the moment when new researchers enter the dataflow arena, until the moment when they are able to deliver a quality code for maximal speed performance and minimal energy consumption. The effectiveness of the presented synergetic approach was measured empirically, using a group of students in a dataflow course. The measured results clearly indicate the superiority of the proposed approach in the following five domains: time to design, time to program, time to build, time to test, and speedup ratio.

      PubDate: 2017-06-14T13:22:13Z
      DOI: 10.1016/bs.adcom.2017.04.005
  • Simple Operations in Memory to Reduce Data Movement
    • Authors: Vivek Seshadri; Onur Mutlu
      Abstract: Publication date: Available online 10 June 2017
      Source:Advances in Computers
      Author(s): Vivek Seshadri, Onur Mutlu
      In existing systems, the off-chip memory interface allows the memory controller to perform only read or write operations. Therefore, to perform any operation, the processor must first read the source data and then write the result back to memory after performing the operation. This approach consumes high latency, bandwidth, and energy for operations that work on a large amount of data. Several works have proposed techniques to process data near memory by adding a small amount of compute logic closer to the main memory chips. In this chapter, we describe two techniques proposed by recent works that take this approach of processing in memory further by exploiting the underlying operation of the main memory technology to perform more complex tasks. First, we describe RowClone, a mechanism that exploits DRAM technology to perform bulk copy and initialization operations completely inside main memory. We then describe a complementary work that uses DRAM to perform bulk bitwise AND and OR operations inside main memory. These two techniques significantly improve the performance and energy efficiency of the respective operations.

      PubDate: 2017-06-14T13:22:13Z
      DOI: 10.1016/bs.adcom.2017.04.004
  • Advances in Dataflow Systems
    • Authors: Thomas Chau; Pavel Burovskiy; Michael Flynn; Wayne Luk
      Abstract: Publication date: Available online 7 June 2017
      Source:Advances in Computers
      Author(s): Thomas Chau, Pavel Burovskiy, Michael Flynn, Wayne Luk
      Research on processors based on dataflow principles has been active for over 40 years, but such processors have not become mainstream general-purpose computing. Recently, advances in field-programmable technology spark renewed interest in dataflow systems. This chapter first provides an overview of parallel processor design and dataflow systems. Then the use of reconfigurable chip such as field-programmable gate array to implement dataflow machines is discussed, followed by an introduction of software design flow for dataflow hardware. After that, several high-performance computing applications developed using dataflow machines are explored.

      PubDate: 2017-06-10T12:03:57Z
      DOI: 10.1016/bs.adcom.2017.04.002
  • A New Course on R&D Project Management in Computer Science and
           Engineering: Subjects Taught, Rationales Behind, and Lessons Learned
    • Authors: Veljko Milutinovic; Stasa Vujicic Stankovic Aleksandar Jovic Drazen Draskovic Marko
      Abstract: Publication date: Available online 1 June 2017
      Source:Advances in Computers
      Author(s): Veljko Milutinovic, Stasa Vujicic Stankovic, Aleksandar Jovic, Drazen Draskovic, Marko Misic, Danilo Furundzic
      This chapter describes the essence of a course for senior level undergraduate students and for master students of computer science and engineering, and analyzes its effects. The course prepares students for their professional life after graduation, and especially, it prepares them for the challenges related to efforts to bring new paradigm-shifting ideas into the commercial world. This course was developed to complement a DataFlow course and to teach DataFlow researchers about issues of importance for promotion of their results with a commercial potential. Consequently, course examples and homework assignments were chosen to reflect issues of importance in the commercialization of the DataFlow concept. The course includes the following subjects (presented with DataFlow-related issues in mind): (a) Writing proposals for Research and Development in industry and academia, (b) Understanding the essence of the MBA/PhD degrees and preparing the GMAT/GRE analytical exam, (c) Understanding Capability Maturity Model Integration and learning how to write holistic strategic project plans, (d) Understanding Project Management and learning how to write detailed tactical project plans, (e) Writing business plans for venture capital or business angels, (f) Writing patent applications, (g) Writing survey papers for SCI (Science Citation Index) journals, (h) Writing research papers for SCI journals, (i) Making an Internet shop, (j) Making a MindGenomics campaign for the Internet shop, (k) DataMining from project history and project experiments, and (l) Preservation of project heritage and skills related to brand making. Each subject matter is covered by a homework assignment to help deepen the practical knowledge of the subject matter covered. In addition to the above described, which is accompanied with homework, the following four subjects are also covered and accompanied with in-class discussions (oriented to DataFlow research): (m) Inventivity, (n) Creativity, (o) Effectiveness, and (p) Efficiency. Consequently, the analysis part concentrates on the following issues: (a) Inventivity: How different majors react to the subject matters, (b) Creativity: How efficiently the initial knowledge gaps get bridged, (c) Effectiveness: How the experience of the teacher helps, and (d) Efficiency: How the previous experiences of students help.

      PubDate: 2017-06-05T10:07:18Z
  • Contents of Volumes in this Series
    • Abstract: Publication date: 2017
      Source:Advances in Computers, Volume 105

      PubDate: 2017-03-18T07:45:43Z
  • Fault Localization Using Hybrid Static/Dynamic Analysis
    • Authors: Elsaka
      Abstract: Publication date: Available online 8 February 2017
      Source:Advances in Computers
      Author(s): E. Elsaka
      With the increasing complexity of today's software, the software development process is becoming highly time and resource consuming. The increasing number of software configurations, input parameters, usage scenarios, supporting platforms, external dependencies, and versions plays an important role in expanding the costs of maintaining and repairing unforeseeable software faults. To repair software faults, developers spend considerable time in identifying the scenarios leading to those faults and root causing the problems. While software debugging remains largely manual, it is not the case with software testing and verification. The goal of this research is to improve the software development process in general, and software debugging process in particular, by devising techniques and methods for automated software debugging, which leverage the advances in automatic test case generation and replay. In this research, novel algorithms are devised to discover faulty execution paths in programs by utilizing already existing software test cases, which can be either automatically or manually generated. The execution traces or, alternatively, the sequence covers of the failing test cases are extracted. Afterward, commonalities between these test case sequence covers are extracted, processed, analyzed, and then presented to the developers in the form of subsequences that may be causing the fault. The hypothesis is that code sequences that are shared between a number of faulty test cases for the same reason resemble the faulty execution path, and hence, the search space for the faulty execution path can be narrowed down by using a large number of test cases. To achieve this goal, an efficient algorithm is implemented for finding common subsequences among a set of code sequence covers. Optimization techniques are devised to generate shorter and more logical sequence covers, and to select subsequences with high likelihood of containing the root cause among the set of all possible common subsequences. A hybrid static/dynamic analysis approach is designed to trace back the common subsequences from the end to the root cause.

      PubDate: 2017-02-13T03:24:05Z
  • Web-Based Behavioral Modeling for Continuous User Authentication (CUA)
    • Authors: L.C. Leonard
      Abstract: Publication date: Available online 26 January 2017
      Source:Advances in Computers
      Author(s): L.C. Leonard
      Authentication plays an important role in how we interact with computers, mobile devices, the web, etc. For example, in recent years, more corporate information and applications have been accessible via the Internet and Intranet. Many employees are working from remote locations and need access to secure corporate files. During this time, it is possible for malicious or unauthorized users to gain access to the system. For this reason, it is logical to have some mechanism in place to detect whether the logged-in user is the same user in control of the user's session. Therefore, highly secure authentication methods must be used. We posit that each of us is unique in our use of computer systems. It is this uniqueness that is leveraged to “continuously authenticate users” while they use web software. To monitor user behavior, n-gram models are used to capture user interactions with web-based software. This statistical language model essentially captures sequences and subsequences of user actions, their orderings, and temporal relationships that make them unique by providing a model of how each user typically behaves. Users are then continuously monitored during software operations. Large deviations from “normal behavior” can possibly indicate malicious or unintended behavior. This approach is implemented in a system called Intruder Detector (ID) that models user actions as embodied in web logs generated in response to a user's actions. User identification through web logs is cost-effective and nonintrusive. For these experiments, we use two classification techniques; binary and multiclass classification.

      PubDate: 2017-01-30T07:05:36Z
      DOI: 10.1016/bs.adcom.2016.12.001
  • Characterizing Software Test Case Behavior With Regression Models
    • Authors: Robbins
      Abstract: Publication date: Available online 23 January 2017
      Source:Advances in Computers
      Author(s): B. Robbins
      Testing modern software applications, such as those built on an event-driven paradigm, requires effective consideration of context. Model-based testing (MBT) approaches have been presented as an effective way to consider context, but effective MBT requires a high level of automation. Fully automated approaches too often lead to issues that threaten the very claims that MBT offers, such as generating test cases which are not fully executable and generating very large suites of test cases. In this chapter, I describe a new class of models for automated MBT workflows: predictive regression models. I compare these models with those in a state-of-the-art automated MBT workflow. I also describe a modern infrastructure to execute large MBT suites, to counter the seed suite required to construct predictive regression models, and to further enable effective MBT approaches in general. I conclude with a summary of recent research that effectively applied a regression model for test case feasibility as a filter for automatically generated test cases.

      PubDate: 2017-01-30T07:05:36Z
  • Advances in Model-Based Testing of GUI-Based Software
    • Authors: Banerjee
      Abstract: Publication date: Available online 19 January 2017
      Source:Advances in Computers
      Author(s): I. Banerjee
      The Graphical User Interface (GUI) is an integral component of contemporary computer software. A stable and reliable GUI is necessary for correct functioning of software applications. Comprehensive verification of the GUI is a routine part of most software development life cycles. The input space of a GUI is typically large, making exhaustive verification difficult. GUI defects are often revealed by exercising parts of the GUI that interact with each other. In recent years, model-based methods, which target specific GUI interactions, have been developed. These methods create a formal model of the GUI's input space from specification of the GUI, visible GUI behaviors and static analysis of the GUI's program code, and dynamic analysis of interactions between the GUI and its program code. This chapter discusses recent advances in testing GUI-based software. It describes techniques that generate testcases for GUI-based applications. Some popular methods are described, specifically ones that create a model of the GUI and generate testcases based on the GUI model.

      PubDate: 2017-01-23T13:07:38Z
  • Data Flow Computing in Geoscience Applications
    • Authors: L. Gan; H. Fu; O. Mencer; W. Luk; G. Yang
      Abstract: Publication date: Available online 21 October 2016
      Source:Advances in Computers
      Author(s): L. Gan, H. Fu, O. Mencer, W. Luk, G. Yang
      Geoscience research is one of the major fields that calls for the support of high-performance computers (HPC). With the algorithms of geoscience application becoming more complex, and the ever-increasing demands for better performance and finer resolutions, technical innovations from both algorithmic and architectural perspectives are highly desired. In recent years, data flow computing engines based on reconfigurable computing systems such as FPGAs have been introduced into HPC area, and start to show some inspiringly good results in many important applications. In this chapter, we summarize our initial efforts and experiences of using Maxeler Data Flow Engines as high-performance platforms, and target at eliminating the main bottlenecks and obtaining higher efficiencies for solving geoscience problems. Choosing three computing kernels from two popular geoscience application domains (climate modeling and exploration geophysics), we present a set of customization and optimization techniques based on the reconfigurable hardware platforms. Through building highly efficient computing pipelines that fit well to both the algorithm and the architecture, we manage to achieve better results in both the performance and power efficiency over traditional multi-core and many-core architectures. Our work demonstrates that data flow computing engines are promising candidates to make contributions to the development of geoscience applications.

      PubDate: 2016-10-25T17:35:32Z
      DOI: 10.1016/bs.adcom.2016.09.005
  • Exploring Future Many-Core Architectures: The TERAFLUX Evaluation
    • Authors: Giorgi
      Abstract: Publication date: Available online 13 October 2016
      Source:Advances in Computers
      Author(s): R. Giorgi
      The design of new computer systems always requires a strong simulation effort in order to evaluate different design options. This is especially true if the system is to be produced at a date far in the future, such as in the case of TERAFLUX, a system aimed at containing something like 1012 (1 TERA) transistors in a single package or a (multilayer) chip by 2020. At the basis of a TERAFLUX system, a dataflow execution model supports the execution of threads. In order to explore the design space, TERAFLUX provides an appropriate evaluation framework, at the scale of at least 1000 general purpose cores on a single chip. Predicting the performance of such a next-generation platform is not a trivial task. Today, no software-based tool exists that can provide cycle-level full-system simulation and faithfully predict the behavior of 1000 general-purpose cores, in an acceptable amount of time and with reasonable accuracy, while providing the flexibility of changing the execution model at the architectural level. A solid evaluation framework represents an important base for exploring future many cores. In this chapter, different options for simulating a 1000 general-purpose-core system are explored. Finally, we show the setup that successfully allowed us to evaluate our 1000 core target while running a full-system Linux operating system.

      PubDate: 2016-10-16T10:01:58Z
  • A Systematic Approach to Generation of New Ideas for PhD Research in
    • Authors: V. Blagojević; D. Bojić; M. Bojović; M. Cvetanović; J. Đorđević; Đ. Đurđević; B. Furlan; S. Gajin; Z. Jovanović; D. Milićev; V. Milutinović; B. Nikolić; J. Protić; M. Punt; Z. Radivojević; Ž. Stanisavljević; S. Stojanović; I. Tartalja; M. Tomašević; P. Vuletić
      Abstract: Publication date: Available online 8 October 2016
      Source:Advances in Computers
      Author(s): V. Blagojević, D. Bojić, M. Bojović, M. Cvetanović, J. Đorđević, Đ. Đurđević, B. Furlan, S. Gajin, Z. Jovanović, D. Milićev, V. Milutinović, B. Nikolić, J. Protić, M. Punt, Z. Radivojević, Ž. Stanisavljević, S. Stojanović, I. Tartalja, M. Tomašević, P. Vuletić
      This article represents an effort to help PhD students in computer science and engineering to generate good original ideas for their PhD research. Our effort is motivated by the fact that most PhD programs nowadays include several courses, as well as the research component, that should result in journal publications and the PhD thesis, all in a timeframe of 3–6 years. In order to help PhD students in computing disciplines to get focused on generating ideas and finding appropriate subject for their PhD research, we have analyzed some state-of-the-art inventions in the area of computing, as well as the PhD thesis research of faculty members of our department, and came up with a proposal of 10 methods that could be implemented to derive new ideas, based on the existing body of knowledge in the research field. This systematic approach provides guidance for PhD students, in order to improve their efficiency and reduce the dropout rate, especially in the area of computing.

      PubDate: 2016-10-12T07:45:55Z
      DOI: 10.1016/bs.adcom.2016.09.001
  • A Streaming Dataflow Implementation of Parallel
           Cocke–Younger–Kasami Parser
    • Abstract: Publication date: Available online 7 October 2016
      Source:Advances in Computers
      Author(s): D. Bojić, M. Bojović
      Parsing is the task of analyzing grammatical structures of an input sentence and deriving its parse tree. Efficient solutions for parsing are needed in many applications such as natural language processing, bioinformatics, and pattern recognition. The Cocke–Younger–Kasami (CYK) algorithm is a well-known parsing algorithm that operates on context-free grammars in Chomsky normal form and has been extensively studied for execution on parallel machines. In this chapter, we analyze the parallelizing opportunities for the CYK algorithm and give an overview of existing implementations on different hardware architectures. We propose a novel, efficient streaming dataflow implementation of the CYK algorithm on reconfigurable hardware (Maxeler dataflow engines), which achieves 18–76× speedup over an optimized sequential implementation for real-life grammars for natural language processing, depending on the length of the input string.

      PubDate: 2016-10-12T07:45:55Z
  • Dataflow-Based Parallelization of Control-Flow Algorithms
    • Authors: Korolija
      Abstract: Publication date: Available online 6 October 2016
      Source:Advances in Computers
      Author(s): N. Korolija, J. Popović, M. Cvetanović, M. Bojović
      Compared to control-flow architectures, dataflow architectures usually offer better performances in high performance computing. Moreover, dataflow architectures consume less electrical power. However, only since recently, the technology enables the development of dataflow architectures that are competitive with control-flow architectures. From a programming perspective, there are a relatively small number of experienced dataflow programmers. As a result, there is a need of translating control-flow algorithms into the dataflow environment. This chapter focuses on extracting methods from various fields, which could be applied on translating control-flow algorithms to dataflow environment, comparing available programming tools for dataflow architectures with respect to the previously established methods, and finally, evaluating speedups and reductions in power consumption on a dataflow implementation of the Lattice–Boltzmann method, implemented using a specific tool and method. Results show a remarkable speedup (one to two orders of magnitude), and, at the same time, a considerable reduction in power consumption.

      PubDate: 2016-10-12T07:45:55Z
School of Mathematical and Computer Sciences
Heriot-Watt University
Edinburgh, EH14 4AS, UK
Tel: +00 44 (0)131 4513762
Fax: +00 44 (0)131 4513327
Home (Search)
Subjects A-Z
Publishers A-Z
Your IP address:
About JournalTOCs
News (blog, publications)
JournalTOCs on Twitter   JournalTOCs on Facebook

JournalTOCs © 2009-