Modern software projects are composed of several software languages, software technologies and different kind of artifacts. Therefore, the understanding of the software project at hand, including the semantic links between the different parts, becomes a difficult challenge for a developer. One approach to attack this issue is to document the software project with the help of a linguistic architecture. This kind of architecture can be described with the help of the MegaL ontology. A remaining challenge is the creation of it since it requires different kind of skills. Therefore, this paper proposes an approach for the automatic extraction of a linguistic architecture. The open source framework Apache Jena, which is focusing on semantic web technologies like RDF and OWL, is used to define custom rules that are capable to infer new knowledge based on the defined or already extracted RDF triples. The complete approach is tested in a case study on ten different open source projects. The aim of the case study is to extract a linguistic architecture that is describing the use of Hibernate in the selected projects. In the end, the result is evaluated with the help of different metrics. The evaluation is performed with the help of an internal and external approach.

The term “Software Chrestomaty” is defined as a collection of software systems meant to be useful in learning about or gaining insight into software languages, software technologies, software concepts, programming, and software engineering. 101companies software chrestomathy is a community project with the attributes of a Research 2.0 infrastructure for various stakeholders in software languages and technology communities. The core of 101companies combines a semantic wiki and confederated open source repositories. We designed and developed an integrated ontology-based knowledge base about software languages and technologies. The knowledge is created by the community of contributors and supported with a running example and structured documentation. The complete ecosystem is exposed by using Linked Data principles and equipped with the additional metadata about individual artifacts. Within the context of software chrestomathy we explored a new type of software architecture – linguistic architecture that is targeted on the language and technology relationships within a software product and based on the megamodels. Our approach to documentation of the software systems is highly structured and makes use of the concepts of the newly developed megamodeling language MegaL. We “connect” an emerging ontology with the megamodeling artifacts to raise the cognitive value of the linguistic architecture.

Motion capture refers to the process of capturing, processing and trans- lating real motions onto a 3D model. Not only in the movie and gaming industries, motion capture creates an indispensable realism of human and animal movement. Also in the context of robotics, medical movement therapy, as well as in AR and VR, motion capture is used extensively. In addition to the well established optical processes, especially in the last three areas, alternative systems based on inertial navigation (IMUs) are being used in-creasingly, because they do not rely on external cameras and thus limit the area of movement considerably less.
Fast evolving technical progress in the manufacturing of such IMUs allows building small sensors, wearable on the body which can transfer movements to a computer. The development of applying inertial systems to a motion capture context, however, is still at an early state. Problems like drift can currently only be minimized by adding additional hardware for correcting the read data.
In the following master thesis an IMU based motion capture system is designed and constructed. This contains the assembly of the hardware components as well as processing of the received movement data on the software side and their application to a 3D model.

This thesis proposes the use of MSR (Mining Software Repositories) techniques to identify software developers with exclusive expertise about specific APIs and programming domains in software repositories. A pilot Tool for finding such
“Islands of Knowledge” in Node.js projects is presented and applied in a case study to the 180 most popular npm packages. It is found that on average each package has 2.3 Islands of Knowledge, which is possibly explained by the finding that npm packages tend to have only one main contributor. In a survey, the maintainers of 50 packages are contacted and asked for opinions on the results produced by the Tool. Together with their responses, this thesis reports on experiences made with the pilot Tool and how future iterations could produce even more accurate statements about programming expertise distribution in developer teams.

Using semantic data from general-purpose programming languages does not provide the unified experience one would want for such an application. Static error checking is lacking, especially with regards to static typing of the data. Based on the previous work of λ-DL, which integrates semantic queries and concepts as types into a typed λ-calculus, this work takes its ideas a step further to meld them into a real-world programming language. This thesis explores how λ-DL's features can be extended and integrated into an existing language, researches an appropriate extension mechanism and produces Semantics4J, a JastAdd-based Java language semantic data extension for type-safe OWL programming, together with examples of its usage.

This Work analyzes if a hardware prototype on an Arduino basis for an Adhoc Network can be created. The objective of the prototype development is, the creation of a sensor node with a modular design, where components can be easily changed. Furthermore the application area has requirements, which the node must fulfill. These requirements are derived from the Tmote Sky sensor node, therefore the new created sensor node must be a possible alternative for it and fulfill the same functions. For that purpose this study reviews some available Arduino microprocessors on their suitability for a sensor node. Later in the work the composition of the sensor node is documented. For this, the hardware and their costs are illustrated. The created hardware prototype allows, through easily changed radio modules, the covering of 433 MHz, 866 MHz and 2,40 GHz radio frequencies. At the end of the work, the sensor node prototype is used in an experiment to check for the suitability for water monitoring. For this, an experiment was performed on land and on water and the results evaluated. In the end the prototype fulfilled most of the requirements, but the cost was a little too high.