Software Requirements Management Tools: Specifications, UML Use Case, User Stories, Business Analyis, User eXperience
Open Source Software Requirements Management Tools
Arbiter is a requirements gathering and acceptance testing tool for project managers and web developers, to help ease client interaction. The project specification can be defined in word processor format as you would normally. By adding some special items, such as titled bulleted lists and highlighted text items, both a test suite and glossary can be written right into the spec. The Arbiter server will parse these documents and run the tests, reporting the results into the documents themselves. This allows the client to see project process. It also allows the developers, sitting next to the client, to add concrete executable examples of the use cases. This adds clarity and helps to settle disputes over required functionality. Using the glossary, developers can signal to the client that concepts are not well understood. Tests can be marked pending if a document contains unexplained glossary items.
BOUML is a free UML 2 tool box allowing you to specify and generate code in C++, Java, Idl, Php and Python.
Concordion is an open source framework for Java that lets you turn a plain English description of a requirement into an automated test — an active specification.
Concordion is mainly aimed at the development team that consists of analysts/clients and developers working together in an agile fashion. The analysts/clients work together with the developer to write the specifications in HTML. The developers then write their fixtures in a .NET language and Concordion runs the two together producing red/green results like a unit test.
A software toolset for the modeling and animation of e-commerce transactions. The toolset is open-source and is made up of three components; a CASE plug-in for MagicDraw™ UML (v12), a workflow engine and a centralized web client for interacting with the model via a web browser. This toolset is for business analysts who need to model the content and structure of complex messages for multiple e-business partners. After defining the messages business partners can interact -or play- with the transactions in an easy to understand way. Reduce your testing and IT development costs by validating the business requirements prior to beginning any development.
FaMa-FW is a Framework for automated analyses of feature models integrating some of the most commonly used logic representations and solvers proposed in the literature (BDD, SAT and CSP solvers are implemented). FaMa is the first tool integrating different solvers for the automated analyses of feature models.
green is a LIVE round-tripping editor, meaning that it supports both software engineering and reverse engineering. You can use green to create a UML class diagram from code, or to generate code by drawing a class diagram.
A tool for monitoring traceability between requirements and Java code. Create a traceability matrix using annotations. Report format: HTML.
JFeature is an open source feature/requirement coverage tool that facilitates focusing on requirements as you develop code. It lets you leverage from standard development practices to get more insight into the requirements covered by the code. JFeature works on top of the well known unit testing framework - JUnit, to identify the requirement coverage in the code. This also makes JFeature useful for projects, which use tools that operate on top of JUnit, such as, Cactus, StrutsTestcase, etc
JNarrate is for writing behaviour specifications (a.k.a. examples/acceptance tests/story tests/etc) in code.
Modelio is an open source modeling environment that supports UML2 and BPMN2, and provides extensions (modules) for SysML modeling, TOGAF modeling and Java code generation.
Requirements management tool designed to achieve full SDLC traceability for features, requirements, design, implementation and testing. UI for requirements derivation, version control, common or custom attributes - rationale, source, risk, effort etc
The Organization Modelling Environment (OME) is a general, goal-oriented and/or agent-oriented modeling and analysis tool. It provides users with a graphical interface to develop models, and supports access to a powerful knowledge base that allows for sophisticated computer-aided analysis. This tool is intended to provide software developers with a clear link between the requirements, specification and architectural design phases of development.
Oryx is a web-based editor for modeling business processes in various modeling languages like BPMN or EPC.
PyConcordion is a Python port of Concordion. That is : * Write your specification in HTML with Concordion instrumentation * Write your fixture in Python just like you would write a fixture in Java * Run your tests either individually or with the folder runner * Look at the Concordion report
Quick Sequence Diagram Editor is a tool for creating UML sequence diagrams from textual descriptions of objects and messages that follow a very easy syntax. It supports actors, constructors, destructors, threads and on-diagram comments that can be used to represent conditions or loops.
Requirement Heap is a web based requirement management application. It allows to enter requirement in rich text, supports versioning and the management of requirements.
The RE-Tools is a model-based modeling tool. All supported notations can be used together in an integrated manner, which means functional and non-functional requirements, agents, goals, softgoals, formal goals, and objects can be related as needed.
rmtoo is a free and open source requirements management tool. rmtoo uses a different approach than most other requirements management tools: it comes as a command line tool which is optimized for handling requirements. The power of rmtoo lies in the fact that the development environment can handle the input and output files – there is no need for a special tool set environment.
RTH (Requirements and Testing Hub) is an open-source test-management tool, which also has requirements-management and bug-tracking capabilities.
RTH Turbo is optimize version of RTH, a testing management tool, that allows: -requirement management; -test case management; -defect tracking; -create test plans; -analyze your test results. This project was originally create from RTH version 1.2. This new brach and version will became more powerfull and optimize than the new one. This tool is originally based on TestDirector from HP/Mercury.
This tool is inspired by Concordion originally written in Java. The goal of our version of Concordion is to provide an active specification framework in Ruby.
The primary goal of SPLOT is to put Software Product Lines research into practice through the delivery of state-of-the-art online tools targeting academics and practitioners in the field. With SPLOT you can edit, debug, analyze, configure, share and download feature models instantly.
Sculptor is an open source productivity tool that applies the concepts from Domain-Driven Design and Domain Specific Languages. You express your design intent in a textual specification, from which Sculptor generates high quality Java code and configuration.
Swing Java Application manages software requirements and associated functional tests, including results, showing requirements/tests traceability at all time. Requirements and tests are formatted as in text processor; print-ready documents are generated.
specs provides a Behavior Driven Development (BDD) framework for the Scala language
Spectacular is an Acceptance Test Driven Development (ATDD) / Behavior Driven Development (BDD) tool that aggregates several different types of testing frameworks into 1, and it also introduces the idea of Executable Use Cases.
StarUML is an open source project to develop fast, flexible, extensible, featureful, and freely-available UML/MDA platform running on Win32 platform. The goal of the StarUML project is to build a software modeling tool
Stylebase for Eclipse is an open source tooling environment for software architects and designers. Stylebase is a reuse repository for architectural models and design patterns and it assists in applying quality-driven architecture design into software engineering.
TextUML Toolkit is an open-source IDE for UML that lets you create models at the same speed you write code. By adopting a textual notation, the TextUML Toolkit provides benefits you will not get elsewhere.
Umbrello UML Modeller is a Unified Modelling Language diagram programme for KDE. UML allows you to create diagrams of software and other systems in a standard format.
Umple is a modeling tool and programming language family to enable what we call Model-Oriented Programming. It adds abstractions such as Associations, Attributes and State Machines derived from UML to object-oriented programming languages such as Java, PHP and Ruby. Umple can also be used to create UML class diagrams textually.
UML Almighty provides a dynamic view of an UML Model, simulating an entire UML model with desktop and web prototyping.
UML Designer is a graphical tool to edit and vizualize UML 2.4 models. It uses the standard UML2 metamodel provided by Eclipse Foundation.
UMLet is a UML tool aimed at providing a fast way of creating UML diagrams. UML elements are modified using text input instead of pop-up dialogs. Elements can be modified and used as templates; this way, users can easily tailor UMLet to their modeling needs. UMLet supports a variety of UML diagram types: class diagrams, use case diagrams, sequence diagrams, state diagrams, deployment diagrams, activity diagrams -- see some examples. UMLet allows users to create their own custom UML elements. An element's look can be modified at run-time by changing a few lines of Java code; UMLet then compiles the new element's code on the fly. Without leaving UMLet, users can thus create and add new element types to their diagrams.
UNICASE is a CASE-Tool integrating models from the different development acitivities, such as requirements, use cases, UML models, schedules, bug and feature models into a unified model.
Use Case Maker helps software developers to write organized use cases and to maintain related requirements.