Skip to content

DASA-Design/PyDASA-CS1-TAS

Repository files navigation

PyDASA-CS1-TAS

DASA (Dimensional Analysis for Software Architecture) evaluation of the Tele Assistance System self-adaptive exemplar (Weyns & Calinescu, SEAMS 2015). Consumes the sibling PyDASA library as a pinned wheel; produces the metric JSONs and figures that ground the DASA evaluation.

Status

  • Implemented: analytic (closed-form QN), stochastic (SimPy DES), dimensional (PyDASA π-groups + coefficients).
  • Archived: the previous experiment / calibration build is frozen under __OLD__/ as a read-only reference oracle. The new experiment is being rebuilt under src/experimental/.
  • Pending: comparison method (cross-method R1/R2/R3 verdicts).

Validation criteria (Cámara 2023)

Requirement Metric Threshold Lens
R1 average failure rate ≤ 0.03 % Availability
R2 average response time ≤ 26 ms Performance
R3 average cost minimise subject to R1 ∧ R2 Cost

Setup

python -m venv venv && source venv/Scripts/activate   # Git Bash on Windows
pip install -r requirements.txt

requirements.txt pins a specific PyDASA wheel from the sibling checkout. After bumping PyDASA, rebuild + reinstall:

cd ../PyDASA && python -m build
pip install --force-reinstall ../PyDASA/dist/pydasa-<ver>-py3-none-any.whl

Run

python -m src.methods.<method> --adaptation <baseline|s1|s2|aggregate>
jupyter lab          # for the notebooks

Surviving methods: analytic, stochastic, dimensional. Surviving notebooks: 01-analytic.ipynb, 02-stochastic.ipynb, 03-dimensional.ipynb, 04-yoly.ipynb. Results land at data/results/<method>/<adaptation>/<profile>.json plus requirements.json; figures at data/img/<method>/<adaptation>/.

Tests

pytest tests/

180 tests on the surviving subset.

Pointers

About

this is the DASA design review of the the Tele Assistance System (TAS) by weyns et. al., is a service-based self-adaptive application for chronic-care home monitoring with a centralised MAPE-K loop over its composite service.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors