- Advanced Software Engineering Methodologies
- Service-Oriented Architecture and Web Services
- Software System Performance and Reliability
- Model-Driven Software Engineering Techniques
- Cloud Computing and Resource Management
- Real-Time Systems Scheduling
- Software Engineering Research
- Advanced Malware Detection Techniques
- IoT and Edge/Fog Computing
- Blockchain Technology Applications and Security
- Topic Modeling
- Business Process Modeling and Analysis
- Distributed and Parallel Computing Systems
- Augmented Reality Applications
- Physical Unclonable Functions (PUFs) and Hardware Security
- Green IT and Sustainability
- Distributed systems and fault tolerance
- Traffic Prediction and Management Techniques
- Parallel Computing and Optimization Techniques
- Mobile Health and mHealth Applications
- Natural Language Processing Techniques
- Speech Recognition and Synthesis
- Digital Mental Health Interventions
- Embedded Systems Design Techniques
- Scientific Computing and Data Management
Vanderbilt University
2016-2025
Cardiff University
2021
Edge Technologies (United States)
2021
University of Bari Aldo Moro
2021
South African National Biodiversity Institute
2021
University of Derby
2021
Graz University of Technology
2021
Juraj Dobrila University of Pula
2021
University of Washington
2021
Dublin City University
2021
Secure and scalable data sharing is essential for collaborative clinical decision making. Conventional efforts are often siloed, however, which creates barriers to efficient information exchange impedes effective treatment made patients. This paper provides four contributions the study of applying blockchain technology in context technical requirements defined "Shared Nationwide Interoperability Roadmap" from Office National Coordinator Health Information Technology (ONC). First, we analyze...
Prompt engineering is an increasingly important skill set needed to converse effectively with large language models (LLMs), such as ChatGPT. Prompts are instructions given LLM enforce rules, automate processes, and ensure specific qualities (and quantities) of generated output. also a form programming that can customize the outputs interactions LLM. This paper describes catalog prompt techniques presented in pattern have been applied solve common problems when conversing LLMs. patterns...
Blockchain is a decentralized, trustless protocol that combines transparency, immutability, and consensus properties to enable secure, pseudo-anonymous transactions. Smart contracts are built atop blockchain support on-chain storage Decentralized Apps (DApps) interact with the programatically. Programmable blockchains have generated interest in healthcare domain as potential solution resolve key challenges, such gapped communications, inefficient clinical report delivery, fragmented health...
The widespread adoption and contextually sensitive nature of smartphone devices has increased concerns over malware. Machine learning classifiers are a current method for detecting malicious applications on systems. This paper presents the evaluation number existing classifiers, using dataset containing thousands real (i.e. not synthetic) applications. We also present our STREAM framework, which was developed to enable rapid large-scale validation mobile malware machine classifiers.
Abstract Background Many context-aware techniques have been proposed to deliver cyber-information, such as project specifications or drawings, on-site users by intelligently interpreting their environment. However, these primarily rely on RF-based location tracking technologies (e.g., GPS WLAN), which typically do not provide sufficient precision in congested construction sites require additional hardware and custom mobile devices. Method This paper presents a new vision-based augmented...
Web applications are popular targets for cyber-attacks because they network-accessible and often contain vulnerabilities. An intrusion detection system monitors web issues alerts when an attack attempt is detected. Existing implementations of systems usually extract features from network packets or string characteristics input that manually selected as relevant to analysis. Manually selecting features, however, time-consuming requires in-depth security domain knowledge. Moreover, large...
Feature models are widely used to model software product-line (SPL) variability. SPL variants configured by selecting feature sets that satisfy constraints. Configuration of large can involve multiple stages and participants, which makes it hard avoid conflicts errors. New techniques therefore needed debug invalid configurations derive the minimal set changes fix flawed configurations. This paper provides three contributions debugging configurations: (1) we present a technique for...
Since the inception of Bitcoin technology, its underlying data structure--the blockchain--has garnered much attention due to properties such as decentralization, transparency, and immutability. These make blockchains suitable for apps that require disintermediation through trustless exchange, consistent incorruptible transaction records, operational models beyond cryptocurrency. In particular, blockchain smart contract capabilities have potential address healthcare interoperability issues,...
The Internet of Things (IoT) has transformed many aspects modern manufacturing, from design to production quality inspection.In particular, IoT and digital manufacturing technol-ogies have substantially accelerated product developmentcycles manufacturers can now create products a complexity precision not heretofore possible.However, new threats supply chain security arisen connecting machines the In-ternet introducing complex IoT-based systems controlling processes.By attacking these...
Recent cyberattacks have highlighted the risk of physical equipment operating outside designed tolerances to produce catastrophic failures. A related threat is that change design and manufacturing a machine's part, such as an automobile brake component, so it no longer functions properly. These risks stem from lack cyber-physical models identify ongoing attacks well rigorous application known cybersecurity best practices. To protect processes in future, research will be needed on number...
This paper presents prompt design techniques for software engineering, in the form of patterns, to solve common problems when using large language models (LLMs), such as ChatGPT automate engineering activities, ensuring code is decoupled from third-party libraries and simulating a web application API before it implemented. provides two contributions research on LLMs engineering. First, catalog patterns that classifies according types they solve. Second, explores several have been applied...
Feature models are the "de facto" standard for representing variability in software-intensive systems. Automated analysis of feature is computer-aided extraction information and used testing, maintenance, configuration, derivation, among other tasks. Testing analyses often requires relying on a large number that as realistic possible. There exist different proposals to generate synthetic using random techniques or metamorphic relations; however, existing methods do not take into account...
The rise of large language models (LLMs) is revolutionizing information retrieval, question answering, summarization, and code generation tasks. However, in addition to confidently presenting factually inaccurate at times (known as "hallucinations"), LLMs are also inherently limited by the number input output tokens that can be processed once, making them potentially less effective on tasks require processing a set or continuous stream information. A common approach reducing size data...
The rapid advent of Large Language Models (LLMs), such as ChatGPT and Claude, is revolutionizing various fields, from education healthcare to the engineering reliable software systems. These LLMs operate through "prompts," which are natural language inputs that users employ query leverage models' capabilities. Given novelty LLMs, understanding how effectively use prompts remains largely anecdotal, based on isolated cases. This fragmented approach limits reliability utility especially when...
The increasing complexity and cost of software-intensive systems has led developers to seek ways software reusability. One reuse approach is develop a Software Product-line (SPL), which reconfigurable architecture that can be reused across projects. Creating configurations the SPL meets arbitrary requirements hard.Existing research focused on techniques produce configuration in single step. This paper provides three contributions study multi-step for SPLs. First, we present formal model map...