Dr Francois Siewe

Job: Reader in Computer Science

Faculty: Computing, Engineering and Media

School/department: School of Computer Science and Informatics

Research group(s): Cyber Technology Institute (CTI) (Software Technology Research Laboratory (STRL))

Address: De Montfort University, The Gateway, Leicester, LE1 9BH, United Kingdom

T: +44 (0)116 257 7938

E: FSiewe@dmu.ac.uk

W: http://www.cse.dmu.ac.uk/~fsiewe/

 

Personal profile

I am a Reader in Computer Science in the Software Technology Research Laboratory (STRL) of the Faculty of Technology at De Montfort University (DMU), in Leicester in the UK. Before joining STRL, I was a research fellow on the EPSRC-funded project MELANGE on modelling the structure dependent colour properties of melange yarns in the Textile Engineering And Material (TEAM) research group at DMU. This followed my tenure as lecturer and vistiting researcher in the Institute of Technology of Lens at University of Artois in Lens, France. Prior to this, I was a fellow at the United Nation University/ International Institute for Software Technology (UNU/IIST) in Macau, where I worked on the Design Techniques for Reat-time systems (DeTfoRs) project. I was also a lecturer in the Department of Mathematics and Computer Science at the University of Dschang, Dschang, Cameroon.

Research group affiliations

Software Technology Research Laboratory (STRL)

Publications and outputs

  • Practical Consequences of Quality Views in Assessing Software Quality
    dc.title: Practical Consequences of Quality Views in Assessing Software Quality dc.contributor.author: Galli, Tamas; Chiclana, Francisco; Siewe, Francois dc.description.abstract: The authors’ previously published research delved into the theory of software product quality modelling, model views, concepts, and terminologies. They also analysed this specific field from the point of view of uncertainty, and possible descriptions based on fuzzy set theory and fuzzy logic. Laying a theoretical foundation was necessary; however, software professionals need a more tangible and practical approach for their everyday work. Consequently, the authors devote this paper to filling in this gap; it aims to illustrate how to interpret and utilise the previous findings, including the established taxonomy of the software product quality models. The developed fuzzy model’s simplification is also presented with a Generalized Additive Model approximation. The paper does not require any formal knowledge of uncertainty computations and reasoning under uncertainty, nor does it need a deep understanding of quality modelling in terms of terminology, concepts, and meta-models, which were necessary to prepare the taxonomy and relevance ranking. The paper investigates how to determine the validity of statements based on a given software product quality model; moreover, it considers how to tailor and adjust quality models to the particular project’s needs. The paper also describes how to apply different software product quality models for different quality views to take advantage of the automation potential offered for the measurement and assessment of source code quality. Furthermore, frequent pitfalls are illustrated with their corresponding resolutions, including an unmeasured quality property that is found to be important and needs to be included in the measurement and assessment process. dc.description: open access article
  • Towards the Formal Analysis of UML Activity Diagrams in a Calculus of Context-aware Ambients
    dc.title: Towards the Formal Analysis of UML Activity Diagrams in a Calculus of Context-aware Ambients dc.contributor.author: Siewe, Francois dc.description.abstract: The Unified Modeling Language (UML) is the industrial de-facto standard for designing systems. It has been used widely in many industrial applications. However, the lack of formal semantics for UML makes it unsuitable for formal verification. As such, UML is limited when it comes to the design of safety/security critical systems where faults can cause damages to people, properties, or the environment. This paper proposes an attempt to define a formal semantics for the UML activity diagrams. An algorithm is proposed that translates an activity diagram into a process in a Calculus of Context-aware Ambients (CCA). This process can then be formally analysed using the tool support for CCA. Hence, errors can be detected and fixed early during the system development life-cycle. The pragmatics of the proposed approach is demonstrated using a case study in e-commerce. dc.description: The file attached to this record is the author's final peer reviewed version. The Publisher's final version can be found by following the DOI link.
  • Genetic Algorithm-Based Fuzzy Inference System for Describing Execution Tracing Quality
    dc.title: Genetic Algorithm-Based Fuzzy Inference System for Describing Execution Tracing Quality dc.contributor.author: Galli, Tamas; Chiclana, Francisco; Siewe, Francois dc.description.abstract: Execution tracing is a tool used in the course of software development and software maintenance to identify the internal routes of execution and state changes while the software operates. Its quality has a high influence on the duration of the analysis required to locate software faults. Nevertheless, execution tracing quality has not been described by a quality model, which is an impediment while measuring software product quality. In addition, such a model needs to consider uncertainty, as the underlying factors involve human analysis and assessment. The goal of this study is to address both issues and to fill the gap by defining a quality model for execution tracing. The data collection was conducted on a defined study population with the inclusion of software professionals to consider their accumulated experiences; moreover, the data were processed by genetic algorithms to identify the linguistic rules of a fuzzy inference system. The linguistic rules constitute a human-interpretable rule set that offers further insights into the problem domain. The study found that the quality properties accuracy, design and implementation have the strongest impact on the quality of execution tracing, while the property legibility is necessary but not completely inevitable. Furthermore, the quality property security shows adverse effects on the quality of execution tracing, but its presence is required to some extent to avoid leaking information and to satisfy legal expectations. The created model is able to describe execution tracing quality appropriately. In future work, the researchers plan to link the constructed quality model to overall software product quality frameworks to consider execution tracing quality with regard to software product quality as a whole. In addition, the simplification of the mathematically complex model is also planned to ensure an easy-to-tailor approach to specific application domains. The supporting dataset can be found at https://zenodo.org/records/5552684. dc.description: open access article
  • On the Use of Quality Models to Address Distinct Quality Views
    dc.title: On the Use of Quality Models to Address Distinct Quality Views dc.contributor.author: Galli, Tamas; Chiclana, Francisco; Siewe, Francois dc.description.abstract: Different software product quality models interpret different amounts of information, i.e., they can capture and address different manifestations of software quality. This characteristic can cause misleading statements and misunderstandings while explaining or comparing the results of software product quality assessments. A total of 23 previously identified distinct software product quality models are analysed on how they handle the abstract notion of quality, and a taxonomy on the quality manifestations that the individual software product quality models are able to capture is established. Quality models that are able to solely describe the quality manifestation of the source code are attractive due to their full automation potential through static code analysers, but their assessment results ignore a huge part of software product quality, which is the one that most impresses the end user. The manifestations of software product quality that address the behaviour of the software while it operates, or the perception of the end user with regard to the software in use, require human involvement in the quality assessment. The taxonomy contributes to interpreting the quality assessment results of different quality models by showing the possible quality manifestations that can be captured by the identified models; moreover, the taxonomy also provides assistance while selecting a quality model for a given project. The quality manifestations used for the quality measurement always need to be presented, otherwise the quality assessment results cannot be interpreted in an appropriate manner. dc.description: open access article
  • Quality Properties of Execution Tracing, an Empirical Study
    dc.title: Quality Properties of Execution Tracing, an Empirical Study dc.contributor.author: Galli, Tamas; Chiclana, Francisco; Siewe, Francois dc.description.abstract: The quality of execution tracing impacts the time to a great extent to locate errors in software components; moreover, execution tracing is the most suitable tool, in the majority of the cases, for doing postmortem analysis of failures in the field. Nevertheless, software product quality models do not adequately consider execution tracing quality at present neither do they define the quality properties of this important entity in an acceptable manner. Defining these quality properties would be the first step towards creating a quality model for execution tracing. The current research fills this gap by identifying and defining the variables, i.e., the quality properties, on the basis of which the quality of execution tracing can be judged. The present study analyses the experiences of software professionals in focus groups at multinational companies, and also scrutinises the literature to elicit the mentioned quality properties. Moreover, the present study also contributes to knowledge with the combination of methods while computing the saturation point for determining the number of the necessary focus groups. Furthermore, to pay special attention to validity, in addition to the the indicators of qualitative research: credibility, transferability, dependability, and confirmability, the authors also considered content, construct, internal and external validity. dc.description: open access article
  • Performance of Execution Tracing with Aspect-Oriented and Conventional Approaches
    dc.title: Performance of Execution Tracing with Aspect-Oriented and Conventional Approaches dc.contributor.author: Galli, Tamas; Chiclana, Francisco; Siewe, Francois dc.description.abstract: Context: Most software product quality models contain a quality property to describe the performance of the software products under assessment. In addition, software product quality models exhibit a quality property to describe how maintainable the investigated software product is. These two quality properties are conflicting as good maintainability values require that the amount of information about the threads of execution in the application, method stacks including parameters, return values and changes of the internal states be available. Collecting and storing this amount of information in a trace output takes time and consumes resources, which deteriorates execution performance. The major expectation towards the trace data is accuracy and consistency and, as a second priority, to achieve an acceptable performance degradation. Aspect-oriented programming offers assistance to satisfy these goals, however the published data about the aspect-oriented performance are not up to-date; moreover, they do not measure the performance of execution tracing but the performance of aspect-oriented programming constructs. Objectives: We aim to measure the performance of execution tracing with a simple but very resource intensive test application pair implementing the same functionality, producing the same amount of trace data. The one application possesses aspect-oriented execution tracing while the other one conventional, object-oriented execution-tracing with manually inserted trace method calls. In addition, we plan to separately measure the performance impact of constructing the trace messages by collecting the data in the applications; moreover, the performance impact of writing these data into a physical file is also measured. Method: We introduce a true experimental research with full control over the research variables to measure the runtimes of two very resource intensive test applications with exactly the same functionality, one with conventional tracing where the trace method calls were manually inserted at the entry and exit points of each method and the other one where the trace method calls were inserted by aspect-oriented programming with compile-time weaving automatically. We have selected such a pressing tracing policy to study the differences at maximal margin. In addition, no logging frameworks were used to rule out their performance effects. Both test applications produce the same bytes of trace data between the points of time measurements. Moreover, the two test applications were run in parallel, in three ways: (1) with deactivated tracing, (2) with activated tracing with output in /dev/null, (3) with activated tracing with output in a real file, to eliminate the impact of extraneous variables while computing runtime ratios of conventional and aspect-oriented execution tracing. As platform we have chosen Java and AspectJ in version 1.8 and 1.9, which at the time of writing the manuscript is the latest available AspectJ version, to examine whether Java and aspectJ versions have an impact on the performance of execution tracing. Results: The measurements produced results with very strong statistical significance (p < 0.001): (1) different Java and AspectJ versions have different performance impacts on execution tracing, (2) constructing the trace messages in the two test applications had more impact on the performance than writing these data in real files, (3) aspect-oriented implementation of execution tracing deteriorated the performance with deactivated tracing compared to the non-aspect-oriented implementation, (4) the aspect-oriented implementation of execution tracing produced only an acceptable performance overhead with activated tracing compared to the non-aspect-oriented counterpart with activated tracing. Measurement data are provided in the appendix.
  • How Location-Aware Access Control Affects User Privacy and Security in Cloud Computing Systems
    dc.title: How Location-Aware Access Control Affects User Privacy and Security in Cloud Computing Systems dc.contributor.author: Zeng, W.; Bashir, Reem; Wood, Trevor; Siewe, Francois; Janicke, Helge; Wagner, Isabel dc.description.abstract: The use of cloud computing (CC) is rapidly increasing due to the demand for internet services and communications. The large number of services and data stored in the cloud creates security risks due to the dynamic movement of data, connected devices and users between various cloud environments. In this study, we will develop an innovative prototype for location-aware access control and data privacy for CC systems. We will apply location-aware access control policies to role-based access control of Cloud Foundry, and then analyze the impact on user privacy after implementing these policies. This innovation can be used to address the security risks introduced by inter-cloud use and communication, and will have significant impact in making citizen’s personal data more secure. dc.description: open access article
  • Analysing Petri Nets in a Calculus of Context-aware Ambients
    dc.title: Analysing Petri Nets in a Calculus of Context-aware Ambients dc.contributor.author: Siewe, Francois; Germanos, Vasileios; Zeng, W. dc.description.abstract: This paper proposes an approach to analysing and verifying Petri nets using a Calculus of Context-aware Ambients (CCA). We propose an algorithm that transforms a Petri net into a CCA process. This demonstrates that any system that can be specified in Petri nets can also be specified in CCA. Besides, the system can be analysed and verified using the CCA verification tools. We illustrate the practicality of our approach using a case study of the dining cryptographers problem.
  • A Lightweight Association Rules Based Prediction Algorithm (LWRCCAR ) for Context-Aware Systems in IoT Ubiquitous, Fog, and Edge Computing Environment
    dc.title: A Lightweight Association Rules Based Prediction Algorithm (LWRCCAR ) for Context-Aware Systems in IoT Ubiquitous, Fog, and Edge Computing Environment dc.contributor.author: Al-Shargabi, Asma; Siewe, Francois dc.description.abstract: Abstract- Proactive is one main aspect of ubiquitous context-aware systems in IoT environment. The power of artificial intelligent is employed to realize this high-end aspect. Ubiquitous context-aware systems in IoT environment needs a light-weight intelligent prediction techniques especially within fog and edge computing environment where technologies capabilities are poor. On the other hand, in big data area the amount of data used to train ubiquitous context-aware systems is huge. This paper suggests a light-weight prediction algorithm to help such systems to work more effectively. The proposed algorithm is an improvement of the RCCAR algorithm that we developed in previous work. RCCAR utilizes association rules for prediction. The contribution of this paper is to minimize the number of association rules by giving a priority to associations that produced of high order. The prediction is scored and formulated mathematically using the confidence measure of association rules. A real-world dataset is used to evaluate the proposed algorithm in various scenarios. The results show that the proposed algorithm achieves better prediction scores. For future work, extensive experiments with many datasets is recommended.
  • Software Product Quality Models, Developments, Trends and Evaluation
    dc.title: Software Product Quality Models, Developments, Trends and Evaluation dc.contributor.author: Galli, Tamas; Chiclana, Francisco; Siewe, Francois dc.description.abstract: Software product quality models have evolved in their abilities to capture and describe the abstract notion of software quality since the 1970’s. Many models constructed deal with a specific part of software quality only which makes them ineligible to assess the quality of software products as a whole. Former publications failed to thoroughly examine and list all the available models which attempt to describe each known property of software product quality. This paper discovers such complete software product quality models published since 2000; moreover, it endeavours to measure the relevance of each model quantitatively by introducing indicators with regard to the scientific and industrial community. The identified 23 software product quality model classes differ significantly in terms of publication intensity, publication range, quality score average, relevance score and the 12-month average of the Google Relative Search Index. The results offer a foundation for selecting the appropriate software product quality model for use or for extension if newly identified quality properties need to be connected to a general context. Furthermore, the experiences accumulated on the field of software product quality modelling motivated researchers to successfully transfer the concepts to other areas where abstract entities need to be compared or assessed including the quality of higher educational teaching and business processes, which is also briefly highlighted in the paper. dc.description: The file attached to this record is the author's final peer reviewed version. The Publisher's final version can be found by following the DOI link.

Click here to view a full listing of Francois Siewe's publications and outputs.

Research interests/expertise

Computer Security

Pervasive Systems

Formal Methods

Process Calculi

Formal Verification

Qualifications

PhD in Computer Science, De Montfort University, Leicester, UK, 2005

Doctorat de Troisième Cycle, Université de Yaoundé I, Yaoundé, Cameroon, 1997

Msc in Computer Science, Université de Yaoundé I, Yaoundé, Cameroon, 1992

Bsc in Maths & Computer Science, Université de Yaoundé, Yaoundé, Cameroon, 1990

Courses taught

Pervasive Systems

Honours and awards

Research Journal of Textile and Apparel (RJTA) Excellent Paper Award 2011

Current research students

First supervisor for:

Ahmed Mohammed Alalshuhai
Abdulgader Zaid Almutairi
Saud Maqed Almutairi
Muslit Awadh Alotaibi
Asma Abdulghani Qasem Al-Shargabi
Elena Chernikova
Abdulghani Mahmoud Suwan

Second supervisor for:

Abdullah Shawan Alotaibi
Amr Mohsen Jadi

Francios-Siewe