Here bellow we can see a typical workflow where the red circle represent bugs.
Do you think if this basic workflow where it’s merging features directly into master to later be deployed and tested is it enought good?
With this basic workflow approach the master branch has many commits and some of them could has issues developed during the sprint. GitFlow is other alternative to this workflow which help to have a cleanest version of master and let see more information about how does it works GitFlow.
Continue reading “Testing features – Quality Assurance – Testing Software”
In this article we’ll see which could be the most relevant testing roles and the responsibilities . First we should differentiate between QA and Testing
- QA Roles : Try to prevent bugs appearing doing improvement in the development process through process improvements also verifying that it is possible to make the software work under a given set of conditions
- Testing Roles : Main task is search bugs before final user find them and testing roles are constantly thinking of things that have not been tried and find parts of the software that may be weak
- Test Lead Analyst:
- Test Engineer
- Manual Test Engineer
- Automated Test Engineer
Let try to define the responsibilities of each Role:
Continue reading “Testing Roles and Responsibilities – Quality Assurance – Testing Software (Part 2)”
In this article I’ll share my thoughts and experience about a possible list of testing artefacts that could help to improve the quality assurance in the software development working with test plan.
Before to see the different test plans It’s important to know so basic artefacts like :
- Test Case: List of steps in order to cover only one application scenario where the test case should have a descriptive title of the scenario and describe the result of each step
- Test Results: evidence of execution of a test case
- Test Plan: is a group of test cases
- Regression Test: used to test the regression produced an existent feature
- Smoke Test: list of steps to cover quickly different features without enter in details.
- Automation: Not all the Test Cases could or should be automated.
There are different ways to automated the test cases using : unit test, integration test, client side unit test or UI test)
There are different test plans like :
Continue reading “Tests Plan – Quality Assurance – Testing Software (Part 1)”
In this simple article I want share some thoughts about how to automate a manual regression test plan . I did a simple pool where I asked :
Which tool/framework do you use to automate the execution of a full manual regression test plan to validate business scenarios ?
Before to answer you should think about the “Ice-cream testing cone”
Ice-cream cone : testing through the UI like this is slow, increasing build times. by Martin Fowler in this article
From the previous image it’s clear that is not a good idea invest much time building a huge collection of UI Test and here we have the results of the Pool :
Continue reading “Automate Manual Regression Test Plan – (Testing thoughts Part 1 of N)”
It’s very common when a company start to increase the number of customers It’ll be probably increased the number of support’s tickets.
When I usually worked helping to the last line of support I saw for many tickets always was asked to the customers similar questions. I usually tried get from the customers configuration files , logs to know more information in order to progress the ticket .
Don’t you think this support workflow of retrieve the customer information could be improved it?
I think it could be automated the gathering information so when the customer will raise a new ticket it could be also attached the relevant information obtained from an automated tool .
With this approach we’ll have an “all in one ticket” because the ticket will have all the relevant information so it will saved time in both side .
Here we have some reasons why I think we should try to improve the support process workflow in order to
Continue reading “Support Workflow: Gathering customers information to save time to solve tickets – Tools – (Part 1 of N)”
In a previous article about “Layered Software Architecture Part 1″ I shared my thoughts about it isn’t enough just applying any of the MvC, MvvM or MvP patterns to build a good Software Architecture.
In this simple article I just wanted share my thoughts about the business logic layer in a N-Tier architecture . I think the Business Layer will have more sense when it will be required to add some pure business logic in the software and it won’t be much useful for simple CRUD applications.
For non CRUD applications where there are business logic in the app I think it’s a good idea if :
- Api Rest (Communication) Layer shouldn’t have business logic neither have access directly to the Data with an ORM.
- Api Rest (Communication) Layer should only limited to have simple data validations.
- Business layer should avoid to have direct access to data via ORM or SqlQueries since the Data Access Layer is the responsible
- We should try to build thin Api Rest (Communication) Layer and fat Business Logic Layer
Here below we have a list of points of what I think it should be done in business logic :
Continue reading “Business Layer Software Architecture (Part 2 of N)”
Many Development Teams are working with scrum creating at least one new software version every three weeks . This workflow including a new version of documentation every three week.
Did we ask us if we should change how do we generate release notes ?
The number of released software versions is increasing using this type of agile methodologies but Don’t you think it’s time to change this?
Continue reading “Building release notes in agile development”
EditorConfig helps developers define and maintain consistent coding styles between people and different editors and IDEs.
Visual studio 2015
visual studio 2017 editor config
Simple tuturial to create portable, custom editor settings with EditorConfig
Do you have a variable flag which depending of the configuration the flag will enable/disable (toggle) to execute some lines of code of a feature.? are you tired of this approach?
This patterns was known as “Feature Toggle” which is a set of patterns which can help a team to deliver new functionality to users rapidly but safely.
“Feature Toggling” could be done with t just a variable flag but there are other better way to do it but of course it will require more time to implement it.
Working with toggle feature it will help in:
- Adopt new technologies as part of feature toggles
- Clean Code (if don’t use just simple variable flags)
- Reduce Risk branch merges issues “feature branch”
- other more things!
Image source from this great “Feature toggling” article
“Feature Toggling” could be used when
Continue reading “Feature Toggle (Part 1 of N)”