The document discusses evaluating how advanced techniques for splitting identifiers impact the performance of feature location techniques. It describes using different identifier splitting algorithms, such as CamelCase, Samurai, and a manually developed "perfect" splitting algorithm, within information retrieval and dynamic feature location techniques. The study compares the effectiveness of these feature location techniques when using different splitting algorithms using four software systems and associated datasets involving features and bugs. Results are presented using box plots to compare the median and average effectiveness across all data points for each technique and dataset.
Wild & Weird Ideas: An Overview of Ruby 1.9Murray Steele
A presentation I gave at the London Ruby User Group (LRUG) in December 2007 about the changes in the ruby programming language in the soon to be released 1.9 version.
Note that Ruby 1.9 was still in development at the time I wrote this talk, so it's possible the stuff I say in it is completely inaccurate with respect to any currently released version of Ruby 1.9.
Final presentation of the project group Knowledge Awareness in Artefact-Actor...Wolfgang Reinhardt
Those slides have been prepared by my students from the knowAAN project group at the University of Paderborn. In the project group we worked on the (semi-)automatic analysis of scientific papers in order to enhance awareness of researchers.
The document provides an overview of object-oriented Perl. It discusses using objects to encapsulate data and methods, and creating object-oriented modules. It shows an example of converting an existing module to be object-oriented by creating a new method and blessing references. The document also covers inheritance, with an example where a Refrigerator class inherits from a Machine class, allowing objects to access methods from both classes.
Anonymous Credentials on Java Card - SIT Smartcard 2011Thomas Gross
How anonymous credentials can enhance electronic identity cards with strong security and privacy. A feasibility study presented at the Fraunhofer SIT Smartcard workshop 2011
The document introduces PHDL, a hardware description language for printed circuit boards. It describes creating device definitions that specify attributes and pin mappings. The example design shows how to instantiate devices and make connections to implement an LED seven-segment display controlled by switches. Device definitions allow creation of schematic symbols and mapping pins to pads on the PCB layout.
Python Users Berlin 2012 documentation is generated using Sphinx, an open source documentation generator written in Python. Sphinx uses reStructuredText as its markup language and can generate HTML, PDF, LaTeX and other formats from the same source files. The documentation includes sections on tutorials, reference material, and frequently asked questions.
Wild & Weird Ideas: An Overview of Ruby 1.9Murray Steele
A presentation I gave at the London Ruby User Group (LRUG) in December 2007 about the changes in the ruby programming language in the soon to be released 1.9 version.
Note that Ruby 1.9 was still in development at the time I wrote this talk, so it's possible the stuff I say in it is completely inaccurate with respect to any currently released version of Ruby 1.9.
Final presentation of the project group Knowledge Awareness in Artefact-Actor...Wolfgang Reinhardt
Those slides have been prepared by my students from the knowAAN project group at the University of Paderborn. In the project group we worked on the (semi-)automatic analysis of scientific papers in order to enhance awareness of researchers.
The document provides an overview of object-oriented Perl. It discusses using objects to encapsulate data and methods, and creating object-oriented modules. It shows an example of converting an existing module to be object-oriented by creating a new method and blessing references. The document also covers inheritance, with an example where a Refrigerator class inherits from a Machine class, allowing objects to access methods from both classes.
Anonymous Credentials on Java Card - SIT Smartcard 2011Thomas Gross
How anonymous credentials can enhance electronic identity cards with strong security and privacy. A feasibility study presented at the Fraunhofer SIT Smartcard workshop 2011
The document introduces PHDL, a hardware description language for printed circuit boards. It describes creating device definitions that specify attributes and pin mappings. The example design shows how to instantiate devices and make connections to implement an LED seven-segment display controlled by switches. Device definitions allow creation of schematic symbols and mapping pins to pads on the PCB layout.
Python Users Berlin 2012 documentation is generated using Sphinx, an open source documentation generator written in Python. Sphinx uses reStructuredText as its markup language and can generate HTML, PDF, LaTeX and other formats from the same source files. The documentation includes sections on tutorials, reference material, and frequently asked questions.
Ppt chcgroup403 d working with groups v 22.3.13CTA Australia
This document discusses different types of groups, group dynamics, and strategies for leading groups effectively. It addresses formal and informal group structures, different leadership styles including autocratic, democratic, and laissez-faire approaches. The document also outlines stages of group development, important considerations for communication and planning group activities, and factors that influence group success such as available resources and community support.
Decisions. Better Integrated Destination Marketing. Bob Hoot
A presentation to the Wisconsin Association of Convention & Visitors Bureaus by Bob Hoot and Bill Kennedy on May 17, 2013. All CVBs have website, a social media presence and most produce a visitors guide. This presentation asks if the efforts are effective and applies some basic metrics and evaluations to the efforts. All the media channels must be utilizes to their advantage and coordinated for maximum impact.
Precast technology involves molding concrete structural elements like columns, beams, and walls in a reusable mold in a factory. This allows for higher quality control compared to on-site casting. VME Precast is an Indian company that has established a precast factory in Chennai to provide precast solutions for buildings. Precast construction has several advantages over traditional casting including strength, durability, weather resistance, cost savings, and environmental friendliness.
Pinterest has grown tremendously in recent years and established itself as a major player in social marketing. The document discusses how having more Pinterest followers can help highlight brands and drive targeted traffic to websites. It promotes the website www.pinfollowerz.com, which offers to generate more Pinterest followers for businesses to help generate interest and achieve instant traffic from real users interested in their offerings.
Coral has developed an enterprise software solution called CORAL erp that provides an end-to-end solution to streamline the embroidery business. CORAL erp addresses all aspects of the embroidery process from raw material receipt to finished product delivery. It has been designed with simplicity and adaptability in mind. The software provides features to track job orders, machine stitch readings, stock levels, production, and sales. Reports provide visibility into key aspects of the business like gate receipts, production, dispatch, and stock levels.
This document discusses using social media, particularly Facebook, for event marketing. Some key points:
- Social media is an important marketing tool for events, with 42% of event organizers considering it very important.
- Facebook is the most used social media channel for promoting events, with 84% of organizers using it. It has over 800 million users.
- Creating a Facebook page for an event allows organizers to promote it for free, get people to RSVP, and encourage sharing among friends. Regular updates and engagement are important.
- Facebook ads can further promote events and target specific audiences, though organizers must pay for ads. Monitoring ad campaigns is crucial.
- The benefits of Facebook marketing include free interaction, fast sharing
130118 sergio luis da silva jr. - an approach to formalise security patternsPtidej Team
This document proposes an approach to formalize security patterns using formal methods like Petri nets. It describes security patterns, formal methods, and how Petri nets can be used to model the behavior of security patterns. It also discusses using structural analysis with PADL and reflection to compare pattern models to real implementations. As a case study, it models a sender-receiver pattern with a Petri net and compares the net structure and behavior to the pattern and implementation. Future work includes testing on real systems and using other formal methods to provide more rigorous analysis of security patterns.
The document discusses comparing different feature location techniques (FLTs) that use different identifier splitting algorithms. It describes building an "oracle" identifier splitting to use as a baseline for comparison by manually splitting identifiers. Two FLTs (Information Retrieval and dynamic Information Retrieval) are compared using two software systems and four datasets when using the oracle versus CamelCase splitting. The results show the FLTs using the oracle splitting generally perform better, especially on datasets with features rather than bugs. Percentage improvements of the oracle over CamelCase are also presented.
The document discusses the Combined Public Key (CPK) cryptosystem used in OpenSolaris. CPK provides identity-based encryption and signature schemes as an alternative to traditional public key infrastructure. It maps identities to key pairs using a hash function and private/public key matrices. CPK interfaces with the Solaris cryptographic and key management frameworks using standards like PKCS #11 and PKCS #7.
Small discussion on Echo's Hack In The Zoo (HITZ) 2017
Ragunan Zoo Jakarta
Jakarta, 2017-09-09
Frida? It's a Dynamic Binary Instrumentation. DBI.
Let's see what frida can do for us, reverse engineer.
Tips And Tricks For Bioinformatics Software Engineeringjtdudley
This document provides tips and tricks for software engineering in bioinformatics. It discusses using object-oriented software design principles like encapsulation and inheritance. It also covers best practices like automating documentation, performance optimization, working with data using databases and file formats, parallel and distributed computing, hardware acceleration, and web services.
This document describes a web application that allows users to encrypt and decrypt data using emoji encryption with the AES encryption algorithm. It provides background on emoji, AES encryption, and the structure and goals of the emoji encryption application. The application aims to help users understand encryption concepts by turning words or phrases into encrypted strings of emojis. It is intended as an educational tool rather than for transmitting sensitive personal data, as modern encryption methods are stronger than the simple emoji cipher.
ISSA: Next Generation Tokenization for Compliance and Cloud Data ProtectionUlf Mattsson
This document provides an overview of next generation tokenization for data protection and compliance. It discusses how tokenization has evolved from traditional approaches to provide significantly improved performance, scalability, and security compared to encryption and other older tokenization methods. Memory-based tokenization in particular is highlighted as delivering extremely fast tokenization speeds without the need for replication or synchronization between servers. The document also examines use cases and challenges around securing data in cloud and distributed environments and how tokenization addresses these issues through centralized policy management and transparency.
Categorizing and pos tagging with nltk pythonJanu Jahnavi
https://www.learntek.org/blog/categorizing-pos-tagging-nltk-python/
https://www.learntek.org/
Learntek is global online training provider on Big Data Analytics, Hadoop, Machine Learning, Deep Learning, IOT, AI, Cloud Technology, DEVOPS, Digital Marketing and other IT and Management courses.
Traditional active RFID deployments have typically involved tags and readers made by (or for) a single vendor, resulting in tight control over the system. With the widespread commercial adoption of Bluetooth Low Energy (BLE), today it is common to detect everything from consumer products such as smartphones, wearables and smart home electronics, to commercial and industrial products, which actively identify themselves using standardised advertising packets. Moreover, there are plenty of off-the-shelf devices capable of acting as readers, from purpose-built devices to generic single-board-computers to the smartphone in your pocket. Presented at IEEE RFID 2017 in Phoenix.
iPhonical and model-driven software development for the iPhoneHeiko Behrens
These are the slides of my talk "iPhonical and model-driven software development on the iPhone" at the German iPhone Developer Conference 2009 in Cologne. Unfortunately, this version does not include the 25+ minutes demos I presented during the talk.
Categorizing and pos tagging with nltk pythonJanu Jahnavi
https://www.learntek.org/blog/categorizing-pos-tagging-nltk-python/
https://www.learntek.org/
Learntek is global online training provider on Big Data Analytics, Hadoop, Machine Learning, Deep Learning, IOT, AI, Cloud Technology, DEVOPS, Digital Marketing and other IT and Management courses.
The document discusses the Belgian electronic identity (eID) card, including its physical structure, logical structure, content, and functionality for identification and authentication. It provides an overview of how the eID card can be integrated into web applications through an eID applet that handles secure communication with the card and supports multiple browsers and operating systems. Examples are given for using the eID applet to perform identification by reading identity files from the card.
The document is about the Intel Perceptual Computing SDK. It provides the following key details:
- The SDK contains algorithms and modules for hand and finger tracking, face recognition, voice recognition, and 3D object tracking. It includes both low and high-level APIs.
- The SDK can be used to create natural user interfaces using gestures and voice as well as for manipulating 3D content and games.
- An optional Creative camera is available for purchase to enable some of the SDK's capabilities like hand tracking.
- The SDK includes samples, documentation, libraries and headers to allow developers to integrate its capabilities into their applications.
Ppt chcgroup403 d working with groups v 22.3.13CTA Australia
This document discusses different types of groups, group dynamics, and strategies for leading groups effectively. It addresses formal and informal group structures, different leadership styles including autocratic, democratic, and laissez-faire approaches. The document also outlines stages of group development, important considerations for communication and planning group activities, and factors that influence group success such as available resources and community support.
Decisions. Better Integrated Destination Marketing. Bob Hoot
A presentation to the Wisconsin Association of Convention & Visitors Bureaus by Bob Hoot and Bill Kennedy on May 17, 2013. All CVBs have website, a social media presence and most produce a visitors guide. This presentation asks if the efforts are effective and applies some basic metrics and evaluations to the efforts. All the media channels must be utilizes to their advantage and coordinated for maximum impact.
Precast technology involves molding concrete structural elements like columns, beams, and walls in a reusable mold in a factory. This allows for higher quality control compared to on-site casting. VME Precast is an Indian company that has established a precast factory in Chennai to provide precast solutions for buildings. Precast construction has several advantages over traditional casting including strength, durability, weather resistance, cost savings, and environmental friendliness.
Pinterest has grown tremendously in recent years and established itself as a major player in social marketing. The document discusses how having more Pinterest followers can help highlight brands and drive targeted traffic to websites. It promotes the website www.pinfollowerz.com, which offers to generate more Pinterest followers for businesses to help generate interest and achieve instant traffic from real users interested in their offerings.
Coral has developed an enterprise software solution called CORAL erp that provides an end-to-end solution to streamline the embroidery business. CORAL erp addresses all aspects of the embroidery process from raw material receipt to finished product delivery. It has been designed with simplicity and adaptability in mind. The software provides features to track job orders, machine stitch readings, stock levels, production, and sales. Reports provide visibility into key aspects of the business like gate receipts, production, dispatch, and stock levels.
This document discusses using social media, particularly Facebook, for event marketing. Some key points:
- Social media is an important marketing tool for events, with 42% of event organizers considering it very important.
- Facebook is the most used social media channel for promoting events, with 84% of organizers using it. It has over 800 million users.
- Creating a Facebook page for an event allows organizers to promote it for free, get people to RSVP, and encourage sharing among friends. Regular updates and engagement are important.
- Facebook ads can further promote events and target specific audiences, though organizers must pay for ads. Monitoring ad campaigns is crucial.
- The benefits of Facebook marketing include free interaction, fast sharing
130118 sergio luis da silva jr. - an approach to formalise security patternsPtidej Team
This document proposes an approach to formalize security patterns using formal methods like Petri nets. It describes security patterns, formal methods, and how Petri nets can be used to model the behavior of security patterns. It also discusses using structural analysis with PADL and reflection to compare pattern models to real implementations. As a case study, it models a sender-receiver pattern with a Petri net and compares the net structure and behavior to the pattern and implementation. Future work includes testing on real systems and using other formal methods to provide more rigorous analysis of security patterns.
The document discusses comparing different feature location techniques (FLTs) that use different identifier splitting algorithms. It describes building an "oracle" identifier splitting to use as a baseline for comparison by manually splitting identifiers. Two FLTs (Information Retrieval and dynamic Information Retrieval) are compared using two software systems and four datasets when using the oracle versus CamelCase splitting. The results show the FLTs using the oracle splitting generally perform better, especially on datasets with features rather than bugs. Percentage improvements of the oracle over CamelCase are also presented.
The document discusses the Combined Public Key (CPK) cryptosystem used in OpenSolaris. CPK provides identity-based encryption and signature schemes as an alternative to traditional public key infrastructure. It maps identities to key pairs using a hash function and private/public key matrices. CPK interfaces with the Solaris cryptographic and key management frameworks using standards like PKCS #11 and PKCS #7.
Small discussion on Echo's Hack In The Zoo (HITZ) 2017
Ragunan Zoo Jakarta
Jakarta, 2017-09-09
Frida? It's a Dynamic Binary Instrumentation. DBI.
Let's see what frida can do for us, reverse engineer.
Tips And Tricks For Bioinformatics Software Engineeringjtdudley
This document provides tips and tricks for software engineering in bioinformatics. It discusses using object-oriented software design principles like encapsulation and inheritance. It also covers best practices like automating documentation, performance optimization, working with data using databases and file formats, parallel and distributed computing, hardware acceleration, and web services.
This document describes a web application that allows users to encrypt and decrypt data using emoji encryption with the AES encryption algorithm. It provides background on emoji, AES encryption, and the structure and goals of the emoji encryption application. The application aims to help users understand encryption concepts by turning words or phrases into encrypted strings of emojis. It is intended as an educational tool rather than for transmitting sensitive personal data, as modern encryption methods are stronger than the simple emoji cipher.
ISSA: Next Generation Tokenization for Compliance and Cloud Data ProtectionUlf Mattsson
This document provides an overview of next generation tokenization for data protection and compliance. It discusses how tokenization has evolved from traditional approaches to provide significantly improved performance, scalability, and security compared to encryption and other older tokenization methods. Memory-based tokenization in particular is highlighted as delivering extremely fast tokenization speeds without the need for replication or synchronization between servers. The document also examines use cases and challenges around securing data in cloud and distributed environments and how tokenization addresses these issues through centralized policy management and transparency.
Categorizing and pos tagging with nltk pythonJanu Jahnavi
https://www.learntek.org/blog/categorizing-pos-tagging-nltk-python/
https://www.learntek.org/
Learntek is global online training provider on Big Data Analytics, Hadoop, Machine Learning, Deep Learning, IOT, AI, Cloud Technology, DEVOPS, Digital Marketing and other IT and Management courses.
Traditional active RFID deployments have typically involved tags and readers made by (or for) a single vendor, resulting in tight control over the system. With the widespread commercial adoption of Bluetooth Low Energy (BLE), today it is common to detect everything from consumer products such as smartphones, wearables and smart home electronics, to commercial and industrial products, which actively identify themselves using standardised advertising packets. Moreover, there are plenty of off-the-shelf devices capable of acting as readers, from purpose-built devices to generic single-board-computers to the smartphone in your pocket. Presented at IEEE RFID 2017 in Phoenix.
iPhonical and model-driven software development for the iPhoneHeiko Behrens
These are the slides of my talk "iPhonical and model-driven software development on the iPhone" at the German iPhone Developer Conference 2009 in Cologne. Unfortunately, this version does not include the 25+ minutes demos I presented during the talk.
Categorizing and pos tagging with nltk pythonJanu Jahnavi
https://www.learntek.org/blog/categorizing-pos-tagging-nltk-python/
https://www.learntek.org/
Learntek is global online training provider on Big Data Analytics, Hadoop, Machine Learning, Deep Learning, IOT, AI, Cloud Technology, DEVOPS, Digital Marketing and other IT and Management courses.
The document discusses the Belgian electronic identity (eID) card, including its physical structure, logical structure, content, and functionality for identification and authentication. It provides an overview of how the eID card can be integrated into web applications through an eID applet that handles secure communication with the card and supports multiple browsers and operating systems. Examples are given for using the eID applet to perform identification by reading identity files from the card.
The document is about the Intel Perceptual Computing SDK. It provides the following key details:
- The SDK contains algorithms and modules for hand and finger tracking, face recognition, voice recognition, and 3D object tracking. It includes both low and high-level APIs.
- The SDK can be used to create natural user interfaces using gestures and voice as well as for manipulating 3D content and games.
- An optional Creative camera is available for purchase to enable some of the SDK's capabilities like hand tracking.
- The SDK includes samples, documentation, libraries and headers to allow developers to integrate its capabilities into their applications.
This document discusses using Frida, an open source dynamic instrumentation toolkit, to bypass security checks in applications. It describes how Frida works by injecting JavaScript instrumentation scripts to inspect and modify running processes. Examples are given of using Frida to bypass encryption, PIN checks, root checking, and SSL pinning by hooking functions to log plaintext, force checks to return true, or ignore certificate validation. Alternative dynamic binary instrumentation tools like PIN and DynamoRIO are also mentioned.
This document compares CORBA and DCOM, two major standards for distributed object computing. While both provide infrastructure for defining, constructing, and accessing objects in a distributed environment, they do so in different ways. A bridge is proposed to allow CORBA and DCOM systems to work together, taking advantage of their respective strengths. The bridge would allow a DCOM client to access objects in a CORBA server by generating proxy/stub code from the CORBA IDL. Future work could involve a native middleware that supports both CORBA and DCOM at the IDL level.
Public Key Infrastructure (PKI) uses public/private key cryptography and digital certificates to authenticate users and devices, encrypt and sign messages and documents. The document discusses how PKI works including the use of digital signatures to authenticate messages, the need for a trusted authority to issue certificates binding public keys to identities, and recommendations for implementing a basic PKI including documenting policies and procedures. Common cryptographic algorithms for encryption, signatures and hashing are also briefly described.
The document discusses using XML and object-oriented APIs to improve interoperability between databases and applications. It proposes a specification called XORT to map XML to the relational model in a generic way. This allows applications to communicate with databases via XML in a language-independent manner. It also describes using PostgreSQL functions and ChadoXML services to encapsulate domain logic in a reusable way across different applications.
The document discusses the history and current state of software engineering and its application to IoT systems. It notes that 50 years after the earliest software projects, issues still include cost overruns, property damage, risks to life and death, and challenges ensuring quality. For IoT, fragmentation across hardware, software, APIs and standards poses significant problems. The document proposes that research into IoT software engineering could help address these issues through approaches like developing software to run across diverse IoT platforms, and automatically miniaturizing software through techniques like multi-objective optimization to suit different IoT device capabilities.
1) Issue trackers are often used to track more than just bugs, including features, enhancements, and refactoring work.
2) A manual analysis found that nearly half of issues labeled as "bugs" in issue trackers were actually not bugs.
3) Relying on issue tracker labels alone can introduce significant errors into datasets used for tasks like bug prediction and severity estimation. More work is needed to clean noisy and unreliable data.
The document discusses how to derive dependency structures for legacy J2EE applications. It proposes analyzing all application tiers together using a language-independent model and parsing various artifacts. Configuration files and limited data flow analysis are used to understand dependencies. Container dependencies are explicitly codified by studying technology specifications and codifying dependency rules to apply when certain code patterns are detected in applications. This allows completing an application's dependency graph.
The document discusses the state of practices of service identification in the industry for migrating legacy systems to service-oriented architectures (SOA). It finds that while service identification is seen as important, it remains primarily a manual process focused on identifying coarse-grained business services from source code and business processes. Wrapping and clustering functionalities are common techniques. Fully automating service identification is still challenging due to the need to understand complex legacy system dependencies. The document recommends service identification be business-driven and follow proven methodologies.
This document discusses techniques for testing advanced driver assistance systems (ADAS) through physics-based simulation. It faces challenges due to the large, complex, and multidimensional test input space as well as the computational expense of simulation. The document proposes using a genetic algorithm guided by decision trees to more efficiently search for critical test cases. Classification trees are built to partition the input space into homogeneous regions in order to better guide the selection and generation of test inputs toward more critical areas.
The document reports on the findings of a survey of 45 industrial practitioners on their experiences with legacy-to-SOA migrations. The key findings include: 1) Practitioners migrate legacy systems implemented in Cobol and Java to reduce maintenance costs and improve flexibility/interoperability; 2) Identifying services is an important step but is mostly manual and business-driven; 3) The most used techniques are functionality clustering and wrapping; 4) Desired service qualities are reusability, granularity and loose coupling; 5) Identified services prioritize domain-specific over technical services; 6) RESTful services are most targeted technology.
The document investigates the impact of linguistic anti-patterns (LAs) on program comprehension. It defines LAs as bad naming, documentation, and implementation practices. A study was conducted involving 92 students assessing programs with and without LAs. The study found that LAs negatively impact understandability by increasing time and reducing correctness. Certain LAs like A2, B4, and D1 had a stronger negative effect than others like E1. The study also found that providing knowledge about LAs can help mitigate their impact by making programs easier and faster to comprehend.
The document discusses research on identifying and analyzing the impact of patterns on the quality of multi-language systems. The objectives are to collect and categorize sets of programming languages used together, detect patterns in multi-language programs to track bugs and provide best practices, and study how patterns impact quality. The contributions will be a catalog of multi-language patterns and defects, a detection tool, and analysis of patterns' effects on quality attributes. Current work includes reviewing literature on language combinations and patterns to provide recommendations for high-quality multi-language development.
This document discusses research on change impact analysis in multi-language systems. It begins by outlining recommendations for best practices when using JNI, such as passing primitive types, minimizing calls between native and Java code, and properly handling strings. It then describes a qualitative analysis of JNI usage that identified common practices and issues. Finally, it proposes future work to survey developers on applying recommendations to facilitate change impact analysis in multi-language systems.
The document summarizes a recommendation system that suggests software processes for video game projects based on similarities to past projects. The system analyzes over 100 postmortems from previous games to build a database of development processes and project contexts. It uses principal component analysis to identify similar past projects and recommends a process by combining elements from similar projects' processes. The system was evaluated both quantitatively based on correctness and coverage metrics and qualitatively through surveys and a case study with a developer team.
Will io t trigger the next software crisisPtidej Team
This document discusses how the rise of the Internet of Things (IoT) could trigger a new software crisis due to issues like fragmentation, complexity, and lack of standards. It provides a brief history of software engineering challenges over the past 50 years such as cost overruns, safety issues, and prioritizing productivity over quality. The document then examines how these same problems are emerging in the IoT context today. It argues that IoT software engineering practices need to address issues like device software, cloud/app development, and privacy in order to avoid a major crisis.
This document discusses theories related to software design patterns. It notes that while design patterns are commonly used, there is a need for more research on how they impact software quality. The document proposes several areas for developing theories, including systematically categorizing existing patterns based on underlying principles, combining principles to identify new patterns, and developing theories of patterns from developer behavior and for building software systems. Formalizing patterns and identifying their relationships could help teaching and understanding of patterns.
Laleh M. Eshkevari defended her Ph.D dissertation on developing techniques for the automatic detection and classification of identifier renamings in software projects. Her dissertation outlined a taxonomy of renamings, described approaches for renaming detection based on line mapping, entity mapping and data flow analysis, and discussed methods for classifying renamings based on their form and semantic changes. Evaluation of the approaches on several open source projects showed high precision and recall for renaming detection and identified trends in how renamings are used in practice.
1) The document analyzes the co-occurrence of code smells like anti-patterns and clones in software systems and their impact on fault-proneness.
2) It finds that over 50% of classes with anti-patterns also have clones, and 59-78% of classes with clones also participate in anti-patterns.
3) Classes with both anti-patterns and clones are significantly more fault-prone than other classes, with the risk of faults being at least 7 times higher in one system studied.
Trustrace is an approach that uses software repository links like SVN commits to improve the trust in automatically recovered traceability links between requirements and code. It calculates an initial trust value for links based on IR techniques like VSM, and then reweights the links based on additional information from the software repository. An evaluation on two case studies found Trustrace improved precision over VSM alone and showed no significant difference in recall, supporting the hypothesis that Trustrace can improve link recovery accuracy over IR-only approaches.
The document presents a taxonomy called ProMeTA for classifying program metamodels used in program reverse engineering. ProMeTA defines characteristics such as target language, abstraction level, meta-language, and more to classify popular metamodels like AST, KDM, FAMIX. The taxonomy aims to provide a comprehensive guide for researchers and practitioners to select, design, and communicate metamodels. The paper also analyzes existing metamodels according to the ProMeTA taxonomy and identifies gaps to guide future metamodel development.
This document describes a controlled, multiple case study of software evolution and defects from industrial projects. It details the data sources used, including source code repositories, issue tracking databases, and interviews. Metrics such as code smells, size, effort, and defects were collected. Programming skills of developers were also measured. Code smell detection tools and custom scripts to analyze code changes were used to extract metrics on a variety of code issues and evolution over time. The data is available online for further analysis.
The document describes a study on detecting linguistic (anti)patterns in RESTful APIs. It presents an approach called DOLAR (Detection Of Linguistic Antipatterns in REST) that analyzes REST API URIs and detects antipatterns using heuristics-based algorithms. Experiments were conducted on 309 methods from 15 public REST APIs to test DOLAR's accuracy, the extensibility of the underlying SOFA framework, and the performance of detection algorithms. The results showed that 42% of methods exhibited contextualized resource names (a pattern) while 14% had contextless resource names (an antipattern), with detection taking under a second on average.
HCL Notes and Domino License Cost Reduction in the World of DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-and-domino-license-cost-reduction-in-the-world-of-dlau/
The introduction of DLAU and the CCB & CCX licensing model caused quite a stir in the HCL community. As a Notes and Domino customer, you may have faced challenges with unexpected user counts and license costs. You probably have questions on how this new licensing approach works and how to benefit from it. Most importantly, you likely have budget constraints and want to save money where possible. Don’t worry, we can help with all of this!
We’ll show you how to fix common misconfigurations that cause higher-than-expected user counts, and how to identify accounts which you can deactivate to save money. There are also frequent patterns that can cause unnecessary cost, like using a person document instead of a mail-in for shared mailboxes. We’ll provide examples and solutions for those as well. And naturally we’ll explain the new licensing model.
Join HCL Ambassador Marc Thomas in this webinar with a special guest appearance from Franz Walder. It will give you the tools and know-how to stay on top of what is going on with Domino licensing. You will be able lower your cost through an optimized configuration and keep it low going forward.
These topics will be covered
- Reducing license cost by finding and fixing misconfigurations and superfluous accounts
- How do CCB and CCX licenses really work?
- Understanding the DLAU tool and how to best utilize it
- Tips for common problem areas, like team mailboxes, functional/test users, etc
- Practical examples and best practices to implement right away
Communications Mining Series - Zero to Hero - Session 1DianaGray10
This session provides introduction to UiPath Communication Mining, importance and platform overview. You will acquire a good understand of the phases in Communication Mining as we go over the platform with you. Topics covered:
• Communication Mining Overview
• Why is it important?
• How can it help today’s business and the benefits
• Phases in Communication Mining
• Demo on Platform overview
• Q/A
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slackshyamraj55
Discover the seamless integration of RPA (Robotic Process Automation), COMPOSER, and APM with AWS IDP enhanced with Slack notifications. Explore how these technologies converge to streamline workflows, optimize performance, and ensure secure access, all while leveraging the power of AWS IDP and real-time communication via Slack notifications.
Full-RAG: A modern architecture for hyper-personalizationZilliz
Mike Del Balso, CEO & Co-Founder at Tecton, presents "Full RAG," a novel approach to AI recommendation systems, aiming to push beyond the limitations of traditional models through a deep integration of contextual insights and real-time data, leveraging the Retrieval-Augmented Generation architecture. This talk will outline Full RAG's potential to significantly enhance personalization, address engineering challenges such as data management and model training, and introduce data enrichment with reranking as a key solution. Attendees will gain crucial insights into the importance of hyperpersonalization in AI, the capabilities of Full RAG for advanced personalization, and strategies for managing complex data integrations for deploying cutting-edge AI solutions.
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
Best 20 SEO Techniques To Improve Website Visibility In SERPPixlogix Infotech
Boost your website's visibility with proven SEO techniques! Our latest blog dives into essential strategies to enhance your online presence, increase traffic, and rank higher on search engines. From keyword optimization to quality content creation, learn how to make your site stand out in the crowded digital landscape. Discover actionable tips and expert insights to elevate your SEO game.
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfMalak Abu Hammad
Discover how MongoDB Atlas and vector search technology can revolutionize your application's search capabilities. This comprehensive presentation covers:
* What is Vector Search?
* Importance and benefits of vector search
* Practical use cases across various industries
* Step-by-step implementation guide
* Live demos with code snippets
* Enhancing LLM capabilities with vector search
* Best practices and optimization strategies
Perfect for developers, AI enthusiasts, and tech leaders. Learn how to leverage MongoDB Atlas to deliver highly relevant, context-aware search results, transforming your data retrieval process. Stay ahead in tech innovation and maximize the potential of your applications.
#MongoDB #VectorSearch #AI #SemanticSearch #TechInnovation #DataScience #LLM #MachineLearning #SearchTechnology
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc
How does your privacy program stack up against your peers? What challenges are privacy teams tackling and prioritizing in 2024?
In the fifth annual Global Privacy Benchmarks Survey, we asked over 1,800 global privacy professionals and business executives to share their perspectives on the current state of privacy inside and outside of their organizations. This year’s report focused on emerging areas of importance for privacy and compliance professionals, including considerations and implications of Artificial Intelligence (AI) technologies, building brand trust, and different approaches for achieving higher privacy competence scores.
See how organizational priorities and strategic approaches to data security and privacy are evolving around the globe.
This webinar will review:
- The top 10 privacy insights from the fifth annual Global Privacy Benchmarks Survey
- The top challenges for privacy leaders, practitioners, and organizations in 2024
- Key themes to consider in developing and maintaining your privacy program
UiPath Test Automation using UiPath Test Suite series, part 6DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 6. In this session, we will cover Test Automation with generative AI and Open AI.
UiPath Test Automation with generative AI and Open AI webinar offers an in-depth exploration of leveraging cutting-edge technologies for test automation within the UiPath platform. Attendees will delve into the integration of generative AI, a test automation solution, with Open AI advanced natural language processing capabilities.
Throughout the session, participants will discover how this synergy empowers testers to automate repetitive tasks, enhance testing accuracy, and expedite the software testing life cycle. Topics covered include the seamless integration process, practical use cases, and the benefits of harnessing AI-driven automation for UiPath testing initiatives. By attending this webinar, testers, and automation professionals can gain valuable insights into harnessing the power of AI to optimize their test automation workflows within the UiPath ecosystem, ultimately driving efficiency and quality in software development processes.
What will you get from this session?
1. Insights into integrating generative AI.
2. Understanding how this integration enhances test automation within the UiPath platform
3. Practical demonstrations
4. Exploration of real-world use cases illustrating the benefits of AI-driven test automation for UiPath
Topics covered:
What is generative AI
Test Automation with generative AI and Open AI.
UiPath integration with generative AI
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
1. Can Better Identifier Splitting
Techniques H l F
T h i Help Feature LLocation?
i ?
Bogdan Dit, Latifa Guerrouj, D
B d Di L if G j Denys P h
Poshyvanyk, Gi li
k Giuliano A
Antoniol
i l
SEMERU
19th IEEE International Conference on Program Comprehension
(ICPC’11) – Kingston, Ontario, Canada
4. Textual information embeds
domain k
d i knowledge
l d
About 70% of source code
consists of identifiers*
* Deissenboeck, F. and Pizka , M., "Concise and Consistent Naming", Software
4
Quality Journal, vol. 14, no. 3, 2006, pp. 261-282
5. Textual information embeds
domain k
d i knowledge
l d
About 70% of source code
consists of identifiers*
Identifiers are important source of
information for maintenance tasks:
• traceability link recovery
• feature location
* Deissenboeck, F. and Pizka , M., "Concise and Consistent Naming", Software
5
Quality Journal, vol. 14, no. 3, 2006, pp. 261-282
6. # of Cumulative Feature Location
Papers based on Textual Information
6
7. Related Work on Identifiers
• Takang et al. (JPL 96)
al (JPL’96)
– programs with full-word identifiers are more
understandable than those with abbreviated
ones
• Lawrie et al. (ICPC 06)
al (ICPC’06)
– full words and recognizable abbreviations
lead to better comprehension
• Binkley et al. (ICPC’09)
– CamelCase style is easier to recognize than
underscore 7
8. Related Work on Identifiers
• Enslen et al. (MSR 09)
al (MSR’09)
– Samurai: algorithm for splitting identifiers
(using tables of identifier frequencies)
• Guerrouj et al. (JSME’11)
– TIDIER: algorithm for splitting identifiers
(using contextual information)
• Other related work
– Deissenboeck and Pizka (SQJ’06), Antoniol et
al. (ICSM’07),
al (ICSM’07) Haiduc and Marcus (ICPC’08)
(ICPC’08),
etc. 8
11. Identifier Splitting Algorithms
Original Identifier Camel Case
userId user Id
setGID set GID
print_file2device
print file2device print file 2 device
SSLCertificate SSL Certificate
MINstring MI Nstring
USERID USERID
currentsize currentsize
readadapterobject
p j readadapterobject
p j
tolocale tolocale
imitating imitating
DEFMASKBit DEFMASK Bit
11
12. Identifier Splitting Algorithms
Handles
Original Identifier Camel Case underscore and
userId user Id
digits
setGID set GID
print_file2device
print file2device print file 2 device
SSLCertificate SSL Certificate
MINstring MI Nstring
USERID USERID
currentsize currentsize
readadapterobject
p j readadapterobject Fails
p j at mixed cases
tolocale tolocale
imitating imitating
DEFMASKBit DEFMASK Bit
Fails at same case
identifiers 12
13. Identifier Splitting Algorithms
Original Identifier Camel Case
userId user Id
setGID set GID
print_file2device
print file2device print file 2 device
SSLCertificate SSL Certificate
MINstring MI Nstring
USERID USERID
currentsize currentsize
readadapterobject
p j readadapterobject
p j
tolocale tolocale
imitating imitating
DEFMASKBit DEFMASK Bit
13
14. Identifier Splitting Algorithms
Original Identifier Camel Case Samurai
userId user Id user Id
setGID set GID set GID
print_file2device
print file2device print file 2 device print file 2 device
SSLCertificate SSL Certificate SSL Certificate
MINstring MI Nstring MIN string
USERID USERID USER ID
currentsize currentsize current size
readadapterobject
p j readadapterobject
p j read adapter object
p j
tolocale tolocale tol ocal e
imitating imitating imi ta ting
DEFMASKBit DEFMASK Bit DEF MASK Bit
14
15. Identifier Splitting Algorithms
Original Identifier Camel Case Samurai
userId user Id
Splits some cases user Id
setGID set GID set GID
where CamelCase
print_file2device
print file2device print file 2 device print file 2 device
SSLCertificate
cannot
SSL Certificate SSL Certificate
MINstring MI Nstring MIN string
USERID USERID USER ID
currentsize currentsize current size
readadapterobject
p j readadapterobject
p j read adapter object
p j
tolocale tolocale tol ocal e
imitating imitating imi ta ting
DEFMASKBit DEFMASK Bit DEF MASK Bit
Oversplits 15
16. # of Cumulative Feature Location
Papers based on Textual Information
16
17. # of Cumulative Feature Location
Papers based on Textual Information
Existing feature location techniques
use Camel Case splitting
17
18. Information Retrieval FLT
• Generate corpus synchronized void print(TestResult result,
• Preprocessing long runTime) throws IOE
l Ti ) h
printHeader(runTime);
IOException{
i {
– Remove non-literals printErrors(result);
– Remove stop words p
printFailures(result);
( );
printFooter(result);
– Split identifiers
}
– Stemming
synchronized void print TestResult result
• I d i
Indexing long runTime throws IOException
– Term-by-document matrix printHeader runTime printErrors result
printFailures result printFooter result
– Singular Value
g
Decomposition
• User formulate query print TestResult result runTime
IOException printHeader runTime
O cept o p t eade u e
• G
Generate results
t lt printErrors result printFailures result
• Ranked list printFooter result 18
19. Information Retrieval FLT
• Generate corpus print Test Result result run Time IO
Exception print Header run Ti print
E ti i tH d Time i t
• Preprocessing Errors result print Failures result print
– Remove non-literals Footer result
– Remove stop words
– Split identifiers
print test result result run time io
– Stemming exception print head run time print error
• I d i
Indexing result print fail result print foot result
– Term-by-document matrix
– Singular Value
g
Decomposition print test result ...
• User formulate query
m1 5 1 3 ...
• G
Generate results
t lt
m2 ... ... ... ...
• Ranked list 19
20. Information Retrieval FLT
print test result ...
• Generate corpus
• Preprocessing m1 5 1 3 ...
– Remove non-literals m2 ... ... ... ...
– Remove stop words
– Split identifiers
– Stemming
• I d i
Indexing
– Term-by-document matrix
– Singular Value
g
Decomposition
• User formulate query
• G
Generate results
t lt
• Ranked list 20
21. IR and Dynamic Information FLT
• Generate corpus
• Preprocessing
– Remove non-literals
– Remove stop words
– Split identifiers
– Stemming
• I d i
Indexing
– Term-by-document matrix
– Singular Value Decomposition
g p
Collect execution
• User formulate query trace
• Generate results
• Ranked list of executed methods
21
22. Research Goal
R hG l
Evaluate how advanced splitting techniques impact
the
th performance of feature location techniques
f ff t l ti t h i
22
23. Information Retrieval FLT
• Generate corpus
• Preprocessing
– Remove non-literals
Replace Camel Case with :
– Remove stop words •Samurai
– Split identifiers •“Perfect” Splitting
– Stemming algorithm (
g (Oracle) )
• I d i
Indexing
– Term-by-document matrix
– Singular Value
g
Decomposition Better
• User formulate query
• G
Generate results
t lt
Worst
W
• Ranked list 23
25. Extract Identifiers
Same
All p
split?
Identifiers (CamelCase
Samurai
TIDIER)
YES
Concordant
Building
B ildi Split
Identifiers
the Oracle
25
26. Extract Identifiers
Same
All p
split?
Identifiers (CamelCase
Samurai • Assume they are
TIDIER)
correct
YES
• Manually verified a
Concordant sample
Building
B ildi Split
Identifiers
the Oracle
26
• Threat to validity
27. Manually
Split
Identifiers
Extract Identifiers Manual Split
Same Discordant
NO
All p
split? Split
Identifiers (CamelCase
Identifiers
Samurai
TIDIER)
YES
Concordant
Building
B ildi Split
Identifiers
the Oracle
27
28. Manually
Split
Identifiers
Consensus
Extract Identifiers Manual Split
between authors
Checked
Same
All p
split? source codeDiscordant
NO
Split
Identifiers (CamelCase
Identifiers
Samurai
TIDIER)
YES
Concordant
Building
B ildi Split
Identifiers
the Oracle
28
29. Identifiers Manually
• Examples: DT, i3, that could Split
not be split Identifiers
P754, zzz, etc.
• Left unchanged
Extract Identifiers Manual Split
Same Discordant
NO
All p
split? Split
Identifiers (CamelCase
Identifiers
Samurai
TIDIER)
YES
Concordant
Building
B ildi Split
Identifiers
the Oracle
29
31. Design of the Case Study
• RQ: Does a FLT with an advanced
splitting algorithm produce better results
than the same FLT using the CamelCase
splitting algorithm?
31
33. How to Compare two FLTs?
• Effectiveness measure for each feature
IR
Method LSI
score
M121 0.92
M64 0.89
M15 0.86 Gold t
G ld set method
th d
M39 0.80
M7 0.74
M152 0.65
0 65
M234 0.56 Effectiveness = 5
M12 0.54
M78 0.52
0 52
33
34. How to Compare two FLTs?
• Effectiveness measure for each feature
IR
Method LSI y
IRDyn
score
Method LSI
M121 0.92 score
M64 0.89
Gold set method M15 0.86
M15 0.86 M7 0.74
M39 0.80 M234 0.56
M7 0.74 M12 0.54
M152 0.65
0 65
Effectiveness = 2
ect e ess
M234 0.56
M12 0.54
M78 0.52
0 52
Method 34
Executed method (from trace)
36. Software Systems
• Rhino 1 6R5
1.6R5
• 138 classes, 1,870 methods, 32K LOC
• Eaddy
E dd et al.’s d *
l ’ data*
• 2 datasets
Dataset Size Queries Gold Sets Execution
Information
RhinoFeatures 241 Sections of Eaddy et al.* Full Execution Traces
ECMAScript (from unit tests)
documentation
Rhino
Rhi Bugs 143 Bug title d
B titl and Eaddy t l *
E dd et al.* N/A
description (CVS)
36
* http://www.cs.columbia.edu/~eaddy/concerntagger/
37. Software Systems
• jEdit 4 3
4.3
• 483 classes, 6.4K methods, 109K LOC
•2d t t
datasets
Dataset Size Queries Gold Sets Execution
Information
jEditFeatures 64 Feature (or Patch) SVN Marked Execution
title and description Traces
jEditBugs 86 Bug title and SVN Marked Execution
description Traces
Datasets available at:
http://www.cs.wm.edu/semeru/data/icpc11-identifier-splitting/ 37
40. Generating the jEdit
Datasets
Changed files
Previous Current
Version
V i Version
V i
Compare
using
Eclipse AST
c pse S
Modified methods
(gold set) 40
44. IR FLTs
Similar median
S
and average
RhinoFeatures
45. IR FLTs
Similar median
S
and average
RhinoFeatures RhinoBugs
jEditFeatures jEditBugs 45
46. IR FLTs
Similar median
S
and average
RhinoFeatures RhinoBugs
Datasets with
features have
better results
than datasets
with bugs
jEditFeatures jEditBugs 46
47. IRDyn FLTs
N/A
Similar median
S
and average
RhinoFeatures RhinoBugs
jEditFeatures jEditBugs 47
48. IRDyn FLTs
N/A
Similar median
S
and average
RhinoFeatures RhinoBugs
Datasets with
atasets t
features have
better results
than datasets
with bugs
jEditFeatures jEditBugs 48
52. IR
Datasets with features
RhinoFeatures vs. RhinoBugs
Datasets with bugs
52
jEditFeatures jEditBugs
53. IRDyn
N/A
Similar trend
RhinoFeatures RhinoBugs
53
jEditFeatures jEditBugs
54. Statistical Results
• Wilcoxon signed-rank test
signed rank
• Null hypothesis
– Th
There is no statistical significance diff
i t ti ti l i ifi difference
in terms of effectiveness between
IRSamurai/IROracle and IRCamelCase
l l
• Alternative hypothesis
– IRSamurai/IROracle h statistically significantly
has t ti ti ll i ifi tl
higher effectiveness than IRCamelCase
• alpha = 0 05
l h 0.05
54
55. IR
RhinoFeatures The only RhinoBugs
statistical
significant result
(p=0.05)
55
jEditFeatures
jEditB
56. Qualitative Results
• Vocabulary mismatch between queries
and code:
– Name of developers (e.g., Slava, Carlos)
– Id ifi
Identifiers specific to communication (
ifi i i (e.g.,
thanks, greetings, annoying)
56
59. Threats to Validity
• External
– 2 Java applications (different domains)
– More systems needed
• Construct
– Errors may be p
y present in Oracle and g
gold sets
– We used data produced by other researchers
• Internal
– Subjectivity and bias in building the Oracle
• Conclusion
– Non-parametric test: Wilcoxon signed-rank 59
60. Research Questions
• RQ1 Does IRSamurai outperform IRCamelCase in
terms of effectiveness? NO
• RQ2 Does IRSSamuraiDyn outperform IRC
i CamelCaseDyn
lC
in terms of effectiveness? NO
• RQ3 Does IROracle outperform IRCamelCase in terms
of effectiveness? I some cases (Rhi )
f ff ti ? In (Rhino)
• RQ4 Does IROracleDyn outperform IRCamelCaseDyn
60
in terms of effectiveness? NO
61. Future Work
• More systems and datasets
• Different maintenance tasks
– T
Traceability li k recovery
bilit link
• Consider other splitting algorithms
61
62. Conclusions
• Advanced splitting technique could
improve FLTs
– We found some empirical evidence
• Splitting has more impact on IR FLT
• If execution information is available, it is
f f l bl
not necessary to use an advance splitting
technique
h i
62
63. Thank you! Questions?
SEMERU @ William and Mary
http://www.cs.wm.edu/semeru/
bdit@cs.wm.edu
bdi d
SEMERU
63
64. References
• Takang et al. (1996) Takang, A., Grubb, P., and Macredie, R., "The
Effects of Comments and Identifier Names on Program Comprehensibility:
An Experimental Investigation", Journal of Programming Languages, vol. 4,
no. 3, 1996, pp. 143-167
• Lawrie et al (2006) Lawrie D Morrell C Feild H and Binkley, D
al. Lawrie, D., Morrell, C., Feild, H., Binkley D.,
"What's in a Name? A Study of Identifiers", in Proc. of IEEE ICPC'06, June
14-16 2006, pp. 3-12
• Binkley et al. (
y (2009) Binkley, D., Davis, M., Lawrie, D., and Morrell, C.,
) y, , , , , , , ,
"To CamelCase or Under_score", in Proc. of IEEE ICPC'09, May 17-19 2009,
pp. 158-167
• Enslen et al. (2009) Enslen, E., Hill, E., Pollock, L., and Vijay-Shanker, K.,
"Mining Source C d to A
"Mi i S Code Automatically S li Id ifi
i ll Split Identifiers f S f
for Software
Analysis", in Proc. of IEEE MSR'09, May 16-17 2009, pp. 71-80
• Guerrouj et al. (2011) Guerrouj, L., Di Penta, M., Antoniol, G., and
Guéhéneuc, Y. G., TIDIER:
Guéhéneuc Y -G "TIDIER: An Identifier Splitting Approach using Speech
Recognition Techniques", JSME, vol. to appear, 2011
64