{"id":13556393,"url":"https://github.com/schubmat/DecisionCapture","last_synced_at":"2025-04-03T09:31:17.497Z","repository":{"id":218093922,"uuid":"84330783","full_name":"schubmat/DecisionCapture","owner":"schubmat","description":"This repository is used to publish and share templates and guides on capturing decisions in agile software development. It is part of our research on rationale management in agile software development.","archived":false,"fork":false,"pushed_at":"2017-10-30T06:48:35.000Z","size":63,"stargazers_count":21,"open_issues_count":1,"forks_count":9,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-11-04T05:33:53.779Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://schubmat.github.io/DecisionCapture/","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/schubmat.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-03-08T14:43:18.000Z","updated_at":"2024-09-20T14:09:54.000Z","dependencies_parsed_at":null,"dependency_job_id":"f7265ba9-3345-423f-b9c4-5d799019e682","html_url":"https://github.com/schubmat/DecisionCapture","commit_stats":null,"previous_names":["schubmat/decisioncapture"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/schubmat%2FDecisionCapture","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/schubmat%2FDecisionCapture/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/schubmat%2FDecisionCapture/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/schubmat%2FDecisionCapture/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/schubmat","download_url":"https://codeload.github.com/schubmat/DecisionCapture/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246976236,"owners_count":20863042,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T12:03:48.542Z","updated_at":"2025-04-03T09:31:14.933Z","avatar_url":"https://github.com/schubmat.png","language":null,"funding_links":[],"categories":["Others","others"],"sub_categories":[],"readme":"# Making Decisions Sustainable in Agile Software Development -- A Research Study\n\n* [Introduction](#introduction)\n* [Study Goals](#studyGoals)\n* [Study Setup](#studySetup)\n* [Example templates](#decision-templates)\n* [How to start capturing decision](#how-to-start-capturing)\n* [How to start capturing decision with tools](#how-to-start-capturing-with-tools)\n* [How to start capturing decision with git](#how-to-start-capturing-decisions-with-git)\n* [Contributing](#contributing)\n* [Sources](#sources)\n\n\n\u003ch2\u003e\u003ca name=\"introduction\"\u003eIntroduction\u003c/a\u003e\u003c/h2\u003e\n\n\nThis repository is used to publish and share templates and guidelines on capturing and using decision in agile software development. It is part of our research on decision management in agile software development. Unlike the approach of [joelparkerhenderson](https://github.com/joelparkerhenderson/architecture_decision_record/), we do not only focus on [architectural decisions](https://github.com/joelparkerhenderson/architecture_decision_record/#introduction) but on decisions being important to the development team. Thus, we consider every development related decision to be potentially important. Nevertheless, these are often architectural decisions.\n\n\nAccording to the agile principle 'The best architectures, requirements, and designs emerge from self-organizing teams' we assume that the team does know best what is an important decision and what is not. Thus, we only provide an examplary list of decisions types from previous studies with industry partners and students ([see section](#decisions)). Nevertheless, we also encourage you to read [joelparkerhenderson's elaboration](https://github.com/joelparkerhenderson/architecture_decision_record/#introduction) on architectural decisions, if you are interested in the topic of managing decision. More literature on the topic of architectural knowledge management can be found [further down](#sources).\n\nThe goal of this document is to provide a quick overview of methods and templates of capturing decisions in agile software development, how to create them, and where to look for more information.\n\n\n\u003ch2\u003e\u003ca name=\"decisions\"\u003eWhat decision are we talking about?\u003c/a\u003e\u003c/h2\u003e\n\nAs outlined above, we have no intention of telling someone what kind of decisions he/she should consider being particularly important. Thus, decisions to capture by the team can be of any type. In order to give you some help anyway, we have put together an exemplary list of decisions as follows:\n\n* Decisions regarding development tools – e.g., employed IDE, project management tools.\n* Architectural decisions – e.g., interfaces definitions, architectural decisions. \n* Technology decisions – e.g., employed libraries and frameworks and its pros and cons.\n* Decisions on the deployment plattform – e.g., deployment process, Android vs. iOS.\n* Decisions on features – e.g., add / refine / change / remove a requirement.\n* Decisions on priorising User Stories – e.g., postpone, prepone or omit a user story.\n* Decisions on software quality measures – e.g., schedule a refactoring, a review or similar.\n* Decisions regarding the user experience – e.g., revise the strategy for the user experience.\n* Decisions regarding the team prganisation – e.g., changes of roles, staff reshuffling, or similar.\n* Decisions on software development process – e.g., restructure the sprint based on the outcome of the retrospective\n\nThe list has been deduced on the basis of existing literature as well as student and industry studies we conducted. Precisely because there were decisions that we could not classify, the list does not claim to be complete. Nevertheless, the absolute majority of decisions recorded in our studies are represented by the above list.\n\n\u003ch2\u003e\u003ca name=\"decision-templates\"\u003eDecision capture example templates\u003c/a\u003e\u003c/h2\u003e\n\nIn the following listing you can find links to three templates for capturing decisions. We currently use them for experiments with students and industry practitioners. \n\n* [Simple template](templates/captureTemplate_simple.md) (Provides ...)\n* [Extensive template](templates/captureTemplate_full.md) (Provides ...)\n* [Table-based template](templates/captureTemplate_table.md) (Provides ...)\n\n\n\u003ch2\u003e\u003ca name=\"how-to-start-capturing\"\u003eHow to start capturing decisions?\u003c/a\u003e\u003c/h2\u003e\n\nTODO \n\n\u003ch2\u003e\u003ca name=\"how-to-start-capturing-with-tools\"\u003eHow to start capturing decisions with tools\u003c/a\u003e\u003c/h2\u003e\n\nTODO \n\n\u003ch2\u003e\u003ca name=\"how-to-start-capturing-decisions-with-git\"\u003eHow to start capturing decisions with git?\u003c/a\u003e\u003c/h2\u003e\n\nTODO\n\n\u003ch2\u003e\u003ca name=\"contributing\"\u003eContributing\u003c/a\u003e\u003c/h2\u003e\n\nYour comments and suggestions are welcome.\n\nYou can open a GitHub issue, or create a pull request, or email M.Schubanz@b-tu.de.\n\n\u003ch2\u003e\u003ca name=\"sources\"\u003eSources\u003c/a\u003e\u003c/h2\u003e\n\nOther templates:\n\n* [Documenting architecture decisions - Michael Nygard](http://thinkrelevance.com/blog/2011/11/15/documenting-architecture-decisions)\n* [Template for documenting architecture alternatives and decisions - Stack Overflow](http://stackoverflow.com/questions/7104735/template-for-documenting-architecture-alternatives-and-decisions)\n\nIn-depth:\n\n* [ADMentor XML project - GitHub](https://github.com/IFS-HSR/ADMentor)\n* [Architectural Decision Guidance across Projects: Problem Space Modeling, Decision Backlog Management and Cloud Computing Knowledge](https://www.ifs.hsr.ch/fileadmin/user_upload/customers/ifs.hsr.ch/Home/projekte/ADMentor-WICSA2015ubmissionv11nc.pdf)\n* [The Decision View's Role in Software Architecture Practice](https://www.computer.org/csdl/mags/so/2009/02/mso2009020036-abs.html)\n* [Documenting Software Architectures: Views and Beyond](http://resources.sei.cmu.edu/library/asset-view.cfm?assetID=30386)\n* [Architecture Decisions: Demystifying Architecture](https://www.utdallas.edu/~chung/SA/zz-Impreso-architecture_decisions-tyree-05.pdf)\n* [ThoughtWorks Technology Radar: Lightweight Architecture Decision Records](https://www.thoughtworks.com/radar/techniques/lightweight-architecture-decision-records)\n\nSee also:\n\n* REMAP (Representation and Maintenance of Process Knowledge)\n* DRL (Decision Representation Language)\n* IBIS (Issue-Based Information System)\n* QOC (Questions, Options, and Criteria)\n* DRL (Decision Representation Language),\n* IBM’s e-Business Reference Architecture Framework\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fschubmat%2FDecisionCapture","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fschubmat%2FDecisionCapture","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fschubmat%2FDecisionCapture/lists"}