APIs can be classified according to the programming domains (e.g., GUIs, databases, collections, or security) that they address. Such classification is vital in searching repositories (e.g., the Maven Central Reposito...
详细信息
ISBN:
(数字)9781450357142
ISBN:
(纸本)9781538661697
APIs can be classified according to the programming domains (e.g., GUIs, databases, collections, or security) that they address. Such classification is vital in searching repositories (e.g., the Maven Central Repository for Java) and for understanding the technology stack used in software projects. We apply hierarchical clustering to a curated suite of Java APIs to compare the computed API clusters with preexisting API classifications. Clustering entails various parameters (e.g., the choice of IDF versus LSI versus LDA). We describe the corresponding variability in terms of a feature model. We exercise all possible con gurations to determine the maximum correlation with respect to two baselines: i) a smaller suite of APIs manually classified in previous research; ii) a larger suite of APIs from the Maven Central Repository, thereby taking advantage of crowd-sourced classification while relying on a threshold-based approach for identifying important APIs and versions thereof, subject to an API dependency analysis on GitHub. We discuss the configurations found in this way and we examine the influence of particular features on the correlation between computed clusters and baselines. To this end, we also leverage interactive exploration of the parameter space and the resulting dendrograms. In this manner, we can also identify issues with the use of classifiers (e.g., missing classifiers) in the baselines and limitations of the clustering approach.
Natural language processing (NLP) is the branch of Artificial Intelligence that is concerned with enabling computers understand human languages. Implementing new NLP tools that effectively and efficiently process Arab...
详细信息
ISBN:
(纸本)9781538606643
Natural language processing (NLP) is the branch of Artificial Intelligence that is concerned with enabling computers understand human languages. Implementing new NLP tools that effectively and efficiently process Arabic is not an easy task, usually such tools face challenges related to NLP various tasks, However, with the movement of many NLP companies to provide their NLP services via Web APIs, building NLP systems that can benefit from such APIs is becoming a reality. This paper will explore the available NLP Web APIs that supports Arabic language. It will also discuss their strengths and weaknesses and provide suggestion for future use.
Background: application programming interfaces (APIs) are key to software reuse. Software developers can link functionality and behaviour found in other software with their own software by taking an API into use. Howe...
详细信息
ISBN:
(纸本)9781538673843
Background: application programming interfaces (APIs) are key to software reuse. Software developers can link functionality and behaviour found in other software with their own software by taking an API into use. However, figuring out how an API works is usually demanding, and may require that the developers spend a notable amount of time familiarizing themselves with the API. Good API documentation is of key importance to simplify this task. Objective: To present a comprehensive, unbiased overview of the state-of-the-art on tools and approaches for API documentation generation. Method: A systematic mapping study on published tools and approaches that can be used for generating API documentation, or for assisting in the API documentation process. Results: 36 studies on API documentation generation tools and approaches analyzed and categorized in a variety of ways. Among other things, the paper presents an overview of what kind of tools have been developed, what kind of documentation they generate, and what sources the documentation approaches require. Conclusion: Out of the identified approaches, many contribute to API documentation in the areas of natural language documentation and code examples and templates. Many of the approaches contribute to ease API users' understanding and learning of the API, but also to the maintenance and generation of API documentation. Most of the approaches are automatic, simplifying the API documentation generation notably, under the assumption that relevant sources for the generation are available. Most of the API documentation approaches are evaluated either by exercise of the approach followed by analysis of the results, or by empirical evaluation methods.
As the demand for higher computing resource systems and more distributed services is increasing, changes are required. Cloud computing has thus enabled distributed networks that enable computing resources in an online...
详细信息
ISBN:
(纸本)9781538627754
As the demand for higher computing resource systems and more distributed services is increasing, changes are required. Cloud computing has thus enabled distributed networks that enable computing resources in an online manner. This has further developed into concepts such as mobile cloud computing systems which provide mobile devices with resources to help minimize computing limitations. Other technologies, such as virtualization have made it possible to create an entirely new network infrastructure such as network function virtualization and software defined networks. However, the development of these new systems have also brought new challenges. Research topics such as securing the cloud, the impact of network function virtualization and software-defined networks on the cloud, and mobile cloud computing has arisen. These are only some of the future research topics required. Many more variations of cloud usage will be seen as these technologies develop. This paper provides the results of a survey done on the current research available on the above mentioned topics.
The growing ecosystem of Web APIs and IoT devices enables us to create a mashup within a short period of time. However, it is difficult to find appropriate Web APIs and IoT devices. Moreover, investigating a combinati...
详细信息
ISBN:
(纸本)9781538636817
The growing ecosystem of Web APIs and IoT devices enables us to create a mashup within a short period of time. However, it is difficult to find appropriate Web APIs and IoT devices. Moreover, investigating a combination of Web APIs and IoT devices is much more difficult. The growing ecosystem enables us to achieve ideas in alternative ways, although it is difficult to find such alternative ways. We propose a recommendation system that takes the quality characteristics and such alternative ways into account. The system is implemented using a Steiner tree approximation algorithm, which can recommend a combination of Web APIs and IoT devices suitable for mashups. We tested the system in two aspects, i.e., the validity and performance of the algorithm. The validity was proved by running the system against a graph of actual Web APIs and IoT devices. The performance was proved by running the system against large graphs generated using a pseudorandom number generator. The system can output a result within 8 s against 28,200 nodes and five terminals, which is a considerably shorter time than that required by skilled developers to come up with a combination.
This paper presents some teaching strategies applied in a curricular unit of the 3rd year of the Integrated Master of Engineering and Industrial Management at the University of Minho The goal was to teach theoretical ...
详细信息
ISBN:
(纸本)9781509045334
This paper presents some teaching strategies applied in a curricular unit of the 3rd year of the Integrated Master of Engineering and Industrial Management at the University of Minho The goal was to teach theoretical concepts associated to automation topics. The practical aspects as designing an automated machine or developing the corresponding Ladder Logic diagram is often well accepted by students. On the other hand, topics related to instrumentation, sensor type and functioning for example, more theoretical, are usually less attractive to students. So, different tools have been developed and tested along the past years to overcome this concern. This paper presents the last experience tested: evaluating a previously developed APP Inventor tool (developed by students) as wondering if it is a suitable way to learn automation;an automation conquest, where the competition may promote the stimulus to learn.
In this paper, we propose to configure at compile time the checking associated with application programming interfaces' methods that can receive possibly malformed values (e.g. erroneous user inputs and problemati...
详细信息
ISBN:
(纸本)9781538628058
In this paper, we propose to configure at compile time the checking associated with application programming interfaces' methods that can receive possibly malformed values (e.g. erroneous user inputs and problematic retrieved records from databases) and thus cause application execution failures. To achieve this, we design a type system for implementing a pluggable checker on the Java's compiler and find at compile time insufficient checking bugs that can lead to application crashes due to malformed inputs. Our goal is to wrap methods when they receive external inputs so that the former generate checked instead of unchecked exceptions. We believe that our approach can improve Java developers' productivity, by using exception handling only when it is required, and ensure client applications' stability. We want to evaluate our checker by using it to verify the source code of Java projects from the Apache ecosystem. Also, we want to analyze stack traces to validate the identified failures by our checker.
The paper compares the advantages and disadvantages of a variety of Graphics application programming interfaces (APIs) from the perspective of obtaining stereoscopy in applications written for a CAVE virtual reality e...
详细信息
ISBN:
(纸本)9781538623718
The paper compares the advantages and disadvantages of a variety of Graphics application programming interfaces (APIs) from the perspective of obtaining stereoscopy in applications written for a CAVE virtual reality environment. A number of problems have been diagnosed and an attempt has been made to solve them using OpenGL, DirectX 11 and 12, Vulkan, as well as the Unity Engine which can internally use DirectX, OpenGL and Vulkan, but has problems and limitations of its own.
Digital transformation is accelerating due to the rapid emergence of open APIs. Using a curated dataset of nearly 15,000 APIs, the author visualizes the structure of the API ecosystem, revealing distinct clusters with...
详细信息
Digital transformation is accelerating due to the rapid emergence of open APIs. Using a curated dataset of nearly 15,000 APIs, the author visualizes the structure of the API ecosystem, revealing distinct clusters within it.
This paper addresses web services for Internet of Things (IoT) applications. The research focus is on IoT applications for mobile monitoring and third party's database access. Both web services design aspects and ...
详细信息
This paper addresses web services for Internet of Things (IoT) applications. The research focus is on IoT applications for mobile monitoring and third party's database access. Both web services design aspects and deployment issues are studied. By synthesis of functional abstraction for configuration management and performance monitoring, an approach to design RESTful web services for mobile monitoring is suggested. In addition to traditional operations supported by Database Management Systems, web services' operations for subscription management and notifications about occurrences of specific data-related events, as well as operations for trust and security management are proposed in the context of third party's database access. Web services deployment issues concern the access control aimed to prevent from overloading. A formal method for a model-based load evaluation of SOA (Service Oriented Architecture) application server is suggested. The method takes into account the distributed server architecture and the processing of heterogeneous traffic. The SOA application server's utilization is evaluated by simulation.
暂无评论