Giter Club home page Giter Club logo

software-engineering-ethics-debater's Introduction

SWED - Software Engineering Ethics Debater

SWED (Software Engineering Ethics Debater) is an educational argument diagramming tool for the domain of software engineering ethics. SWED provides a set of argument schemes as cognitive building blocks for constructing argument diagrams in this domain. SWED’s user interface and argument schemes were designed by Dr. Nancy Green, University of North Carolina Greensboro. SWED is the follow-on to her previous work on AVIZE. SWED was implemented by Larry Joshua Crotts, a UNCG computer science undergraduate, who refactored AVIZE.

AIED (Artificial Intelligence Ethics Debater) is a version of SWED used in a pilot study in Fall 2019 to test the use of SWED for teaching AI Ethics. The tutorial used in the pilot is at https://www.youtube.com/watch?v=OiTAO16_OUA. To reproduce the pilot study, the following files have been included in this release:

  • Cases XMLs: CyBomberCaseStudy.xml, modified-ACM-Malware-caseStudy-with-attribution.xml
  • Scheme XMLs: pilot-schemelist.xml
  • Ethics XMLs: acmethics-abridged-with-copyright.xml
  • Help: help-introduction-AIED.pdf

Running SWED

To run SWED with default argument schemes, simply download the latest release from the swed_release/ folder. A direct link to the executable (Windows) is located [here], whereas the executable JAR file (Windows, MacOS, Linux) is here. Within the swed_release/ folder, there are three subfolders:

  • /cases_xmls/
  • /ethics_xmls/
  • /scheme_xmls/

Each subfolder contains the necessary XML files to load and create cases, ethics, and argument diagrams.

Custom Argument Schemes

If you wish to utilize your own custom argument schemes, add the schemes in an xml file to the /scheme_xmls/ in your working directory.

Custom Case Studies

If you wish to utilize your own custom case studies, add the cases in an xml file to the /cases_xmls/ in your working directory.

Ethics Resources

If you wish to utilize your own ethics resources, add the cases in an xml file to /ethics_xmls/ in your working directory.

Usage

Please refer to the help files and tutorials in the folders by those names.

Rebuilding SWED

All source code is located in the /src/ directory. The relevant [F]XML, and java files are under their respective directories. To rebuild the code in NetBeans 8.2, Java 8 is required (either Oracle, Amazon Corretto, or OpenJDK). Any arbitrary flavor of Java 8 is most likely acceptable, as long as JavaFX is included.

Clone the repository to your computer, then open NetBeans. NetBeans 8.2 has Maven support out of the box, so all you have to do is open the project.

Reporting Bugs

See the Issues Tab.

Version History

The master branch encompasses significant development changes in the project, whereas the development branch houses various experimentation and states of progression. This branch is constantly evolving. Rarely (whenever it is best), the master branch is updated to mimic the development branch.

software-engineering-ethics-debater's People

Contributors

dependabot[bot] avatar greennl avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

54l7lyq

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.