In this section you will learn about the development work-flow to be followed when implementing a customer project.
The following image shows how the work is performed in each development environment, the actors and their roles in each environment, and how the software gets built and deployed.
And here the narrative to explain better what happens:
Now let's see what happens at the level of the issue or user story in JIRA.
JIRA status: Open
Assignee: Project Manager / Lead Developer
A ticket is filed by the Project Manager, the client, or QA to work on a new feature, an improvement, a task or a bug. The ticket describes in detail what needs to be done by the developer. QA will be able to test it after looking at the description of the ticket. New features are specified in detail on a Wiki page linked in the ticket description.
The task is estimated by the development team. Estimated hours, including all iterations and QA efforts are saved within the ticket. The ticket may stay unassigned within the Backlog or put into a Sprint and assigned to a developer.
JIRA status: In Progress
Assignee: Developer
The developer starts working on the issue/story. Any new feature/bugfix is developed in a separate branch within the developer's fork. This branch should be named as follows:
When a developer starts working on the issue/story she/he marks it as being "In Progress". The time spent to resolve the issue/story will be logged by the developer and saved within the ticket.
Co-working on a issue/story can be done by having a co-developer forking the feature branch from the main developer for this task. Co-developers contribute by running pull requests to the main developer's fork. All changes will be collected in the feature branch of the main developer.
JIRA status: In Review
Assignee: Project Manager / QA / Client / Other developers
When the developer regards the issue/story as being done she/he changes the status to be "In Review" and assigns the ticket for usability review to the Project Manager, for a first quality review to the QA team, and for technical review to other developers. If the reviewers find issues or want to have enhancements, the ticket will be re-assigned to the developer and as soon as she/he starts working on it, he will change the status back to "In Progress".
The review of the issue/story happens in the Development environment, the developer must provide the URL to the instance in her/his personal container where the work was performed (e.g. http://feature-motm-905-frontpage-sidebar-blog-teaser.zentralplus.maja.sourcefabric.net.)
General Policies
JIRA status: In Integration
Assignee: Developer
As soon as the ticket is successfully reviewed, the main developer merges the code to the integration branch via a Pull Request, and the feature/fix will be automatically deployed to the Integration environment. The developer changes the status of the ticket to "In Integration".
The instance running in the Integration environment is accessible via http://<project name>-dev.lab.sourcefabric.org.
Developers will thoroughly review the behaviour of the system.
If tests have been successfully executed and passed, and the development team is happy with the state of the code, the ticket will be assigned to the Lead Developer and commented as "Integration accepted". The Lead Developer runs a Pull Request to the pre-live branch, and the feature/bugfix is then deployed to the Pre-Live environment.
JIRA status: Resolved
Assigne: QA / Lead Developer
As soon as the ticket is deployed to the Pre-Live environment, the ticket will be marked as "Resolved" and assigned to the QA team. QA will now run both manual and automated smoke tests as well as specific tests to check if the feature/bugfix is working as described in the ticket.
The instance running in the Pre-Live environment is accessible via http://<project name>-prelive.lab.sourcefabric.org.
If tests have been successfully executed and passed then the ticket will be re-assigned to the Lead Developer and commented by QA as "Tested and Accepted - Ok to go Live". The Lead Developer will merge the version of the code, which may include not only this feature/bugfix but also all others that have been worked on in parallel, to the live branch only when preparing the actual deployment to the Live environment. The feature/bugfix will then be in production and available to end users.
The ticket is checked as "Closed".
There has been error in communication with Booktype server. Not sure right now where is the problem.
You should refresh this page.