doctoral-research-publication

This repository contains data collected and analyzed as part of a doctoral research project that explores the improvement of the consistency of architectural diagrams of distributed systems through the use of system descriptors.

https://github.com/jalvesnicacio/doctoral-research-publication

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 2 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.8%) to scientific vocabulary
Last synced: 9 months ago · JSON representation ·

Repository

This repository contains data collected and analyzed as part of a doctoral research project that explores the improvement of the consistency of architectural diagrams of distributed systems through the use of system descriptors.

Basic Info
  • Host: GitHub
  • Owner: jalvesnicacio
  • License: mit
  • Language: Jupyter Notebook
  • Default Branch: main
  • Size: 5.13 MB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 2
Created about 2 years ago · Last pushed almost 2 years ago
Metadata Files
Readme Changelog License Citation

README.md

doctoral-research-publication

DOI

This repository contains data collected and analyzed as part of a doctoral research project that explores the improvement of the consistency of architectural diagrams of distributed systems through the use of system descriptors. The data stem from two distinct research methodologies: a survey and an empirical experiment, detailed as follows:

  1. Survey Data:

Objective: To analyze the perception of software engineering practitioners regarding the quality and consistency of architectural diagrams of distributed systems within the software industry. This survey aims to shed light on the issue of architectural diagram inconsistency and highlight the most common problems faced by software architecture professionals.

Methodology: The survey was conducted online, comprising closed and open questions to collect qualitative and quantitative opinions.

Participants: It included 132 software architecture practitioners with varied levels of experience, from different geographical regions.

Data Included: Survey responses (anonymized), statistical analysis of quantitative responses, and a synthesis of qualitative responses.

  1. Empirical Experiment Data:

Objective: To investigate the impact of using system descriptors, such as Docker-compose and Kubernetes, on the consistency of architectural diagrams of distributed systems.

Methodology: We compared two categories of software architectural diagrams: ad-hoc diagrams and descriptor-based diagrams. Ad-hoc diagrams are generated using general design and authoring tools such as Visio or Draw.io, while descriptor-based diagrams can be automatically generated from system descriptors, such as Docker Compose or Kubernetes. To compare the effectiveness of these two diagram categories, we conducted an empirical study with software engineers and architects. Participants were given a brief description of a distributed system and a diagram from one of the two categories. They then answered a set of questions based on the system description and the presented diagram. We collected data on three variables: the score of correct answers (variable C), the time each participant took to answer the questions (variable T), and participants' perception of how easily they could extract information from the diagrams (variable P).

Participants: 26 professionals and advanced students from the information systems and computing area.

Data Included: Generated architectural diagrams, used system descriptors, comparative analysis of the consistency of the diagrams, and participants' feedback on the experience.

Data Format:

The data are made available in accessible formats for analysis, including CSV, and XLS for quantitative data, PDF for architectural diagrams, and text documents for qualitative responses and feedback.

Access and Use:

These data are made available under the MIT license, allowing for use, sharing, and adaptation for academic and research purposes, provided the original source is properly cited.

How to Cite:

To cite this dataset in publications, please use: DOI 10.5281/zenodo.10822839

Owner

  • Name: Jalves Mendonça Nicácio
  • Login: jalvesnicacio
  • Kind: user
  • Location: Chicoutimi
  • Company: IFAL

I'm a computer teacher and PhD student!

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
  - family-names: Nicacio
    given-names: Jalves
    orcid: https://orcid.org/0000-0003-4488-324X
title: "Improvement of the consistency of architectural diagrams of distributed systems using system descriptors"
version: 1.0.1
doi: 10.5281/zenodo.10823333
date-released: 2024-03-15
url: "https://github.com/jalvesnicacio/doctoral-research-publication"

GitHub Events

Total
Last Year

Dependencies

experiment/experiment_setup/diagrams/q2/backend/Dockerfile docker
  • node boron build
experiment/experiment_setup/diagrams/q2/blobstore/Dockerfile docker
  • node boron build
experiment/experiment_setup/diagrams/q2/clustermanager/Dockerfile docker
  • node boron build
experiment/experiment_setup/diagrams/q2/docker-compose.yml docker
  • aderp/backend latest
  • aderp/blobstore latest
  • aderp/clustermanager latest
  • aderp/coordinator latest
  • bde2020/hadoop-datanode 2.0.0-hadoop3.2.1-java8
  • bde2020/hadoop-historyserver 2.0.0-hadoop3.2.1-java8
  • bde2020/hadoop-namenode 2.0.0-hadoop3.2.1-java8
  • bde2020/hadoop-nodemanager 2.0.0-hadoop3.2.1-java8
  • bde2020/hadoop-resourcemanager 2.0.0-hadoop3.2.1-java8
  • confluentinc/cp-kafka latest
  • confluentinc/cp-zookeeper latest
experiment/experiment_setup/diagrams/q4/docker-compose.yml docker
  • casestudy/fanoutservice latest
  • casestudy/notificationservice latest
  • casestudy/postservice latest
  • httpd latest
  • nginx latest
  • postgres 14.1-alpine
  • redis 6.2-alpine
  • worker-image latest
experiment/experiment_setup/diagrams/q4/fanout/Dockerfile docker
  • node boron build
experiment/experiment_setup/diagrams/q4/notification/Dockerfile docker
  • node boron build
experiment/experiment_setup/diagrams/q4/post/Dockerfile docker
  • node boron build
experiment/experiment_setup/diagrams/q4/worker/Dockerfile docker
  • python latest build
newsfeed-system-example/docker-compose.yml docker
  • casestudy/fanoutservice latest
  • casestudy/newsfeedservice latest
  • casestudy/postservice latest
  • httpd latest
  • nginx latest
  • postgres 14.1-alpine
  • redis 6.2-alpine
  • worker-image latest
newsfeed-system-example/fanout/Dockerfile docker
  • node boron build
newsfeed-system-example/newsfeed/Dockerfile docker
  • node boron build
newsfeed-system-example/post/Dockerfile docker
  • node boron build
newsfeed-system-example/worker/Dockerfile docker
  • python latest build
experiment/experiment_setup/diagrams/q2/backend/package.json npm
  • express ^4.15.3
  • ip ^1.1.5
experiment/experiment_setup/diagrams/q2/blobstore/package.json npm
  • express ^4.15.3
  • ip ^1.1.5
experiment/experiment_setup/diagrams/q2/clustermanager/package.json npm
  • express ^4.15.3
  • ip ^1.1.5
experiment/experiment_setup/diagrams/q4/fanout/package.json npm
  • express ^4.15.3
  • ip ^1.1.5
experiment/experiment_setup/diagrams/q4/notification/package.json npm
  • express ^4.15.3
  • ip ^1.1.5
experiment/experiment_setup/diagrams/q4/post/package.json npm
  • express ^4.15.3
  • ip ^1.1.5
newsfeed-system-example/fanout/package.json npm
  • express ^4.15.3
  • ip ^1.1.5
newsfeed-system-example/newsfeed/package.json npm
  • express ^4.15.3
  • ip ^1.1.5
newsfeed-system-example/post/package.json npm
  • express ^4.15.3
  • ip ^1.1.5
experiment/experiment_setup/diagrams/q4/worker/requirements.txt pypi
  • Flask ==1.1.2
  • Jinja2 ==2.11.3
  • MarkupSafe ==1.1.1
  • Werkzeug ==1.0.1
  • certifi ==2020.12.5
  • chardet ==4.0.0
  • click ==7.1.2
  • idna ==2.10
  • itsdangerous ==1.1.0
  • redis ==3.5.3
  • requests ==2.25.1
  • rq ==1.8.0
  • urllib3 ==1.26.4
newsfeed-system-example/worker/requirements.txt pypi
  • Flask ==1.1.2
  • Jinja2 ==2.11.3
  • MarkupSafe ==1.1.1
  • Werkzeug ==1.0.1
  • certifi ==2020.12.5
  • chardet ==4.0.0
  • click ==7.1.2
  • idna ==2.10
  • itsdangerous ==1.1.0
  • redis ==3.5.3
  • requests ==2.25.1
  • rq ==1.8.0
  • urllib3 ==1.26.4