Help
RSS
API
Feed
Maltego
Contact
Domain > adr.github.io
×
Welcome!
Right click nodes and scroll the mouse to navigate the graph.
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
DNS Resolutions
Date
IP Address
2018-04-12
151.101.45.147
(
ClassC
)
2024-08-24
185.199.110.153
(
ClassC
)
Port 80
HTTP/1.1 301 Moved PermanentlyConnection: keep-aliveContent-Length: 162Server: GitHub.comContent-Type: text/htmlpermissions-policy: interest-cohort()Location: https://adr.github.io/X-GitHub-Request-Id: F326:2AB063:3EBD0C2:406050E:66C99905Accept-Ranges: bytesAge: 0Date: Sat, 24 Aug 2024 08:25:44 GMTVia: 1.1 varnishX-Served-By: cache-bfi-kbfi7400020-BFIX-Cache: MISSX-Cache-Hits: 0X-Timer: S1724487944.224466,VS0,VE69Vary: Accept-EncodingX-Fastly-Request-ID: 6fad5972387bcac116761052dcc7a917f4c033e3 html>head>title>301 Moved Permanently/title>/head>body>center>h1>301 Moved Permanently/h1>/center>hr>center>nginx/center>/body>/html>
Port 443
HTTP/1.1 200 OKConnection: keep-aliveContent-Length: 18625Server: GitHub.comContent-Type: text/html; charsetutf-8permissions-policy: interest-cohort()Last-Modified: Fri, 12 Jul 2024 23:13:58 GMTAccess-Control-Allow-Origin: *Strict-Transport-Security: max-age31556952ETag: 6691b8b6-48c1expires: Sat, 24 Aug 2024 08:35:44 GMTCache-Control: max-age600x-proxy-cache: MISSX-GitHub-Request-Id: 4604:350BC7:2FBFADC:30F4261:66C99908Accept-Ranges: bytesAge: 0Date: Sat, 24 Aug 2024 08:25:44 GMTVia: 1.1 varnishX-Served-By: cache-bfi-krnt7300022-BFIX-Cache: MISSX-Cache-Hits: 0X-Timer: S1724487944.334072,VS0,VE70Vary: Accept-EncodingX-Fastly-Request-ID: 9392dc48625fb50a051704ef09e18b1836a87055 !DOCTYPE html>html langen-US> head> meta charsetutf-8> meta http-equivX-UA-Compatible contentIEedge> meta nameviewport contentwidthdevice-width,maximum-scale2> link relstylesheet typetext/css mediascreen href/assets/css/style.css?vf63d78722be2c069e4ad304226aae99e6e2028b9> /head> body> !-- HEADER --> div idheader_wrap classouter> header classinner> a idforkme_banner hrefhttps://github.com/adr/adr.github.io>View on GitHub/a> h1 idproject_title>Architectural Decision Records/h1> h2 idproject_tagline>Homepage of the ADR GitHub organization/h2> /header> /div> !-- MAIN CONTENT --> div idmain_content_wrap classouter> section idmain_content classinner> h1 idarchitectural-decision-records-adrs>Architectural Decision Records (ADRs)/h1>p>An a hrefhttps://en.wikipedia.org/wiki/Architectural_decision>Architectural Decision (AD)/a> is a justified design choice that addresses a functional or non-functional requirement that is architecturally significant.An a hrefhttps://en.wikipedia.org/wiki/Architecturally_significant_requirements>Architecturally Significant Requirement (ASR)/a> is a requirement that has a measurable effect on the architecture and quality of a software and/or hardware system.An em>Architectural Decision Record (ADR)/em> captures a single AD and its rationale;the collection of ADRs created and maintained in a project constitute its em>decision log/em>.All these are within the topic of Architectural Knowledge Management (AKM), but ADR usage can be extended to design and other decisions (“any decision record”)./p>p>The aim of the a hrefhttp://github.com/adr>GitHub adr organization/a> is to:/p>ol> li>Motivate the need for and benefits of AD capturing and establish a common vocabulary./li> li>Strengthen the tooling around ADRs, in support of agile practices as well as iterative and incremental engineering processes./li> li>Provide pointers to public knowledge in the context of AKM and ADRs./li>/ol>!-- > Note: The term architecture decision record can be used interchangeably. -->p>The repository for the Website of the ADR organization is a hrefhttps://github.com/adr/adr.github.io>https://github.com/adr/adr.github.io/a>./p>h2 idadrs-in-the-media>ADRs in the Media/h2>ul> li>a hrefhttps://ieeexplore.ieee.org/document/9801811>Love Unrequited: The Story of Architecture, Agile, and How Architecture Decision Records Brought Them Together/a>, Michael Keeling in the Pragmatic Designer column of IEEE Software Vol. 39 Issue 4 (2022) (a hrefhttps://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber9801811>PDF/a>)/li> li>Chapter 3 of a hrefhttps://api-patterns.org/book/>“Patterns for API Design: Simplifying Integration with Loosely Coupled Message Exchanges”/a> in the Addison Wesley Signature Series at Pearson features six narratives guiding through the conceptual level of API design: 29 recurring decisions with options and criteria. Learn more in this a hrefhttps://medium.com/nerd-for-tech/api-patterns-website-redesigned-and-sample-book-chapter-available-df9daf4b5e15>blog post/a>./li> li>Architectural decision capturing is positioned as one of the essential activities in a hrefhttps://leanpub.com/dpr>Design Practice Reference/a>, a LeanPub e-Book./li> li>(German) a hrefhttps://www.heise.de/hintergrund/Gut-dokumentiert-Architecture-Decision-Records-4664988.html>Gut dokumentiert: Architecture Decision Records/a> by a hrefhttps://github.com/obfischer>@obfischer/a> published at a hrefhttps://www.heise.de/>heise online/a>./li>/ul>!-- markdownlint-disable-next-line MD022 -->h2 classlong idlightweight-adrs-should-be-adopted>Lightweight ADRs Should be Adopted/h2>p>A “lightweight” ADR consists of a hrefhttps://github.com/joelparkerhenderson/architecture-decision-record/blob/main/locales/en/templates/decision-record-template-by-michael-nygard/index.md>title, status, context, decision, and consequences/a> (according to a hrefhttps://github.com/mtnygard>@mtnygard/a>).a hrefhttps://www.thoughtworks.com/>ThoughtWorks/a> listed architectural decision records as “adopt” at their a hrefhttps://assets.thoughtworks.com/assets/technology-radar-vol-18-en.pdf>technology radar vol. 18/a>: a hrefhttps://www.thoughtworks.com/en-us/radar/techniques/lightweight-architecture-decision-records>https://www.thoughtworks.com/en-us/radar/techniques/lightweight-architecture-decision-records/a>/p>p>We think that the considered options with their pros and cons are crucial to understand the reason of a chosen option. a hrefhttps://adr.github.io/madr/>MADR/a> — The Markdown Any/Architecture Decision Records (MADR: code classlanguage-plaintext highlighter-rouge>ˈmæɾɚ/code>) in this ADR organization includes such tradeoff analysis information./p>h2 idrelation-of-adrs-madr-and-others>Relation of ADRs, MADR, and Others/h2>p>img src/ADR.png altADR />/p>h2 idsustainable-architectural-decisions>Sustainable Architectural Decisions/h2>p>We base our work on the guidelines and principles in a hrefhttps://www.infoq.com/articles/sustainable-architectural-design-decisions>Sustainable Architectural Decisions/a> by Zdun et al., for instance the Y-statement format suggested in that article.However, we are open to other formats of ADRs as shown at a hrefhttps://github.com/joelparkerhenderson/architecture_decision_record>@joelparkerhenderson’s repository/a>./p>p>In short, the Y-statement is as follows:/p>blockquote> p>In the context of code classlanguage-plaintext highlighter-rouge><use case/user story u>/code>, facing code classlanguage-plaintext highlighter-rouge><concern c>/code> we decided for code classlanguage-plaintext highlighter-rouge><option o>/code> to achieve code classlanguage-plaintext highlighter-rouge><quality q>/code>, accepting code classlanguage-plaintext highlighter-rouge><downside d>/code>./p>/blockquote>p>The long form of it is as follows (extra section “because”):/p>blockquote> p>In the context of code classlanguage-plaintext highlighter-rouge><use case/user story u>/code>,facing code classlanguage-plaintext highlighter-rouge><concern c>/code>we decided for code classlanguage-plaintext highlighter-rouge><option o>/code>and neglected code classlanguage-plaintext highlighter-rouge><other options>/code>,to achieve code classlanguage-plaintext highlighter-rouge><system qualities/desired consequences>/code>,accepting code classlanguage-plaintext highlighter-rouge><downside d/undesired consequences>/code>,because code classlanguage-plaintext highlighter-rouge><additional rationale>/code>./p>/blockquote>p>You can find more explanations and examples on Medium a hrefhttps://medium.com/@docsoc/y-statements-10eb07b5a177>Y-Statements - A Light Template for Architectural Decision Capturing/a>./p>p>a hrefhttps://www.ozimmer.ch/practices/2020/05/22/ADDefinitionOfDone.html>A Definition of Done for Architectural Decision Making/a> proposes five criteria and a checklist to decide when it is time to set the status of a single decision to “done”: evidence, criteria and alternatives, agreement, documentation, and realization/review plan. Here, we focus on the ‘D’ in em>ecADR/em>./p>h2 idexisting-adr-templates>Existing ADR Templates/h2>ul> li>Overview: a hrefhttps://github.com/joelparkerhenderson/architecture_decision_record>Architectural Decision Records/a>: collection of markdown templates converted to Markdown/li> li>a hrefhttps://adr.github.io/madr/>MADR/a>: The Markdown Architecture Decision Records (MADR: code classlanguage-plaintext highlighter-rouge>ˈmæɾɚ/code>). Lean ADRs to quickly document architectural decisions in code. - Slogan: architectural decisions that a hrefhttps://en.wiktionary.org/wiki/matter#Pronunciation>matter code classlanguage-plaintext highlighter-rouge>ˈmæɾɚ/code>/a>./li> li>Comparison of seven templates: a hrefhttp://www.ifs.hsr.ch/fileadmin/user_upload/customers/ifs.hsr.ch/Home/projekte/ADMentor-WICSA2015ubmissionv11nc.pdf>Architectural Decision Guidance Across Projects - Problem Space Modeling, Decision Backlog Management and Cloud Computing Knowledge/a>. WICSA 2015: 85-94./li> li>Context, background and examples of good and bad justifications can be found in a hrefhttps://www.ozimmer.ch/practices/2020/04/27/ArchitectureDecisionMaking.html>this blog post/a>./li> li>a hrefhttps://schubmat.github.io/DecisionCapture/>DecisionCapture/a>: Templates for agile projects and explanation of the ADR universe, with a hrefhttps://github.com/schubmat/DecisionCapture/blob/master/samples/samples_merged/samples_simpleTemplate_secondSprint.md>example/a>./li> li>cards42 has adopted the Y-statement template in its German a hrefhttps://cards42.org#adr>ADR card/a>; the English version is similar, but adds state information./li> li>The a hrefhttp://www.iso-architecture.org/42010/templates/>template/a> for a hrefhttps://en.wikipedia.org/wiki/ISO/IEC_42010>ISO/IEC/IEEE 42010:2011/a>, the international standard for architecture descriptions of systems and software, suggests nine information items for ADRs its Appendix A. It also identifies areas to consider when identifying key decisions./li>/ul>h2 idgood-adrs-and-how-to-get-to-them>Good ADRs (and how to get to them)/h2>ul> li>a hrefhttps://www.ozimmer.ch/practices/2023/04/03/ADRCreation.html>How to create ADRs — and how not to/a> collects good practices and anti-patterns/li> li>a hrefhttps://www.ozimmer.ch/practices/2020/09/24/ASRTestECSADecisions.html>Architectural Significance Test and Some Core Decisions/a>/li> li>a hrefhttps://www.ozimmer.ch/practices/2022/11/22/MADRTemplatePrimer.html>The Markdown ADR (MADR) Template Explained and Distilled/a>/li> li>Proposal for a hrefhttps://www.ozimmer.ch/practices/2020/05/22/ADDefinitionOfDone.html>A Definition of Done for Architectural Decision Making/a>/li> li>a hrefhttps://www.ozimmer.ch/practices/2023/04/05/ADRReview.html>How to review ADRs — and how not to/a> has good practices, anti-patterns, review check list/li>/ul>h2 iddecision-capturing-tools>Decision Capturing Tools/h2>p>em>Disclaimer:/em>The following list is rather inclusive.Please find out about the status and the maturity of the list entries for yourself by following the links.We are happy to include more candidate assets here./p>ul> li>a hrefhttps://adr.github.io/adr-manager/#/>adr-manager/a>: Craft MADR 2.x templates directly in the Web Browser./li> li>a hrefhttps://github.com/npryce/adr-tools>adr-tools/a> - bash scripts to manage ADRs in the a hrefhttps://cognitect.com/blog/2011/11/15/documenting-architecture-decisions.html>Nygard format/a>. a hrefhttps://github.com/npryce/adr-tools/blob/master/doc/adr/0002-implement-as-shell-scripts.md>example/a>. ul> li>Ansible script to install adr-tools: a hrefhttps://github.com/escalate/ansible-adr-tools>ansible-adr-tools/a>/li> li>C# rewrite: a hrefhttps://github.com/GingerTommy/adr-cli>adr-cli/a>/li> li>Go rewrite: a hrefhttps://github.com/marouni/adr>adr/a>/li> li>Java rewrite: a hrefhttps://github.com/adoble/adr-j>adr-j/a>/li> li>ESM Node.js port: a hrefhttps://github.com/meza/adr-tools>adr-tools/a>/li> li>Node.js rewrite: a hrefhttps://github.com/phodal/adr>adr/a>/li> li>PHP version: a hrefhttps://github.com/globtec/phpadr>phpadr/a>/li> li>Powershell module: a hrefhttps://github.com/rdagumampan/adr-ps>adr-ps/a>/li> li>Python rewrite: a hrefhttps://pypi.org/project/adr-tools-python/>adr-tools-python/a>/li> li>Another Powershell module: a hrefhttps://github.com/ajoberstar/ArchitectureDecisionRecords>ArchitectureDecisionRecords/a>/li> li>Rust rewrite: a hrefhttps://github.com/joshrotenberg/adrs>adrs/a>/li> /ul> /li> li>a hrefhttps://github.com/mrwilson/adr-viewer>adr-viewer/a> - python application to generate a website from a set of ADRs./li> li>a hrefhttps://github.com/cspray/architectural-decision>architectural-decision/a>: PHP library to create ADRs using PHP8 Attributes./li> li>a hrefhttps://github.com/adr/e-adr#embedded-architectural-decision-records>Embedded Architectural Decision Records/a>, which shows how a distributed AD log can be embedded in Java Code via ADR annotations./li> li>a hrefhttps://github.com/thomvaill/log4brains>Log4brains/a>: CLI and web UI to log and publish your ADRs as a static website. Currently in a hrefhttps://github.com/thomvaill/log4brains/discussions/108#discussioncomment-7607483>low maintenance mode/a>./li> li>a hrefhttps://loqbooq.app>Loqbooq/a>: Web App with Slack integration to record ADR-inspired decision logs/li> li>a hrefhttps://github.com/canpolat/talo>Talo/a>: CLI (and dotnet tool) to manage and export ADRs, RFCs and custom software design document types./li>/ul>p>For a more detailed list for tooling for MADR, please head to a hrefhttps://adr.github.io/madr/tooling.html>https://adr.github.io/madr/tooling.html/a>./p>h3 idtooling-related-to-architecture-management>Tooling related to architecture management/h3>ul> li>a hrefhttps://github.com/TNG/ArchUnit>ArchUnit/a>: unit tests for architecture/li> li>a hrefhttps://doctoolchain.github.io/docToolchain/>docToolchain/a>: docToolchain is an implementation of the a hrefhttp://www.writethedocs.org/guide/docs-as-code/>docs-as-code/a> approach for software architecture plus some additional automation./li> li>a hrefhttps://www.structurizr.com/>Structurizr/a>: Structurizr is a collection of tooling to help you visualise, document and explore your software architecture using the a hrefhttps://c4model.com/>C4 model/a>./li>/ul>h3 idinteresting-but-unmaintained-tooling>Interesting, but unmaintained tooling/h3>ul> li>a hrefhttps://github.com/adr/adr-log>adr-log/a>: Generates an architectural decision log out of MADRs./li> li>a hrefhttps://github.com/IFS-HSR/ADMentor>ADMentor/a> Architectural Decision Modeling Add-In for a hrefhttps://www.sparxsystems.de/uml/neweditions/>Sparx Enterprise Architect/a>/li> li>a hrefhttps://adr.github.io/eadlsync/>eadlsync/a>: Synchronizes embedded architectural decision records with a repository of architectural decisions./li> li>a hrefhttps://github.com/adr/serepo>SE Repo/a>: Software Engineering Repository. A repository for versioning software engineering artifacts, which can be architectural decisions, patterns, and others./li>/ul>h2 idmore-information>More Information/h2>ul> li>a hrefhttps://www.ozimmer.ch/practices/2023/04/21/ADAdoptionModel.html>“An Adoption Model for Architectural Decision Making and Capturing”/a>/li> li>a hrefhttps://www.ozimmer.ch/practices/2020/04/27/ArchitectureDecisionMaking.html>Architectural Decisions — The Making Of/a> - provides some history on architecture decision records./li> li>a hrefhttps://openpracticelibrary.com/practice/architectural-decision-records-adr/>Architectural Decision Records (ADR): Open & Transparent Decision History/a> in the Open Practice Library/li> li>An AWS Prescriptive Guidance recommends a hrefhttps://docs.aws.amazon.com/prescriptive-guidance/latest/architectural-decision-records/welcome.html>using architectural decision records to streamline technical decision-making for a software development project/a>./li> li>a hrefhttps://www.ost.ch/de/forschung-und-dienstleistungen/informatik/ifs-institut-fuer-software/labs/cloud-application-lab/architectural-knowledge-management-akm>Architectural Knowledge Management (AKM) overview/a> at OST/li> li>a hrefhttps://cognitect.com/blog/2011/11/15/documenting-architecture-decisions.html>Documenting Architecture Decisions/a> by Michael Nygard/li> li>a hrefhttps://www.youtube.com/watch?v41NVge3_cYo>Architecture Decision Records in Action by Michael Keeling (IBM Watson Group) and Joe Runde (IBM) YouTube/a> - presentation including empirical numbers./li> li>a hrefhttps://www.fabian-keller.de/blog/documenting-architecture-decisions>Documenting Architecture Decisions/a> - Blog entry by Fabian Keller/li> li>a hrefhttps://medium.com/olzzio/from-architectural-decisions-to-design-decisions-f05f6d57032b>From Architectural Decisions to Design Decisions/a> and a hrefhttps://medium.com/olzzio/adr-any-decision-record-916d1b64b28d>ADR Any Decision Record?/a> - two blog posts by Olaf Zimmermann proposing to extend the scope of ADRs./li> li>Method selection and tailoring in DPR, the a hrefhttps://socadk.github.io/design-practice-repository/>Design Practice Repository (DPR)/a> on GitHub and the a hrefhttps://leanpub.com/dpr>Design Practice Reference/a>, a corresponding LeanPub e-Book. Architectural decision capturing is positioned as one of the essential activities in DPR./li>/ul>!-- - Work by Daniel Popescu(https://scholar.google.com/citations?userdASv28sAAAAJ) -->h2 idcontribute>Contribute/h2>p>To improve this page, head to a hrefhttps://github.com/adr/adr.github.io>https://github.com/adr/adr.github.io/a>, edit code classlanguage-plaintext highlighter-rouge>index.md/code>, and submit a pull request./p> /section> /div> !-- FOOTER --> div idfooter_wrap classouter> footer classinner> p classcopyright>Architectural Decision Records maintained by a hrefhttps://github.com/adr>adr/a>/p> p>Published with a hrefhttps://pages.github.com>GitHub Pages/a>/p> /footer> /div> script srchttps://cdnjs.cloudflare.com/ajax/libs/anchor-js/4.1.0/anchor.js>/script> script> anchors.options.placement left; anchors.add(); /script> /body>/html>
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]