This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

A Python module that analyses your achitecture strength based on DSM data.

Project Description

Overview

A Python module that analyses your achitecture strength based on DSM data.

Archan is a Python module that analyzes the strength of your project architecture according to some criteria described in “The Protection of Information in Computer Systems”, written by Jerome H. Saltzer and Michael D. Schroeder.

Archan is used in combination with dependenpy in the Django app called django-meerkat.

License

Software licensed under MPL 2.0 license.

Installation

Just run pip install archan.

Usage

Archan takes a dependency matrix as parameter. It is a list of list of numeric values, representing the dependencies between the packages that are used in your project. It also needs the keys (one string for each row of the matrix), and their associated group type.

In django-meerkat, these data are provided by the dependenpy Python module, but you can build and use your own:

from archan.dsm import DesignStructureMatrix
from archan.checker import Archan

my_matrix = [[0, 1, 2, 0],
             [1, 1, 1, 0],
             [0, 0, 0, 3],
             [3, 3, 0, 1]]

my_keys = ['core', 'some_app', 'whatever', 'feature']
my_groups = ['core_lib', 'app_module', 'app_module', 'app_module']

my_dsm = DesignStructureMatrix(my_groups, my_keys, my_matrix)
archan = Archan()
results = archan.check(dsm)
print(results)

Development

To run all the tests: tox

Changelog

0.1.0 (2016-10-06)

  • Alpha release on PyPI.
Release History

Release History

This version
History Node

1.0.0

History Node

0.0.3

History Node

0.0.2

History Node

0.0.1

Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
archan-1.0.0-py2.py3-none-any.whl (14.4 kB) Copy SHA256 Checksum SHA256 py2.py3 Wheel Oct 6, 2016
archan-1.0.0.tar.gz (21.9 kB) Copy SHA256 Checksum SHA256 Source Oct 6, 2016

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting