USE CASES
This is where we define how, exactly, our software will be used. If we get this wrong, the rest will be too! So, we'll first make sure we've got a common vision and goals before writing the Use Cases themselves. That said, we'll come back and revise this and the cases as needed. We'll be doing iterative development.
Please feel free to edit this page to shape the vision of this software project.
Software Mission Statement
The software will provide a user-friendly interface for a VEMS Genboard v3.x to configure, tune, and debug the setup of the ECU. It will add value to the project as a whole, as this will be the tool that most Genboard users will use.
- At least double the installed ECU base by reducing the apparent complexity.
- Support installers with online access to a shared configuration database.
- Reduce support requirements by avoiding unsafe configurations.
- Make the VEMS user experience polished and professional.
System Boundaries
The software will access the ECU through the serial port. The software will access the online database through a network socket. The user will operate the software through the keyboard and optionally the mouse, with feedback through the screen and audio system.
System Actors
The roles within the system are the Installer, the Tuner, and the Driver.
- The Installer is responsible for the initial setup of the ECU. They are knowledgeable about the technical details of the Genboard.
- The Tuner is responsible for getting the ECU maps and variables affecting drivability configured. They may or may not be knowledgeable about the technical details of the Genboard.
- The Driver is the end user who is likely to have minimum technical knowledge.
User Value
The Installer:
- Let the initial setup process happen quickly.
- Make the process reproducable.
- Make the tuning process as easy as possible.
- Consider "real world" factors.
- Provide user-friendly feedback on the system's operation.
- Make it easy to capture logs and diagnostic information.
Use Cases
Each UseCase is to be on a small story on a separate page. Each invididual UseCase will address a single and complete goal that supports the system vision described above.
Installer Use Cases
- MembersPage/RichardBarrington/QTune/UseCases/ConfigureEcuManually
- MembersPage/RichardBarrington/QTune/UseCases/UpgradeFirmware
- MembersPage/RichardBarrington/QTune/UseCases/SetupTrigger
- MembersPage/RichardBarrington/QTune/UseCases/ConfigureFueling
- MembersPage/RichardBarrington/QTune/UseCases/ConfigureIgnition
- MembersPage/RichardBarrington/QTune/UseCases/ConfigureNitrous
- MembersPage/RichardBarrington/QTune/UseCases/ConfigureAntilag
- MembersPage/RichardBarrington/QTune/UseCases/SetupAccessories
- MembersPage/RichardBarrington/QTune/UseCases/ConfigureDisplay
- MembersPage/RichardBarrington/QTune/UseCases/StoreConfigurationLocally
- MembersPage/RichardBarrington/QTune/UseCases/StoreConfigurationRemotely
Tuner Use Cases
- MembersPage/RichardBarrington/QTune/UseCases/AdjustIdleSpeed
- MembersPage/RichardBarrington/QTune/UseCases/TuneVeTableManually
- MembersPage/RichardBarrington/QTune/UseCases/TuneVeTableAutomatically
- MembersPage/RichardBarrington/QTune/UseCases/TuneIgnitionTable
- MembersPage/RichardBarrington/QTune/UseCases/TuneLambdaTable
- MembersPage/RichardBarrington/QTune/UseCases/TuneAccelerationEnrichment
- MembersPage/RichardBarrington/QTune/UseCases/AnalyzeLog
Driver Use Cases
- MembersPage/RichardBarrington/QTune/UseCases/MonitorEngine
- MembersPage/RichardBarrington/QTune/UseCases/LogFromEcu
- MembersPage/RichardBarrington/QTune/UseCases/RetrieveDiagnosticData
- MembersPage/RichardBarrington/QTune/UseCases/UpdateFirmware
...