Category Archives: Agile entry criteria

DevOps Practices & FAQs -3 [Domain area]

For your DevOps job interviews coaching contact in FB.

Please note pre-requisites:
You should have attended/practiced tools sessions already.

 

Please read the previous FAQs series also: Devops-practices-faqs-1

https://vskumar.blog/2018/12/29/devops-practices-faqs-2-devops-practices-faqs/

faqs-devops-eng-network-knowedge

Visit for free concepts learning:

To join DevOps Practices group visit:

https://www.facebook.com/groups/1911594275816833/about/

To join Cloud Practices group visit:

https://www.facebook.com/groups/585147288612549/about/

 

 

If you want to know the above knowledge visit the below class video:

 

 

https://www.facebook.com/groups/1911594275816833/about/

FB-DevOps-Practices Group-page

Following videos are made to elaborate on the need and advantages of thinking on conversion into DevOps Practices by IT Companies and the Professionals. Comparative reports have been incorporated.

 

 

Advertising3

DevOps Practices & FAQs -2

Please read the previous FAQs series also: Devops-practices-faqs-1

And the next one: https://vskumar.blog/2019/02/01/devops-practices-faqs-3-domain-area/

AWS-SAA-Course

1. Who can become DevOps Engineer ?

In traditional projects [Non Agile practiced projects] ; Build Engineers, Sys Admins, Release Engineers can convert their career into DevOps Engineer role through an Agile practiced IT organization.

In Agile projects we might have seen Build or Deployment Engineers; they can convert into DevOps Engineer roles.

2. What a desired ‘DevOps Engineer role professional’ need to learn ?

If somebody would like to convert their role into DevOps Engineer; they need to understand the following :

  1. Agile and Scrum or Lean practices
  2. DevOps Principles, practices and patterns
  3. Deployment, SCM  and Release management process
  4. Version control System tools [Ex: Git, SVN, etc..]
  5. Cloud setup and deployment [Ex: AWS, Azure,Google Cloud, Alibaba, etc..]
  6. Packaging process and tools [Ex: Maven, Gradle, etc.]
  7. Continuous Integration Tools [Ex: Jenkins, Teamcity,  etc.]
  8. Software Configuration Management [SCM]  tools [Ex: Ansible,  Chef, Puppet, etc.]
  9. Containerization [Docker]
  10. Some of the scripting languages [Ex: Shell, Bash, python, Ruby, Nodejs, etc.]
  11. Windows, Linux OS commands and operations.

They can learn incrementally also depends on the project need. Note all projects will not use the unique tools. Depends on the IT organization plans, practices and the environments they decide on choosing the vendor based or open source tools.

Note: Some of the famous tools only it has been mentioned. Hence one need to identify the customer project environment and their DevOps architecture also. If one understands the Basic process in their 1st learning phase, later on they can pickup faster.

If you want to learn DevOps Practices, join the below group:

https://www.facebook.com/groups/1911594275816833/about/

FB-DevOps-Practices Group-page

Following videos are made to elaborate on the need and advantages of thinking on conversion into DevOps Practices by IT Companies and the Professionals. Comparative reports have been incorporated.

 

 

Advertising3

 

Visit my current running facebook groups for IT Professionals with my valuable discussions/videos/blogs posted:

 

DevOps Practices Group:

https://www.facebook.com/groups/1911594275816833/about/

 

Cloud Practices Group:

https://www.facebook.com/groups/585147288612549/about/

 

Build Cloud Solution Architects [With some videos of the live students classes/feedback]

https://www.facebook.com/vskumarcloud/

 

 

MicroServices and Docker [For learning concepts of Microservices and Docker containers]

https://www.facebook.com/MicroServices-and-Docker-328906801086961/

DevOps Practices & FAQs -1

Do you think Agile practices are mandatory to implement DevOps Practices ?

Yes, Agile practices bring Continuous delivery [CD] of business requirements through SPRINT. Then these will be converted into different software code and infrastructure. These will be verified and deployed into the production systems.

Fundamental process of SPRINT is; if user gives a requirement to product owner; it will

be decomposed into small chunks of requirements and they will be considered into different SPRINTs [a set of Small technical requirements, where these can be fixed or enhanced in few hours; ex: include or update a formula] and will be presented for verification.

When the DevOps practices are getting implemented; these SPRINTs can be considered to deploy into different technical environments for validating the build and in turn they will be qualified to move into production. This  is an ongoing process by following Continuous Delivery integration [CDI] of Agile. If many developers are there in a Business unit there can be many builds and the users do not need to wait for all of them to complete. The CD can happen. So whichever is completed first it should be delivered. During the CDI the DevOps engineers role is to package the software code and deploy the builds for verification and later on to production. In their activity journey  many tasks can be repeatable. This repeatable activity can be automated with the So called DevOps tools to save manual efforts. This can reduce the deployment cycle time and at the same time total SPRINT delivery time reduction can happen. So the business benefit can be achieved, by pushing the build of specific user requirement faster.

With all the above, without having Agile practices, you can not jump into DevOps practices right away. The people practices on Agile is also very essential.

So if your organization is not having Agile practices in place there is no point of thinking DevOps practices. This can come under old IT tradition.

Look into the below videos on the importance and advantages of DevOps conversion to an IT Company:

 

Below image can denote the transition of IT development cycles till DevOps practice with continuous operation [automated]:

 

DevOps Movement

 

Visit for next series of DevOps FAQs: https://wordpress.com/post/vskumar.blog/1684

Visit for series of Agile interview questions:

https://vskumar.blog/2017/09/04/sdlc-agile-interview-questions-for-freshers-1/

 

Also, Look into some more FAQs:

https://vskumar.blog/2018/12/29/devops-practices-faqs-2-devops-practices-faqs/

https://vskumar.blog/2019/02/01/devops-practices-faqs-3-domain-area/

Did you check the Agile entry criteria before your initiation ?

Agile Entry Critera - Check-Page1 Agile Entry Critera-Code refactor-simulation-chart-Page2Agile Entry Critera - Check-Page3 I have made videos on this blog and  posted in the below youtube  channel URL with further elaboration: http://www.youtube.com/channel/UCR1qBu2xUiypGDa2UaNQr8A/videos

If you are keen in getting my support on these practices implementation for your Agile programmes/projects/teams, please contact me.

I support the organizations globally.

slide1

Management Practice-1: Some helpful tips for new Scrum masters under Servant leadership role

Agile-Scrum image-add1

 

In continuation of my previous blogs on SDLC/Agile/Scrum, this blog can give some tips to Scrum Masters.

As per the Agile manifesto and Scrum principles, the Scrum Master need to work as a servant leader. The typical servant leader how he/she should have characteristics to bring the team alignment for right delivery with CDI speed, I have drafted in  the below content. This can be useful as TIPS to new Scrum master on Agile projects.

What characteristics a Servant Leader should have in the organization ?

Creating the right leadership roles is very important and challenging to any organization with the current trend of the rapid technology or business transformation.  

They need to look into the person’s characteristics very deeply.  At the end of the day these leaders only drive the key aspects of the organization to achieve the results.

There are different leadership roles taken by coaches. One of them and very famous and with value added is;  Servant leadership.

The servant leadership denotes as ‘a philosophy and practice’ of leadership. This concept has been appearing from the prehistoric.  I would like to give a brief introduction of this role in this article, which can help the professionals who would be pursuing into the leadership roles.

When we move forward on analyzing this role, our mindset might have the following questions:

1. What is servant leadership means?

2. How they can thrive the teams in organizations?

3. How they can improve the corporate culture?

4. What is the significance they can create?

5. How this leader can drive high loyalty of the customers?

6. How this leader can build empowered teams to the organization?

7. How the teams can feel being with this leader?

8. Does the organization get the opportunity to drive long term goals with this role?

9. How the organization work culture can be changed timely with this role?

10. How this leadership role can help the organization with accelerated ROI?

 

In any organization servant leaders accomplish the results while reaching to the targets. These leaders give preferences to the needs of their contemporaries. By thumb rule, these leaders are being seen as humble stewards in their organizational resources like; human, financial and physical.

Focus on teams: A servant leader focuses on his/her team members needs towards scaling them into higher levels in their organization by helping them to resolve their issues and promotes their personality development also. These leaders feel it’s a management philosophy which can be applied to in the view of quality of people, work and community spirit.

We can see in many organizations there are several leaders’ supports their employees in the above mentioned areas to ascend them further. Every growing organization needs this kind of leaders to achieve their targets. Without these leaders and their characteristics it would have not been possible many companies rapid growth in the relevant industries.

Servant leader’s characteristics: When we think of their characteristics, certainly the following can come into our mind with leadership analysis thought process.

  •  Listening
  •  Empathy
  •  Healing
  •  Awareness
  •  Persuasion
  •  Conceptualization
  •  Foresight
  •  Stewardship
  •  Commitment to the growth of people
  •  Building community

Understanding people closely: A servant leader attempts to understand and empathize with the team. This leader would not consider them as employees. Their individual respect and appreciation on their personal development would be awarded by the leader. As a manager or leader you can consider any team members tasks, look into its complexity, and support the team member to achieve its result. And you can apply your servant leadership compassion.  The team members would not have realized you earlier, when you applied these leadership techniques to achieve their targets.

Effective management of people and their skills: The servant leaders don’t use their power in getting the things done by the people. Instead they manage the tasks and people through effective discussions. This way the team member also can understand on how their manager is giving the importance and respect to their individual concerns. Their hidden or unused skills or power can be utilized to complete any complex tasks with easy ways. For the future tasks, the minimal discussion time can be taken place to convince the team members, while having built the relationship empathetically.

Focus on operating targets and objectives: The servant leadership also plays to focus on long term operating goals also, rather than short term benefits.  In view of this kind of thought process they derive specific goals towards implementing strategies for the benefits of the organization as well as tuning the teams towards working on the strategic plans and their execution.

Serving with Openness and persuasion: These leaders would have dedication to help and serve others. With their openness and persuasion their leadership qualities can be demonstrates in the organization to achieve any complex activities also with simple.

 

Vcard-Shanthi Kumar V

 

 

 

 

Advt-course3rd page

SDLC & Agile – Interview questions for Freshers -5

In continuation of my previous blog  on this subject following questions and answers are continued:

1. What is retrospective in agile and where it can be useful?

Ans: During agile development model in each iteration different requirements are considered to design, develop and construct the code. While performing these tasks there can be different issues identified and resolved by the teams at each stage. The teams need to maintain knowledge information against to each issue as lessons learnt. These issues resolution mechanism processes are going to be considered for any process improvements  for next iteration. During the retrospective [after completing iteration] the team is going to discuss the lessons learnt  from the completed  iteration and the best practices  identified for next iteration. The retrospective is a mandatory activity for every iteration of Agile projects. And this need to be conducted before starting the next iteration.

 

2.   What is continuous stream of development in agile model?

Ans: As per the agile concept continuous software delivery need to  happen by following iterative development. Let us assume the development team consider the four days for development and fifth day it need to go for release and deployment, fifth day onwards developer considered as other iteration/SPRINT as their continuous development activity. The developers are picking up one  by one SPRINT items for their construction activity this is called as continuous stream of development. When the testing activity is ongoing the developer can pickup other workable items from the SPRINT to do construction activity.

 

3. What is Continuous Delivery[CD] in Agile ?

Ans: As per the agile concepts and principles, the developer need to get small chunk of workable item only which can be delivered in hours or few days.  When this kind of continuous development is happening through the agile developers there will be builds for continuous testing and deployments. Obviously then the agile project leads to have continuous  delivery [CD] of software into production with small chunks of functionality or fixes.

Example: Many technology companies consider each SPRINT item to complete in hours only to speed up their ongoing software deployments for their daily business needs. This kind of concept is called as Continuous Delivery [CD] in Agile.

 

4.  What is transition activity and their tasks involved in  agile project?

Ans:  Transition activity is start with deploying software release into production. Once the software construction phase is signed off the transition activity need to be started, typically transition activity contains following tasks.

i) Active stakeholder participation

ii) Final system testing

iii) Final acceptance testing

iv) Finalize documentation

v) Final testing of the release

vi) Train end users

vii) Train production staff

viii) Deploy into production.

All the above tasks are performed in the sequential order.

 

5.  What is final system testing during transition stage?

Ans: Once software can be deployed  internally, the planned system testing need to be conducted by testing team for a specific iteration. Once system testing is passed or certified the  acceptance testing need to be started.

 

 6.  When can you conduct final acceptance testing in agile model?

Ans:  In any agile project developers need to conduct a skeleton software demo to the users. Depends on the design requirement once users approved it, the Construction phase need to be  started. Once the software is constructed and  it can be deployed internally for various levels of testing during the transition stage of agile project. At this stage the software release is deployed in test environment. Then the  system testing is conducted and signed off.  The final acceptance testing is conducted on the software to be delivered to the users in production. Once the final acceptance is signed off the remaining tasks are being performed during transition phase, as mentioned in the list of tasks.

 

7. When can the pilot testing  happen and who all will perform it?

Ans: During the transition stage once the acceptance test is signed off , and final document is done, the software build is executed under a pilot test in a preproduction test or in a production environment depends on the organization policy. The pilot test is attended by the business users and testers or nominated coordinator along with the development team and operations[ops] team.

 

8.  During the transition stage who all need to be trained?

Ans:  Once the pilot test is done software end users and the production staff (ops team) needs to be trained to operate the product in live [production] for business operations.

 

9.  When can you deploy the system into production?

Ans: During transition stage once the pilot test is signed off, end users and production staff will be trained on software system and then it is deployed into production.

 

10. How a  prototype can be designed ?

Ans: When the business user give some requirements which consists of user interface and some data processing to provide output, there are two ways we can design prototype software; a) Prototype model  b) Design and developing the complete software.

a) Prototype model: During prototype model developer design and develop the critical requirements of the users and demonstrate those things as the skeleton software. The skeleton software will not have the complete software operations. It will have an user interface to get an idea by the user on the software to be delivered by the development in future. Once user approved skeleton model, developer can design complete model through Agile SDLC. Note; the prototype model or process can be applied  for one or more SPRINT cycles or iterations.

b) Design and developing the complete software: This kind of software happens in a regular Agile project process from collection of user story onwards. All the agile phases and their tasks will be applied for execution. If the team agreed to a demo [for prototype], the user demos can also happen as and when required for each SPRINT during construction phase.

Keep watching this site for further updates.

Contact for any guidance/coaching.

 Vcard-Shanthi Kumar V

 

Continuous test automation planning during Agile iterations

Continuous test automation planning during Agile iterations

Please refer to my blog and videos on Agile practices and the importance of Re-usable code libraries for cycle time reduction.

During the reusable code usage and the iterations or sprint planning, the test automation also can be planned, designed and implemented.

This blog eloborates on  the easy processes can be used to implement it and demonstrate the cycle time reduction. Please note atleast after passing the two cycles of tests on the selected manual scripts need to be planned for test automation.

I am trying to elaborate on the process of the Automation of unit testing and component or module integration test automation. Please note the test automation is also a development project. Hence some of the phases are similar to SDLC. The pictorial chart elaborates the detailed steps involved in these test phases automation. Module (Unit) or Component Development in Agile: The below contents and the chart narrates the relationship of automation Development process and the Testing process under each development phase. Development and Testing process Relationship table:

Phase Development Process Test Process
Module (Unit) or component Development Design module from requirements Perform test planning and test environment set up.
  Code module Create test design and develop test data.
  Debug module Write test scripts or record test scenario using module.
  Unit test module Debug automated test script by running against module. Also, tools that support unit testing [Purify, etc] can be used.
  Correct defects Rerun automated test script to regression test as defects are corrected.
  Conduct Performance Testing Verify system is scaleable and will meet the performance requirements. This is the entry criteria for Integration test automation.
Integration
Build system by connecting modules.Conduct Integration test with connected modules.Review trouble reports. Combine unit test scripts and add new scripts that demonstrate module inter-connectivity. Use test tool to support automated integration testing.
  Correct defects and update defect status. Rerun automated test script as part of regression test, as defects are corrected.
  Continued Performance Testing Activities At this point, Verifying system is scaleable and will meet performance requirements with the integrated modules. If this passes then the system test or VVT entry can be considered.

Below chart demsontrates the process steps to be used for test automation of unit test and integration testing:

UT&IT

The acronyms used in the chart: TC–>Test case, TD–>Test data, TR–> Test requirement, UT–>Unit test, IT–> Integration test.

All the automated test scripts and test data  need to be preserved under configuration management tools.

Choosing the right tools for test automation comes under tools evaluation process. Once the tools are identified, the above processes can be planned and adopted for regular practice on the Agile projects.

 

 

Vcard-Shanthi Kumar V-v3