34 research outputs found
Mobile presentations with interactive chat for m-Learning
Masters of ScienceUsing presentations in an m-Learning environment enables delivery of rich content to a mobile phone learner. This study investigated how to prepare and stream presentations from a desktop computer to a mobile phone in near-realtime. It also addressed communication between users using interactive text chat in the same environment. Our analysis of text/podcast-based m-Learning applications revealed limited interactivity and lack of diversity in content streamed. To address this, we developed a mobile-based application that uses a task-timer model to synchronize with a server every n units of time to enable near-real time streaming of presentation slides between mobile and desktop users. The application included text-based instant messenger. Laboratory experiments investigated the use Open Office and PowerPoint presentations and techniques used to convert these presentations into mobile phone compatible formats. Experiments were carried out with smart mobile phones running on a third generation cellular network. We employed transaction-logging techniques in addition to automated image analysis techniques to observe and record data. Analysis of the results revealed using presentations enabled more rich content than text-based models such as short message service-based frameworks and podcasts. Although m-Learning is not yet widely adopted, applications such as the one developed in the study offer high hopes for m-Learning because of the use of rich content and interactivity between users.South Afric
A Computer System for Home Automation with Java Technology and Raspberry Pi
This thesis is on smart home automation, a raspberry pi will be used to create a model of a smart home and demonstrate the basics how home automation is made possible.
For this project i have selected Java for the backend as it is one of the leading programming languages for the Internet of Things. the user interface is designed with React framework. The purpose of separating the frontend from the backend is to demonstrate how applications can communicate (API), because this is also integral in understanding how things communicate.Дипломна робота призначена для автоматизації розумного будинку, Raspberry PI використано для створення моделі розумного будинку та демонструє основи того, як можна автоматизувати дім.
Для цього проекту обрано мову Java для бекенду, оскільки це одна з провідних мов програмування в Інтернеті речей. Користувацький інтерфейс розроблений з використанням фреймворку React. Метою відокремлення інтерфейсу від бекенду є демонстрація, як програми можуть спілкуватися по API, оскільки це також є невід'ємною частиною розуміння того, як спілкуються речі.INTRODUCTION
1 MAIN PART
1.1 Hardware and software components justification
1.1.1 IoT parts justification
1.1.2 Software justification
1.1.2.1 Java Programming language
1.1.2.2 The Spring Framework
1.1.2.3 PI4J library
1.1.2.4 SQLite database
1.1.2.5 React Framework
1.1.3 Cloud services justification
1.1.4 Network protocols justification:
1.1.4.1 Message Queuing Telemetry Transport protocol
1.1.4.2 REST over HTTP or HTTPs protocol
1.1.4.3 GraphQL query language communication approach
1.1.4.4 gRPC protocol
1.1.4.5 Protobuf protocol
1.1.5 Cloud native approach
1.2 Hardware components implementation
1.3 Software components implementation
1.3.1 Back-end development
1.3.2 Testing the REST API through Postman
1.3.3 Front-end development
1.3.4 Developed methods
2 SPECIAL PART
2.1 Testing layers of application
2.2 Software deployment
2.2.1 Back-end deployment
2.2.2 Front-end deployment
3 TECHNICAL - ECONOMIC ASSESSMENT
4 OCCUPATIONAL SAFETY AND HEALTH
CONCLUSIONS
REFERENCE
Recommended from our members
Investigating Android permissions and intents for malware detection
Today’s smart phones are used for wider range of activities. This extended range of functionalities has also seen the infiltration of new security threats. Android has been the favorite target of cyber criminals. The malicious parties are using highly stealthy techniques to perform the targeted operations, which are hard to detect by the conventional signature and behaviour based approaches. Additionally, the limited resources of mobile device are inadequate to perform the extensive malware detection tasks. Impulsively emerging Android malware merit a robust and effective malware detection solution.
In this thesis, we present the PIndroid ― a novel Permissions and Intents based framework for identifying Android malware apps. To the best of author’s knowledge, PIndroid is the first solution that uses a combination of permissions and intents supplemented with ensemble methods for malware detection. It overcomes the drawbacks of some of the existing malware detection methods. Our goal is to provide mobile users with an effective malware detection and prevention solution keeping in view the limited resources of mobile devices and versatility of malware behavior. Our detection engine classifies the apps against certain distinguishing combinations of permissions and intents. We conducted a comparative study of different machine learning algorithms against several performance measures to demonstrate their relative advantages. The proposed approach, when applied to 1,745 real world applications, provides more than 99% accuracy (which is best reported to date). Empirical results suggest that the proposed framework is effective in detection of malware apps including the obfuscated ones.
In this thesis, we also present AndroPIn—an Android based malware detection algorithm using Permissions and Intents. It is designed with the methodology proposed in PInDroid. AndroPIn overcomes the limitation of stealthy techniques used by malware by exploiting the usage pattern of permissions and intents. These features, which play a major role in sharing user data and device resources cannot be obfuscated or altered. These vital features are well suited for resource constrained smartphones. Experimental evaluation on a corpus of real-world malware and benign apps demonstrate that the proposed algorithm can effectively detect malicious apps and is resilient to common obfuscations methods.
Besides PInDroid and AndroPIn, this thesis consists of three additional studies, which supplement the proposed methodology. First study investigates if there is any correlation between permissions and intents which can be exploited to detect malware apps. For this, the statistical significance test is applied to investigate the correlation between permissions and intents. We found statistical evidence of a strong correlation between permissions and intents which could be exploited to detect malware applications.
The second study is conducted to investigate if the performance of classifiers can further be improved with ensemble learning methods. We applied different ensemble methods such as bagging, boosting and stacking. The experiments with ensemble methods yielded much improved results.
The third study is related to investigating if the permissions and intents based system can be used to detect the ever challenging colluding apps. Application collusion is an emerging threat to Android based devices. We discuss the current state of research on app collusion and open challenges to the detection of colluding apps. We compare existing approaches and present an integrated approach that can be used to detect the malicious app collusion
Recommended from our members
Diagnosing runtime violations of security and dependability properties
Monitoring the preservation of security and dependability (S&D) properties of complex software systems is widely accepted as a necessity. Basic monitoring can detect violations but does not always provide sufficient information for deciding what the appropriate response to a violation is. Such decisions often require additional diagnostic information that explains why a violation has occurred and can, therefore, indicate what would be an appropriate response action to it. In this thesis, we describe a diagnostic procedure for generating explanations of violations of S&D properties developed as extension of a runtime monitoring framewoek, called EVEREST. The procedure is based on a combination of abductive and evidential reasoning about violations of S&D properties which are expressed in Event Calculus
A UI-driven approach to facilitating effective development of rich and composite web applications
It is well-recognized that the development of user interfaces is one of the most time-consuming tasks in the overall application development process. At the same time, there is an increasing demand for rich and fluid user interfaces from web users. As a result, developers are facing increasing challenges in delivering web applications, especially those with rich UI requirements.
In this thesis we present two solutions to facilitate the execution and rapid development of web applications with rich user interfaces. The first solution is a rich internet application (RIA) framework aimed at providing high usability and productivity to web applications, while the second solution is a UI integration framework that simplifies web application development by facilitating the composition of reusable UI components.
The foundation of our RIA framework is an XML-based high-level protocol for communicating asynchronous events and incremental UI updates on the web. The protocol facilitates rich and highly interactive UI, while at the same time eliminates frequent and slow page refreshes and provides a more responsive user experience.
Built on top of the protocol, a server-side runtime allows UI logic code to be executed on the server side, while a set of server-side event-driven API enables developers to implement sophisticated application-specific UI behavior. On the client side, a thin client renders UI and processes native events, but leaves application-specific logic to the server side. The thin client thus allows end users to enjoy a rich UI experience in a safe client environment, without executing any downloaded code.
The proposed UI integration framework includes an abstract UI component model which allows UI components to be programmatically manipulated via events, operations, and properties, essentially exposing UI as services. To facilitate component interactions, the framework offers an event-based composition model, which allows integration logic to be specified in the form of event listeners.
Composite applications are executed via a lightweight runtime middleware, which provides component adapters that allow the middleware to communicate with native UI components implemented in a variety of languages and platforms. Finally, a graphical development environment allows composite applications to be built in a drag-and-drop fashion
Diagnosing runtime violations of security and dependability properties
Monitoring the preservation of security and dependability (S&D) properties of complex software systems is widely accepted as a necessity. Basic monitoring can detect violations but does not always provide sufficient information for deciding what the appropriate response to a violation is. Such decisions often require additional diagnostic information that explains why a violation has occurred and can, therefore, indicate what would be an appropriate response action to it. In this thesis, we describe a diagnostic procedure for generating explanations of violations of S&D properties developed as extension of a runtime monitoring framewoek, called EVEREST. The procedure is based on a combination of abductive and evidential reasoning about violations of S&D properties which are expressed in Event Calculus.EThOS - Electronic Theses Online ServiceGBUnited Kingdo
Knowledge modelling of emerging technologies for sustainable building development
In the quest for improved performance of buildings and mitigation of climate change, governments are encouraging the use of innovative sustainable building technologies. Consequently, there is now a large amount of information and knowledge on sustainable building technologies over the web. However, internet searches often overwhelm practitioners with millions of pages that they browse to identify suitable innovations to use on their projects. It has been widely acknowledged that the solution to this problem
is the use of a machine-understandable language with rich semantics - the semantic web technology.
This research investigates the extent to which semantic web technologies can be exploited to represent knowledge about sustainable building technologies, and to facilitate system decision-making in recommending appropriate choices for use in different situations. To achieve this aim, an exploratory study on sustainable building and semantic web technologies was conducted. This led to the use of two most popular knowledge engineering methodologies - the CommonKADS and "Ontology Development 101" in modelling knowledge about sustainable building technology and
PV -system domains. A prototype system - Photo Voltaic Technology ONtology System
(PV -TONS) - that employed sustainable building technology and PV -system domain
knowledge models was developed and validated with a case study.
While the sustainable building technology ontology and PV -TONS can both be used as
generic knowledge models, PV -TONS is extended to include applications for the design
and selection of PV -systems and components. Although its focus was on PV -systems,
the application of semantic web technologies can be extended to cover other areas of
sustainable building technologies. The major challenges encountered in this study are
two-fold. First, many semantic web technologies are still under development and very
unstable, thus hindering their full exploitation. Second, the lack of learning resources in
this field steepen the learning curve and is a potential set-back in using semantic web
technologies
Untangling the Web: A Guide To Internet Research
[Excerpt] Untangling the Web for 2007 is the twelfth edition of a book that started as a small handout. After more than a decade of researching, reading about, using, and trying to understand the Internet, I have come to accept that it is indeed a Sisyphean task. Sometimes I feel that all I can do is to push the rock up to the top of that virtual hill, then stand back and watch as it rolls down again. The Internet—in all its glory of information and misinformation—is for all practical purposes limitless, which of course means we can never know it all, see it all, understand it all, or even imagine all it is and will be. The more we know about the Internet, the more acute is our awareness of what we do not know. The Internet emphasizes the depth of our ignorance because our knowledge can only be finite, while our ignorance must necessarily be infinite. My hope is that Untangling the Web will add to our knowledge of the Internet and the world while recognizing that the rock will always roll back down the hill at the end of the day
Modelling grid architecture.
This thesis evaluates software engineering methods, especially event modelling of distributed systems architecture, by applying them to specific data-grid projects. Other methods evaluated include requirements' analysis, formal architectural definition and discrete event simulation. A novel technique for matching architectural styles to requirements is introduced. Data-grids are a new class of networked information systems arising from e-science, itself an emergent method for computer-based collaborative research in the physical sciences. The tools used in general grid systems, which federate distributed resources, are reviewed, showing that they do not clearly guide architecture. The data-grid projects, which join heterogeneous data stores specifically, put required qualities at risk. Such risk of failure is mitigated in the EGSO and AstroGrid solar physics data-grid projects' designs by modelling. Design errors are trapped by rapidly encoding and evaluating informal concepts, architecture, component interaction and objects. The success of software engineering modelling techniques depends on the models' accuracy, ability to demonstrate the required properties, and clarity (so project managers and developers can act on findings). The novel formal event modelling language chosen, FSP, meets these criteria at the diverse early lifecycle stages (unlike some techniques trialled). Models permit very early testing, finding hidden complexity, gaps in designed protocols and risks of unreliability. However, simulation is shown to be more suitable for evaluating qualities like scalability, which emerge when there are many component instances. Design patterns (which may be reused in other data-grids to resolve commonly encountered challenges) are exposed in these models. A method for generating useful models rapidly, introducing the strength of iterative lifecycles to sequential projects, also arises. Despite reported resistance to innovation in industry, the software engineering techniques demonstrated may benefit commercial information systems too