Category Archives: Agile entry criteria

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

SDLC & Agile – Interview questions for Freshers -4

Agile Cirlce1

In continuation of my previous blog [https://wordpress.com/post/vskumar.blog/1944] on this subject following questions and answers are continued:

 

1.  What is a collaborative development approach in  agile development model ?

Ans: In any agile project as per the Agile manifesto principles the team need to pull up the ideas through a prototype like;  either phased prototype or iterative prototype or rapid prototype. With these pulled ideas, the team need to work together by sharing knowledge among themselves and which is considered as a collaborative development approach. 

 

2.  What is model storming during construction phase of an agile development model?

Ans: When the initial requirements are envisioned they all are being transmitted into different iterations. A single team or multiple teams need to execute the iteration during software code construction. The requirements also can be changed or newly added by the stakeholders as per the agile principles at any stage of Agile project phases.  The team need to be brain stormed to execute the iterations correctly and completely as per the user’s desire. The iteration can be considered as a single agile model for construction phase and this model storming can happen within team for clear understanding of SPRINT by each developer. During the model storming; the requirements decomposition happens like; from user story to design specifications those can lead to SPRINT items, and from design to code specifications. Depends on the team planning; sometimes the outcome of model storming can also be a TDD [Test Driven Design]. [Please look into my youtube videos on Agile topic reusable code example]

 

3. What is Test Driven Design [TDD]?

Ans: Any requirement [story] need to be decomposed into design requirement. Each design requirement need to be converted into code through construction phase. When the code is visualized [before development] by the developer a test driven scenario need to be identified or visualized by the developer and it need to be documented into a test case with different test design steps. Once the developer feels this test case can be executed by using different code paths the developer can start the code writing, this concept is called Test Driven Design and using this TDD specification the development can be started.  Hence the Agile developers need to make TDD  1st ready and plan for code writing, review and unit testing. Sometimes the TDD  can be the outcome of the model storming also.

 

4. What is confirmatory testing?

Ans: In any software build there can be defects through different levels of testing. When the developer fixes one or more defects and deploy code in test environment, the test engineer need to retest it for confirming the software function with reference to the regression requirements or functionality and the fixes [if any]. For every fix confirmation test is mandatory.

 

 5.  What is evolving documentation?

Ans: As per the agile process when the code is constructed and tested the prepared documents need to be updated with reference to the tested and certified build. If any new requirement has to be incorporated into document, the documentation evolving is an ongoing activity for an iteration build till it goes to production.

 

6.  What is internally deploying software?

Ans: Once the construction is over for an iteration requirement, software can be unit tested and integration tested. If it is passed, it can be move to other test environments. As per the deployment process when we are moving software into the different environments [after test certification or confirmation] the build is known as internally deployable software.

 

7.  When can you finalize the documentation in agile model?

Ans: During the transition stage once the acceptance test is signed off users suggestions are considered to finalize the documentation.

 

8.  What are  tangible and intangible benefits for users?

Ans: In any business requirements there are direct benefits from business to incorporate software requirements into software system which is considered as tangible [direct] benefits. There are intangible [indirect benefits] also  by incorporating different requirements into software with a business usage.

Example: If  the system performance is increased by a technical design  in the software architecture, users can access the data faster which is intangible benefits. Then the  iteration can facilitate to perform the software with faster data access or the web pages appearance can be faster. Sometimes this kind of requirements can come into  technical areas rather than coming through a user story in Agile and those can be intangible benefit. Even we might consider an upgrade to database or OS or memory, etc.  then also the data access speed can be increased.

 

9.  What is the feedback analysis? When it can be done?

Ans: As per the agile principles the stakeholder collaboration is an ongoing activity. At any time the stakeholder can give informal or formal feedback for any software items or in any approach followed by agile teams. In agile model many times informal feedback can happen during the discussion. At the same time the scheduled reviews also can happen. During the review the feedback can be given by the reviewers. Even a test result can come into a feedback category. All these feedback items need to be analyzed for delivering a working software by the teams as per the principles.  Sometimes the feedback analysis outcome can come into process improvements areas for the next iteration and these should be considered for Retrospective items. Hence the feedback analysis is a mandated activity at every task completion stage in  Agile project.

 

10.  What is demo in agile model?

Ans: With reference to the rapid prototype approach agile teams are supposed to demonstrate skeleton design for a new module. it is a plan to demonstrate skeleton system to the stakeholder and to get the feedback for processing further SPRINT  or Iteration items. This demo is organized depends on the software or initial plan for a given iteration.

Keep watching this site for further updates.

Contact for any guidance/coaching.

 

Vcard-Shanthi Kumar V

SDLC & Agile – Interview questions for Freshers -2

Agile Cirlce1

In continuation of my previous questions blog [https://vskumar.blog/2017/09/04/sdlc-agile-interview-questions-for-freshers-1] on this topic these were made.

SDLC and Agile Model:

Questions on SDLC Phases:

1. How the agile methodology has been architected?

Ans: The agile methodology has been architected with 12 principles to govern the agile development approach.

2. What is highest priority during agile development model?

Ans: The highest priority is customer satisfaction and the early and continuous delivery of software which will work for the customer requirement.

3. Why the agile development models need to accept the request on irrespective of the development stage?

Ans: As per the  fundamental approach of agile development  it provides facility to the users towards inception of new or enhanced requirements before the delivery.

4. During agile development approach who all need to work together?

Ans: The business people and software developers need to work collaboratively and consistently throughout the project life cycle.

5. To get the right delivery what do we need to do during agile development model?

Ans: In agile project we need to have self motivated individuals at the same time we also need to supply the required human and nonhuman resources to get the job done.

6. When the life cycle of agile model ends?

Ans: The agile model continues till the retirement of the product or project. When the customer decides the retirement of the product then the project operation is terminated. 

7. Why do we need to have face to face conversation during agile development approach?

Ans: The agile principle guides to have face to face conversation among the project resources to have most efficient and effective method of communication.

8. How can you measure the progress and success of agile project?

Ans: The basic concept of agile is to deliver the working software of component.

9. How  the agile development process need to be promoted and to whom  all ?

Ans: Agile development process need to be promoted in a  sustainable development for continuous delivery to the sponsors, developers and users.

10. Why do we need technical excellence and good design project delivery?

Ans: The concept of the agile is for continuous delivery to the users as per the requirements in an iterative development approach. The team capacity needs to be accelerated towards the functions and processes to work on good software design.

Keep watching this site for further updates.

Contact for any guidance/coaching.

View my UrbanPro-profile

URL is : https://www.urbanpro.com/vskumar 

 

Vcard-Shanthi Kumar V