Development process
[Strategy: Release early, release often]
[Diagram]
[Description]
[Assumption]
[Rules]
[Process]
Strategy: Release early, release often
Diagram

Description
Assumption
We divide the work into tasks in such a way that they can always be put into production at the end of the job.
We use one base code for all Our Clients.
We build code agnostic to acquier and processor settings.
Rules
We use git-flow - Gitflow Workflow | Atlassian Git Tutorial
Develop,masterare protected branchesWe treat
developas always ready to deploy for productiononly tasks after tests
only tasks after review
QA tests on feature branches.
For hot-fix we use git-flow hot-fix - hotfix from master
We do not use catalog
feature/.We do not create
releasebranchesEvery task has his own feature branch that name starts with task id e.x.
CPD-652We use release plugin in every project besides library.
We use squash commits when we merge feature branch into
develop.
Process
TODO- a task that nobody took.IN PROGRESS- a task assigned to one of AP RS developers.create branch for task
CPD-[0-9]+Every commit need to start with task ID and summary
REVIEW- a task that development ended also documentation changes.Create Merge request to develop in Git Lab
Inform about review on chat
Card processing - scrum teamAP RS does the review fixes.
DONE(columnTESTING)- Tasks testing on the Fenige side after the code is merged and built on the Test environment.Testing by Fenige
Automatization adds a link to the review portal.
Testing by AP SA - QA Team
manual testing - if the requirement is only to manually check (e.g. firing up the majk tool) that the functionality is working correctly, it is sufficient that the task previously assigned to the developer is moved to the column
TESTINGand assigned to @Maciej Szymański / @Katarzyna Zmyslowska,automated tests - if changes need to be made to the majk tool code or new things need to be added to it, a completely new task should be issued for testing with the type
IMPROVEMENT/NEW FEATURE(requirements under KUP). This task should also be placed in theTESTINGcolumn and can be immediately assigned to @Maciej Szymański / @Katarzyna Zmyslowska .DESCRIPTION:
in the description of each task there should be a precise description of the functionality that has been prepared, what it concerns and what will be achieved by its implementation,
in the description for automated tests and in the commentary for manual tests there should also be information about the steps to be taken in order to test the functionality, together with information about the expected result. If the task requires entering/using certain data during the test, such information should also be provided.
it is important that the descriptions should be as precise as possible (a link to a wiki is unfortunately not always sufficient)
it is useful to indicate the deadline for the test
CLOSED- then it automatically attach to the open Release. And this version of application is deploy on staging.CLOSED- it is tracked with releases.Setting a date for production release by the Fenige with BM and sending an email to Blue Media.
Production release by the Fenige.
Notification when the production drop-in is completed - email to Autopay and notifications on Teams chat -
[Fenige+APRS] Card processing.AP RS close release and automatization create a new one.