Firefly -- QA: Requirements & Tests
- Controlling structure can be defined by BPMN diagrams, thus the flows are easily understandable and adjustable
This way only basic knowledge of informatics is required to define processes, and the overall flow can be designed, reviewed, controlled and modified even by System or Business Analysts.
Moreover, the cost of automated User Acceptance Test can be reduced to 50% - 30%.
- Requirements can be defined: that means a Requirement-structure diagram, similar to a 'mind map'/'decision-tree'
- Requirements can be checked: that is Test Automation using the powerful scripting environment
- Requirements can be presented: that means the test runs can produce a slide-show like presentation
Firefly/Weaveworld has two operational modes ('Editions')
- After the installation the program starts as a Personal Edition what is free to use.
- The purpose of the Personal Edition is to develop and try 'Requirement-models' and other processes on a personal computer/laptop
- Using a valid License file the program switch to Professional Edition.
- The purpose of the Professional Edition is to create a Knowledge-center about the developed/used applications' features
Firefly also supports a new way of QA, that is called Requirement-driven Desing (RD), so Firefly has some unique technique, e.g.,:
- Layering: Requirements can be organized into layers (using priorities), so validity can be checked only to a specific depth
- Targeting: Validity checks can be narrowed for a given set of requirements
- 'Multiversing', that solves the so-called combinatorial problem of testing
- High-level browser control (based on the Selenium-framework)
Firefly is beneficial mainly for
- Application Developers
- Creating Acceptance Tests for software applications under development, e.g., to test User Stories
- Software Testing Companies
- Providing automatic testing, so tests can be later used for Regression Tests and Monitoring
- Enterprises with critical applications
- Monitoring the correct functioning of critical applications, user interfaces and services
- Creating Function Maps (Maps of 'Use Cases') to retest user functions and generate reports/documents
- Developing 'Regression tests' before extensions/modifications of critical applications
- 'Firefly' is a powerful scripting environment to control ('orchestrate') Services, Web Applications and Java components or any other thing accessible from Java. Script fragments can access software components. Complex flow of control (the 'orchestration logic') can be given by easy-to-understand BPMN diagrams.
- The aim is to provide a controlling environment what can be used without deep programming knowledge; even business analysts can tailor and control the overall logic.