Open Access. Powered by Scholars. Published by Universities.®
- Discipline
-
- Engineering (4)
- Education (3)
- Electrical and Computer Engineering (3)
- Programming Languages and Compilers (2)
- Signal Processing (2)
-
- Adult and Continuing Education (1)
- Applied Mathematics (1)
- Computer Engineering (1)
- Data Science (1)
- Digital Communications and Networking (1)
- Educational Methods (1)
- Graphics and Human Computer Interfaces (1)
- Higher Education (1)
- Information Security (1)
- Numerical Analysis and Computation (1)
- Numerical Analysis and Scientific Computing (1)
- Secondary Education and Teaching (1)
- Systems and Communications (1)
- Teacher Education and Professional Development (1)
- Keyword
-
- Refactoring (9)
- Software quality (5)
- Quality (3)
- Software Quality (3)
- Software maintenance (3)
-
- Software maintenance and evolution (3)
- Accessibility (2)
- Machine Learning (2)
- Machine learning (2)
- Mining Software Repositories (2)
- Mining software repositories (2)
- Part-of-speech tagging (2)
- Program comprehension (2)
- Reusability (2)
- Software Engineering (2)
- Steganography (2)
- Access (1)
- Android (1)
- Apps (1)
- Authentication (1)
- Behavior preservation (1)
- Blackboard (1)
- Code Review (1)
- Code review (1)
- Commit Classification (1)
- Computational thinking (1)
- Computing (1)
- Covert encryption (1)
- Cryptography (1)
- Developer Experience (1)
Articles 1 - 27 of 27
Full-Text Articles in Software Engineering
The State Of Accessibility In Blackboard: Survey And User Reviews Case Study, Mohamed Wiem Mkaouer, Wajdi Aljedaani, Stephanie Ludi, Mohammed Alkahtani, Marcelo M. Eler, Marouane Kessentini, Ali Ouni
The State Of Accessibility In Blackboard: Survey And User Reviews Case Study, Mohamed Wiem Mkaouer, Wajdi Aljedaani, Stephanie Ludi, Mohammed Alkahtani, Marcelo M. Eler, Marouane Kessentini, Ali Ouni
Articles
Context: Nowadays, mobile applications (or apps) have become vital in our daily life, particularly within education. Many institutions increasingly rely on mobile apps to provide access to all their students. However, many education mobile apps remain inaccessible to users with disabilities who need to utilize accessibility features like talkback or screen reader features. Accessibility features have to be considered in mobile apps to foster equity and inclusion in the educational environment allowing to use of such apps without limitations. Gaps in the accessibility to educational systems persist.
Objective: In this paper, we focus on the accessibility of the Blackboard mobile …
An Exploratory Study On Refactoring Documentation In Issues Handling, Eman Abdullah Alomar, Anthony Peruma, Mohamed Wiem Mkaouer, Christian D. Newman, Ali Ouni
An Exploratory Study On Refactoring Documentation In Issues Handling, Eman Abdullah Alomar, Anthony Peruma, Mohamed Wiem Mkaouer, Christian D. Newman, Ali Ouni
Articles
Understanding the practice of refactoring documentation is of paramount importance in academia and industry. Issue tracking systems are used by most software projects enabling developers, quality assurance, managers, and users to submit feature requests and other tasks such as bug fixing and code review. Although recent studies explored how to document refactoring in commit messages, little is known about how developers describe their refactoring needs in issues. In this study, we aim at exploring developer-reported refactoring changes in issues to better understand what developers consider to be problematic in their code and how they handle it. Our approach relies on …
Code Review Practices For Refactoring Changes: An Empirical Study On Openstack, Mohamed Wiem Mkaouer, Eman Abdullah Alomar, Moatz Chouchen, Ali Ouni
Code Review Practices For Refactoring Changes: An Empirical Study On Openstack, Mohamed Wiem Mkaouer, Eman Abdullah Alomar, Moatz Chouchen, Ali Ouni
Articles
Modern code review is a widely used technique employed in both industrial and open-source projects to improve software quality, share knowledge, and ensure adherence to coding standards and guidelines. During code review, developers may discuss refactoring activities before merging code changes in the code base. To date, code review has been extensively studied to explore its general challenges, best practices and outcomes, and socio-technical aspects. However, little is known about how refactoring is being reviewed and what developers care about when they review refactored code. Hence, in this work, we present a quantitative and qualitative study to understand what are …
Evaluating A Peer Assisted Learning Programme For Mature Access Foundation Students Undertaking Computer Programming At An Irish University, Nevan Bermingham, Frances Boylan, Barry J. Ryan
Evaluating A Peer Assisted Learning Programme For Mature Access Foundation Students Undertaking Computer Programming At An Irish University, Nevan Bermingham, Frances Boylan, Barry J. Ryan
Articles
Access Foundation Programmes are a widening-participation initiative designed to encourage engagement in higher education among under-represented groups. This includes socioeconomic and educational disadvantage. Mature students in particular enrolled on these programmes experience greater difficulties making the transition to tertiary education, especially when they opt to study disciplines traditionally considered difficult. Computer programming is perceived as a traditionally difficult subject with lower pass rates and progression rates typically than other subjects.
This paper describes the first of a three-cycle action research study examining the perceived effects of a structured Peer Assisted Learning (PAL) Programme for mature students enrolled on a computer …
Satdbailiff- Mining And Tracking Self-Admitted Technical Debt, Mohamed Wiem Mkaouer, Eman Abdullah Alomar, Ben Christians, Mihal Busho, Ahmed Hamad Alkhalid, Christian D. Newman
Satdbailiff- Mining And Tracking Self-Admitted Technical Debt, Mohamed Wiem Mkaouer, Eman Abdullah Alomar, Ben Christians, Mihal Busho, Ahmed Hamad Alkhalid, Christian D. Newman
Articles
Self-Admitted Technical Debt (SATD) is a metaphorical concept to describe the self-documented addition of technical debt to a software project in the form of source code comments. SATD can linger in projects and degrade source-code quality, but it can also be more visible than unintentionally added or undocumented technical debt. Understanding the implications of adding SATD to a software project is important because developers can benefit from a better understanding of the quality trade-offs they are making. However, empirical studies, analyzing the survivability and removal of SATD comments, are challenged by potential code changes or SATD comment updates that may …
On The Documentation Of Refactoring Types, Eman Abdullah Alomar, Jiaqian Liu, Kenneth Addo, Mohamed Wiem Mkaouer, Christian D. Newman, Ali Ouni, Zhe Yu
On The Documentation Of Refactoring Types, Eman Abdullah Alomar, Jiaqian Liu, Kenneth Addo, Mohamed Wiem Mkaouer, Christian D. Newman, Ali Ouni, Zhe Yu
Articles
Commit messages are the atomic level of software documentation. They provide a natural language description of the code change and its purpose. Messages are critical for software maintenance and program comprehension. Unlike documenting feature updates and bug fixes, little is known about how developers document their refactoring activities. Specifically, developers can perform multiple refactoring operations, including moving methods, extracting classes, renaming attributes, for various reasons, such as improving software quality, managing technical debt, and removing defects. Yet, there is no systematic study that analyzes the extent to which the documentation of refactoring accurately describes the refactoring operations performed at the …
On Preserving The Behavior In Software Refactoring: A Systematic Mapping Study, Eman Abdullah Alomar, Mohamed Wiem Mkaouer, Christian D. Newman, Ali Ouni
On Preserving The Behavior In Software Refactoring: A Systematic Mapping Study, Eman Abdullah Alomar, Mohamed Wiem Mkaouer, Christian D. Newman, Ali Ouni
Articles
Context: Refactoring is the art of modifying the design of a system without altering its behavior. The idea is to reorganize variables, classes and methods to facilitate their future adaptations and comprehension. As the concept of behavior preservation is fundamental for refactoring, several studies, using formal verification, language transformation and dynamic analysis, have been proposed to monitor the execution of refactoring operations and their impact on the program semantics. However, there is no existing study that examines the available behavior preservation strategies for each refactoring operation.
Objective: This paper identifies behavior preservation approaches in the research literature. Method: We conduct, …
Behind The Scenes: On The Relationship Between Developer Experience And Refactoring, Eman Abdullah Alomar, Mohamed Wiem Mkaouer, Anthony Peruma, Christian D. Newman, Ali Ouni
Behind The Scenes: On The Relationship Between Developer Experience And Refactoring, Eman Abdullah Alomar, Mohamed Wiem Mkaouer, Anthony Peruma, Christian D. Newman, Ali Ouni
Articles
Refactoring is widely recognized as one of the efficient techniques to manage technical debt and maintain a healthy software project through enforcing best design practices, or coping with design defects. Previous refactoring surveys have shown that code refactoring activities are mainly executed by developers who have sufficient knowledge of the system’s design, and disposing of leadership roles in their development teams. However, these surveys were mainly limited to specific projects and companies. In this paper, we explore the generalizability of the previous results by analyzing 800 open-source projects. We mine their refactoring activities, and we identify their corresponding contributors. Then, …
Sediqa: Sound Emitting Document Image Quality Assessment In A Reading Aid For The Visually Impaired, Jane Courtney
Sediqa: Sound Emitting Document Image Quality Assessment In A Reading Aid For The Visually Impaired, Jane Courtney
Articles
For visually impaired people (VIPs), the ability to convert text to sound can mean a new level of independence or the simple joy of a good book. With significant advances in optical character recognition (OCR) in recent years, a number of reading aids are appearing on the market. These reading aids convert images captured by a camera to text which can then be read aloud. However, all of these reading aids suffer from a key issue—the user must be able to visually target the text and capture an image of sufficient quality for the OCR algorithm to function—no small task …
Mining And Managing Big Data Refactoring For Design Improvement: Are We There Yet?, Eman Abdullah Alomar, Mohamed Wiem Mkaouer, Ali Ouni
Mining And Managing Big Data Refactoring For Design Improvement: Are We There Yet?, Eman Abdullah Alomar, Mohamed Wiem Mkaouer, Ali Ouni
Articles
Refactoring is a set of code changes applied to improve the internal structure of a program, without altering its external behavior. With the rise of continuous integration and the awareness of the necessity of managing technical debt, refactoring has become even more popular in recent software builds. Recent studies indicate that developers often perform refactorings. If we consider all refactorings performed across all projects, this consists of the refactoring knowledge that represents a rich source of information that can be useful for both developers and practitioners to better understand how refactoring is being applied in practice. However, mining, processing, and …
Refactoring Practices In The Context Of Modern Code Review: An Industrial Case Study At Xerox, Eman Abdullah Alomar, Hussein Alrubaye, Mohamed Wiem Mkaouer, Ali Ouni, Marouane Kessentini
Refactoring Practices In The Context Of Modern Code Review: An Industrial Case Study At Xerox, Eman Abdullah Alomar, Hussein Alrubaye, Mohamed Wiem Mkaouer, Ali Ouni, Marouane Kessentini
Articles
Modern code review is a common and essential 2 practice employed in both industrial and open-source projects 3 to improve software quality, share knowledge, and ensure con4 formance with coding standards. During code review, developers 5 may inspect and discuss various changes including refactoring 6 activities before merging code changes in the code base. To date, 7 code review has been extensively studied to explore its general 8 challenges, best practices and outcomes, and socio-technical 9 aspects. However, little is known about how refactoring activities 10 are being reviewed, perceived, and practiced. 11 This study aims to reveal insights into …
Finding The Needle In A Haystack: On The Automatic Identification Of Accessibility User Reviews, Eman Abdullah Alomar, Wajdi Aljedaani, Murtaza Tamjeed, Mohamed Wiem Mkaouer, Yasime Elglaly
Finding The Needle In A Haystack: On The Automatic Identification Of Accessibility User Reviews, Eman Abdullah Alomar, Wajdi Aljedaani, Murtaza Tamjeed, Mohamed Wiem Mkaouer, Yasime Elglaly
Articles
In recent years, mobile accessibility has become an important trend with the goal of allowing all users the possibility of using any app without many limitations. User reviews include insights that are useful for app evolution. However, with the increase in the amount of received reviews, manually analyzing them is tedious and time-consuming, especially when searching for accessibility reviews. The goal of this paper is to support the automated identification of accessibility in user reviews, to help technology professionals in prioritizing their handling, and thus, creating more inclusive apps. Particularly, we design a model that takes as input accessibility user …
An Ensemble Approach For Annotating Source Code Identifiers With Part-Of-Speech Tags, Christian D. Newman,, Michael J. Decker, Reem S. Alsuhaibani, Anthony Peruma, Mohamed Wiem Mkaouer, Satyajit Mohapatra, Tejal Vishnoi, Marcos Zampieri, Timothy Sheldon, Emily Hill
An Ensemble Approach For Annotating Source Code Identifiers With Part-Of-Speech Tags, Christian D. Newman,, Michael J. Decker, Reem S. Alsuhaibani, Anthony Peruma, Mohamed Wiem Mkaouer, Satyajit Mohapatra, Tejal Vishnoi, Marcos Zampieri, Timothy Sheldon, Emily Hill
Articles
This paper presents an ensemble part-of-speech tagging approach for source code identifiers. Ensemble tagging is a technique that uses machine-learning and the output from multiple part-of-speech taggers to annotate natural language text at a higher quality than the part-of-speech taggers are able to obtain independently. Our ensemble uses three state-of-the-art part-of-speech taggers: SWUM, POSSE, and Stanford. We study the quality of the ensemble's annotations on five different types of identifier names: function, class, attribute, parameter, and declaration statement at the level of both individual words and full identifier names. We also study and discuss the weaknesses of our tagger to …
On The Generation, Structure, And Semantics Of Grammar Patterns In Source Code Identifiers, Christian D. Newman,, Reem S. Alsuhaibani, Michael J. Decker, Anthony Peruma, Dishant Kaushik, Mohamed Wiem Mkaouer, Emily Hill
On The Generation, Structure, And Semantics Of Grammar Patterns In Source Code Identifiers, Christian D. Newman,, Reem S. Alsuhaibani, Michael J. Decker, Anthony Peruma, Dishant Kaushik, Mohamed Wiem Mkaouer, Emily Hill
Articles
Identifier names are the atoms of program comprehension. Weak identifier names decrease developer productivity and degrade the performance of automated approaches that leverage identifier names in source code analysis; threatening many of the advantages which stand to be gained from advances in artificial intelligence and machine learning. Therefore, it is vital to support developers in naming and renaming identifiers. In this paper, we extend our prior work, which studies the primary method through which names evolve: rename refactorings. In our prior work, we contextualize rename changes by examining commit messages and other refactorings. In this extension, we further consider data …
Cleanpage: Fast And Clean Document And Whiteboard Capture, Jane Courtney
Cleanpage: Fast And Clean Document And Whiteboard Capture, Jane Courtney
Articles
The move from paper to online is not only necessary for remote working, it is also significantly more sustainable. This trend has seen a rising need for the high-quality digitization of content from pages and whiteboards to sharable online material. However, capturing this information is not always easy nor are the results always satisfactory. Available scanning apps vary in their usability and do not always produce clean results, retaining surface imperfections from the page or whiteboard in their output images. CleanPage, a novel smartphone-based document and whiteboard scanning system, is presented. CleanPage requires one button-tap to capture, identify, crop, and …
Increasing The Trust In Refactoring Through Visualization, Alex Bogart, Eman Abdullah Alomar, Mohamed Wiem Mkaouer, Ali Ouni
Increasing The Trust In Refactoring Through Visualization, Alex Bogart, Eman Abdullah Alomar, Mohamed Wiem Mkaouer, Ali Ouni
Articles
In software development, maintaining good design is essential. The process of refactoring enables developers to improve this design during development without altering the program’s existing behavior. However, this process can be time-consuming, introduce semantic errors, and be difficult for developers inexperienced with refactoring or unfamiliar with a given code base. Automated refactoring tools can help not only by applying these changes, but by identifying opportunities for refactoring. Yet, developers have not been quick to adopt these tools due to a lack of trust between the developer and the tool. We propose an approach in the form of a visualization to …
On The Relationship Between Developer Experience And Refactoring: An Exploratory Study And Preliminary Results, Eman Abdullah Alomar, Anthony Peruma, Christian D. Newman, Mohamed Wiem Mkaouer, Ali Ouni
On The Relationship Between Developer Experience And Refactoring: An Exploratory Study And Preliminary Results, Eman Abdullah Alomar, Anthony Peruma, Christian D. Newman, Mohamed Wiem Mkaouer, Ali Ouni
Articles
Refactoring is one of the means of managing technical debt and maintaining a healthy software structure through enforcing best design practices, or coping with design defects. Previous refactoring surveys have shown that these code restructurings are mainly executed by developers who have sufficient knowledge of the system’s design, and disposing of leadership roles in their development teams. However, these surveys were mainly limited to specific projects and companies. In this paper, we explore the generalizability of the previous results though analyzing 800 open-source projects. We mine their refactoring activities, and we identify their corresponding contributors. Then, we associate an expertise …
Toward The Automatic Classification Of Self-Affirmed Refactoring, Mohamed Wiem Mkaouer, Eman Abdullah Alomar, Ali Ouni
Toward The Automatic Classification Of Self-Affirmed Refactoring, Mohamed Wiem Mkaouer, Eman Abdullah Alomar, Ali Ouni
Articles
The concept of Self-Affirmed Refactoring (SAR) was introduced to explore how developers document their refactoring activities in commit messages, i.e., developers explicit documentation of refactoring operations intentionally introduced during a code change. In our previous study, we have manually identified refactoring patterns and defined three main common quality improvement categories including internal quality attributes, external quality attributes, and code smells, by only considering refactoring-related commits. However, this approach heavily depends on the manual inspection of commit messages. In this paper, we propose a two-step approach to first identify whether a commit describes developer-related refactoring events, then to classify it according …
How Do Developers Refactor Code To Improve Code Reusability?, Eman Abdullah Alomar, Philip T. Rodriguez, Jordan Bowman, Tianjia Wang, Benjamin Adepoju, Kevin Lopez, Christian D. Newman, Ali Ouni, Mohamed Wiem Mkaouer
How Do Developers Refactor Code To Improve Code Reusability?, Eman Abdullah Alomar, Philip T. Rodriguez, Jordan Bowman, Tianjia Wang, Benjamin Adepoju, Kevin Lopez, Christian D. Newman, Ali Ouni, Mohamed Wiem Mkaouer
Articles
. Refactoring is the de-facto practice to optimize software health. While there has been several studies proposing refactoring strategies to optimize software design through applying design patterns and removing design defects, little is known about how developers actually refactor their code to improve its reuse. Therefore, we extract, from 1,828 open source projects, a set of refactorings which were intended to improve the software reusability. We analyze the impact of reusability refactorings on state-of-the-art reusability metrics, and we compare the distribution of reusability refactoring types, with the distribution of the remaining mainstream refactorings. Overall, we found that the distribution of …
An Exploratory Study On How Software Reuse Is Discussed In Stack Overflow, Mohamed Wiem Mkaouer, Eman Abdullah Alomar, Jiaqian Liu, Ali Ouni, Christian D. Newman, Diego Barinas
An Exploratory Study On How Software Reuse Is Discussed In Stack Overflow, Mohamed Wiem Mkaouer, Eman Abdullah Alomar, Jiaqian Liu, Ali Ouni, Christian D. Newman, Diego Barinas
Articles
Software reuse is an important and crucial quality attribute in modern software engineering, where almost all software projects, open source or commercial, no matter small or ultra-large, source code reuse in one way or another. Although software reuse has experienced an increased adoption throughout the years with the exponentially growing number of available third-party libraries, frameworks and APIs, little knowledge exists to investigate what aspects of code reuse developers discuss. In this study, we look into bridging this gap by examining Stack Overflow to understand the challenges developers encounter when trying to reuse code. Using the Stack Overflow tags “code-reuse” …
How We Refactor And How We Document It? On The Use Of Supervised Machine Learning Algorithms To Classify Refactoring Documentation, Eman Abdullah Alomar, Anthony Peruma, Mohamed Wiem Mkaouer, Christian D. Newman, Marouane Kessentini, Ali Ouni
How We Refactor And How We Document It? On The Use Of Supervised Machine Learning Algorithms To Classify Refactoring Documentation, Eman Abdullah Alomar, Anthony Peruma, Mohamed Wiem Mkaouer, Christian D. Newman, Marouane Kessentini, Ali Ouni
Articles
Refactoring is the art of improving the structural design of a software system without altering its external behavior. Today, refactoring has become a well-established and disciplined software engineering practice that has attracted a significant amount of research presuming that refactoring is primarily motivated by the need to improve system structures. However, recent studies have shown that developers may incorporate refactoring strategies in other development-related activities that go beyond improving the design especially with the emerging challenges in contemporary software engineering. Unfortunately, these studies are limited to developer interviews and a reduced set of projects. To cope with the above-mentioned limitations, …
Can Refactoring Be Self-Affirmed? An Exploratory Study On How Developers Document Their Refactoring Activities In Commit Messages, Eman Abdullah Alomar, Mohamed Wiem Mkaouer, Ali Ouni
Can Refactoring Be Self-Affirmed? An Exploratory Study On How Developers Document Their Refactoring Activities In Commit Messages, Eman Abdullah Alomar, Mohamed Wiem Mkaouer, Ali Ouni
Articles
Refactoring is a critical task in software maintenance and is usually performed to enforce best design practices, or to cope with design defects. Previous studies heavily rely on defining a set of keywords to identify refactoring commits from a list of general commits extracted from a small set of software
systems. All approaches thus far consider all commits without checking whether refactorings had actually happened or not. In this paper, we aim at exploring how developers document their refactoring activities during the software life cycle. We call such activity Self-Affirmed Refactoring, which is an indication of
the developer-related refactoring events …
On The Impact Of Refactoring On The Relationship Between Quality Attributes And Design Metrics, Mohamed Wiem Mkaouer, Eman Abdullah Alomar, Ali Ouni, Marouane Kessentini
On The Impact Of Refactoring On The Relationship Between Quality Attributes And Design Metrics, Mohamed Wiem Mkaouer, Eman Abdullah Alomar, Ali Ouni, Marouane Kessentini
Articles
Refactoring is a critical task in software maintenance and is generally performed to enforce the best design and implementation practices or to cope with design defects. Several studies attempted to detect refactoring activities through mining software repositories allowing to collect, analyze and get actionable data-driven insights about refactoring practices within software projects. Aim: We aim at identifying, among the various quality models presented in the literature, the ones that are more in-line with the developer’s vision of quality optimization, when they explicitly mention that they are refactoring to improve them. Method: We extract a large corpus of design-related refactoring activities …
A Conceptual Framework For A Software Development Process Based On Computational Thinking, Catherine Higgins, Ciaran O'Leary, Orla Hanratty, Fredrick Mtenzi
A Conceptual Framework For A Software Development Process Based On Computational Thinking, Catherine Higgins, Ciaran O'Leary, Orla Hanratty, Fredrick Mtenzi
Articles
A software development process is a mechanism for problem solving to help software developers plan, design and structure the development of software to solve a problem. Without a process to guide the structured evolution of a solution, it is extremely likely that at least some aspect of the resulting software will be omitted or incorrectly implemented. Even though the importance of utilising a software process for solving problems is accepted in the business and academic communities, it is a topic that is addressed very lightly (if at all) in most freshman undergraduate computing courses with most courses focussing on programming …
Teaching Android Security Through Examples: A Publicly Available Database Of Vulnerable Apps, Daniel E. Krutz, Samuel A. Malachowsky
Teaching Android Security Through Examples: A Publicly Available Database Of Vulnerable Apps, Daniel E. Krutz, Samuel A. Malachowsky
Articles
Security is hard, and teaching security can be even harder. Here we describe a public educational activity to assist in the instruction of both students and developers in creating secure Android apps. Our set of activities includes example vulnerable applications, information about each vulnerability, steps on how to repair the vulnerabilities, and information about how to confirm that the vulnerability has been properly repaired. Our primary goal is to make these activities available to other instructors for use in their classrooms ranging from the K-12 to university settings. A secondary goal of this project is to foster interest in security …
A Covert Encryption Method For Applications In Electronic Data Interchange, Jonathan Blackledge, Dmitry Dubovitskiy
A Covert Encryption Method For Applications In Electronic Data Interchange, Jonathan Blackledge, Dmitry Dubovitskiy
Articles
A principal weakness of all encryption systems is that the output data can be ‘seen’ to be encrypted. In other words, encrypted data provides a ‘flag’ on the potential value of the information that has been encrypted. In this paper, we provide a new approach to ‘hiding’ encrypted data in a digital image.
In conventional (symmetric) encryption, the plaintext is usually represented as a binary stream and encrypted using an XOR type operation with a binary cipher. The algorithm used is ideally designed to: (i) generate a maximum entropy cipher so that there is no bias with regard to any …
Covert Encryption And Document Authentication Using Texture Coding, Jonathan Blackledge, Mary Hallot
Covert Encryption And Document Authentication Using Texture Coding, Jonathan Blackledge, Mary Hallot
Articles
With the improvements in the quality of Commercial-Off-The-Shelf (COTS) printing and scanning devices, the ability to counterfeit documents has become a widespread problem. Consequently, there has been an increasing demand to develop digital watermarking techniques which can be applied to both electronic and printed images (and documents) that can be authenticated, prevent unauthorized copying and withstand abuse and degradation. In this paper , a new approach to digital watermarking is presented and a range of possible applications are considered. The process is defined by using concepts and techniques borrowed from Cryptography. It is based on computing a 'scramble image' by …