RSS

Category Archives: Technical

The posts under this category, exclusively contain the technical related information. It contains information about Computer rlated concepts, engineering, advancements in the technology etc.

Questions a Scrum Master Should Ask Before Joining an Organisation 


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

Having been a Scrum Master for several years and having led 3 large and many small Agile transformations, I have come to appreciate the Scrum Master role more than anything else. Depending on the organizational setup, organizational maturity and Scrum maturity the Scrum Master role can be very challenging. Even if organization is conducive of Scrum, the role is challenging. 

Starting a new role as a Scrum Master for any startup or new organisation can be daunting. Whether you are new to the Scrum Master role or have a wealth of experience, joining a new team means getting up to speed with new people, processes and products. 

A smart scrum master needs to ask appropriate questions before joining a company. Before coming to a decision, the scrum master should clearly evaluate the current situation within the startup.

The scrum master role has been gaining popularity with the widespread adoption of Agile. Startups adopt Scrum at an ever earlier stage and look for professionals to help them out. There are some important questions a scrum master candidate can ask to find the right startup company for their skill set.

In order to get a good idea of how your new Scrum team are operating, I have collated list of questions for you to ask. This list of questions covers all the various topics you are likely to want to know more about, so gather your new Scrum team and ask away!

Here are list of favourite questions for candidates to ask *employers* when interviewing as a Scrum Master:

– What is the biggest challenge Scrum team(s) are currently facing?

– What Is Your Current Software Development Process?

– How much support does the scrum teams have in the organization?

– Why Are You Hiring a Scrum Master and Not a Project Manager?

– How do your team(s) currently feel about working with Scrum?

– How will we validate the success of this team and the product they’re going to build?

– Is the Product Owner empowered to make important decisions?

– What do you think will be this Scrum Master’s biggest challenge?

– What support from a Scrum Master is most important to you?

– Does each dev team currently have a Scrum Master and Product Owner?

– What is the Product Owner’s take on agile product development and planning?

– How would you rate the organization’s Agile or Scrum maturity on a scale of 1-5? Why did you give that score?

– What do you see as the biggest opportunities for your Scrum team(s) to improve?

– How big are your dev teams? How many developers and testers are on your dev teams?

– How many teams does each Scrum Master manage in your organization?

– What Is the Leadership Style of your organisation ?

– How long have the team(s) been working with Scrum?

– Is the team cross-functional enough to deliver a valuable increment?

– What does success look like in this position, and how do you measure it?

– How does the company practice its values and the values of Scrum?

– What’s the attitude of the company’s leadership towards Agile and Scrum

– What’s the last thing your team disagreed on, and how did you resolve that disagreement?

The answers to these questions will give an overview of what to expect upon joining a startup company. A good scrum master should be able to identify the situations where a startup needs a project manager instead of a scrum master and not take on unnecessary responsibilities.

 Do you have any go-to questions you always like to ask?

Please feel free to share your story and any lessons you learned, experienced, you came across in your life in the comments below. If you enjoyed this or any other posts, I’d be honored if you’d share them with your family, friends, and followers!

If you wish to follow my journey outside of my writing, you can find me on LinkedIn and Facebook

 
 

Tags: , , , , , ,

Top Books to guide your Scrum Master journey


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me. 

Scrum is the most popular Agile framework. It is simple to adopt, but implementing it with success could prove to be challenging. The only way to overcome the “glitches” that may appear in the process is to understand its fundamentals and discover practical techniques that will help you get past any obstacles.

Anyone who has ever taken on a role of Scrum Master will tell you it is much harder than it looks. The responsibilities are massive, the traps are common and the organisations are unwilling to change. Agile Project Management requires a deep level of skill and understanding. It doesn’t lend itself to a step-by-step manual that you might find in a book.

That is why I have made a selection of top 20 Scrum Master books you should read if you are thinking of becoming a Scrum Master, or even if you are already one. I strongly believe below list of books are a game changer for the pre-game, game and post-game phases of the Scrum methodology.

  1. The Scrum Guide by Ken Schwaber and Jeff Sutherland
  2. Scrum: The Ultimate Beginner’s Guide To Learn And Master Scrum Agile Framework by Hein Smith
  3. The Great ScrumMaster: ScrumMasterWay by Zuzana Šochová
  4. Agile Retrospectives: Making Good Teams Great by Esther Derby
  5. Scrum: The Art of Doing Twice the Work in Half the Time by Jeff Sutherland
  6. Essential Scrum: A Practical Guide to the Most Popular Agile Process by Kenneth S. Rubin
  7. Scrum: A Pocket Guide by Gunther Verheyen
  8. Scrum Mastery: From Good To Great Servant-Leadership by Geoff Watts
  9. Learning Agile: Understanding Scrum, XP, Lean, and Kanban by Andrew Stellman & Jennifer Greene
  10. A Scrum Book: The Spirit of the Game by Jeff Sutherland
  11. Fixing Your Scrum by Ryan Ripley and Todd Miller
  12. Coaching Agile Teams: A Companion for ScrumMasters, Agile Coaches, and Project Managers in Transition by Lyssa Adkins
  13. Agile Software Development with SCRUM, by Ken Schwaber and Mike Beedle.
  14. The Scrum Field Guide: Practical Advice For Your First year by Mitch Lacey
  15. Managing Agile Projects by Sanjiv Augustine.
  16. The Scrum Master’s Path 2 books in 1. A Guide for Servant Leaders Navigating Growth and Change Using SCRUM and the Agile Project Management
  17. Fun In Scrum — A Visual Approach Towards Mastering Scrum Fundamentals by Souvik Seal
  18. Zombie Scrum Survival Guide by Christiaan Verwijs, Johannes Schartau, Barry Overeem
  19. Agile Estimating and Planning by Mike Cohn
  20. The Elements of Scrum by Chris Sims & Hillary Louise Johnson

You can find few more suggestions here : https://agileforgrowth.com/scrum-master-books/

Learning is a lifelong process. Improving oneself is never a bad thing. Scrum helps us to adapt to changes and dynamics of the market. The same can be said for Scrum Masters. If you don’t work on yourself and seek to improve your knowledge, skills, and experiences, you’ll be stuck.

Hope this list of books help you select the best fit book for your agile and scrum learning. Do remember to comment down below your favourite book on the topic that might help other readers. If you have already read any of the above books do not forget to comment down your review and learnings from the book. 

Any book suggestions, drop it in the comments!

Please feel free to share your story and any lessons you learned, experienced, you came across in your life in the comments below. If you enjoyed this or any other posts, I’d be honored if you’d share them with your family, friends, and followers!

If you wish to follow my journey outside of my writing, you can find me on LinkedIn and Facebook

 
Leave a comment

Posted by on July 10, 2022 in Technical, Work Place

 

Tags: , , , , , , ,

Master the Scrum Master skills


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me. 

The real-world challenge most organizations face today with the role of the Scrum Masters is – Developing Scrum Masters that have the required competencies and skills to perform the job well. Most Scrum Masters underperform due to lack of full range skills.

A Scrum Master is the person who champions a project and meets the expectations of the client. Also, he is responsible to build a team of highly innovative members. To define the Scrum Master key skills is somewhat difficult because he performs the role of management as well as the team leader. The major role of the Scrum Master is not telling his team members what they should do but to support and motivate them.

A Scrum Master who is able to help build high performing and innovative Scrum teams, and coach people can be a valuable asset for the organization. Great Scrum Masters will definitely contribute towards improving the business agility and helping organisational system as a whole.

Scrum Masters play a unique role. They are go-betweens that work with both development teams and the Product Owner to ensure the best quality work. While they have an exhaustive list of responsibilities, they are not project managers. Since Scrum teams are, by definition, “self-managed”, Scrum Masters hold a place of leadership, yet have no more authority than any other person on the team. However, it is the Scrum Master’s responsibility to make sure that everyone on the team is following the correct protocol. They are essentially the coach, the referee, and a team member all rolled into one.

From sprint planning to servant leadership, Scrum Masters help Agile developers, product owners and other team members perform at their best. A successful Scrum Master is expected to motivate the team members and increase their potential. For this, Scrum Master requires some skills that he should develop in himself. These are the skills that will help him in the career development. To become a successful Scrum Master and make a transition to the Scrum Master roles effectively, one will need below-mentioned Scrum Master Skills:

Agile and software development knowledge
Learning to build Scrum knowledge
Good at Execution of Scrum
Remove Barriers and Keep the Team on Track
Technical Familiarity
Share Experiences and Encourages Collaboration
Project management tools expertise
Introducing Engineering Practices
Leading and Facilitating Change:
Communication and Good Listening Power
Teaching and Coaching Abilities
Conflict Facilitation
Decision Making & Problem Solving skills
Empathy & Shielding the team when needed
Having Agile Mindset, Growth Mindset

I need your opinion to add 3 top Scrum Master skills that’ll be valuable in 2022.

A Scrum Master who learns, leads and listens, and applies their knowledge of processes and associated tools where needed, is in the right position to make the team run efficiently. These Scrum Master skills support rapid, predictable delivery at every iteration. And that kind of software delivery is ultimately why the team chose Scrum.

Finding the right Scrum Master can make a world of difference in the success of a development project. Both hard and soft skills come into play here. Scrum Masters must be able to strike a healthy balance in order to be a strong leader.

I think irrespective of the technological advancements there will still be a need of skilled Scrum Masters. An effective Scrum Master can help Scrum Team deliver results that are an order of magnitude better than mediocre Scrum Teams. Though the responsibilities of the Scrum Master may adjust with the time.

The conclusion is that the Scrum Master removes impediments, guides the team members in Scrum practices, and protects them against the outer interferences. Thus, the Scrum Master ensures the sustainability of a project by taking appropriate actions. In addition, Scrum Master organizes Scrum events whenever required and plans Scrum implementation. With the above-mentioned scrum master skills, scrum master improves the skills of his team members, which, in turn, increases the productivity.

So, here you have the scrum master skills to become a successful Scrum Master. You don’t have to be a full-stack developer to become a Scrum Master, but you should be creative and quick with a whiteboard marker.

References : https://agileforgrowth.com/blog, https://www.whizlabs.com/blog

Please feel free to share your story and any lessons you learned, experienced, you came across in your life in the comments below. If you enjoyed this or any other posts, I’d be honored if you’d share them with your family, friends, and followers!

If you wish to follow my journey outside of my writing, you can find me on LinkedIn and Facebook

 
Leave a comment

Posted by on June 29, 2022 in Technical, Work Place

 

Tags: , , , , , ,

Definition of Ready is when the team says: ‘Ahh, we got it ‘


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

By seeing the title Many Agile Practitioners will already starting bombarding with comments saying that the term “Definition of Ready” isn’t described in the Scrum Guide and same as user stories and the Acceptance Criteria embedded in it. Perhaps, you may consider the Definition of Ready is an integral part of the backlog refinement activity, instead of using the Definition of Ready as a sequential and phase-gate checklist. Backlog refinement is an ongoing process, therefore it’s not restricted to an event but considered an activity.

You would have witnessed multiple situations where despite the team’s best efforts, diligence and meeting quality goals (Definition of Done) the customer is disappointed with the results of your teams work. Do you know the Reason ? It is very likely that the refinement process din’t work as well as it should.

In this Agile world, from time to time, end users will have ideas or concepts for a new feature. The concept will be expressed as one or more feature items, and get added to a product backlog by the product owner. The team, working together, will figure out how to turn this concept, expressed as one or more epics and subsequently refined them into smaller and clearer user stories as a real product feature to be included in the next sprint for implementation.

The product owner could work together with the team to define an artifact called “Definition of Ready (DoR) ” for ensuring that items at the top of the backlog are ready to be moved into a sprint so that the development team can confidently commit and complete them by the end of a sprint.

As you know the quality of PBIs has a direct impact on the productivity of the development team – positively as well as negatively. The DoR is kind of the “DoD for the Product Owner”. It helps the PO to know what to do to a user story before he/she can hand it to the Development Team in the next sprint planning meeting.

“If the development team does not have a clear understanding of the Product Backlog Items (PBI), the development effort and time tend to increase significantly, which in turn causes the Sprint to miss its Sprint Goal or not deliver what stakeholders expect.

The Definition of Ready is an important part of the agreements that a Scrum Team develops at the beginning of the work. Different teams will have different Dentition of Ready, and some require less. i.e., some teams just describe the value to the user, prioritize, and write how to demo. Other estimates and communication are in the sprint planning meeting and etc.  

The concept of  Definition of Ready (DoR)  is not quite as common as the Definition of Done (DoD). The DoR defines when a product backlog item (e.g. user story) has been worked out to the extent that it “may” be included in the sprint. The DoR is intended to ensure that product backlog items are sufficiently prepared for the sprint and that the workflow does not have to be constantly interrupted during development because things are unclear that the team cannot clarify itself.

How is the Definition of Ready used? 

As part of the Product Backlog Refinements, the Scrum Team checks whether the next PBIs are ready. If not, it works out the details.

 The Definition of Ready helps the development team understand what to deliver as a result. Based on this understanding, the development team answers the question of whether they can deliver the result. A Product Backlog is “Ready” when it has enough Product Backlog Items at the top that meet these criteria.

What does a definition of ready look like? The Scrum Guide does not specify anything here. Bill Wake was one of the first to define criteria as a checklist. The INVEST matrix.

  • Independent and immediately actionably – Product backlog items are independent of each other in the sprint so that they can be reprioritized and better estimated. In addition, unnecessary planning effort for their implementation is avoided. All prerequisites are resolved before the start of the sprint. The implementers give the feedback that they can start.
  • Negotiable – PBIs are negotiable so that the details can be discussed and better or cheaper options can be identified.
  • Valuable – PBIs bring added value to the customer so that only requirements that add value are implemented and only what is needed is implemented. Backlog items that are not finished provide no value.
  • Estimable – PBIs are estimable. In this way, it is recognized whether the implementers understand the backlog item professionally and technically.
  • Small – PBIs are the right size to be implemented in one iteration.
  • Testable – PBIs are testable by the customer. You have acceptance criteria.

Definition of Ready for a user story:

definition of ready deals with the user story, wherein the user story is ready to be taken into a sprint. It doesn’t need to be “100 % defined” covering all the acceptance criteria. However, it should be “ready enough” only when the team is confident that they can successfully deliver the user story. In other words, “if something is good to begin”.

  • Well-defined User story 
  • User story acceptance criteria defined
  • User story sized by the delivery team
  • Scrum team accepts user experience artifacts
  • Performance criteria identified
  • The Person who will accept the user story is identified
  • A Team is able to ‘demo’ the user story.

Definition of Ready for a sprint:

  • The Sprint Backlog is prioritized
  • The Spring Backlog contains all defects, User Stories and other work that the team is committing to
  • No hidden work
  • All team members have calculated their capacity for the Sprint
  • Fulltime on project = X hours per day
  • All User Stories meet Definition of Ready

Advantages of Definition of Ready:

  • Measure a backlog item’s “ready” state.
  • Help the team identify when the product owner or another team member becomes overwhelmed.
  • Keep the team accountable to each other.
  • Reduce pressure on the team to commit to estimates before stories are “Ready”.
  • Reduce “requirements churn” in development.
  • Definition of Ready helps in minimizing the Rework on a user story.

Sample Definition of Ready (DoR)

  • PO and Dev Team need to have talked about the story at least once.
  • User Story is clear.
  • User Story is testable.
  • User Story is feasible.
  • User Story defined.
  • User Story Acceptance Criteria defined.
  • User Story dependencies identified.
  • The story must be broken down enough to fit in a single sprint.
  • User Story sized by Development Team.
  • Scrum Team accepts User Experience artifacts.
  • Performance criteria identified, where appropriate.
  • Scalability criteria identified, where appropriate.
  • Security criteria identified, where appropriate.
  • A person who will accept the User Story is identified.
  • Team has a good idea of what it will mean to Demo the User Story.

The Product Owners can use Definition of Ready as a guide when preparing for user stories for upcoming sprints. For a team, it is used as a checklist to make sure that there is an increased chance of success in delivering the completed user story, and that there are enough thoughts involved in building the user story before they start to deliver it. So finally, Definition of Ready brings back the focus to backlog grooming meetings and lookahead planning activities. 

Definition of Ready helps in minimising the Rework on a user story.

References: Scrum Events de, Knowledgehut, It-AGile de, Visual-Paradigm, techagilist & AgileIze

Please feel free to share your story and any lessons you learned, experienced, you came across in your life in the comments below. If you enjoyed this or any other posts, I’d be honored if you’d share them with your family, friends, and followers!

If you wish to follow my journey outside of my writing, you can find me on LinkedIn and Facebook

 
Leave a comment

Posted by on May 27, 2022 in Technical

 

Tags: , , , , ,

Retrospective ideas to try with your team


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me. 

Retrospectives are popular in the team-working world of the Lean & Agile community. The purpose of the sprint retrospective is to find areas for improvement. The meeting sets out to identify potential pitfalls and past mistakes while finding ways to avoid them in the future. It’s also an opportunity to reflect on what was successful and therefore should continue.

Retrospectives are used frequently to give teams the opportunity to pause and reflect on how things have been going and then, based on those reflections, identify the improvements they want to make. Conducting Retrospectives frequently and regularly supports a team to continuously improve their performance — but what’s the best way to go about it?

Whether you are an experienced scrum team or brand new to agile retrospectives, switching up your techniques is a great way to ensure your team never has to sit through another boring retrospective. However, with so many retrospective techniques out there to try, picking the one that best fits the unique needs of your team can be hard. 

Here are top retrospective ideas that you can add to your Scrum toolkit.

Liked, learned, lacked, longed for (4 L’s) If you are part of a team that thinks the only failure is not learning, then this is the technique for you. 4L´s is the perfect retro technique for teams at the end of a project or between projects. This technique has the team explore what happened in a current sprint or project but also what they hope will happen in future sprints. For organizations that want to remain agile and consistently evaluate processes and find a long-term solution to a systemic issue, 4Ls is an easy way to collaborate and strive for continuous improvement. 

Sailboat  sailboat retrospective will help any team struggling with staying aligned from sprint to sprint. A ship sailing to the island paradise sets the stage for valuable open discussions at the beginning or middle of a project. Sailboat discussions improve team alignment and provide valuable feedback on project goals, issues, and assets. Get everyone on board! 

Speedcar Speed Car is a simple activity for helping the team identify things that make them move faster, and things that slow them down. This is a common retrospective activity for data gathering. It is an alternative to keep the team engaged while slightly changing the format.

Starfish (smalllarge) This agile technique dives deeper into team habits by examining what to start doing, stop doing, keep doing, do more of, and do less of. Use this technique when your team is in need of a systems overhaul or needs more innovative ideas of workflow. Starfish works best for long-standing teams or projects in the process where teams are a bit more familiar with each other. 

Stop, start, continue Start, Stop, Continue is one of the most popular retrospective techniques, and for good reason. Whether you are using the traditional Scrum sprint model or just starting to implement retrospective Start Stop Continue is a great way to examine the systems and habits of the team, as well as reprioritize team goals. 

Mad, sad, glad When your team is feeling burnt out or emotionally drained, or even if something is just a little off with morale, a Mad, Sad, Glad retrospective can give you the insights you need. Particularly effective in the middle of larger projects this retrospective template gives managers insights into what team members need to remain happy in their workplace. A simple column-based retrospective, this agile technique will have teams focusing less on specific goals and on the emotions of the team. 

Token of appreciation This is a great activity for acknowledgement, increasing the team morale and putting the team on a good mood. A tasty advice is to use a box of chocolates as a token of appreciation. Participants pass the box around and give a chocolate as they appreciate their colleagues. It works both as an opening and as a closing activity for a meeting.

Drop-add-keep-improve  DAKI technique is a way for Scrum team members to think about what they should stop (or drop) doing, what they should start (or add) to their processes, what they should continue doing, and what they should keep.  Continue often refers to processes, and keep frequently refers to tools.  Remember to ask team members to consider  individuals, interactions, processes, tools, and their Definition of Done when participating in the Retrospective. 

One word retrospective The one-word retrospective technique is often considered as a checking exercise, to get the team members ready for the retrospective. But if the team has major problems, then this one-word exercise check-in and the discussion that follows is the retrospective! It is an effective way for the team to discuss what is hampering them, and agree on how to deal with it and get it out of the way. And that is what retrospectives are all about!

KALM (Keep, add, more, less) KALM is a retrospective activity that fosters the conversation about current activities and their perceived value. It helps team members understand each other’s perceived value off such practices. This is a common retrospective activity for data gathering. It is an alternative to keep the team engaged while slightly changing the format.

Team Happiness Radar Organizations around the world are beginning to recognize the importance of mental health and happiness on overall team productivity and lasting success. Running regular Team Happiness Radars can help you recognize the team’s morale and recognize points of improvement. When done in combination with a column technique, this retrospective can help your team create lasting culture changes. 

Lean coffee style Don’t have a specific goal or topic for the day’s retrospective? You need Lean Coffee, another agile favorite, is a basic template to use when you don’t know what to do, but still want an effective retrospective. The Lean Coffee agile retrospective has teams examining the status of the team’s assignments and looking into where issues are developing and what hold-ups are preventing the team’s momentum forward. By discussing common topics of concern the team can create relevant action items for improvement on a range of topics. You never know information can spill out in a Lean Coffee retrospective session.

Below are the list of references and also If you are interested to try more Retrospective ways, please find the below links.

Retrospective Techniques

100+ Sprint Retrospectives Ideas

FunRetrospectives

Remote and Distributed Retrospective Meetings

14 Types of Ideas for Sprint Retrospective Formats

Conclusion

Regardless of whether you follow an agile framework for project management or not, a retrospective meeting acts as a fantastic opportunity to pause and reflect. Your team will gain a comprehensive view of every increment, and quickly identify areas for continuous improvement. The quality of work delivered to the business will be stronger, productivity will increase, and so will the happiness of your team.

The Sprint Retrospective is extremely useful when used correctly.  After every Sprint, the team identifies at least one improvement idea to focus on during the next Sprint.  Remember, even minor improvements can result in an astonishing amount of change over time – so don’t neglect this valuable process!

Need more retrospective ideas? Keep following my posts on Agile.

Please feel free to share your story and any lessons you learned, experienced, you came across in your life in the comments below. If you enjoyed this or any other posts, I’d be honored if you’d share them with your family, friends, and followers!

If you wish to follow my journey outside of my writing, you can find me on LinkedIn and Facebook

 
 

Tags: , , , , , , ,

Are the 3 daily standup questions actually effective? 


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

I have been an Agile coach for more than nine years and have worked in various Indian, American & European companies that develop software locally and internationally using Scrum. The clients of these companies have adopted Scrum and participate in the Daily Scrum meeting, assuming the role of Product Owner.

The purpose of the Daily Scrum is to inspect progress toward the Sprint Goal and adapt the Sprint Backlog as necessary, adjusting the upcoming planned work. It’s not an opportunity to get a report on where the team is up to. It’s not an opportunity to ensure everyone is ‘busy’. Unfortunately, the three questions just tend to reinforce this perspective.

  1. What did you do yesterday?
  2. What will you do today?
  3. What (if anything) is blocking your progress?

The purpose of the 3 daily scrum questions is relatively simple and obvious. These questions are asked routinely first thing in the morning, which allows teams to assess: (1) how they performed in the last 24 hours and (2) what the next 24 hours look like.

This article tells the story of our experience implementing a shift in approach during the Daily Scrum meeting. We went from a typical approach centered on each individual to one centered on each story of the Sprint Backlog.

The 2020 version of the Scrum Guide dropped the classic “three questions” of the Daily Scrum. Yet many teams stick with the practice, even when it doesn’t produce the collaboration that is the hallmark of a valuable Daily Scrum. When a Scrum Team I worked with said that their Daily Scrum was lackluster and unproductive, I challenged them to design a better one. The new pattern we created shifted the focus from individual action to team collaboration toward the Sprint Goal.

Smarter questions for the Daily Scrum

Scrum isn’t prescriptive about the way Developers run their Daily Scrum. Importantly, going ‘around the room’ and ‘standing up’ isn’t required. Some useful questions to raise at the Daily Scrum include:

Questions about scope

  • Do we need to change some of the work we have in the Sprint so we achieve the Sprint Goal?
  • Do we need to change some of the tasks we decided need doing?
  • Do some of the backlog items we chose need to be put aside because we now know they don’t help us achieve the Sprint Goal?
  • Do we need to negotiate scope with the Product Owner to help us achieve the Sprint Goal?

Questions about collaboration

  • Does anyone need their work peer reviewed yet?
  • Does anyone need help today?
  • What pairing activities will we do today?
  • Whose turn is it to pair with the new team member?

Questions about transparency

  • Have we updated the board to show our actual progress?
  • Is the Sprint Backlog up to date?
  • Is the status of work up to date?

Questions about metrics

  • How are we tracking toward the Sprint Goal? Are we where we thought we’d be?
  • What do our burndown metrics say about our progress?
  • What does our cycle time metrics say about whether we’ll complete the work by the end of the Sprint?
  • Questions about Done
  • What work is in-progress that we can work on today and get to Done?

Questions about learning 

  • Did anyone learn anything yesterday that means our work for today needs to change?

If the traditional “three questions” Daily Scrum doesn’t provide value for your team, try something new. Create a collaborative discussion focused on making each day a valuable step toward the Sprint Goal.

If you came across similar situations , please share your experience in the comments section.

Please feel free to share your story and any lessons you learned, experienced, you came across in your life in the comments below. If you enjoyed this or any other posts, I’d be honored if you’d share them with your family, friends, and followers!

If you wish to follow my journey outside of my writing, you can find me on LinkedIn and Facebook

 
Leave a comment

Posted by on May 3, 2022 in Technical

 

Tags: , , , , , , ,

What to do you do when a sprint is cancelled?


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

During my stint as a Scrum Master, I have experienced multiple cancelled Sprints. I have always tried to use these as learning opportunities.

Though Cancelling the sprint isn’t a frequent situation. In Scrum framework it’s at the discretion of the Product Owner(PO) to cancel the sprint if PO realize that the sprint goal and plan isn’t adding value to the product. In Scrum, only the Product Owner has the authority to cancel the Sprint, although he or she may do so under influence from the stakeholders, the Development Team, or the Scrum Master.

“Sprint cancellations are often traumatic to the Scrum Team, and are very uncommon.” — The Scrum Guide.

Sprint cancellations, might occur if the company changes direction or if market or technology conditions change. In general, a Sprint should be cancelled if it no longer makes sense given the circumstances. But, due to the short duration of Sprints, cancellation rarely makes sense. When a Sprint is cancelled, product backlog is updated with latest priorities any completed and “Done” Product Backlog items are reviewed. If part of the work is potentially releasable, the Product Owner typically accepts it. All incomplete Product Backlog Items are re-estimated and put back on the Product Backlog. The work done on them depreciates quickly and must be frequently re-estimated.

A Sprint may be cancelled in the event that an organisation has to adapt to an abrupt situation. In a way it enhances agility. It generally occurs when there is something more valuable or urgent that requires the team’s commitment and focus. A Sprint doesn’t get cancelled if the Scrum Team discovers it cannot meet it. Calling for cancellations often, reveals however that focus and commitment is lacking. Perhaps even the Sprint timebox is too long for the team to timely adapt to the changing conditions in the market. It could even reveal a lack of vision, or that the Product Owner’s vision for a Sprint isn’t respected by his or hers management.

Valid Reasons the PO Might Cancel A Sprint:

  1. A better technical solution is found that makes the current Sprint’s activity throw-away work.
  2. A major technology change occurs.
  3. Fundamental and urgent external changes invalidate the Sprint Goal or the Product Goal
  4. Company’s vision is changed
  5. Product strategy is changed
  6. Company’s business strategy is changed
  7. Market conditions are changed
  8. Customer needs are changed
  9. Product owner realize the value of the identified goal is obsolete
  10. Another poor reason to cancel a Sprint is when a Sprint Goal is already achieved early and there is still time remaining.

When Product Owner cancel Sprint, all the work done until that moment is evaluated and remaining work items are pushed to product backlog for further analysis. The time, efforts and at times work done might be considered waste and Product Owner takes the accountability of any such business impacts. 

When a sprint is cancelled, It is biggest challenge for Scrum Master to handle to situation. When a sprint is cancelled team morale is likely to drop off significantly. Team members are likely to have a negative reaction to the PO and the product. Its where Scrum Master communication skills comes to play.

Most teams are unlikely to be able to start a new sprint immediately. Instead opting to maintain a sprint heartbeat consistent with what they are used to.

If you came across similar situations , please share your experience in the comments section.

Please feel free to share your story and any lessons you learned, experienced, you came across in your life in the comments below. If you enjoyed this or any other posts, I’d be honored if you’d share them with your family, friends, and followers!

If you wish to follow my journey outside of my writing, you can find me on LinkedIn and Facebook

 
Leave a comment

Posted by on April 20, 2022 in Technical, Work Place

 

Tags: , , , , ,

Pair Testing User Guide


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

Pair programming is a familiar practice in extreme programming. Therefore, Pair programming considered as a great approach for programming software. Like wise pair testing is an alike process for testing software.

When you think of software testing, you probably think of an individual sitting at their computer performing manual tests or maybe writing up a Selenium script. In this scenario, they are also the sole person providing feedback on the test case and recording any notes or documentation.

However, pair testing is a little different, and it’s gaining popularity among the testing community. Pair testing, often referred to as Buddy testing, is a software testing technique where two people from the project team test the same feature in parallel under the same conditions while exchanging ideas. It generates more ideas which result in better testing of the application under test.Contrary to how it appears, pair testing does speed up test assignments while delivering more quality results.

One does the testing and the other analyzes or reviews the testing. This can be done between one tester and developer or business analyst or between two testers with both participants taking turns at driving the keyboard

In this a single task is divided between two individuals who exchange ideas, discuss test scenarios, take notes, and generally collaborate to test software functionality. It is a form of exploratory testing.

Generally, the pair in pair tests comprise a developer and a tester. However, in some instances, a customer, business analyst, solution designer, or technical writer can also form part of the pair if the situation calls for it.

This guide serves to introduce beginners in software testing to the concept, and where and when they can adopt the technique to maximize its benefits.

How to Conduct Pair Testing

Pair testing really isn’t that different from other methods of software testing, but there are a few things you may want to do in preparation.

Following these steps will ensure that it’ll be a productive use of both your time.

  • Identify scenarios to be tested: Identify the test case you want to work on and why you think pair testing is a solution. Come up with a few specific cases you want to be included in the pair testing. I suggest to write down a simple checklist of ideas.
  • Determine an objective from your pair testing session. Do you want to find bugs or suggest new features? Maybe you want to define tests that should be automated — maybe all of the above. Understand who you will be bringing your results to if it’s different than your normal report.
  • Establish Goals: Even though pair testing is a form of ad-hoc testing, testers shouldn’t be completely unstructured when approaching it. At the very least, formulate a list of software areas to cover. For example, let’s say a pair is testing a new feature with multiple components. Testers should come prepared with a list of components to cover, expected results for each, and what the test intends to accomplish.
  • Decide on Roles: Before starting, decide which of the pair will operate the machine (the driver) and who will direct the session (the navigator). The navigator takes the driver through the steps of the tests, suggests scenarios, takes notes, and swaps ideas. However, both parties should equally contribute ideas, suggestions, and concepts to enrich the test cases.
  • Create a timeline:  The duo should have access to a quiet room where they can talk (and not disturb anyone else) as well as the required machine for one or two hours. That gives yourselves enough room to explore and meet these objectives while staying focused on the tasks at hand.
  • Partner Up the Right People: Find two people comfortable with collaborating. The two people should have a sense of each other’s working styles, be able to communicate adequately, and see eye-to-eye on project goals.
  • Log Bugs and Take Notes: Once the session ends, log bugs, if any. Additionally, make detailed bug reports and note any unexpected discrepancies and anomalies that might have popped up.

Characteristics of Pair Testing:

  • Testing is an open-ended defect hunting process. Pair Testing will generate more effective test cases quickly and cheaply.
  • Forming testers in pairs will enable test managers to gather performance of the testers within the group.
  • Pair Testing is the best approach for mentoring and training the newbies in the team.
  • Testing in pairs generates a positive energy within the team with increased coordination.
  • Pair the domain expert with a novice tester to develop domain knowledge within the team.

When to Conduct Pair Testing

There are a few situations in which pair testing comes in handy:

  • Short pair tests between team members to quickly validate software components and further collaboration.
  • As a learning opportunity, pair tests are ideal. Assigning a new member or junior tester with a senior tester can help the former quickly come up to speed on the development lifecycle.
  • Pair tests are also helpful in supporting collaboration among different roles and expand the purview of QA operations. Testers can pair up with designers to get a sense of the software’s visual significance and design relevant test scenarios. Similarly, testers can pair with business analysts to ascertain how a customer-facing feature can be enhanced to boost revenue streams and brand credibility.
  • When bugs are identified, pair tests are perfect for bringing objectivity into the debugging process. With the second set of (preferably fresh) eyes on the job, it became much less likely for incorrect code to go unnoticed.

Benefits of Pair Testing

  • Breaks down siloes for better collaboration: Since pair testing requires people from the same and different teams to collaborate. Hands-on knowledge sharing and test activities break the ice between teams or individuals, invites new perspectives into QA, and keeps everyone appraised of overall project progress. It also fosters better inter-team relationships.
  • High creativity: Working in a pair forces each person to explain their ideas and react to the ideas of others. The simple process of phrasing ideas seems to bring them into better focus and naturally triggers more ideas. 
  • Easy Training Technique : A strong pairing is one where people are grouped so that their strengths will mutually complement their weaknesses. This presents an opportunity for people to learn from one another. Pairing is a good way for novices to keep learning by testing with others. It’s also useful for experienced testers when they are new to a domain to quickly pick up business knowledge.
  • High productivity: Each person must stay focused on the task or risk letting their partner down.  Pairing allows the person at the keyboard to follow their train of thought without pausing to take notes or locate reference information. It encourages dogged pursuit of insights. Two people working together limits the willingness of others to interrupt them.
  • Provides greater accuracy: A tester may miss out on a bug if they know the feature too well from its initial development phases. Technical personnel can lose sight of how actual end-users may approach the software.In pair testing, testers can join forces with someone less technically oriented (business analysts, product owners) to not miss out on the obvious errors. A fresh pair of eyes can contrast their “curse of knowledge” and help keep them connected to end-users’ concerns.Even if they pair up with a tester from another team, valuable feedback can come from the person not acquainted with the software. Basically, pair testing provides QAs with a pair of fresh eyes to examine software with, which tends to identify far more bugs than one tester working alone.
  • Promotes Knowledge Sharing: This might not be a tangible benefit, but its importance should not be downplayed. With experts from different teams/roles working together, both individuals will better understand how diverse software development operations work.Naturally, this fosters easier communication and helps individuals gain a more comprehensive understanding of team dynamics. This results in people who work better together (always a good thing) in the long run.
  • Creates Better Bug Reports: With two people examining software for bugs, bug reports tend to be more detailed, which helps developers address issues faster. Additionally, with insights from members from different teams, bugs are analyzed from not just technical perspectives but from customer-facing and financially relevant POVs.

Pair testing is one kind of what Malcolm Isaacs calls “social software testing”. When following an agile methodology and shifting left, it’s crucial for testers, developers, product owners, and other participants in the SDLC to come together for collaboration. Pair testing is just way one to do this.

While it may not be as deeply technical as, say, test automation might be, there are clearly many advantages to having two team members get together to discuss the quality of the application under test — what’s working, what’s not, and what needs to change?

Finally, it is a blend of team work and testing but it has many advantages like sharing knowledge about testing and SUT, training new members, making barrier between members and above that it is fun. we should use pair testing wisely.

Better software. Together.

Do you know of any other resources that might be useful to add to this list?

REFERENCES

  1. Pair Testing
  2. Exploratory Testing in Pairs Cem Kaner & James Bach
  3. Boost acceptance testing with pair testing Mark de Bono
  4. Testing Dojos
  5. The Power of Pairing Mike Talks
  6. Pairing – seeing the flipside of the coin Ben Kelly
  7. Pair Testing: How I bought developers into the test lab Jonathan Kohl
  8. The Moment Marlena Compton
  9. Pair Testing or something like it Matt Heusser
  10. Communication avenues to pairing opportunities Sean Cresswell
  11. Pair Testing QA Hipster
  12. Pair Testing: A Beginner’s Guide Shreya Bose
  13. Pair testing – A best practice to enhance accessibility test coverage Sunil Dangwal

Please feel free to share your story and any lessons you learned, experienced, you came across in your life in the comments below. If you enjoyed this or any other posts, I’d be honored if you’d share them with your family, friends, and followers!

If you wish to follow my journey outside of my writing, you can find me on LinkedIn and Facebook

 
Leave a comment

Posted by on February 14, 2022 in Technical

 

Tags: , , , , , ,

Misner’s Corollary to Murphy’s Law


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

Nearly all of us have heard the term “unintended consequences,” but we may not be aware of how to avoid them. In February 2018, in the publication The Library of Economics and Liberty, Robert Norton wrote, “The law of unintended consequences, often cited but rarely defined, is that actions of people — and especially of government — always have effects that are unanticipated or unintended.”

When we try to make a single change within a complex system, we often end up causing unintended consequences. These can be positive or negative. If we don’t anticipate unintended consequences, we can’t expect to achieve our desired outcomes.

When the unintended consequence of a decision is favorable, there is never an issue. The favorable outcome is considered a bonus. When the unintended consequence is adverse, depending on its impact, the decision-making process is questioned, as is the leader who made the decision.

Sometimes unintended consequences are catastrophic, sometimes beneficial. Occasionally their impacts are imperceptible, at other times colossal. Large events frequently have a number of unintended consequences, but even small events can trigger them. There are numerous instances of purposeful deeds completely backfiring, causing the exact opposite of what was intended.

Many entrepreneurs and executives face unexpected negative consequences after experiencing initial success, such as anxiety over being able to maintain their “winning streak”, fearing that they are being set up to fail, and experiencing the envy others feel towards their accomplishments.

If you ask yourself “What could go wrong with this?” before you launch a new business idea, you can head off some potential problems and increase the chances of a successful launch. But you also need to ask yourself about the possible unintended consequences of success. What if you fix one problem only to create several others?

And you know, the bigger the challenge, the more important it is to check and double-check, to look at what can go wrong and look at what can’t go wrong. And think those through so that you can be a little bit more prepared for a transition that you may have in your own business

For the first time in my life, I learned about “Murphy’s Law” in graduate school. It basically says that “what can go wrong, will go wrong.” Although this law feels very pessimistic, there is value to it. It gives a framework for people to look for the flaws in their thinking. When one does that effectively, it’s easier to address potential issues before they arise.

This leads me to “Misner’s Corollary: Sometimes, what can’t go wrong, will go wrong!” Here’s what I mean by that. When I have introduced something new into my business, I have often thought about what could go wrong with this new approach or idea. If you do that in advance, you truly help to head off challenges. However, what I’ve learned over the years is that you also need to think of what “can’t go wrong.”

I know this sounds crazy and even more pessimistic however if you go about this in a thought-provoking manner — you can truly think through potential challenges before you proceed. In particular, you want to consider, what I call, the “unintended consequences of a seemingly good idea.” This tends to happen when you have a solution to a problem and almost everyone agrees that the solution will definitely help with the problem. You think about how you will roll it out and avoid those things that could go wrong with that rollout and its implementation. You then roll out the idea and all goes well. What we tend to forget, however, is the unintended consequences of that new idea. In other words, the roll-out goes great but then you create a whole new set of problems that never existed and were never considered when dealing with the original problem.

The lesson learnt here — is that when you have a good idea, think about what can go wrong with that idea. If at all possible, test your ideas in advance on a small group of actual customers. They will help point out the things you didn’t think were possible or didn’t think were problems. Then, spend time thinking about what “can’t go wrong.” This means you need to really think outside the box to consider the potential unintended consequences. Most importantly — test the idea in some limited way to identify the things you thought couldn’t go wrong. Believe me when I say, you still might discover unintended consequences. The experimental testing phase is critical to avoid Misner’s Corollary.

Most unintended consequences are just unanticipated consequences. And in the world of consequences intentions often don’t matter.  Intentions, after all, only apply to positive anticipated consequences. Only in rare circumstances would someone intend to cause negative consequences.

So when we make decisions we must ask what the consequences be? This is where having a toolbox of mental models becomes helpful.

What unintended consequences have you experienced from successful business initiatives? Share your experiences and your solutions in the comments.

Source: @BNIpodcast

Please feel free to share your story and any lessons you learned, you experienced, you came across in your life in the comments below. If you enjoyed this, or any other other posts, I’d be honoured  if you’d share it with your family, friends and followers!

If you wish to follow my journey outside of my writing, you can find me on Facebook (https://www.facebook.com/MunnaPrawin) Instagram(MunnaPrawin) and Twitter(@munnaprawin1)

 
Leave a comment

Posted by on August 25, 2021 in Technical

 

Tags: , , , , ,

Kanban is awesome but it has to be managed well


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

Delivering work in a quick and efficient way could be a challenge. The Kanban Method suggests an approach of managing the flow of work with an emphasis on continuous improvement without overburdening the development team that focuses on productivity and efficiency.

Kanban was initially invented as a way of managing Just in Time (JIT) manufacturing processes. The next chapter in Kanban’s history introduced new principles and practices to make it more efficient for knowledge workers. It is a method designed to help you optimize workflow and use your team’s full capacity. In this article, we will discuss what is the Kanban Method, how to implement it, and what are the most important Kanban analytics charts.

By using Kanban, you can evenly distribute your most important tasks and eliminate any wasteful activity or useless information. The method can help you solve your productivity problems using visual cues that are easy to understand by your team. The Kanban Method is one of the simplest to implement, with no immediate structural changes and prescribed ceremonies. As long as you continuously analyze and manage your flow of work, Kanban can enable exceptional results.

No matter which agile framework is used – Scrum, LeSS or SAFe or other the Kanban Board always helps to make the work progress and impediments of teams visible to everyone and so supports the core agile values – transparency, commitment to do the right things and courage to achieve common goals.

8 Benefits of Using Kanban for Software Development - Kanban Zone Blog

Kanban Principles

The Kanban method is a pull system – this means that work is pulled into the system when the team has capacity for it, rather than tasks being assigned from the top. Kanban can be used to improve processes and workflow efficiency without making any changes to your team structure.

Prior to applying the Kanban Method within your business, it is important to first understand and adopt its fundamental principles:

  1. Start with what you are doing now – Kanban doesn’t require a particular setup and can be applied directly to your current workflow. This makes it easy to implement since there is no need to change your existing processes. The benefits of Kanban are gradual, and any process improvement is adopted over time.
  2. Agree to pursue incremental, evolutionary change – Sweeping changes can unsettle teams, disrupt flow and damage performance. Kanban is designed to incur minimal resistance by encouraging continuous, incremental and evolutionary changes.
  3. Respect the current process, roles, and responsibilities – There should be no organizational changes at the outset. Kanban recognizes that existing processes, roles, and responsibilities may have value and are worth preserving. Instead, Kanban encourages incremental change to avoid emotional resistance.
  4. Encourage acts of leadership at all levels – Kanban promotes leadership and decision making between all members. If the lowest-ranked team member has a bright idea, it should be acknowledged and embraced. Everyone should be fostering a mindset of continuous improvement (Kaizen) – in order for your workers to reach optimal performance.

The structure of a Kanban board

A Kanban board is one of the most practical tools that you can use to manage your projects in a simple and clear way. Kanban can help you visualize and maintain your tasks and workflows, signaling potential bottlenecks for each project or workflow stage. This is why they are used by several agile in-office and remote teams across the world to manage tasks with flexibility.

There are many Kanban boards online that you can use to balance your resource demands. You might already know about other tools such as Trello or Kanban Tool, but you must be aware that Kanban boards are most effective when they are part of a more advanced project management software. Such platforms can help you track time and maintain real-time collaboration with your team.

With Kanban, you can limit the number of tasks that are allowed for each stage to avoid overloading your employees or leaving them with no tasks. Likewise, Work in Progress (WIP) limits can be set for a more effective workload distribution among your team members. This guarantees that each task will be completed before the team moves on to the next one and that the focus on the “In progress” tasks is never lost. You can also turn the completion of a task into a priority to get a better idea about your overall workflow.

A basic Kanban board, be they physical or virtual, are created using these three main elements:

Kanban for software development

Kanban Board: 10 basic rules how to use it in an effective way

Kanban boards were first used in the late 1940s at Toyota’s factories to balance supplies with production. Workers could share the inventory levels of materials through a card named “Kanban” (meaning “signboard” in Japanese). Each card had the requirements for the necessary materials written on it and would then be moved to the warehouse were instructions were carried out. This helped teams communicate easily across the entire manufacturing process.

Now Kanban is used to visualize and speed up your project’s workflow, improve team collaboration, and identify possible obstacles. 

Even though the look, structure and usability of the Kanban Board is well known the rules how to apply it effectively in order to unfold its full potential is something left for teams to find out.

Rule #1: Keep it simple

If you use the Kanban Board for the first time start with the basic structure with columns To Do, Doing, Done which everyone understands and is able to intuitively assign tasks to. Once you get acquainted with this basic structure you may thing of extending it by additional categories given that these categories add a real value – help the team to remove impediments faster and perform tasks more effectively.
Use simple plain language without abbreviations and “team jargon“ when you define tasks. This will make the Kanban Board to a universal tool for reports and communication across across teams and hierarchy levels.

Rule #2: Common structure and level of details across all teams

Use the same Kanban Board structure (column definition) agreed at the rule #1 across all teams.If a team suggests to introduce a new category (column) align with all teams if this category makes sense for everyone. If it is accepted as a common value-adding category adjust the common Kanban Board structure accordingly. Otherwise commonly refrain from it.

Rule #3: Manage flow – By observing and analyzing flow efficiency, you can identify any problem areas. The main goal of implementing Kanban is to create a smooth workflow by improving the lead times and avoiding delays. You should always strive to make your process more efficient.

Rule #4: Agree on a time box

Even though the original Kanban methodology does not apply time-boxing to the work visualization but rather see is as a continuous flow, we recommend to do so. A common agreement on a certain time box with duration from one to four weeks – applied to the categories To-Do, Doing, Done and valid for all teams helps to achieve the same level of details in task definition across multiple teams. „Speaking the same language“ simplifies integration and synchronizes the deliverables of teams. Keep the time box duration fixed unless all agree to change it for an important value-driven reason.

Rule #5: Revise it regularly

Revise the Kanban Bard on a regular basis: Plan the „To-Do“ list for the next time at the end of the current time box by moving the parked tasks from the „Backlog“ column and not-completed tasks of the current time box from the „Doing“ column to the „To-Do“ column. Always keep the status of all tasks up to date at so that the Kanban Board can serve as a tool of transparency and work synchronization. Move a planed task from the „To-Do“ column to the „Doing“ column when you started the task and from the column „Doing“ to the „Done“ column when you completed the task on a daily basis.
Keeping the Kanban Board up to date is not a responsibility of a single person such as Scrum Master, Team Lead or similar. It is a responsibility of each team member who execute tasks.

Rule #6: Improve collaboratively – Kanban requires constant evaluation, analysis, and improvement. When teams have a shared understanding of the process, they are more likely to reach a consensus should any problems arise. The Kanban Method suggests that various models of scientific approach are used to implement continuous, incremental, and evolutionary changes.

Rule #7: Accessible to everyone

The Kanban Board should be placed so that everyone who is involved in task execution, planning and revision as well as all stakeholders can easily see it anytime they like. This helps to avoid status requests from stakeholder and saves the team’s time for productive work.

When you work with an analog Kanban Board it should be placed in a room where everyone has access to and the most people have the shortest way to reach it. A digital Kanban Board should be stored in a shared folder (e.g. Sharepoint) with the write access for the team working and a read access for stakeholders.

Rule #8: Purpose over tools

When you use the Kanban Board for the first time, start with an analog board on a wall. The reason for this lies in the rule of simplicity. All tasks are posted as post-its on the wall. This gives you a good overview and helps to draw your attention to relevant tasks. There are several good tools on the market such as Jira Agile BoardTrello etc. which not only provide basic Kanban Board features but also allow to track the progress with fancy customizable reports, e.g. Burn-Down charts, Average task duration, Number of tasks in status „Doing“ and „Done“ by team assignment, Number of tests planed vs. completed within a time box.

Rule #9: single south of truth

Avoid creating several Kanban Boards when you can achieve your goal with just one. Duplicating Boards and tasks leads to either extra effort for the team of keeping the boards in sync or to a disconnection of the tasks between two boards. The impact of the disconnection may be huge – from misinformation and misunderstandings to confusions and delays.

Rule #10: Visualize workflow – The first and most important task is to understand the current flow of work – what is the sequence of steps to execute in order to move an item from request to a deliverable product. This is done using a Kanban board with cards and columns: each column represents a step in your workflow, and each card represents a work item. Every item moves through the flow from start to end. By observing this process, you can easily track progress and identify bottlenecks in real-time.

Rule #11: team achievement over personnel achievement

Do not assign and track a task to a person, rather assign it to a team. The team should be able to complete the task independently from other teams or managers.

Doing it on a team level encourages the team spirit and mutual support and establishes psychological security which is inevitable for the success of a project.

Rule #12: Make process policies explicit – The process should be clearly defined, published, and confirmed for everyone in the team: people won’t feel motivated to be part of something unless they think it will be useful. When everyone is aware of the explicit policies, each person can suggest improvements that will improve your performance.

Rule #13: continuous improvement

Brainstorm with all teams at least once in a quarter what can be improved about your Kanban board and implement improvement measures which are value-adding for the team.

Rule #14: Use feedback loops – In order for the positive change to occur, regular meetings are necessary to provide essential feedback to the entire team. The frequency of these meetings varies, but the idea is that they are regular, at a fixed time, and that they get straight to the point.

Rule #15: make these rules be known and agreed by everyone

A great rule which nobody knows, the reason for which nobody understands makes it just а deadweight. A rule which is known and understood by everyone moves mountains.

Assure that everyone who starts working with a Kanban Board understands the commonly agreed rules and is given a possibility to contribute to their further improvement.

References: Agilon GmbH, Nave, Paymo

Please feel free to share your story and any lessons you learned, you experienced, you came across in your life in the comments below. If you enjoyed this, or any other other posts, I’d be honoured  if you’d share it with your family, friends and followers!

If you wish to follow my journey outside of my writing, you can find me on Facebook (https://www.facebook.com/MunnaPrawin) Instagram(MunnaPrawin) and Twitter(@munnaprawin1)

 
Leave a comment

Posted by on June 21, 2021 in Technical

 

Tags: , , , , , ,

Project Management Processes


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

What is Project Management ?

Project management is one of the critical processes of any project. This is due to the fact that project management is the core process that connects all other project activities and processes together. Whether it’s constructing a building, launching an app, or rolling out a marketing campaign, every project requires a series of processes to bring it to fruition.

Each of the project management processes has a specific purpose through the project life cycle and when done right, they guarantee the successful completion of projects.

When it comes to the activities of project management, there are plenty. However, these plenty of project management activities can be categorized into five main processes.

The basic phases in the project management process are:

What are Project Management Processes ?

The key project management processes, which run through all of these phases, are:

Scope Management

The scope refers to all the work required to complete a project which is defined by a work breakdown structure during the planning phase. In simple terms, scope management consists of including all the activities, and clarifying what won’t be done. This is the base for scheduling, budgeting, and task management.

Task Management

This process begins with careful planning. Once you’ve constructed your work breakdown structure, you’ll be able to know every task needed to complete your project. Then you can assign these tasks to your team members. It is important to understand the task dependencies so that you know the order in which they need to be completed.

Resource Management

Consists in effectively identifying, acquiring and allocating resources such as people, capital, equipment and materials to complete tasks and produce deliverables. Once you have defined the project scope you’ll be able to determine the resources that will be needed for each activity. As the project progresses, the use of resources must be controlled.

Schedule Management

The schedule management process can be divided in 3 sub processes: estimating, scheduling and controlling. First you estimate the time for each activity, milestone and deliverable. Then you develop schedules based on your time estimates. Once the execution phase begins, you have to monitor the project schedule.

Risk Management

The risk management process helps you identify what might happen to throw your project off track and then define a response so you’ve got contingency plans in place.

This is usually done on larger projects, rather than smaller. Although even for small teams, a short sync up with the team to help identify potential problems in the plan would be useful to guard against the unexpected and have plans of action in case it does. There are several types of risks, but the most important are those that affect the triple constraint.

Quality Management

During the initiation phase, the stakeholders express their quality requirements for the project deliverables. Based on that, project managers develop a quality policy which defines the quality control procedures that will guarantee quality assurance.

Stakeholder Management

Stakeholders are the soul of a project. By understanding their needs and frequently communicating with them throughout the project life cycle, you’ll be able to meet their requirements.

Cost Management

This process is applied to every stage of the project life cycle. It involves cost estimation, establishing budgets and cost control. Simply put, you begin by estimating the cost associated with each task, and then you create a budget that will cover those expenses. Once the execution phase begins you have to monitor the cost of the project as it progresses.

Issue Management

An risk is a problem that has affected the project. Issue management is how you deal with problems when they turn up on your project and it’s worth working out what this is going to look like for you because something is bound to go wrong.

The process will cover who needs to be notified, how you make decisions about what to do next, and who has the authority to take action.

Change Management

Every project has changes. Sometimes that’s because the objective wasn’t defined particularly well at the outset. Or because the business strategy has changed and the project needs to be updated accordingly. You must create a change management plan, which will include your project’s change management procedures and forms.

Procurement Management

Many projects involve working with suppliers and there is normally a process around how you engage and contract with them so that everyone knows what to expect and what you are getting for your money.

Communications

Yes, communication is a process! You have to identify who needs to get which message when and which method of communication is most appropriate. A communication plan will help you do this.

Pro Tip: If you do nothing else on your project, make sure you develop a communication plan and actually communicate! This is the fastest and most efficient way to stay on top of your project performance.

These are the most common processes, but you can also create in-house bespoke processes to help you deal with the quirks of your organization. The key thing is to make sure you aren’t starting from scratch every time, and that you are introducing standardization into how you manage projects as much as possible.

Please feel free to share your story and any lessons you learned, you experienced, you came across in your life in the comments below. If you enjoyed this, or any other other posts, I’d be honoured  if you’d share it with your family, friends and followers!

If you wish to follow my journey outside of my writing, you can find me on Facebook (https://www.facebook.com/MunnaPrawin) Instagram(MunnaPrawin) and Twitter(@munnaprawin1).

 
Leave a comment

Posted by on March 10, 2021 in Technical, Work Place

 

Tags: , , , ,

Patient Management System


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

The advancements in healthcare industry are not just confined to the quality medical care solutions but also to change the delivery system and patient experience as a whole. All the industries have understood the innate potential of automation and the results are quite optimistic. It is a now time for the healthcare industry transformation, in the light of emerging automation solutions in the hospital management system.

In the current age, Time and health are two precious commodities. Patient management can help improve both. It helps in Improving the quality of patient care, making optimal use of resources, ensuring compliance with all statutory requirements and at the same time staying ahead of the competition requires stable IT support.

Patient management is a broad term, with two categories of definitions. One definition refers to a software tool that streamlines processes within a medical practice or hospital, and the other refers to an entire system of care involving both patient and practice. 

Paying attention to patient management can have many benefits for medical practices and hospitals. Speeding up communications and administrative tasks reduces administrative staffing time and allows staff to focus on direct patient care. The amount of time spent on data entry, record keeping, and appointment reminder phone calls is also reduced.

A patient management system often goes beyond just being an electronic health record or electronic medical record (EMR). Government incentives helped expedite the move towards electronic health records, and many practices realized that other software and systems could be beneficial. Patient management software can integrate appointment history, patient information, diagnoses, prescriptions, billing records, and more. It can also help practices and hospitals reduce costs by automating some tasks like appointment scheduling, sending reminders, and billing. 

Functionality and needs differ depending whether or not the medical practice is small and independent or part of a larger medical group. PMS systems work entirely differently within a hospital setting. The software can link practices and medical offices so things like patient records are easy to access on a variety of devices in different settings.

A patient management software system can provide any of the following functions. Not all of the patient management software features listed below are included in any single software application. However, each feature is part of some patient management systems currently available. This comprehensive list can help you understand your practice’s unique requirements and get a head start on the software selection process.

  1. Welcome patients to a practice or hospital and allow people to sign in
  2. Screen identification and print badges for visitors
  3. Complete forms before appointments to decrease patient time spent in the waiting room and administrative time spent inputting data
  4. Keep medical records and allow easy accessibility from a variety of locations including from a mobile device
  5. Schedule appointments and allow patients to see what is available and pick the best time for them
  6. Send confirmations of appointments and place them on an electronic calendar
  7. Send reminders about appointments, hopefully reducing the number of no-shows
  8. Send follow-up health information, advice, and reminders of what physicians said to do to increase patient participation in their own health care
  9. Notify physicians when patients arrive to decrease wait times
  10. Keep records of patient encounters so both physicians and patients can refer to previous conversations and appointments
  11. Monitor and receive data from medical devices and provide alerts both to physicians and patients if medical attention is necessary
  12. Allow emails and conversations between patient and physician
  13. Generate bills and insurance claims
  14. Regardless of the software a medical practice or hospital chooses, it still needs to adhere to some pre defined rules and comply with GDPR

Final Thoughts

Patient management software sets new standards for excellence in patient care. It provides healthcare facilities of all sizes with greater economy, enhanced quality of service, more accuracy and more efficiency. Programs are available to suit a variety of medical practice needs. Now that you know what features to expect, you can start gathering requirements and comparing vendors in the industry. Good luck on your journey to better patient care!

References: DigitalHealthBuzz, Smartsheet, Selecthub and healthcare portals

Please feel free to share your story and any lessons you learned, you experienced, you came across in your life in the comments below. If you enjoyed this, or any other other posts, I’d be honoured  if you’d share it with your family, friends and followers!

If you wish to follow my journey outside of my writing, you can find me on Facebook (https://www.facebook.com/MunnaPrawin) Instagram(MunnaPrawin) and Twitter(@munnaprawin1).

 
1 Comment

Posted by on October 2, 2020 in Technical, Work Place

 

Tags: , , , , ,

New National Education Policy 2020


Education is an important aspect of our lives, while some of us take it for granted, there are others who crave and struggle to get it. Education is one of the most powerful things in life. It allows us to find the meaning behind everything and helps improve lives in a massive way. Education is important because it broadens our knowledge, and this knowledge then opens our minds to new perspectives, ideas, beliefs, and cultures.

Education is not just about spoon feeding but about inspiring them to think out of the box and foresee a better future. It is all about how to apply it in real life to change the world for a better cause. Irrespective of race, creed, and gender, education makes it possible for people to stand out as equal with all the other persons from different walks of life.  Education enhances our perspective on the world. Enriching our brains with new and valuable information improves our ability to think, analyze, and process the world around us.

The Indian National Education Policy was framed in 1986 and modified in 1992. More than three decades have passed since previous Policy. During this period significant changes have taken place in our country, society economy, and the world at large. The biggest relief for the millions of students and parents in the new national education policy is the announcement to make the board exams of class 10th and 12th easy. Students are always under pressure regarding board exams and depend on coaching to get more marks. But in the future, they can get freedom from it.MunnaPrawinThe Government had initiated the process of formulating a New Education Policy. As a part of this, The Union Cabinet chaired by the Prime Minister has approved the National Education Policy 2020, making way for large scale, transformational reforms in both school and higher education sectors. This is the first education policy of the 21st century and replaces the 34 year old National Policy on Education (NPE), 1986. Built on the foundational pillars of access, equity, quality, affordability and accountability, this policy is aligned to the 2030 Agenda for Sustainable Development and aims to transform India into a vibrant knowledge society and global knowledge superpower by making both school and college education more holistic, flexible, multidisciplinary, suited to 21st century needs and aimed at bringing out the unique capabilities of each student.

New Education Policy 2020 HIGHLIGHTS:

  • Early Childhood Care & Education with new curricular and pedagogical structure:
    • With emphasis on Early Childhood Care and Education, the 10+2 structure of school curricula is to be replaced by a 5+3+3+4 curricular structure corresponding to ages 3-8, 8-11, 11-14, and 14-18 years respectively. This will bring the hitherto uncovered age group of 3-6 years under school curriculum, which has been recognized globally as the crucial stage for development of mental faculties of a child.
    • The new system will have 12 years of schooling with three years of anganwadi/ preschooling.
    • NCERT will develop a National Curricular and Pedagogical Framework for Early Childhood Care and Education (NCPFECCE) for children up to the age of 8.
    • ECCE will be delivered through a significantly expanded and strengthened system of institutions including anganwadis and preschools that will have teachers and anganwadi workers trained in the ECCE pedagogy and curriculum.
    • The planning and implementation of ECCE will be carried out jointly by the Ministries of HRD, Women and Child Development (WCD), Health and Family Welfare (HFW), and Tribal Affairs.
  • Ensuring Universal Access at all levels of school education, through following measures:
    • NEP 2020 emphasizes on ensuring universal access to school education at all levels-pre school to secondary.
    • Infrastructure support, innovative education centres to bring back dropouts into the mainstream.
    • Tracking of students and their learning levels, facilitating multiple pathways to learning involving both formal and non-formal education modes.
    • Association of counselors or well-trained social workers with schools.
    • Open learning for class 3, 5 and 8 through NIOS and State Open Schools.
    • Secondary education programs equivalent to Grades 10 and 12, vocational courses, adult literacy and life-enrichment programs.
    • About 2 crore out of school children will be brought back into mainstream under NEP 2020.

MunnaPrawin

  • Reforms in school curricula and pedagogy: 
    • Students will have increased flexibility and choice of subjects. There will be no rigid separations between arts and sciences, between curricular and extracurricular activities, between vocational and academic streams.
    • Vocational education will start in schools from the 6th grade, and will include internships. A new and comprehensive National Curricular Framework for School Education, NCFSE 2020-21, will be developed by the NCERT.
  • Multilingualism and the power of language:
    • The policy has emphasized mother tongue/ local language/ regional language as the medium of instruction at least till Grade 5, but preferably till Grade 8 and beyond.
    • Sanskrit to be offered at all levels of school and higher education as an option for students, including in the three-language formula. Other classical languages and literature of India also to be available as options.
    • No language will be imposed on any student. Several foreign languages will also be offered at the secondary level. Indian Sign Language (ISL) will be standardized across the country, and national and state curriculum materials developed, for use by students with hearing impairment.
  • Assessment Reforms: 
    • NEP 2020 envisages a shift from summative assessment to regular and formative assessment. All students will take school examinations in Grades 3, 5, and 8 which will be conducted by the appropriate authority.
    • Board exams for Grades 10 and 12 will be continued, but redesigned with holistic development as the aim. A new National Assessment Centre, PARAKH (Performance Assessment, Review, and Analysis of Knowledge for Holistic Development),  will be set up as a standard-setting body.
  • Equitable and Inclusive Education:
    • Special emphasis will be given on Socially and Economically Disadvantaged Groups (SEDGs) which include gender, socio-cultural, and geographical identities and disabilities. This includes setting up of a Gender Inclusion Fund and also Special Education Zones for disadvantaged regions and groups.
    • Children with disabilities will be enabled to fully participate in the regular schooling process from the foundational stage to higher education, with support of educators with cross disability training, resource centres, accommodations, assistive devices, appropriate technology-based tools and other support mechanisms tailored to suit their needs.
    • Every state/ district will be encouraged to establish Bal Bhavans as a special daytime boarding school, to participate in art-related, career-related, and play-related activities. Free school infrastructure can be used as Samajik Chetna Kendras.

Munna Prawin

  • Standard setting and accreditation for school education: 
    • NEP 2020 envisages clear, separate systems for policy making, regulation, operations and academic matters. States/UTs will set up an independent State School Standards Authority (SSSA).
    • Transparent public self-disclosure of all the basic regulatory information, as laid down by the SSSA, will be used extensively for public oversight and accountability. The SCERT will develop a School Quality Assessment and Accreditation Framework (SQAAF) through consultations with all stakeholders.
    • Further, schools can be organized into complexes or clusters which will be the basic unit of governance and ensure availability of all resources including infrastructure, academic libraries and a strong professional teacher community.
  • Higher Education:
    • The policy envisages broad based, multi-disciplinary, holistic undergraduate  education with flexible curricula, creative combinations of subjects, integration of vocational education and multiple entry and exit points with appropriate certification.
    • UG education can be of 3 or 4 years with multiple exit options and appropriate certification within this period. For example, Certificate after 1 year, Advanced Diploma after 2 years, Bachelor’s Degree after 3 years and Bachelor’s with Research after 4 years.
    • An academic bank of credit is to be established for digitally storing academic credits earned from different HEIs so that these can be transferred and counted towards the final degree earned.
  • Regulation:
    • Higher Education Commission of India (HECI) will be set up as a single overarching umbrella body for the entire higher education, excluding medical and legal education.
    • HECI to have four independent verticals: National Higher Education Regulatory Council (NHERC) for regulation, General Education Council (GEC ) for standard setting, Higher Education Grants Council (HEGC) for funding, and National Accreditation Council ( NAC) for accreditation.
    • HECI will  function through faceless intervention through technology, and will have powers to penalise HEIs not conforming to norms and standards. Public and private higher education institutions will be governed by the same set of norms for regulation, accreditation and academic standards.
    • The definition of university will allow a spectrum of institutions that range from research-intensive universities to teaching-intensive universities and autonomous degree-granting colleges.
    • Affiliation of colleges is to be phased out in 15 years and a stage-wise mechanism is to be established for granting graded autonomy to colleges. Over a period of time, it is envisaged that every college would develop into either an autonomous degree-granting college, or a constituent college of a university.
  • Teacher Education: 
    • A new and comprehensive National Curriculum Framework for Teacher Education, NCFTE 2021, will be formulated by the NCTE in consultation with NCERT. By 2030, the minimum degree qualification for teaching will be a 4-year integrated B.Ed. degree. Stringent action will be taken against substandard stand-alone Teacher Education Institutions (TEIs).
    • A national mission for mentoring will be established, with a large pool of outstanding senior/ retired faculty, including those with the ability to teach in Indian languages, who would be willing to provide short and long-term mentoring/ professional support to university/ college teachers.
  • Online Education and Digital Education: 
    • A comprehensive set of recommendations for promoting online education consequent to the recent rise in epidemics and pandemics in order to ensure preparedness with alternative modes of quality education whenever and wherever traditional and in-person modes of education are not possible, has been covered.
    • A dedicated unit for the purpose of orchestrating the building of digital infrastructure, digital content and capacity building will be created in the MHRD to look after the e-education needs of both school and higher education.
    • An autonomous body, the National Educational Technology Forum (NETF), will be created to provide a platform for the free exchange of ideas on the use of technology to enhance learning, assessment, planning, administration. Appropriate integration of technology into all levels of education will be done.
  • Promotion of Indian languages
    • To ensure the preservation, growth, and vibrancy of all Indian languages, NEP recommends setting an Indian Institute of Translation and Interpretation (IITI), National Institute (or Institutes) for Pali, Persian and Prakrit, strengthening of Sanskrit and all language departments in HEIs, and use mother tongue/ local language as a medium of instruction in more HEI programmes .

Download New Education Policy 2020  Download NEP 2020 Pdf

References:  MHRD, ManifestIAS, TOI

Education isn’t just about learning maths or science at school. It’s about gaining the knowledge and the skills needed to better ourselves and the world we live in. Now we can hope our education system will be at par with modern countries and future of our children will be bright.

Please feel free to share your story and any lessons you learned, you experienced, you came across in your life in the comments below. If you enjoyed this, or any other other posts, I’d be honoured  if you’d share it with your family, friends and followers!

If you wish to follow my journey outside of my writing, you can find me on Facebook (Link) Instagram(MunnaPrawin) and LinkedIn Link

 

 

Tags: , , ,

Unspoken truth hidden behind my Heart


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

In Life we meet many people who leave their own impressions and memories. Every person have their own importance and everyone holds a piece of our lives puzzle. Even if a person leaves us, we can never be full. When you experience loss, people say you’ll move through the 5 stages of grief….Denial, Anger, Bargaining, Depression, Acceptance. ….. Unfortunately I cycle through all of them all every day.

My Love, Though my words will never find you, I hope that you knew I was thinking of you yesterday, today, tomorrow and everyday to come….. and that I was wishing you every happiness. Love you Always, The girl who loved me and walked with me.

My Heart never knows loneliness until you left me. World never knows that i still wake up thinking of you  each-day .
IMG_20190817_204658.jpg
I miss your company,
I miss your smile,
I miss walking with you in rain,
I miss your love, care, concern,
I miss the sensation of your touch.
I miss you, pampering me like kid,
I miss visiting temples with you,
I miss the arms that protected me,
I miss the shoulder that takes me to sleep,
I miss the fingers, that wipes out my tears,
I miss the hand that holds me when I am down,
I miss holding you at night,
I miss support of your shoulders when I am tired.
I miss feeling like you want me.
I miss early morning walks in the park by holding your hand,
I miss the kiss which you used to give on my forehead daily,
I miss imagining us a year from now,and how happy we should be.
I miss planning our vacations,
I miss phone calls, text messages,
I miss sweet fights  and arguments with you,
I miss daydreaming of how nice it will all be.
I miss the idea of you missing me!!!
I miss everything we used to be!
Finally I miss, my Life’s journey with you,
Nobody Understands how much I miss you,

I Miss You

You are defined as my unspoken truth hidden behind my heart…

The sad part is, that I will probably end up loving you without you for much longer than I loved you when I knew you. Some people might find that strange.
But the truth of it is that the amount of love you feel for someone and the impact they have on you as a person, is in no way relative to the amount of time you have known them.

I will always hold a candle for you – even until it burns my fingers, hand.
And when the light has long since gone …. I will be there in the darkness holding what remains, quite simply because I cannot let go what i experienced and what memories you left with me.

Please feel free to share your lessons you learned, you experienced , you came across in your life in the comments below.

 
Leave a comment

Posted by on September 1, 2019 in Technical

 

SEX vs MAKING LOVE


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

 When researching this topic I came across many opinions on the Internet. The explanations ranged from the obscene to the very simple. Some common themes that kept coming up were:

  1. F||King is hard, hot and nasty and always objectifying. whats-the-difference-between-making-love-and-having-sex
  2. Sex is well – sexy, and can be fast, hard … but also slower, and is often objectifying.
  3. Making-love is slower and gentle, only happens between two people that are in love, have mutual respect, and consider the feelings and pleasure of the sexual partner.

Every woman expects to be protected, looked after and loved as much in bed as in every day life. This is not just a legend used by women to manipulate men. Woman expect her partner to love and care her, but not to see her as a sex toy. It became a job for woman to satisfy her partners sexual needs whether she is ready or not.

Sex is just Physical act. Many term Sex  as “Fucking” which is more about the man and his orgasm (&needs) In General Sex is having physical intercourse between a couple. This is irrespective of the fact that they share love or any bond between them. Sex is all about a sexual intercourse between two people who only share their bodies. Most men are attracted to one-night-stands or, with other words, to having sex. The lack of commitment needed and the easy attaining of the main goal: feeling good, are just two reasons pleading in favor of having sex.

It became very common that Men/Woman are having sex with more than one person in life. Earlier it is limited to Men. But now, along with men, many woman sharing their bed with multiple people for several reasons. One may have sex with any person(spouse, friend, beloved, colleague, stranger) needn’t be their partner, spouse, beloved etc. It can also mean casual sex with anyone. Having sex doesn’t extend beyond sexual intercourse and more often than not, there isn’t any emotion between the couple.  In Sex Emotions not necessarily involved if you are in an uncommitted relationship.

If you’re f*cking, it doesn’t have to be super-sweet and nice. You can even be mean to each other. You can be raunchy and dirty. The filthiest part of you that you want no one to see, except for the person you’re f*cking. Sex is all about a sexual intercourse between two people who only share their bodies. In present world most men/woman are attracted to one-night-stands or, with other words, to having sex. The lack of commitment needed and the easy attaining of the main goal: feeling good, are just two reasons pleading in favor of having sex. F*cking is a space in which partners show different sides of themselves that they may never show in public. This is where sexual taste brings out hidden personality aspects

On the other hand there is so much more between a man and a woman making love. There are feelings and emotions, leading to a totally different connection between the two of them. More than that, for women, one of the most important things during sex is the environment. Communication is essential for great results. Men must pay attention to the unspoken signs every woman gives them. Ignoring these signs will make women feel used. The old legend that says that when a woman says “no” she actually means “yes” is nothing more than a poor excuse so keep your ears open for her desires.

Explore every inch of her body and draw imaginary contours with your fingers and tongue, kiss her neck, breasts, belly and legs, all in a specific order surrounding the most important area and closing in at the same time. All this will increase the tension and when that moment comes both you and her will feel the difference.If all goes well, you might be given the supreme sexual command and that’s “don’t stop!” When you hear that, whatever you do, DON’T STOP!

Making Love is connecting of two people’s souls through two people’s bodies, as one. When there is no stronger way to express your love than sexual Intimacy. Wanting to please each other, make the other happy, share everything, be as close as humanly possible. Making Love is a Sexual and Emotional act. While making love reflects a feeling of affection associated with sexual intercourse. Making love also implies being intimate with your partner, not only physically but also mentally while having sex is just an urge for intercourse. In Making Love Emotions involved, often more pleasurable due to the fact that you are pleasing the person that you love.

While making love is generally referred to intercourse with a partner, spouse or beloved. In simple words, with one you care for or are emotionally attached to. It is an emotional attachment, including infatuation in the beginning of a relationship, is there when making love. It is sharing over all intimacy. Some people also suggest that making love is an expression of love though having sex isn’t because love might not be involved.

One of the most amazing things about being in a seriously loving and committed relationship is the actual art of making love to your partner. It’s going to feel so immensely great that you will want to do it as much and as often as possible. Yes, it’s still a lot of fun to just get physical with someone in the confines of a bedroom. But there’s just a whole new level of enjoyment and pleasure that comes with actually making love to someone. The emotional connection and romance just take it to greater heights.

Making love just really happens to be one of the best feelings in the world. It will enable you to feel more and more connected to the partner you are already so in love with. There really is nothing else in the world quite like it. Having sex may just satisfy one’s sexual urge while making love may please a person’s physical, emotional, sexual and mental urges. It can be said that having sex is merely restricted to a physical act while making love goes to include other urges also.

Sex can be a physical thrill for a night or a few encounters, but lovemaking can be an ecstatic adventure of a lifetime and most women can feel the difference. Sex is a simple physical act, so simple that even animals do it. But lovemaking is a complex expression of LOVE. It’s a desire to communicate the love you have for the other person non-verbally. It gives you a chance to express all the good feelings and thoughts you have about your lover.

Please feel free to share your story and any lessons you learned, you experienced, you came across in your life in the comments below.

 

 

 

 

 

 
1 Comment

Posted by on June 29, 2019 in Technical

 

Scrum Vs Kanban


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

Article by AXA XL Team…

Which framework works best: Kanban or Scrum? If you are on the verge of a brand new project, I bet this question has posed quite the challenge to your mind. Today Kanban and Scrum have grown in popularity and have taken the place of the previously popular waterfall method.

Agile –  Agile software development is based on an incremental, iterative approach. Instead of in-depth planning at the beginning of the project, Agile methodologies are open to changing requirements over time and encourages constant feedback from the end users. Cross-functional teams work on iterations of a product over a period of time, and this work is organized into a backlog that is prioritized based on business or customer value. The goal of each iteration is to produce a working product.

Scrum – The approach followed here is breaking down a complex task into simpler smaller manageable pieces which are easy to collaborate upon by the respective owners of the scrum.

Kanban – It is a Continuous improvement, flexible process. Kanban helps visualize your work, limit work-in-progress(WIP) and quickly move work from “Doing” to “Done.” It is a framework which utilizes visualization technique, limiting the number of tasks to be taken in “Work in Progress” column.

Scrum Vs Kanban

Kanban and Scrum are both iterative Agile development models, the goal is to get the most important tasks fully done (including testing) as soon as possible. The product should be potentially shippable at the end of the iteration. The difference is with Scrum the end is a set date, with Kanban it could be anytime the features that need releasing are done. In Scrum you plan a fixed period of time and with Kanban you plan just in time.

ks1.jpg

Roles –

  • Scrum is dependent on the scrum owners and is worked upon by them respectively. Scrum has three clearly defined roles.
    1. The product owner advocates for the customer, manages the product backlog, and helps prioritize the work done by the development team.
    2. The scrum master helps the team stay grounded in the scrum principles.
    3. The scrum team chooses the work to be done, delivers increments, and demonstrates collective accountability
  • Kanban is independent of cross-functional team members and parallel roles. The whole team owns the kanban board. Some teams enlist an agile coach but, unlike scrum, there is no single “kanban master” who keeps everything running smoothly. It’s the collective responsibility of the entire team to collaborate on and deliver the tasks on the board.

Release cycle –

  • Scrum makes use of sprints whose duration varies from one week to two weeks. The user stories are then taken up for development, testing and bug fixes. Nowadays, it’s common to have ad-hoc releases in scrum, but it’s long been a best practice to release at the end of each sprint. Teams set an objective for each sprint, the sprint goal, and either approves it for release in the sprint review meeting, or don’t
  • Kanban does not follow any cycle and the process is continuous in nature. In kanban, updates are released whenever they are ready, without a regular schedule or predetermined due dates. In theory, kanban does not prescribe a fixed time to deliver a task. If the task gets completed earlier (or later), it can be released as needed without having to wait for a release milestone like sprint review.

Tracking parameters –

  • Scrum makes use of velocity in planning upcoming sprints taking into account the complexity and number of user stories completed in the previous sprint.
  • Kanban ensures limiting of user stories in “Work in Progress” column to avoid bottlenecks. It tracks the time taken to finish a task from the starting to the end.

The scope of improvement –

  • Scrum does not encourage changes in ongoing sprints.
  • Kanban is open to any changes before the completion of the project. It is flexible in nature.

Fit factor –

  • Scrum is suitable for projects with clearly defined user stories. Acknowledgement on the same by the client for timely completion of the project makes it a fit.
  • Kanban being flexible in nature allows variations in priorities on the basis of the current scenario.

Pick process –

  • Scrum picks the entire batch of user stories from the product backlog for development.
  • Kanban follows the maximum number of tasks allowed in the columns to maintain the sanity of the framework and to avoid bottlenecks.

Delivery –

  • Scrum follows delivery based on sprint planning and prioritize based on the specifications given by the client.
  • Kanban follows the continuous delivery model based on business needs.

Key metrics

  • Scrum – Velocity i.e. the number of story points completed in a sprint—is the central metric for scrum teams. It guides future sprint commitments, or how much work the scrum team takes on in future sprints. If the team completes an average of 35 story points per sprint (Velocity = 35), it won’t agree to a sprint backlog that contains 45 points.
  • Kanban – Lead time and cycle time are important metrics for kanban teams. The deal with the average amount of time that it takes for a task to move from start to finish. Improving cycle times indicates the success of kanban teams.

The above points are easy to remember if you are able to visualize working on them. Ideally where the scrum follows a rather predefined set of principles. Kanban is backed up by the principle of flexibility. It allows you to track tasks that are of utmost importance for delivery.

What Is Kanban? ks3

In order to simplify the manufacturing process and increase efficiency, in the 1940s Toyota implemented just-in-time manufacturing—effectively, making only what is needed, only when it is needed, and only in the amount that is needed.

Kanban is great for teams that have lots of incoming requests that vary in priority and size. Whereas scrum processes require high control over what is in scope, kanban let’s you go with the flow. Let’s take a look at the same five considerations to help you decide. What makes Kanban interesting is this aspect of it – that you could be continuously developing, integrating, testing and releasing at a cadence that you feel comfortable with – and so the whole concept of Continuous Delivery becomes much more ‘natural’ with Kanban.

How Does Kanban Work?

The only essential materials for kanban are a marker, sticky notes, and a board. Create “cards” from the sticky notes representing work items that have to go through several phases, from start to finish. Then draw columns on the board for each phase the cards need to go through, with a number at the top of each column that indicates the maximum number of cards (i.e., work in progress) that can be in that phase at a time. This number probably will and should change as your team improves its ability to gauge and reduce bottlenecks. The columns could simply be labeled “to do,” “doing,” “waiting,” and “done,” or they can be more process-specific, such as in the examples below.

Another helpful thing many teams do is dividing the columns in two, with one lane for “doing” and one for “done,” as you can see in the software development kanban example above. This way, it is clear to whoever is in charge of the following column to know when they can pull another card and begin working on it.

ks 2

The beauty of this system is that it helps you detect where bottlenecks are. The work-in-progress limit stimulates conversations about process problems. In the examples above, you can see some columns are at capacity and some are not, but none has more cards than prescribed.

 

Please feel free to share your story and any lessons you learned, you experienced, you came across in your life in the comments below.

 

 

 

 

 
1 Comment

Posted by on March 22, 2019 in Technical

 

Tags: , , ,

Steps to Introduce Test Automation


Today, software testing is an integral part of the development process. To reduce the time spent on testing, many companies opt for test automation. However, automation capabilities move beyond speed increase and include test coverage enhancement and overall QA costs optimization in the long run.

Assume, You’ve just started a brand new role at a company and the very first task you’ve got in front of you, is to implement test automation.

Now, this company has never done any kind of test automation and right now is relying on a hodgepodge of methods to test and measure quality.

Where do you start and how do you begin such a momentous task? I’m glad you asked.

We’re going to be talking about the general, fundamental concepts surrounding test automation – not specific tools or frameworks you need to use because those will vary based on what your organizations unique needs.

shutterstock_727680178

Analyzing applications to determine which can be automated

If your organization is working on 3 applications, it is not necessary that each should be automated. We have to see the various factors while selecting any application to automate.

The application which should be automated must have these factors:

  1. The application should not be in the early stages of its development. (The application should have all or some modules which are stable and tested by manual testers)
  2. The UI of the application must be stable. (The UI must not change frequently)
  3. The manual test cases of this application should be in written form.
  4. Basic application flow should have been already tested and working

The main goal of automation is to make sure that if the application is bug-free in one build, it should remain bug-free in the next build. The manual tester should not waste their time in finding regression issues, these issues should be identified in automation.

Educate on myths & misconceptions

Educating management, and other groups, about these particular myths and misconceptions surrounding test automation, gives you a shot at success. It provides the understanding and opens lines of communication that will benefit you and your work.

The myths & misconceptions include things such as:

  • You can automate 100% of your tests.
  • Automation allows Management to reduce test staff.
  • One tool is all you need.
  • Automation will speed up the testing process.
  • Anyone (untrained/unskilled) can do automation.
  • Open-source tools are “free.”
  • “Codeless” and “Scriptless” tools can do all the work.
  • Automation can be created quickly.
  • Only hire a Software Design/Development Engineer in Test (SDET).
  • Automation provides an immediate return on investment (ROI).

Determine the scope

Any process starts with the definition. Therefore, before implementing test automation, you should determine the automation scope. When starting tests development, a QA engineer should first define the order according to the tests’ priority rate.

Prepare to automate

Having quite profound experience in test automation, I can say the following: automated tests should cover the most stable part of the functionality and the one that is tested for about 3-4 times per week.

As a rule, smoke tests (or other regression tests) are chosen for that very purpose.

Select tools for automation

As soon as the scope is defined, a QA engineer should select test automation tools. The tested interfaces define the package of applied tools. Different types of interfaces presuppose different tools’ range.

There is no any one-size-fits-all solution. The choice of a test automation tool will depend on the technology the software is built on. For example, QTP does not support Informatica. That means the tool cannot be used for the software. We prefer the most reliable and proven solutions: Selenium WebDriver, Coded UI, Ranorex, TestStack.White, Appium, Xamarin, and many more.

Having decided upon the tools, testers get to framework implementation.

Training the Team

After tool selection and resource hiring, the next step is logically the training of the resources. If manual testers are converted into automation engineers, they have to be trained on automation terminologies and concepts. If automation architect is hired from outside, he must get knowledge about the product to test, the manual testing process and what management is expecting.

Give resources some time to try different things until they finally come up with a winning automation strategy. Train them on the tools which organization is already using bug tracking software and requirements management software.

Good training and strong communication between manual testers, developers and automation team is really necessary.

Develop the framework

The framework is the basis for further automated tests’ development. It provides an opportunity to optimize test development efforts by re-using the code. You can utilize any of the ready-to-use frameworks presented on the market, like the Robot framework for Selenium.

The usefulness of frameworks is hard to underestimate. Thanks to frameworks, it’s possible to maintain consistency of testing and improve re-usability. You can also count on minimizing code usage and improving the structure of tests, which is a perfect scenario for long-term projects.

Configure the environment

All the tests run in the environment, which is to be well-configured. Upon this step, you should create and support the environment to successfully run automated tests and store the results.

Test automation will require test data, which means you are to prepare the set of files and test accounts beforehand. Otherwise, you tackle risks that may damage the process and provide you with irrelevant test results.

Test automation process

Developing an Execution Plan

The execution plan includes selecting which environments the scripts will be executed. The environment includes OS, Browser and different hardware configurations.

For example, if the test case demands that it should check the website in 3 browsers, namely, Chrome, Firefox and IE, then the automation team will write the script in such a manner that it will be able to execute in each browser.

Start to automate

Eventually, when all the preliminary preparations are done, testers can get down to automated test development. A regular process of providing new automated tests includes the following points:

  1. Selection of the manual test case according to the stated priorities
  2. Code writing for the automated test
  3. Adding the automated test to the debug test execution
  4. Adding the automated test to the test execution for newly created builds.

Writing Scripts

When the framework is designed, the execution plan is known and resources are trained on the new tool, now it’s the right time to start writing scripts.

Scripts should be written in an organized manner with proper naming convention. The source code should be maintained in a source control to avoid code loss. Version control and history should be maintained. Test automation is just like software development. All best programming practices should be taken care while writing the scripts.

Reporting

The reporting feature is usually provided by the tool. But we can create custom reporting mechanisms like auto-emailing the results to management.

We can create reports at the end of each execution in the form of charts and tables if management needs it. The management should always be informed about the test case coverage, that means which manual test cases are covered in automation and which of them are remaining.

Maintenance of Scripts

If best programming practices are followed and framework is good, then maintenance will not be a problem.

Maintenance usually occurs when there is a change request an application. The scripts should immediately be updated to cope with that change to ensure flawless execution.

Monitoring

When the tests are launched, they should be monitored. You cannot let them go along without tracking the process. While monitoring the automated test, remember to take into consideration the following aspects:

  1. Automated test coverage, cost per test
  2. Useful vs. irrelevant results after test execution
  3. Cost per test
  4. The scope of support in comparison with the number of executed tests
  5. Economic effect (ROI, return on investment).

Tracking the process, keep in mind, that test automation is much more than computers launching test programs. It is also delivering information about quality.

Ultimately, mastering automation can significantly increase your business value. Automation includes many factors that need to be understood and addressed before the start of the process. Follow the main points to avoid the risks and get your benefits.

The Final Word:

Following the steps discussed above will help you in successfully implementing automation testing seamlessly in your organization. Once the process is in place, you need to follow the best practices. Whenever there is a change/update in the application, the scripts should be checked and updated as required. Have you tried introducing automation to your testing process? Share your experience in the comments below.
 
Leave a comment

Posted by on February 21, 2019 in Technical

 

Tags: , , , ,

Root Cause Analysis


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

Article by Karthik.

Root cause analysis (RCA) is a systematic process for identifying “root causes” of problems or events and an approach for responding to them. RCA is based on the basic idea that effective management requires more than merely “putting out fires” for problems that develop, but finding a way to prevent them. It is a mechanism of analyzing the Incidents/defects, to identify its cause. We brainstorm, read and dig the Incidents/defect to identify whether the defect was due to “testing miss”, “development miss” or was a “requirement or designs miss”.

RCA is simply about determining, very specifically, the when, the where, and the why of a problem at its source, before it can ripple out to affect the end-user of an application or website a second time. Doing the RCA accurately helps to prevent defects in the later releases or phases. If we find, that a defect was due to design miss, we can review the design documents and can take appropriate measures. Similarly, if we find that a defect was due to testing miss, we can review our test cases or metrics, and update it accordingly.

Root Cause Analysis is like a chain of events which go backward, right from the last possible action to the previous and so on, till you reach the start of the problem and the exact point at which it was introduced as a defect. This is called as reverse engineering. There are a few two major questions that we need to ask – WHAT, WHY, WHEN, HOW. With the assistance of these questions, we can dig into each phase of the software life cycle to exactly track the origin of the defect and the point at which it was injected into the system.

why-root-cause

Goals: The primary goal of using RCA is to analyze problems or events to identify:

  • What happened
  • How it happened
  • Why it happened…so that
  • Actions for preventing reoccurrence are developed

Benefits: Implementing RCA will help the agency:

  • Identify barriers and the causes of problems, so that permanent solutions can be found.
  • Develop a logical approach to problem-solving, using data that already exists in the agency.
  • Identify current and future needs for organizational improvement.
  • Establish repeatable, step-by-step processes, in which one process can confirm the results of another.

Principles

  • Focusing on corrective measures of root causes is more effective than simply treating the symptoms of a problem or event.
  • RCA is performed most effectively when accomplished through a systematic process with conclusions backed up by evidence.
  • There is usually more than one root cause for a problem or event.
  • The focus of investigation and analysis through problem identification is WHY the event occurred, and not who made the error.

Roots: Root cause analysis is not a one-size-fits-all methodology. There are many different tools, processes, and philosophies of accomplishing RCA. In fact, it was born out of a need to analyze various enterprise activities such as:

  • Accident analysis and occupational safety and health
  • Quality control
  • Efficient business process
  • Engineering and maintenance failure analysis
  • Various systems-based processes, including change management and risk management

Applying RCA: Examples of events where RCA is used to solve problems and provide preventive actions include:

  • Major accidents
  • Everyday incidents
  • Minor near-misses
  • Human errors
  • Maintenance problems
  • Medical mistakes
  • Productivity issues
  • Manufacturing mistakes
  • Environmental releases
  • Risk analysis, risk mapping

Root-Cause-Analysis-Process

Basic method to use

  • Define the problem.
  • Gather information, data and evidence.
  • Identify all issues and events that contributed to the problem.
  • Determine root causes.
  • Identify recommendations for eliminating or mitigating the reoccurrence of problems or events.
  • Implement the identified solutions.

RCA methods

The nature of RCA is to identify all and multiple contributing factors to a problem or event. This is most effectively accomplished through an analysis method. Some methods used in RCA include:

  • The “5-Whys” Analysis” — A simple problem-solving technique that helps users get to the root of the problem quickly. It was made popular in the 1970’s by the Toyota Production System. This strategy involves looking at a problem and asking “why” and “what caused this problem”. Often the answer to the first “why” prompts a second “why” and so on—providing the basis for the “5-why” analysis.
  • Barrier Analysis — Investigation or design method that involves the tracing of pathways by which a target is adversely affected by a hazard, including the identification of any failed or missing countermeasures that could or should have prevented the undesired effect(s).
  • Change Analysis — Looks systematically for possible risk impacts and appropriate risk management strategies in situations where change is occurring. This includes situations in which system configurations are changed, operating practices or policies are revised, new or different activities will be performed, etc.
  • Causal Factor Tree Analysis — An investigation and analysis technique used to record and display, in a logical, tree-structured hierarchy, all the actions and conditions that were necessary and sufficient for a given consequence to have occurred.
  • Failure Mode and Effects Analysis — A “system engineering” process that examines failures in products or processes.
  • Fish-Bone Diagram or Ishikawa Diagram — Derived from the quality management process, it’s an analysis tool that provides a systematic way of looking at effects and the causes that create or contribute to those effects. Because of the function of the fishbone diagram, it may be referred to as a cause-and-effect diagram. The design of the diagram looks much like the skeleton of a fish—hence the designation “fishbone” diagram.
  • Pareto Analysis — A statistical technique in decision making that is used for analysis of selected and a limited number of tasks that produce significant overall effect. The premise is that 80% of problems are produced by a few critical causes (20%).
  • Fault Tree Analysis — The event is placed at the root (top event) of a “tree of logic”. Each situation causing effect is added to the tree as a series of logic expressions.

Based on the results of RCA, you can determine which of the phase has problem areas. For example, if you determine most of the RCA of the defects are due to requirement miss, then you can improve the requirement gathering / understanding phase by introducing more reviews or walk-through sessions.

Similarly, if you find that mostly defects are due to testing miss, you need to improve the testing process. You can introduce metrics like requirement tractability metrics, test coverage metrics or can keep a check on the review process or any other step which you feel would improve the efficiency of the testing. It is the responsibility of the entire team to sit and analyze the defects, and contribute to the product and process improvement.

Please feel free to share your story and any lessons you learned, you experienced, you came across in your life in the comments below.

 
Leave a comment

Posted by on November 29, 2018 in Technical

 

Tags: , , , ,

That’s why she’s a slut


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

Article by  Laura Jane Williams..

She’s missing something, and needs you to fill the hole. Literally. Come inside her and stem the flow, patch up the wound with your own body because she cannot do it alone. When he left he took something from her, but she doesn’t know – can’t figure out – what, exactly, it is. So she’ll try anything. She’ll do anything to see what works. She just needs to not feel quite so much.

She’s a slut because it helps. It’s less about the act of fucking you, and more about what it does to her ego to get there. That she can control you. She had no control over him – the way he cried when he said goodbye but said goodbye all the same. She had no control when she got the call about his new girlfriend, second-hand information that made her wonder how long, exactly, it had really been going on. o-SLUT-570

She needed him to be a faithful man so that she could believe faithful men exist, and now they don’t anyone is up for grabs. It is balm for the ego, locking eyes across the bar. Salve for the dented spirit when she approaches. Men love the thrill of the chase, and she loves knowing that she can screw any man she wants if only she’s brave enough to ask. She just needs to make it their idea. She’s in the driving seat of saying just the right amount of provocative. Master of making his pupils dilate in thrilled shock. Will say the unsayable as code for what else she’ll do, too.

She’s not a bad person. She’s not a Madonna, nor is she a total whore. She has friends, and a job, and is liked and respected and popular enough. She commands attention because she’s so in control, so measured, so aware of the cracks she’ll let other people see. Most will be fooled by it. Most will marvel at her confidence and her “go for it” attitude. Concede that she must really have her shit together. But then there will be one or two who linger behind, say less, hold something back because they see it. They see that she’s playing make believe and doesn’t even recognize it herself. They don’t trust it, and they shouldn’t.

She’ll fuck you, and you, and you – one after the other, filling up and filling up but never being filled for long enough. She’ll begin to pride herself on not being like the other girls. Of keeping you at a distance. Ignoring you once you’ve peeled off the condom and flung it in the trash. Because she will always make you wear a condom. She can’t love herself so she sure as hell couldn’t love your child.

She’s a slut because none of you are the answer. As she holds your gaze longer than strictly necessary, rests her hand on your knee a little too high to be friendly, there will be a question in her eyes and in her heart and the moment you lean in to kiss her –tough, and fast, always too fast to mean anything – the tiny speckle of hope that she almost had will be quashed. She’ll just get on with it.

She’ll be wet for you. Turned on as all hell. You might even make her come. But it won’t be from being inside her. It won’t be where she can see you. You’ll slip your hand into her knickers from behind or go down on her in the dark. From there, you could be anybody. Nobody. Him.

She’ll treat you like utter shit and it will make you want more, because the ones who don’t care can be the most attractive when we’re playing the “who is more broken?” game. But you won’t value her. She gave it away too easily, you used each other in a way that can’t be undone. She’ll note your attitude, the way you keep your texts explicit and void of emotion, following her lead, as evidence that all men are the same.

Sexual predators. Easily led. Emotionally stunted.

She won’t feel bad about moving on to the next, because it didn’t mean anything anyway.

That’s why she’s a slut.

Because nobody can disprove her theory. Nobody is saving her from herself. She doesn’t know, yet, that she needs to save herself.

Please feel free to share your story and any lessons you learned, you experienced, you came across in your life in the comments below.

 
Leave a comment

Posted by on August 14, 2018 in Technical

 

Tags: , , ,

Business Impact Analysis


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

Article by XLC Team…

A Business Impact Analysis is a process used to determine the effect of an interruption of services on each business unit and the organization as a whole. The analysis can provide information on the short and long term effects of a disaster on such factors as profit, market share and goodwill.

This information in required to develop a business continuity strategy for the entire organization. Please fill out this questionnaire in as much detail as possible. Your input will be valuable in developing an effective Business Continuity program.

A business impact analysis is a key part of the business continuity process that analyzes mission-critical business functions and identifies and quantifies the impact a loss of those functions — e.g., operational, financial — may have on the organization. A business impact analysis (BIA) is critical in assessing the cost of business disruption and how disaster recovery plays a role in mitigating it. The BIA has several crucial elements, which include executive backing; a deep understanding of the organization; and BIA tools, processes and findings.  concept-image-of-business-acronym-bia-business-impact-and-analysis-FGFK4M

Once risks to an organization have been identified — usually through a risk analysis — the next step in a business impact analysis is to determine how the identified risks affect specific business operations. Let’s assume that if all business functions are performing normally, the organization ought to be fully viable, competitive and financially solid. If an incident — internal or external — negatively affects business operations, the organization could be compromised.

Business impact analyses help business continuity/disaster recovery professionals to identify business priorities and validate or modify them for plan development. Questionnaires must be formulated for preinterview data gathering or in-person interviews. People with in-depth knowledge of and experience with the business functions being analyzed are ideal candidates for BIA interviews.

In some cases, it may be possible to develop business impact analysis questionnaires into an automated survey — an example of which is BIA Professional from SunGard Availability Services — in which the results can be captured and summarized. Often, it is useful to include an incident description for interviewees to use when answering the questions. An example of such a situation is when:

  • the business unit’s portion of the building is completely destroyed;
  • all records, data files, technology, supplies and other support systems are lost;
  • some key personnel are not available;
  • primary business processes are affected immediately, and for at least 30 days; and
  • the disaster occurs during a peak processing period for the business unit.

Tips for performing a business impact analysis

Keep in mind the following key tips when performing a business impact analysis:

  1. Get the support of senior management.Given the nature of BIAs, and the time needed for research, be sure to obtain senior management support so that your project goals can be achieved.
  2. Take the business impact analysis process seriously.Although the BIA can take a great deal of time for data gathering and analysis, its value is essential as you develop plans. BIAs do not have to be dozens of pages long; they simply need the right information, and that information should be current and accurate.
  3. There are no formal BIA standards.Despite many business continuity standards being available in the U.S., no formal standards exist for BIAs.
  4. Keep it simple.Gathering the right information is critical; the associated business impact analysis template provides a baseline for information to be gathered. If a one-page business impact analysis summary provides the relevant information, versus one with dozens of pages, it is perfectly acceptable.
  5. Review results with business units.Once the plan is complete, review the findings with business unit leaders to make sure your assumptions are correct.
  6. Be flexible.The suggested template in this article may be too complex for some organizations; feel free to modify it as you see fit to accomplish your goals.
  1. Business unit name: Enter the business unit’s name.
  2. Head count: Enter the number of full-time staff in the business unit and, optionally, part-time staff and contractors, if applicable.
  3. Parent process: Describe the principal activities the unit performs, e.g., sales, contractor interface or investor relationship management.
  4. Priority ranking: Enter a number here for subjective ranking of process importance.
  5. Recovery time objective: Enter a time frame — e.g., one hour, one week — in this section; it describes the time a parent process has to return to business almost as usual following a disruption.
  6. Recovery point objective: Enter a time frame — e.g., one hour, one day — in this section; this is a point in time to which parent process work should be restored following a disruption.
  7. Parent process depends on: Enter names of organizations and processes the parent process depends on for normal operations.
  8. Parent process required by: Enter names of organizations and processes that depend on the parent process for normal operations.
  9. (Optional) Subprocess: Enter a description of supporting activities the unit performs, e.g., sales analysis, financial analysis.
  10. (Optional) Priority ranking: Enter a number here for subjective ranking of subprocesses and their importance to the business unit.
  11. (Optional) Recovery time objective: Enter a time frame; it describes the time a subprocess has to return to business almost as usual following a disruption.
  12. (Optional) Recovery point objective: Enter a time frame; this is a point in time to which subprocess work should be restored following a disruption.
  13. (Optional) Subprocess depends on: Enter names of organizations and processes the subprocess depends on for normal operations.
  14. (Optional) Subprocess required by: Enter names of organizations and processes that depend on the subprocess for normal operations.
  15. Quantitative impact: Enter a financial amount associated with the parent process, e.g., annual revenue generated by the process.
  16. Qualitative impact: Enter a nonfinancial impact to the company, e.g., loss of reputation, loss of customers associated with parent process.
  17. Time needed to recover staff: Enter the number of staff that need to be back to business almost as usual within specific time frames.
  18. Recovery strategy: Enter specific actions the business unit can take to recover to a business almost as usual state, e.g., work from home, relocate to an alternate area, recover to a hot site.
  19. Technology and services recovery time: Enter the system and services in each time frame that must be recovered within the specific time frame.
  20. Comments: Self-explanatory.

An excellent way to learn about a business is to conduct a business impact analysis. In addition to identifying recovery priorities and time frames, conducting a BIA can also identify opportunities for process improvement.

Please feel free to share your story and any lessons you learned, you experienced, you came across in your life in the comments below.

 
Leave a comment

Posted by on February 22, 2018 in Technical

 

Tags: , ,

What is DevOps? Role of QA in DevOps


 

Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

Article by V Rana & Vaibhav Choksi..

In most software development organizations, QA is considered a function separate from  development units. Indeed, testers and developers have their own roles and responsibilities to take care of.  However, QA and development teams should sync very closely to achieve common objectives of delivering a single, robust application that functions and behaves as per agreed standards.

When one examines the present drift toward DevOps, it’s quite evident that more and more organizations are implementing this software release model with the intention of enabling automation in software deployment. DevOps affords the framework that allows teams to move forward software on a more frequent basis. The conventional idea of a “software release” dissolves into a uninterrupted cycle of service improvement over time.

What is DevOps?

DevOps-Tools-DevOps-Tutorial-Edureka-1

DevOps is projected as the next higher level of agile software development practice that enables coding and testing to take place simultaneously with timely collaboration and communication amongst all concerned functions/ departments. It provides a framework that enables teams to speed-up software releases and gain faster time-to-market, even while ensuring quality at the same time. Traditional role of QA is to detect bugs, but in DevOps, the key responsibility of QA is to avoid the bugs from occurring in the first place

DevOps encourages development and operations teams to function as one single cohesive unit, focused on delivering business values across the IT value chain. It also helps in release management, delivery and deployment with continuous automation. Here we will discuss how DevOps can be helpful to deliver continuous integration & continuous delivery in QA..

Test automation tools are capable of performing tests, reporting outcomes and comparing results with earlier test runs. Tests carried out with these tools can be run repetitively, at any time of day. Test automation framework is a set of guidelines, coding standards, concepts, processes, practices and more, which provides an execution environment for automation test scripts. It allows the user to develop, execute and report on the automation test scripts in an effective and efficient manner.

Build Verification Test (BVT) is a set of tests run on every new build to verify that build is testable, before it is released to a test team for further testing. These test cases are fundamental functionality test cases that ensure application is stable and can be tested systematically. BVT saves time, cost, resources and efforts for test teams to setup and test a build. Test environment virtualization enables optimization of various simultaneously started processes. It can make testing much easier and efficient by eliminating certain dependencies and bring down the cost of setting one or multiple test environments. It considerably increases IT infrastructure flexibility and the efficiency of hardware usage.

 How implementing DevOps can be useful in QA?

The role of QA in DevOps becomes more of an enabler or gatekeeper that links developers and the operations teams. DevOps is an approach to highlight swift, small, iterative development and deployment of applications. DevOps flawlessly integrates all the three functions – Dev, Ops and QA as a single IT entity that deliver value.

14Tools2Take an example of an ecommerce portal. In its release environment, hourly releases are very common. In such cases, load, stress, and security testing become important. With DevOps approach, faster timely releases can be delivered by eliminating the opportunity for people to make errors. The continuous performance evaluation of the portal helps in improving customer experience.

DevOps helps in creating rapid, reliable and repeatable processes. It also benefits in achieving process improvements throughout the software development life cycle by identifying issues and recommending necessary improvements. With the help of DevOps, testers can leverage best practices in agile testing, continuous integration and test-driven development to accelerate QA processes and reduce cycle time.

What is the role of QA in DevOps?

QA has always been seen as a “gatekeeper” for software deliveries. However, in a DevOps environment, QA is part of the process itself since there are no boundaries between development and operations leading to Agile results unlike a traditional environment where development and operations are separated functions and operations team fixed issues raised by development teams.
In DevOps organizations, QA pushes out new development code to a production environment and DevOps teams provide infrastructure and tools to make the deployment process easier while simultaneously verifying that the changes are functioning as per the requirement.

In a traditional QA focused organizations, quality assurance teams focus on finding bugs while in DevOps organizations, the responsibility of quality assurance is not limited to that but to prevent them from arising in the first place. This approach helps in an environment where there is a need for newer releases every few minutes or hours. Here, manual testing is simply ruled out as an option and test automation has to be deployed.

Hourly releases are very common if we consider the release environment of an eCommerce portal. In this case, load, security and stress testing become critical and DevOps practice can help manage better quality releases since quality is an integral part of DevOps. This helps to identify and fix issues before new code goes live on the portal while checking for performance when it’s live.

DevOps helps achieve continuous improvement throughout the development cycle of a software product as QA teams can simultaneously identify issues in processes and recommend improvements wherever necessary. 

Please feel free to share your story and any lessons you learned, you experienced, you came across in your life in the comments below.

 
Leave a comment

Posted by on November 21, 2017 in Technical

 

Tags: , , ,

Lessons from Devops Experience – 1


WHAT’S DEVOPS?

Wikipedia defines DevOps as:

DevOps (a clipped compound of “development” and “operations”) is a software development method that stresses communication, collaboration, integration, automation, and measurement of cooperation between software developers and other information-technology (IT) professionals.

I like to simplify this definition by saying that DevOps is when you’re not only responsible for developing the application but you’re also responsible for running and supporting the application in your testing and production environments. As opposed to the traditional way of developing where you have the luxury of developing the application then throw it over the wall to the Ops team.

DevOps came as a response to shortcomings of the traditional way of separating development and operations activities. If we look at Damon Edwards’ article What is DevOps?, we will find a description of the traditional way, the way it worked, and what shortcomings it has. Also Mike Loukides, in one of his articles, does a great job in describing the history of the relationship between development and operations, and why we need DevOps in its modern form. I strongly recommend you read both of these articles.

devops-hero-1-87966cfbc9c5713ae047551c7b22985c

KEY COMPONENTS OF DEVOPS

From my experience, there are several key components or principles when implemented then we are set for a successful DevOps experience. Those components and principles are:

  • Automated Delivery Pipeline
  • Configuration Management
  • Regular Integration
  • Automated Monitoring & Health Checks
  • Firefighter Role
  • Infrastructure as Code

When you first look at this list you may say: “We’re already following those principles without doing DevOps”. That might be true but DevOps adds emphasis to the fact that the development team needs to be responsible for defining, understanding and implementing these components. In other words, DevOps encourages developers to dive into aspects of software delivery that Ops would traditionally own. It’s worth mentioning that from a project management point of view, DevOps tasks and stories should be treated the same way we treat those that solve direct business problems like generating a report, or providing a log-in page. That is, DevOps work needs to be well-defined, prioritized, planned, executed and tested just like other user stories or features because the same team of developers will be working on them. Unfortunately, I won’t be able to go into details about this aspect of DevOps management in this post. In the following sections, I will explain a bit what each component is all about.

1. AUTOMATED DELIVERY PIPELINE

First, let’s talk about the “pipeline” part of this terminology. We want to create a process that defines what needs to happen in what order from the moment new code is published to source control to the last step of making that code available to customers in production. That is, the pipeline is an ordered list of well-defined and stable steps that start with pushing new code and ends with that code being in production. The second aspect of an Automated Delivery Pipeline is automation. Once our steps or recipe for delivery is defined, we need to script and automate it.

2. CONFIGURATION MANAGEMENT

When we deploy the same artifact like a web application WAR file to different environments, how do we ensure that the application in Development environment is only using the Development database and that in Production it’s only using the Production database? Or more generally, how do we ensure that the application is only talking to resources specific to the environment in which it’s running? Configuration management is the answer to this problem. There are two approaches to determining what resources an application should use; we can either determine those resources at run time or at deploy time. Both approaches rely on externalizing those concerns from source code into a configuration file. Hence, it’s called configuration management.

3. REGULAR INTEGRATION

Integration in this context is simply to deploy our application to an environment where it will interact with other applications and components in the ecosystem. Agile software development puts strong emphasis on having a feedback cycle in order to validate the solution we’re implementing is indeed solving customer problems and to also detect issues early on. Having a regular schedule of integrating our application is essential in creating a feedback cycle. When our integration cycle is tighter, so would our feedback cycle.

4. AUTOMATED MONITORING & HEALTH CHECKS

Since DevOps involves operational duties, we want to know about problems before they are reported or noticed by users so we can solve them before they impact our users. We need to develop the ability to periodically and automatically check the health of our application and react appropriately when it’s in a bad state in a timely manner.

5. THE FIREFIGHTER ROLE

When the development team takes on the “ops” duties as part of implementing DevOps, it means that the team will have to deal with issues not only related to the business functionality they implemented but also with infrastructure issues, monitoring alerts going off, impaired servers and services, etc. These issues are interruptions to the team’s development activities which can result in reduced velocity and loss of concentration. An approach that I like to employ is to define a Firefighter role and rotate it among the team. All issues that crop up are directed to the Firefighter and she is tasked with resolving the issues.

Dealing with issues that crop up are opportunities to get first-hand experience at how the application actually works in real life and those insights will certainly help the application to evolve and mature.

6. INFRASTRUCTURE AS CODE

This could be the most recognizable part of DevOps but I intentionally list it at the end to emphasize that it’s not the only aspect. Over the years, many good practices came out of developing software for business problems that are widely adopted but many of those practices are not employed to infrastructure as commonly. Treating infrastructure as code does not only mean to write code for infrastructure but it also mean to apply the aforementioned best practices to infrastructure code.

CONCLUSION

All of the previous DevOps components discussed in this post are not to be treated in a “all or nothing” manner. Instead, it’s better to take them one by one. We can pick one to understand, design and implement. Once we are satisfied with its benefits, we can move on to the next one.

This list of components is not intended to be a definitive list but they are what I personally experienced to be most influential. If you have other components or principles you believe should be included, please let me know in the comments section. I’m very interested in hearing from fellow “Dev Operators” about their experience. As a follow-up to this post, I will be publishing a second blog post that will shed more light into the aforementioned components.

By Akrem Saed

 
Leave a comment

Posted by on October 25, 2017 in Technical

 

Tags: , , , ,

Testing Trends – Predictions for the next decade


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

The QA (Quality Assurance) and the Software Testing industries have observed rapid evolution in the recent past. This accounts for the emergence of several new & disruptive processes and technologies. To keep pace with the ever-changing trends and advancements in the QA and software testing fields, the businesses have the need to adapt to these rapidly shifting demographics as soon as possible.

As our world continues its digital transformation with excitement in the advancement and convergence of so many technologies- from AI, machine learning, big data and analytics, to device mesh connectivity, nor should we forget VR and AR- 2017 promises to be a year that further transforms the way we work, play and take care of ourselves through product innovation. We have already seen the application of these technologies in robotics, digital assistants, self-driving/autonomous vehicles, wearables, IoT’s, drones, etc.

The applications are everywhere, from family, kids, fitness, to gaming and education, and a lot more. What does it mean for software testing? I believe testing will continue to help fuel new and disruptive product innovation for years to come. The rising user demands and adoptions for accessing data and decision-support analytics anywhere, anytime, on any device, coupled with smart things, powered by artificial intelligence (AI) are stimulating fresh changes to the testing world.

As these trends keep changing, here are some predictions that we believe the QA and Software Testing industry might have to face in the coming times: top-7-qa-and-testing-trends-for-this-winter

Manual Testing not Dead

While test automation coverage continues to be critical to rapid product releases, hence time to market, with the continuation of digital transformation user experience, an area that is more challenging to automate, manual testing continues to be the key to success. Hence, human/manual testing will continue to be in demand. IoT testing requires testers to possess additional technical knowledge beyond domain expertise. Intelligent things, as Gartner has predicted to be part of 2017 technology trends, such as intelligent IoT’s, robots or drones will need testing by human testing beyond automation. Furthermore, with complex testing, humans must test to give it a green light before bots take over. In-sprint testing, agile development will continue to be manual. Gartner also predicts that Augmented Reality (AR) rather than Virtual Reality (VR) will begin to gain traction. AR applications will need manual testing for visual validation until automation advances and takes over.

Security Testing

As the technology industry is pacing forward with a whopping speed, there is a significant increase in the amount of information as well. As such, information security and continuous integration testing becomes a matter of concern to the larger companies to ensure the effective data flow without any leakage or breaching of confidential information. Therefore, security testing is another domain that the technology world is going to observe in the upcoming times.

Looking Forward to Agile & DevOps

Several organizations across the globe are adopting the agile and DevOps in their software creation & development. Involving programmers or the testers during the early stages of development and delivering a product in the market at a rapid rate is one of the biggest trend prediction. With help of agile testing, the testers might be able to respond to the upcoming challenges faster and in a better manner.

The DevOps technique calls for delivery of seamless integrations as well as collaboration between several departments. As such, this engages the developers into the QA processes and thus, increases the speed of deployment and promotes higher ROI.

IoT Testing

With IoT growing in leaps and bounds, more and more customers rely on IoT Testing before using the products. If the products are not tested, their functionality, security, and effectiveness – all will come under scanner. According to a HP study, 70 percent of devices in the Internet of Things are vulnerable to security problems.

Performance Engineering is replacing Performance Testing: A good user experience is the key to a successful product. Consistent performance across diverse platforms, OSs, and devices defines how much of a market can a product really capture. The need to provide the best experience to users is making organizations change their strategy. Organizations move from just Performance testing to Performance engineering is going to be swifter and the user experience is going to play a major role in that.

Digital Testing

With a majority of organizations making a foray in the digital world, the need for digital transformation will require a huge shift of focus towards digital testing. Robust strategies for digital assurance will be required for focusing on optimizing functional testing across channels.  Digital assurance strategy should focus on optimizing functional testing across maxresdefaultchannels. It is more likely to mimic a user’s behavior in today’s world.

Cloud & Mobile Applications will be on the Mainstream

The application store approval method is becoming more simplified and straightforward nowadays. As such, the world will observe a boom in the hybrid applications, including both cloud & mobile applications, which would require the users to stay online & offline equally. The QA and Software Testing industry would observe more frequent testing of the mobile & cloud applications on a larger scale. These applications can be tested by the release of a beta version and then, followed by receiving a good feedback.

The applications that interact with the cloud environment will also be a part of the hybrid application and will thus, play a major role in shaping the development of the QA and Software Testing industry. In the recent years, the world has observed substantial investments on the cloud-architecture based platforms with the help of AWS (Amazon Web Service) and Cloud Test Lab of Google. With the presence of such big names, there is expected a pressure built-up among the hybrid application developers & testers to deliver excellent applications.

BigData Testing will be BIG

We are sitting atop an explosive amount of BigData today and need to have a very strong strategy around BigData Testing. Testing datasets requires highly analytical tools, techniques, and frameworks, and is an area that is set to grow big. BigData is no more a “Fad” and the amount of data is growing with each passing day at an explosive rate. A strategy around Testing Big data is strongly needed given the rate at which it data is growing. Testing of these datasets involves various tools, techniques and frameworks to process and is going to be one of biggest trend to watch out for.

Automated API & Micro services Testing

The world has observed the evolution of API & Micro Services as a result of the digital disruption. Several large-scale companies are asking for effective API & Micro Services testing strategies. The major issues in the current times are limited tool sets that offer capabilities to test API & Micro Services. The main question here is how to setup automated verification for data completeness, ensure quality and responsiveness. As such, the QA and software testers needs to be highly surgical with respect to API testing with a light & careful approach.

These were some of the important trends in the QA and software testing industry.

Kindly do let us know what do you think about these or share your thoughts related to any other trends you feel are not included.

 

Please feel free to share your story and any lessons you learned, you experienced, you came across in your life in the comments below.

 
Leave a comment

Posted by on September 22, 2017 in Technical

 

Tags: , , ,

Software Metrics


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

Article by Pranav Sharma…

In our technical blog series we will be discussing on Software Test Metrics, Metrics types and their uses.

Software Metrics is a Measurement Based Technique which is applied to processes, products and services to supply engineering and management information and working on the information supplied to improve processes, products and services, if required.  Metrics help organization to obtain the information it needs to continue to improve its productivity, reduce errors and improve acceptance of processes, products and services and achieve the desired Goal.

For decades, industries across the world have been measuring processes to improve efficiency and quality.  You’ve probably heard the catchphrase, “If you can’t measure it, you can’t improve it.”  Without measuring, we’re guessing what “success” is.  With data, we can make educated decisions quickly.

Software metrics plays an important role in measuring attributes that are critical to the success of a software project. Measurement of these attributes helps to make the characteristics and relationships between the attributes clearer. This in turn supports informed decision making.

The aim of this document is provide to insights into the Testing Metrics and different concepts and phases involved in the Metrics. This document addresses metrics lifecycle, various software testing metrics, need for having metrics, evaluation process and arriving at ideal conclusion.

Introduction to test metrics

The field of software engineering is affected by infrequent, incomplete and inconsistent measurements. Software testing metrics are a way to measure and monitor your test activities. More importantly, they give insights into your team’s test progress, productivity, and the quality of the system under test.

Software testing is an integral part of software development, providing opportunities for measurement of process attributes. The measurement of software testing process attributes enables the management to have better insight in to the software testing process.

When we ask ourselves “What have we tested?” metrics will give us better answers than just “we have tested it.” Different teams measure various aspects depending on what they want to track and control or improve.

A metric usually conveys a result or a prediction based off the combination of data.

  • Metric is a quantitative measure of the degree to which a system, system component, or process possesses a given attribute.
  • Through test metrics we can measure software quality.
  • It gives clear measurement of quality and completeness of product.
  • It helps to understand the improvement required in project, taking decision and change in technology.
  • It helps to take the decision for next phase of activities i.e. estimate the cost and schedule of future projects.

Why Test Metrics? Why Should You Care?

The aim of collecting test metrics is to use the data for improving the test process, rather than to just show fancy reports. This includes finding tangible answers to the questions:

  • How long will it take to test?
  • How much money will it take to test?
  • How bad are the bugs?
  • How many bugs found were fixed? reopened? closed? deferred?
  • How many bugs did the test team did not find?
  • How much of the software was tested?
  • Will testing be done on time? Can the software be shipped on time?
  • How good were the tests? Are we using low-value test cases?
  • What is the cost of testing?
  • Was the test effort adequate? Could we have fit more testing in this release?

 Types of Metrics:

At high level Test Metrics can be broadly classified into two – Basic and calculated metric.

 Base Metric: Also known as direct metric.

  • Base metric constitutes raw data gathered by all test engineers throughout the testing process.
  • Base metric is prepared by Test Engineers.
  • It helps us to provide status report to test lead and project manager.

Reports contain data like:

  • Total number of test cases
  • Number of test cases Executed.
  • Number of test cases passed
  • Number of test cases failed
  • Number of test cases blocked
  • Number of test cases Re-executed.
  • Number of defects found
  • Number of defects accepted
  • Number of defects rejected
  • Number of defects deferred
  • Number of critical defects
  • Number of planned test hours
  • Number of actual test hours
  • Number of bugs found after shipping
  • Test case Execution time.

 Calculated Metric: Also known as indirect metric.

  •  Calculated metric is nothing but a conversion of Base metric data into more useful information.
  • Calculated metric is usually prepared by Test Leads.
  • It helps Test Lead to track the progress of project at different level or project as a whole

 

Please feel free to share your story and any lessons you learned, you experienced, you came across in your life in the comments below.

 
Leave a comment

Posted by on June 1, 2017 in Technical

 

Tags: , , , , , ,

Why IT Certifications Still Matter in 2017


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

Article by XLC Team…

IT is a highly dynamic field and new technologies are introduced every single day. As the industry evolves, new types of tools, technologies and sets of certifications continue to crop up. Certifications are important to ensure that you are on top of these developments and that your skills are updated.

Because of various certifications, certification paths, specializations and providers out there, it is easy for someone new to IT to be confused about where to start.  Even people who are certified might be unsure of the next steps.

There has always been a debate about how important IT certifications really are. Some believe certifications prove that an IT professional is knowledgeable but may not prove how well they can actually do the job. However, certifications provide the knowledge needed to gain experience and validate skills to potential/current employers. And in the current economy, certifications are an increasingly important tool for building skill levels, improved marketability and career opportunities.

A certification isn’t just another bullet point in your resume. It’s a powerful validation of your knowledge and skills that 9 out of 10 hiring managers trust. Organizations increasingly view certifications as an indicator of the qualification of their applicants when looking for the right candidate to fill their open positions. In today’s job market, hiring managers use certifications to:

  • Assess the skills and knowledge of a candidate.
  • Save time and resources to evaluate candidates.
  • Confirm knowledge gains.
  • Support professional development.
  • Match the need of professional training.

Why should I get certified? What are various reasons to seek certification?

Certification demonstrates your dedication, motivation and technical knowledge on a specific platform. Once you earn an IT certification, you join a select group of individuals – a peer group with demonstrated skills. Having a certification shows that you not only possess comprehensive knowledge of that technology but you also care enough about your own career to spend the time and money to get certified. Remember: You are your own best career manager!

There are various reasons why you should seek out certification in a number of IT-related programs, software or skills, but three reasons are key:

  • Getting Hired: Having an IT certification will certainly give you an advantage when hiring managers look at your resume. Competition for IT jobs can be stiff, and having a certification is a significant advantage compared to those who do not have one. In fact, a certification can be a qualifier for a position. Keep in mind that when two otherwise equal candidates are vying for the same job, the one who has a certification will have the edge over the candidate that does not. A certification may do nothing more than get your resume a second look – which may be more than your competition gets.
  • Professional Credibility: IT certifications are testaments to your skills and proficiency in a certain area.  Having earned one (or more) certifications demonstrates your dedication and motivation to professional development. Many companies will actively support their employees in earning these certifications that may even lead to promotions and raises as well. For example, becoming a CSQA Certified Professional tells hiring managers, companies and clients that you have the experience and skills needed to effectively understand, analyze and test a software application.
  • Marketability: Certifications do more than just validate your skills and experience.  It also shows potential employers that you are committed to the IT field by spending the money and time to obtain your certifications. According to few CEO’s, the right certifications could mean anywhere from an 8 to 16 percent increase in your pay, so certifications are very important when it comes to compensation.
  • Current Trending Technologies: Earning a certification on a recently released operating system, tool, platform or application will demonstrate that you have achieved what few have done up to that point: become certified on a new product. Passing an exam for a recently released certification is challenging due to the lack of study material and advice available from other certified individuals. Earning an IT certification on a new product can make you the subject matter expert in your organization – putting you in a positive light for your early efforts.
  • Personal and Professional Development: Certification training can help you cover new areas while also reinforcing the skills you already have.  Certification can also help you to network with other IT professionals.  Your next job, project or endorsement could very well come from someone you met at a study group or technical conference related to a certain certification exam.  Certification can help you meet IT professionals who have similar interests and specialties as you.
  • Job Retention: In a volatile economic environment, businesses are always looking for ways to cut costs. That may mean jobs are on the line. This is when having an IT certification (or more) can mean the difference between keeping your job and having a chance to seek a new one. Earning a certification demonstrates that you are determined to enhance your skill set and knowledge – which benefits you and your employer. The bottom line is you must invest in yourself.
  • Salary Maintenance : Many companies, are asking employees to take salary cuts. With a certification, companies will be much more likely to pay you what you’re really worth. That way, if you’re forced to take a salary cut, you’ll be making what you should be making, so it’ll hurt a lot less.
  • Promotion Eligibility: New and timely certifications are the key to standing out in a heap of resumes and having a leg up on the competition. Want to move up the corporate ladder or into a better, higher-paying job in your company, then you will need to learn new technologies or enhance the skills you currently possess. There is no better way to show this than to earn a new certification or progress further up the certification chain in a current area of expertise.

What are various certification options?

There are a lot of answers to these questions, really.  It would all depend on what you need for your job, what your career goals are, and what you are interested in.

There are certain certifications that are appropriate for wherever you are at in your career.  For example, it may help new graduates land entry-level positions if they pursue basic certifications such as ISTQB, CSTE,  Microsoft Certified Professional, Sun Certified Java Programmer and Cisco’s CCNA, etc.

These certifications validate the skills they learned and can help make up for not having the right work experience for the job. In fact, no matter where you are in your IT career, certifications will almost always give you an edge over non-certified IT professionals.

Choosing your certification path depends on two things: Where you are now and where you want to go in your IT career, and what functions and work-related experience you have in your profession. Knowing these will help you wade through the numerous certification providers that offer different paths. You will also have to decide whether to go for vendor-neutral certifications or vendor-specific ones.

The certifications provided by the biggest certifications providers, are:

ASQ American society for quality , Scrum certifications, Tricentis Tosca certifications, IBM certifications, Six Sigma Certified Six Sigma Champion,International Institute for Software Testing , American society for quality Quality Improvement Associate , Project Management Professional , SSBB Six sigma black belt certification, ISEBQualification in software testing , Associate In General Insurance (AINS)ISTQB Certified tester , Mercury tools certificationsCSQA Certified software quality analyst , Segue tools certifications, JIRA Certifications

How to Prepare for a Certification Test

No matter which test you want to take, you will always need to prepare.  Here are some general tips on how to prepare for your certification exam:

  • Practice makes perfect.

Practice tests will help you tremendously in passing the test.  Working on practice tests can help you know which areas you need to brush up on, as well as making you familiar with the actual test.  You will be able to simulate just what it will be like to answer the test with the time limits, instructions and other variables that are present during the actual test.

  • Make sure to keep the time.

While doing practice tests, take note of the time you need to complete it.  You will need this in order to pace yourself so that you could complete a certification exam within the allotted time.  If, for instance, you take four hours to finish an exam that has an allotted time of 1.5 hours, then you might not be ready to take at all.

  • Study groups help.

Study groups are a great way to cover examination topics and battle the boredom that comes from studying alone.  Chances are, there are colleagues in your office who are studying for the same exams.  If not, then you can probably find a study group on Craigslist or online certification forums.

  1. Use different preparation methods.

Fortunately for you, there are a lot of ways to study for an exam.  You can get books, participate in an online forum, go through a formal classroom review, check out web-based training and talk to people who have taken the same tests.  Do not just rely on one preparation method because it might not be enough.

Whatever you do, please be sure to not depend totally on Brain dumps. How will a CSTE certification, for example, help you if you really do not know anything about application testing and testing practices?

  1. Make sure you are ready for the test.

This probably goes without saying, but if you have prepared and you still feel that you are not ready for the test, do not go through with it.  And when you do feel that you are ready, make sure that you get enough rest and sleep on the night before the exam.

Above all, you should have a clear understanding of what skills will be covered on the specific test you’ll be taking.

The main thing to keep in mind is that if your job requires certification on a specific tool or technology, or if gaining that certification will help your resume stand out, it’s smart to invest time and money to achieve it. This is the biggest reason why IT professionals pursue IT certifications.  It helps validate your skills and expertise in your current job.

Used properly, certifications make an excellent tool to boost your career progression. Certifications open doors into new employment opportunities and can put you ahead of peers when seeking promotions. Remember that certifications can improve your career and brighten your future. They may be time-consuming and difficult to earn, but you’ll find the end results well worth the time, effort, and money involved.

Go ahead, put your certificate on your wall or add those letters after your name!

Aim high and good luck!

 

Please feel free to share your story and any lessons you learned, you experienced, you came across in your life in the comments below.

 
Leave a comment

Posted by on January 2, 2017 in Technical

 

Need for Testing Center of Excellence(TCoE)


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

Testing Center of Excellence (TCoE) is a framework where testing is maintained as a centralized service and shared across the organization. Regardless of a company’s experience, the objective is the same – build technical expertise in the platform, often referred to as a center of excellence. Every organization across the globe wishes to have a team that nurtures an environment of innovation, thereby helping it to thrive in the market and beat the competition. However, while earlier managing business processes and QA used to be on a per project basis, today, these have become a process of continuous planning, integration, and management. This has led to the development of an organizational model based on testing center of excellence (TCoE).T1

A TCoE is made up of testing processes, people, tools operating as a shared services function in order to provide testing services with optimal benefits across the test organization. TCoEs can accrue many benefits to an organization in terms of improved quality, lesser time to market and lower cost of ownership.

WHAT IS A CENTER OF EXCELLENCE (COE)?

A Center of Excellence (CoE) is a team of people that are knowledgeable, promote, share and collaborate on a specific technical focus area. They follow best practice, and are passionate about the chosen technology. They focus on utilizing the technology to achieve the business objectives efficiently and effectively. Ideally, and depending on the business needs, a CoE should be made up of several professional disciplines, either as full-time or part-time members.

A QA Center of Excellence provides your teams with a set of standard, yet smartly flexible, processes and templates for use across all of your IT projects. The processes and templates established by the Center of Excellence can be used for both in-house custom-developed applications as well as vendor-owned COTS (commercial off-the-shelf) systems. Most companies utilize a nice mixture of both.

Why move to TCoE model?

Traditional “siloed test teams” are distributed across multiple business units (or) groups and they are governed by different managers. Because of this organizational design, test teams cannot ensure testing consistency across the organization as they are controlled by managers who have their own priorities and political realities about the importance and budget allocation for testing. This led to massive inefficiencies across the organization in terms of costs, reusing best practices, quality of testing, effective utilization of teams, hardware & software.

t.jpgA testing centre of excellence solves this problem by the centralization of all test assets (people, hardware infrastructure, software licenses, process assets) across the organization and offering “testing” as a shared service across multiple lines of business units (or) groups. Collapsing multiple test groups into a centralized testing group will lead to better efficiencies due to economies of scale & optimization. Testing Centres of Excellence (TCoE) framework ties all the strategic assets of the testing such as people, process, hardware & tools which are held together through enablers and a robust governance model. Transformation of a “siloed testing organization” to a “TCoE based testing organization”.

HOW TO implement TCoE?

  1. Get an approval and agreement from all stake holders of the organization stating the need to establish a TCoE, and ensure that the multiple teams have clarity regarding the changes that will result due to implementation of TCoE.
  2. Analyze the current business processes, gauge the improvements that need to be made, and define clear processes and templates for the SDLC and STLC workflows that need to be implemented to bring about the required changes. Additionally, also reach a consensus regarding the intervals at which checks will be conducted to see if the processes are being followed.
  3. Identify what needs to be tested across the board quickly, and share observations and metrics that help add required value.T2
  4. Implement required best practices using well researched and scenario-specific tools that will speed up the process and help teams focus on other important activities.
  5. Keep working on the improvements so as to generate better ROI and establish an atmosphere of quality across the board.

WHAT VALUE SHOULD A COE PROVIDE TO YOUR BUSINESS?

A testing center of excellence (TCoE) is a framework where testing is maintained as a centralized service and shared across the organization. A well-oiled CoE should provide many valuable benefits to your business. To name but a few:

  1. Guidance & Training By sharing their expertise with everyone else in the business, from new recruits to non-technical business users, everyone can benefit from increased understanding.
  2. Best Practices The team should be promoting the right way to do things across the business, both technically and from a process perspective.
  3. News Updates on what’s new with the platform (and it’s competitors), important public announcements and any business-impacting items, such as bugs and support holidays.
  4. Championing & Advice New business streams often need advice and/or encouragement when considering a platform change. Streamlining a business onto common platforms has obvious benefits, but can often face resistance from less forward-thinking departments.
  5. Governance Provide the guidance and have the autonomy to freely advise the business on the right way to invest time, money and resources to ensure results. They are the experts you’ve invested in, so listen to their advice!

Conclusion

Many enterprises have established testing centres of excellence to improve the release quality of the applications (or) products in production environment, deliver better business value to the internal customers of testing, improve the overall maturity of testing & optimize the testing costs across the enterprise. Unless the promised benefits are measured against the actual delivered benefits, the CIO/Head of Testing will not be able to demonstrate the effectiveness of the TCoE. This framework can help the IT leadership in an enterprise to measure, showcase and in some cases figure out what needs to be done to really deliver the intended benefits of a testing center of excellence.

Please feel free to share your story and any lessons you learned, you experienced, you came across in your life in the comments below.

 
2 Comments

Posted by on December 29, 2016 in Technical

 

Tags: , , , , ,

Guidewire Insurance Suite


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

Article by Prawin and Team

Insurance is a form of risk management. It is a contract between two parties called insured & insurer. It is purchased to avoid the possibility of a large, potential future loss. Insurance is a system that enables a person, family, or business to transfer the costs of losses to an insurance company. gw

Guidewire Insurance Suite provides a complete set of applications to support core Insurance operations—underwriting, policy administration, billing, and claims management, helps to replace legacy systems and transform business. Insurance Suite’s comprehensive applications are built on a common platform, covering the Property/Casualty insurance life-cycle while providing the deep functionality to replace existing legacy systems. Guidewire suite is a proven solution that promotes optimized insurance operations through insights derived from an engaged global customer community, and empowers employees, agents, and customers to respond and adapt to market change

PolicyCenter is a web-based underwriting and policy administration system designed for personal and commercial line carriers in the property and casualty insurance (P&C) industry. In PolicyCenter, producers and underwriters can submit applications, renew policies, and manage policy changes. Auditing is available for certain types of policies.

GW – PolicyCenter Link

BillingCenter is a web-based billing system and an enterprise software application that coordinates, executes, and records receivables and transactions. BillingCenter manages the end-to-end billing processes, including complex and customized billing arrangements
(such as group, list, or mortgage billing and multi-payer or multi-location billing).

GW – BillingCenter Link

ClaimCenter is a web-based enterprise software application designed to manage the process of reporting, verifying, and making payments on claims against a policy. It manages the claims process from FNOL through execution of financial transactions, including the payment and setting of reserves.

GW – ClaimsCenter

gw-2Contact Manager is an Integrated part in the GuideWire complete suite. ContactManager is a web-based enterprise software application designed to manage the contact details of the User’s, Agents, Vendor’s, Customer’s etc. It is like a centralized database of the contact details of all the individuals and the organization. ContactManager is integrated with Policy center, Billing Center & Claims Center. It provides a scope to retrieve the details by using search functionality

GW – ContactManager Link

The Guidewire platform is a java-based application that is designed to be speedly customized for each customers line of business. The ability to support numerous various types of policies with just a few changes of the configuration makes Guidewire a good tool to get your insurance business up and running immediately. Guidewire offers modules that support the different facets of the insurance business, such as the Billing, Claims, and the issuance of Policies. By supplying the insurance platform as a set of modules, each organization can implement the platform over time in any order that best serves the company.

Please feel free to share your story and any lessons you learned, you experienced, you came across in your life in the comments below.

 
1 Comment

Posted by on July 18, 2016 in Technical

 

Tags: , , ,

Lessons learnt from my Project failure


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

Article by Prawin..

When I started my career in 2007,  first time I heard from my Manager that we lost our project. I dint understand what it mean. As years passed, I used to hear, we failed to deliver, our project/product failed etc etc…After 09 years from there, today I failed as a Project Lead  for first time. I am unable to take that, reason being successfully Lead project for 3 years and failed for some unknown reason .I spent many sleepless nights and started to do  RCA, Route Cause Analysis and listed down the thoughts, experiences on reasons for my projects failure.

Every software project begins with big dreams and grand visions. Somewhere in an alternative universe, there is a project that fulfills every dream but all too often software projects in our universe stumble toward the finish line and sometimes cross it. It is so important to evaluate your project at the start. Closely examine all, road-blocks, hurdles, hills, detours, potholes, manholes or even an angry flock of birds. I think you get the point. Before starting your project, knowing exactly what lays ahead lets the project manager, team, and client mitigate associated risks. Project failure can happen in any organization and to any project. There are an infinite number of reasons for failure. Sometimes it’s out of the control of a project manager and/or the team members. Sometimes failure is controllable.

infographic1finalv31.png

No Clear Vision and Failure to set proper Goals/Milestones: If you do not know where you are going you will end nowhere. Every project team should have clear vision and proper achievable goals should be set. Project Manager should set SMART goals and guide team towards the project goals.

Inadequate Planning or Poor Preparation: You need to have a clear vision of what you’re going to do, in advance – as much as possible. In simple words, planning should be done properly. Otherwise, you may find yourself up stream without a paddle. You need to know what project success looks like at the beginning and don’t loose focus of it. Hence, if you don’t have a clear focus at the at the earliest stage of the process, you are making things harder on yourself. Have a meeting, even if it is lengthy, with stakeholders to discuss their expectations on cost, time and product quality. Know how you will execute your tasks in order to meet everyone’s expectations

Working without purpose: Building software for the sake of building software is not efficient. Our team need to understand the project’s purpose and believe it’s something worth building. That is why, the best projects are the ones you can relate to, the ones you really enjoy working on. This should be a major factor in our new business strategy. A team who believes in the work they’re doing is a happy and efficient team.

Unclear project requirements: Project specifications should be laid out at the early stages of planning. Unfortunately, it’s possible that managers and executives weren’t clear on the scope of the project to begin with, thereby leaving developers, QA unsure of what features would be needed. For instance, if the project is being built by developers who don’t understand how the software will need to scale, they’ll be unsure as to how to cater to your company’s increasing demands. All the requirements should be properly documented and a requirements walk-through session is conducted with Dev and QA teams.

Setting Up Poor Teams: In most of the teams, we see candidates who are not the right fit. reason might skill gap, experience level, domain knowledge, etc. Having the right persons, doing the right job according to the project requirement is more important for project success. Project Manager need to make sure we set up the right teams(Development, Back-end, QA, Design, Database, Marketing, Sales, Finance, etc) at right time with right candidates and checking if they are doing their job right.

why-software-fails.gifBad Architectural Designs: Architectural decisions can last a lifetime — especially if your ego is thoroughly invested in them and you can’t change them. Project managers have to be ready to notice when the main architectural plan is not working so big decisions can be made. If leadership can’t notice when their plans go awry, the coders in the trenches will keep toiling away trying to make headway against an impossible headwind caused by a bad architectural model.

  Poor Communication and Lack of Transparency: Effective communication is crucial to the success of any project. Just because you’ve understood the client’s requirements, doesn’t mean that your developers, QA have. Sometimes, employees are too shy to voice doubts or ask questions.  Internal communication between the teams is more important, especially when they work on the same project. Not having a healthy work environment is another thing which may lead your project to failure because when the team manages to share knowledge and exchange information and ideas openly and willingly, they are more likely to create strong business relationships with their customers. All piece of information should be shared with everyone team. There should transparency in every activity and details shared across.

Picking the wrong technology or tools: Even if you plan carefully and draw up the correct list of features for the project, things may fail if you use the wrong technology to build out the feature set. Databases, for instance, are designed to be as general and flexible as possible, but they have architectural limitations. If you try to push them to deliver something they’re not designed to do, you could watch them slow to a virtual halt when they scale. Or you may start off with a NoSQL database because they sound so cool only to discover later that you really need ACID-grade transactions to keep things consistent and the database doesn’t offer them. Oops.

Poor prioritization: Good planners draw up a list of features and prioritize them. But sometimes the priorities don’t line up with the reality of implementing them. In the worst cases, the most important features are also the hardest to create. What are your developers to do? If they concentrate on the most important feature, they will make no progress and may end up delivering none of the functionality. But if they start knocking off the easy ones, well, they may end up with something that’s worthless. Good planning requires more than a checklist. The architectural vision must take into account the needs and the cost of delivering them.

Lack of proper Project Manager: Every team, no matter how skilful, needs a good project manager. Without one, work becomes chaotic and team members get confused. Not having a strong management guiding the team leads eventually to a mediocre product that is delivered too late. A good PM has to monitor, control, estimate coordinate, guide and plan everything from beginning to end but it takes more than that to be successful. A good PM brings everyone onto same page

Over-promising just to close the deal: If you over-promise just to win the show or situation, you’ll most likely end up under-delivering. There’s nothing more damaging to your client’s trust than broken commitments. Transparency and honesty go a long way here.

Moving the goalposts too often: Changing the project’s objectives and specifications too often without clearly communicating a reason for it can cause your team a lot of fatigue and frustration, not to mention it could possibly derail the project altogether.

Proper Knowledge Transfer or Handovers should be planned: When any team member leaves the project or if anew team member is recruited into team, proper KT’s need to be planned to make sure knowledge is shared to new team members to avoid the knowledge gaps. It is key point to avoid the Single Point failures.

Lack of Periodic assessment: Creating a plan for a project isn’t enough. Someone must monitor the plan and check the progress of team. That person can be a project manager, IT manager, or Scrum Master—who doesn’t matter as much as the fact that someone is monitoring progress. Inadequate project management oversight accounts for 20 percent of failed projects. To prevent this cause of failure, you must have someone in charge of monitoring progress toward project goals.

Team member procrastination: Team member procrastination goes hand-in-hand with poor project management. It can turn to be main reason for project failure. If developers are procrastinating—or if the people the developers are depending on aren’t supplying answers, code, or services—it should be obvious that the project plan is headed off track. In addition to monitoring the plan, the person in charge of overseeing the project must keep a record of issues and requests, and she must push those responsible to deliver.

Look for someone who’s detail-oriented, ready to take risks, organized, coordinates with everyone, understands business needs & team needs, prioritizes tasks, able to take dynamic decisions without being influenced and who is ASSERTIVE.. The manager needs to be willing to escalate issues to the appropriate channels when necessary in order to resolve risks and impediments that—if unresolved—could lead to project failure.

Building software is an art that requires expertise and thorough planning for good execution. The causes of project failure are wide and varied. In addition promised resources may not be available when required, executives may fail to grasp the full reasons behind instigating a project or there may be political reasons for continuing with a clearly unviable project. By addressing the areas we’ve discussed, you stand a great chance of running a successful software project. Good luck!

 

Please feel free to share your story and any lessons you learned, you experienced, you came across in your life in the comments below.

 
Leave a comment

Posted by on March 18, 2016 in Technical

 

Tags: , , , ,

✻ღ’✶♪.✻ ✿ Are we really free in India??✿.ღ’✶♪*.✻


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me.

Article by Common MAN…

The nation is celebrating the 68th Independence Day. The people are ready to express their patriotic feelings in one way or the other. But the common MAN are still waiting to see a free India.

On 15th August, I suddenly see the TV channels, radio stations, POLITICindia-bleeding-_4IANS and even the magazines and the newspapers off loading information about Independence day, freedom and patriotism, they reinforce the fact that each one of us should really take pride in the fact that we are a free country.  

I just wonder, how short is the public memory or is it just me who feels in a country where every second day there is a case of honour killing, caste discrimination, regional discrimination and words scheduled caste and dalits are still a common parlance, what freedom are really talking about.

If i forget the larger picture, even after 68 yrs of independence WOMEN dont feel like stepping out of the house alone after 8, what freedom are we talking about, when there is a rape happening every 10 minutes somewhere in the country, why are we even celebrating this freedom?

I just wonder, politicians fighting like STRAY DOGS, saying these people don’t belong to our region or don’t belong to our place, then where we are from?

I don’t think so we are free at all, especially for a woman in this country being free is an after thought as there are too many things that is still keeping women in dark, But on a contrary note also people here are free to indulge in as much bribery & corruption, as one likes. There, the words Dalits, caste, religion etc. don’t mean anything. You can even commit murder & get away with it.

Are we really free in India??

india-bleeding-pradnya-chavanIndependence is a word useful for politicians on August 15, who take seriously. We all know it by now and there is no sense in acting as if we don’t: August 15 is just another holiday. The malls will be full, new films will be released and the middle class will eat out as if it is not going to get another meal. This day truly illustrates how much in-dependent we have all become: we cannot live without an-other.

The freedom fighters fought for the freedom of the country. Now COMMON MAN is fighting for his own Freedom in the country with mean Politicians & Politics.

Whatever happens, As an INDIAN I SAY

KABHI BHI, KAHIN BHI, KUCH BHI MERI JAAN,

YAHI TO HAI MERA BHARAT MAHAAN

Please feel free to share your story and any lessons you learned, you experienced , you came across in your life in the comments below.

 
2 Comments

Posted by on August 15, 2014 in Experiences of Life., Technical

 

Is Beauty a Joy Forever?


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me…….

Article by Susheel…

A picture speaks louder than thousand words.

A motion picture speaks the loudest …

imagesThe phrase that often comes is ‘is advertising reflects the society or society reflects in advertising?

but the truth :advertising is reinforcing a stereotypical image of women in society.

Is Beauty a Joy Forever? yes,young women as models are always objectifying in adds…

A bikini model walks out of water on to the beach…. and u may ask “what wrong?”.. not until u know the product it was promoting is-an Indian cement brand.and the voice over said ‘vishwas hai, isme kush kas hey.’

Not just this there are product categories that often stereotype women.many deodorants ads,for instance ,make us believe that if  you wear them you become a chick magnet.It is not just in India.. objectifying women ,also obviously seen in developed  countries as well.Advertisers use beautiful women to attract attention to products because they believe the beautiful are credible, desirable, and aspiration. But these advertisers has to stop looking at the thinking subject and concentrate on the” humanity subject and how to define “beauty”.

Most of the brands have consciously checked the way they portrait the women in their communication.brands like images (3),tata,nirma have done great work demolish the type cast.

Advertisers and Agencies both need to carefully look into content and context.”The creative person writing the copy has a blank paper in front , and they have a choice.”

they can choose to write about a girl who is presented as a gift to the boy who wins a bike ride, or they can write about a girl riding a bike.

Because the creative people have the power to influence mindsets and change behaviors. So realize that you have options and can choose to tell better stories.

And as individuals it is we who has to decide what to encourage and what not to……

Please feel free to share your story and any lessons you learned, you experienced , you came across in your life in the comments below.

 

HL7 – A Standard That HealthCare Industry Speaks In


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me…….

The article was written by VijayaLakshmi…

Guys!! Tired of reading technical stuff! Here is a piece of Health care messaging standard (HL7- Health Level 7)! Treat your knowledge buds!! Happy Reading!!

 

Real Time Scenario – HL7 need:

Marie is a CRF (Chronic Renal Failure) patient having her dialysis at Hospital X (Let’s assume!), seeking to have kidney transplantation at Hospital Y as the former is not providing it. When she visited Hospital Y for the registration, here is the conversation with Alan-Administrative staff of Hospital Y.

These challenges concern the inability to share and manage data within and across the healthcare organizations.

These can be overcome if organizations follow the same standards when setting up their information management systems. HL7 is that of standard.

What is HL7?

Health Level 7 – A healthcare specific communication standard for data exchange between computer applications.

Health Level 7, the ANSI standard for information interchange between foreign systems in the healthcare industry. The “7” refers to the fact that the protocol is designed to address the 7th layer of the International Standards Organization’s Open System Interconnect model (the application layer).  The application level addresses definition of the data to be exchanged, the timing of the interchange, and the communication of certain errors to the application. The seventh level supports such functions as security checks, participant identification, availability checks, exchange mechanism negotiations and, most importantly, data exchange structuring.

Why HL7?

There are several health care standards development efforts currently underway throughout the world. Why then, embrace HL7? HL7 is singular as it focuses on the interface requirements of the entire health care organization, while most other efforts focus on the requirements of a particular department. Moreover, on an ongoing basis, HL7 develops a set of protocols on the fastest possible track that is both responsive and responsible to its members. The group addresses the unique requirements of already installed hospital and departmental systems, some of which use mature technologies.

HL7 Message Types and Versions:

There are four primary HL7 standard message types:

Messages type and function/ area of healthcare service get communicated.

  • Patient Administration (ADT) –Patient admission details (Demographics, visit, insurance…etc)
  • Orders (ORMs) – Orders to pharmacy/healthcare services
  • Results (ORUs) – Lab/diagnostic results from laboratory
  • Charges (DFTs) – Financial charges

HL7 organization takes care of message standards development. Any new versioning/ development commence from here.

Currently Version 2.1 to 2.7 is available. V2.7 is the latest release from HL7 organization. V3 is also available; since it is not backward compatible adoption of this is not very frequent!

 

HL7 Message Structure:

Each HL7 standard message (V 2.x) is composed of groups and segments where:

  • Groups contain segments or groups
  • Segments contain fields
  • Fields contain components
  • Components contain sub-components

Example HL7 Message (V 2.4):

MSH|^~\&|HMS||SystemB||201110241110||ADT^A05|99122|D|2.4|||AL|NE|||

EVN|A05|201110241109||ALE|traina|

PID||1112221212|HE1000044||JONES^SIMON^^^MR||19700912|M|||6 REDBOURNE ROAD^GRIMSBY^SOUTH HUMBERSIDE^^DN33 2UZ||01422 844745||32|2|RC|||||||||||||||01

PV1|1|1|B2^DPOW|11|1234||DONLA|G3413809||100|Do not cancel this patient||||||DONLA|I|||||||||||||||||||||DPOW||||||||||||V|G3413809^B81003

PV2||1|11|||||200609021000||4||Lap Chole||||||||||||||||||||||||

AL1|1||11

ZWL|20061124|Crocin|3|20110911|20110915|||Hep B|20111011|””||||01||||

In this example:

  • MSH, EVN, PID, PV1, PV2, AL1, ZWL – segments/groups
  • Each segment is unique on its data. For eg. PID passes only patient demographics, PV1 for patient visit, AL1 for allergies..etc
  • Each field in segment separated by delimiter. MSH segment has encoding characters (^~|&), application that’s ends data (HMS), application that receives data (SystemB)..etc fields.
  • Each field in segment can be denoted as MSH.1, MSH.2..etc
  • MSH.9 has the value ‘ADT^A05’. This is a composite field which has components ADT(Message Type) and A05(Message Name).Any subcomponent can be denoted as MSH.9.1 –ADT, MSH.9.2 –A05

Note: Version 3 HL7 is of a typical xml format.

HL7 interface architecture:

 Let’s say two healthcare systems A and B would like to have a HL7 interface for their communication needs. Here is the brief of it.

TCP protocol is used generally for HL7 messages communication. Apart from HL7, different formats of patient data (XML, text files, X12…etc) from desperate healthcare systems can be passed through HL7 interface and this can get the data in HL7 format to destination. Patient identity can be found by passing their SSN (Social Security Number) across applications.

Very own interfaces can be developed using industry dominant java/.net software. Yet there are many integration engines available. Mirth Connect, Biz talk, cloverleaf..etc are the well known HL7 interface engines available in the market.

References:

  1. http://www.hl7.org/
  2. www.uhnres.utoronto.ca/ehealth/html/glossary/eh_glossary.shtml
  3. http://www.eleccott.com/glossary1.htm

Conclusion:  Health-Care is a sensitive domain where customer/patient’s expectations are very high and welfare is expected in no-time, it is very important how well the administration takes care of its robustness in communication. By considering this, practice of HL7 protocol needs to be implemented in a big way.

 

Please feel free to share your opinion, your relation, attachment with your father in your words  in the comments below.

 
Leave a comment

Posted by on November 9, 2012 in Technical

 

World of Game Testers


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me…….

The article was written by Janarthan…. 

Game testing, a subset of game development, is a software testing process for quality control of video games.The primary function of game testing is the discovery and documentation of software defects (bugs). Interactive entertainment software testing is a highly technical field requiring computing expertise, analytic competence, critical evaluation skills, and endurance.In recent years the field of game testing has come under fire for being excessively strenuous and unrewarding, both financially and emotionally.

Game Testing industry is expanding really fast and now there are many “game design” and “video game testing” openings available in market. Here is a very interesting article on game testing which will give you a brief idea about game testing industry!

Introduction To Game Testing Industry :

The video game testing industry is set to become the largest industry. In spite of the recession, there was no dearth in the sales of the game titles, although the game console sales were hit and the game testing companies had to revamp their strategies.

Gaming had its ups and downs over the years but it continues to grow leaps and bounds. Facebook application games are really path breaking with budding developers experimenting their knowledge. Episodic games are the new thing. Games for the iPhone are the new frontier.

So, no one in the game industry knows where games will be even two or three years from now. The only thing they know is that everything is changing and that the games that are released in a few years will be different from what we have now.

Getting a video game tester job is not necessarily very easy. The prime qualifications for the job / career is the ability to be a qualified video games player, playing at every level, and using as many pathways in as many different combinations as possible.

Following Jobs are made available by Gaming Industry:

  • Video game programming Jobs (designing video games)
  • Video game testing jobs

Designing Video games requires skilled and experienced video game designers. Testing video games is equally challenging as game tester needs to have a solid writing skill, very good communication skill and habit to keep attention for details.

Video game testers play critical role in game development industry. As video game programmers spend years deigning video games and video game tester needs to make sure it’s ready for release in very short time span.

Video game testing plays a crucial role in the development of new video games. Game testers put games through the paces while still in development and when finished, to ensure gamers have a good experience. Game testers conduct video game QA, or quality assurance, finding mistakes, bugs and other problems that could annoy or turn off the gaming community if they’re not fixed.

Game Testing Process?

Computer games take from one to three years to develop (depending on scale). Testing begins late in the development process, sometimes from halfway to 75% into development (it starts so late because, until then, there is little to play or test).

Once the testers get a version, they begin playing the game. Testers must carefully note any errors they uncover. These may range from bugs to art issues to logic errors. Some bugs are easy to document but many are hard to describe and may take several steps to describe so a developer can replicate or find the bug. On a large-scale game with numerous testers, a tester must first determine whether the bug has already been reported before they can log the bugs themselves. Once a bug has been reported as fixed, the tester has to go back and verify that the fix works – and occasionally return to verify that is has not reappeared.

Game Testing Strategy:

Evaluation of game rules:

Game rules adequately explain operation of all components of the game including features, free games etc. Game functions as defined by rules.

UI, Functional, Performance and Compatibility test:

Verify Games outcome and data are correctly shown when games are played. Verify Game Functionality such as Game Progress, game outcomes, handling of incomplete and re-started games, multi player games.

Verification the Integration points:

Check if game win determination aligns with game rules.

Reviewing gaming procedures:

Procedures will be reviewed by System management, player account management, tournaments and promotions.

Infrastructure and security review:

Require to verify all equipment and network implementation. Secure and reliable operation for example time synchronization, OS reliability and security.

How to Test Games?

This process is almost similar to product or web application testing. Here is the typical game testing process:

Identification: First analyze and identify the game rules and behavior

Functional Testing: Ensure game works as intended. This also includes integration testing with third party tools used if any.

OS and Browser compatibility: Most critical game testing part is to ensure game works on required Operating systems. For online games check functionality on all intended browsers.

Performance testing: This becomes critical for online games if gaming site handles betting on game. Game testers must verify if Game Testing site smoothly handles customer load.

Multi player Testing: For multi player games you need to verify the game functionality to handle all players and functionality with fair distribution of game resources to all players.

Reporting: Bug reporting to developers. Bug evidence need to produced and submitted through bug reporting system.

Analysis: Developers hold the responsibility to fix the bugs.

Verification: After the fix, bug need to be verified by the testers to confirm that it shouldn’t reappear.

 

 

1.       Check for background music and sound effects

– ON/OFF sound & background music check

– Put the device into sleep mode n check

– Receive the call and check

– Verify if sound effects are in sync with action

– ON/OFF device sound (native sound) and check

– Check for vibration effect if present

2.       User Interface

– Check in Landscape/Portrait mode

– Check for animation, movement of character, graphics, Zoom In/Out (all gestures) etc

– There should not be any clipping

– Test when one object overlaps with another

– Verify if loading indicator is displayed wherever required

– Character should not move out of the screen/specified area

– Test for enable and disable images/icons/buttons etc

– Check for screen title

– Check for message title, message description, label (should be appropriate)

– Check scrolling

– Font

– Check other objects too (ex -if it’s a car race- you need to look at road, people, other objects like buildings etc)

3.       Performance (imp)

– Check the loading time of a game

– Make sure that any action is not taking considerable time, game flow should be fast

4.       Score

– Score calculation

– Verify leader boards General/All time/Weekly/local etc

– Check the score registration functionality

– Check the format (whether, coma is required in score etc ideally if customer is a foreigner coma should be in millions not in thousands)

– Check for level completion syncs with the score

5.       Time Out

– Check for time out

– Do the actions when time-out yet to happen

6.       Multitasking

– Switch b/w different apps and play game, check for sound, score, UI, time-out etc

7.       Pause

– Check if game is paused when call received or multitasking or sleep mode

8.       Save Settings

– Turnoff and ON device, check if settings are saved

– Log out /on, check same

– User should not lose his game in above conditions

9.       User profile

– Put an all types of images in Player profile n check

– Put special character, numbers, space in username and check

– Password should be in masked

10.   Push notifications

11.   Chat feature

– Check the profile images

– Max limit of chat description

– Enter empty string, special character and check

– For an opponent, there should be a notification that he has received a message

12.   Functionality

– Check game area, game logic

– play till last level

– get the cheat codes from development team and check all the levels

– Check for the features that will be unlocked level-wise

– Check for bonus score

– Check the score hike when level gets increased

– Check for multi-tap action (example in a car race we hold accelerator and left/right turn button simultaneously)

– Menu options

– Different game modes/location

13.   Help & About Screen

– Its must

– Should be in easily understandable format

– Free from spelling mistakes

– URL should be hyperlinked (depends)

14.   Multiplayer game

– Session expiry check

– login/log out

– Registration (Sign Up)

– Verify account (receive verification mail)

– Login with registered but not verified account (without clicking verification link)

– Forgot password checks (many cases here)

– Game flow

– Check for WIN/lost/Draw

– Check user statistics graph

– Challenge/Decline challenge/receive challenge

– Check for forfeit

– Check when player 2’s turn is on Player 1 is not able to do actions (should not be able to forfeit also)

– Check for pass turn

– Check for time-out (for one player)

– Check the score for both the players till game ends

15.   Memory leak

– Check the game when device memory is low

16. N/w check

– N/w messages if n/w is not present

– Check if what happens when n/w not presents and user plays a move (whether score submitted for that move etc)

17.   Check for localization (Support of different languages)

– Check for time format

– Change the device time, format etc

18.   Size

– User won’t like if your game takes lot of device space, so keep one eye on game file size

19.   Device, OS

– Check in supported screen sizes and os versions

20.   Depends on platform

– Sometime we need to check as per os guidelines as well. For ex in Wp7 we need to check in 2 backgrounds (light/dark).


Game Testing Tips/secrets:

1) Understand Random Number Generator evaluation (RNG): This is very important to add unpredictability in game. In most games this RNG system is used to map game outcomes.

2) First identify the “game algorithm” from Source code to identify issues in game application.

3) Verify the source code for appropriate use of random numbers and error handling. (Only if you know the source code)

4) Validate and evaluate the game predefined rules.

5) Verify consistency of game rules.

6) Make sure offensive content or material is never displayed.

7) Regularly Check Game history and system event logs.

8 ) Make sure Games outcome are displayed for a reasonable time.

9) Irrespective of Single/Multi player games we need to validate bandwidth and client software.

10) Verify Minimum/maximum limits of bets, deposits and other critical game symbols.

11) Verify correct game and system operation after game fail over and recovery.

12) Always verify all reports for data accuracy. Verify reports for date, time, number of wins, money etc.

13) Test System requirements. This is very important in game testing. Verify all the infrastructure and security requirements, Game equipment, network and game synchronization with OS.

14) Make sure sufficient information is always available to users to protect game players.

Game Testing Jobs:

Gaming field is getting much better day by day and Game Career as a Game designer or tester is very bright. There are many game testing professionals making decent amount of money as a video game testers, working from home. Present Internet generation bringing massive innovations and scope to grow. IT and Non-IT people are willing to spend their free time to play online and video games. “Game testing from home” is now a new trend to earn money. We can clearly see that it’s getting into our daily activities.

If anyone of you is trying hard getting into gaming industry then you need to have interest and passion that drives you to success. Due to addition of vast and complex new games, Game QA is no longer less technical than general software QA. Game testing was widely considered as a “stepping stone” position but now it’s becoming full-time job opportunities for experienced testers.

If you have passion for games and good understanding of testing methodologies, becoming a successful game tester is not difficult for you!

Don’t let the word “game” in this job title fool you. Video game testing is a serious Job. If you think it involves whiling away the hours playing the latest games, think again. Video game testing can be as tedious and frustrating as any job. It requires an organized, disciplined approach to product testing and not just finding new ways to score high or beat the game.

Video game testers must have lots of patience, be methodical in their approach and have a keen eye for details. They must be good communicators and have some understanding of computer hardware and software. And, of course, it helps to have awesome controller skills and the hand-eye coordination needed to navigate through multiple levels of increasing challenges. Yes, being good at  video games is helpful to video game testers (but not absolutely necessary)!

Please feel free to share your story and any lessons you learned, you experienced , you came across in your life in the comments below.

 

 
1 Comment

Posted by on August 27, 2012 in Technical

 

It’s an Android World


Each minute of our life is a lesson but most of us fail to read it. I thought I would just add my daily lessons & the lessons that I learned by seeing the people around here. So it may be useful for you and as memories for me…….

The article was written by Munna prawin….

This article was posted in order to help out the Android Developers to give an idea about Android Development. Here are some of the useful links..

Operating Systems have developed a lot in last 15 years. Starting from black and white phones to recent smart phones or mini computers, mobile OS has come far away. Especially for smart phones, Mobile OS has greatly evolved from Palm OS in 1996 to Windows pocket PC in 2000 then to Blackberry OS and Android.

Android, the world’s most popular mobile platform.

World is contracting with the growth of mobile phone technology. As the number of users is increasing day by day, facilities are also increasing. Starting with simple regular handsets which were used just for making phone calls, mobiles have changed our lives and have become part of it. Now they are not used just for making calls but they have innumerable uses and can be used as a Camera , Music player, Tablet PC, T.V. , Web browser etc . And with the new technologies, new software and operating systems are required.

Android powers hundreds of millions of mobile devices in more than 190 countries around the world. It’s the largest installed base of any mobile platform and growing fast—every day another million users power up their Android devices for the first time and start looking for apps, games, and other digital content.

One of the most widely used mobile OS these days is ANDROIDAndroid is a software bunch comprising not only operating system but also middleware and key applications. Android Inc was founded in Palo Alto of California, U.S. by Andy Rubin, Rich miner, Nick sears and Chris White in 2003. Later Android Inc. was acquired by Google in 2005.

Android gives you a world-class platform for creating apps and games for Android users everywhere, as well as an open marketplace for distributing to them instantly.

Android Tutorials:

http://www.vogella.com/articles/Android/article.html

http://developer.android.com/training/basics/firstapp/index.html

http://www.javacodegeeks.com/p/java-tutorials.html#Android App Tutorials

http://www.learnerstv.com/Free-Computers-Video-lectures-ltv461-Page1.htm

http://mobile.tutsplus.com/tutorials/android/introduction-to-android-development/

http://thenewboston.org/list.php?cat=6

http://www.ibm.com/developerworks/opensource/library/os-android-devel/

https://sites.google.com/site/io/

Articles on Android Development:

http://mobiforge.com/developing/story/getting-started-with-android-development

http://mobilizemedia.com/category/our-blog/android-development/

http://en.wikipedia.org/wiki/Android_(operating_system)

http://mobiledevices.about.com/lr/android_development/1537403/2/

Blogs on Android Development:

http://android.opensourceror.org/

http://davanum.wordpress.com/

http://commonsware.com/Android/

http://saigeethamn.blogspot.in/search/label/Android

http://www.curious-creature.org/category/android/

Usage of WebServices in Android Apllications:

http://www.c-sharpcorner.com/1/247/android-programming.aspx

http://pjava.wordpress.com/2011/03/22/call-soap-web-service-from-android-application/

http://jatin4rise.wordpress.com/2010/10/03/webservicecallfromandroid/

http://jatin4rise.wordpress.com/2010/10/03/webservicecallfromandroid/

http://www.c-sharpcorner.com/UploadFile/88b6e5/how-to-call-web-service-in-android-using-soap/

https://groups.google.com/forum/?fromgroups#!topic/android-developers/h23iTA2tMCA

http://jatin4rise.wordpress.com/2010/10/03/webservicecallfromandroid/

http://jatin4rise.wordpress.com/2010/10/03/webservicecallfromandroid/

http://www.helloandroid.com/tutorials/using-ksoap2-android-and-parsing-output-data

http://www.codeproject.com/Articles/112381/Step-by-Step-Method-to-Access-Webservice-from-Andr

http://www.wiseandroid.com/post/2010/06/14/Android-Beginners-Intro-to-Resources-and-Assets.aspx

http://java.dzone.com/articles/invoke-webservices-android

http://www.anddev.org/calling_a_web_service_from_android-t348.html

http://sarangasl.blogspot.in/2011/10/android-web-service-access-tutorial.html

http://mobileorchard.com/android-app-development-calling-web-services/

http://www.itcsolutions.eu/2011/03/03/how-to-consume-web-services-from-android-applications-using-ksoap2/

http://romenlaw.blogspot.in/2008/08/consuming-web-services-from-android.html

http://lukencode.com/2010/04/27/calling-web-services-in-android-using-httpclient/

http://seesharpgears.blogspot.in/2010/11/basic-ksoap-android-tutorial.html

http://www.javacodegeeks.com/2011/02/android-xml-binding-simple-tutorial.html

http://wiki.javaforum.hu/display/ANDROIDSOAP/Home

http://wiki.javaforum.hu/display/ANDROIDSOAP/Step+by+step+tutorial

Android Terminology & Useful Sites:

Here * marked sites are the frequently reffered sites by Android Developers.

http://www.herongyang.com/WSDL/Terminology-WSDL-Related-Terminology.html

http://www.tutorialspoint.com/wsdl/index.htm ******

http://www.w3schools.com/wsdl/wsdl_ports.asp

http://www.ibm.com/developerworks/library/ws-intwsdl/

http://tech.groups.yahoo.com/group/soapbuilders/message/3204

http://www.seas.gwu.edu/~shmuel/cs338/Introduction%20to%20WSDL.htm  ******

http://www.w3.org/TR/2004/WD-wsdl20-20040803/

http://w2ks.dei.isep.ipp.pt/labdotnet/recursos/wsdl.pdf

http://docs.xamarin.com/android/tutorials/consuming_web_services *************

http://code.google.com/p/wsdl2ksoap/issues/searchtips *******

http://oreilly.com/catalog/webservess/chapter/ch06.html *******

http://msdn.microsoft.com/en-us/library/ms996486.aspx ********

http://www.sparxsystems.com/uml_tool_guide/xml_technologies/wsdl_namespace.htm ****

http://stackoverflow.com/questions/2294325/why-is-wsdl-namespace-interjected-into-action-name-when-using-savon-for-ruby-s

http://www.tutorialspoint.com/wsdl/wsdl_example.htm ****

http://javatutorialspoint.blogspot.in/2012/02/android-web-service-access-using-ksoap2.html  ********

http://social.msdn.microsoft.com/Forums/pl-PL/wcf/thread/aa85ee49-efb2-4f75-87e1-9899b25782b0 *****

http://stackoverflow.com/questions/11547046/problems-getting-ksoap2-client-to-talk-to-php-based-webservice ********

http://stackoverflow.com/questions/11547046/problems-getting-ksoap2-client-to-talk-to-php-based-webservice ********

http://code.google.com/p/ksoap2-android/wiki/Links *************************************

 

The above information was collected from different people & from various websites….

Please feel free to share your story and any lessons you learned, you experienced , you came across in your life in the comments below.

 
Leave a comment

Posted by on August 2, 2012 in Technical

 

Software Testing is a Challenging Profession


 

Be Proud to be a Tester.  Be proud to be a Passionate tester. We are no way less to others, till we do our duty properly. We all are here by choice, not by chance or by any compulsions.

Think positive. Start testing the application by intend of finding bugs/errors. Don’t think beforehand that there will not be any bugs in the application. If you test the application by intention of finding bugs you will definitely succeed to find those  subtle bugs  also.

Software testing is fun, enjoy it – Stay calm, be focused, follow all processes and enjoy testing. See how interesting software testing is. I must say it’s addictive for some people.

We feel very proud if we can find bugs in the application developed by development team.

Get involved from the beginning – It is an advice to all the testers, to participate in all the activities regarding application development. Ask your lead or manager to get you involved in design discussions/meetings from the beginning. This is more applicable for small teams without QA lead or manager. It is a good sign that you are very sincere & interested to work.

 

Make sure you get noticed at work – Sometimes your lead may not present the true picture of you to your manager or company management. In such cases you should continuously watch the moments where you can show your performance to top management.

Try to elevate yourself by participating in meetings & client calls.

Keep notes on everything – Keep notes of daily new things learned on the project. This could be just simple commands to be executed for certain task to complete or complex testing steps, so that you don’t need to ask same things again and again to fellow testers or developers.

 

Continuous learning – Never stop learning. Explore better ways to test application. Learn new automation tools like Selenium, QTP or any performance testing tool. Nowadays performance testing is the hot career destination for software testers! Have this skill under your belt.

Go beyond requirement testing. Test application for what it is not supposed to do. You task is not simply testing;

If possible identify the different ways to design application or even a particular page. Give work to your creative mind.

Keep developers away from test environment. This is required step to detect any configuration changes missing in release or deployment document. Sometimes developers do some system or application configuration changes but forget to mention those in deployment steps. If developers don’t have access to testing environment they will not do any such changes accidentally on test environment and these missing things can be captured at the right place?

360 degree testing approach – To hunt down software defects think from all perspectives. Find all possible information related to the application under test apart from your SRS documents. Use this information to understand the project completely and apply this knowledge while testing.

Learn to analyze your test results thoroughly. Do not ignore the test result. The final test result may be ‘pass’ or ‘fail’ but troubleshooting the root cause of ‘fail’ will lead you to the solution of the problem. Testers will be respected if they not only log the bugs but also provide solutions.

Learn to maximize the test coverage  every time you test any application. Though 100 percent test coverage might not be possible still you can always try to reach near it.

Admit mistakes but be confident about whatever tasks you did – Avoid doing the same mistake again. This is the best method to learn and adapt to new things.

Try to automate daily routine tasks – Save time and energy by automating daily routine task no matter how small those tasks are.

E.g. If you deploy daily projectbuilds manually, write a batch script to perform the task in one click.

While writing test cases, write test cases for intended functionality first i.e. for valid conditions according to requirements.

Then write test cases for invalid conditions. This will cover expected as well unexpected behavior of application under test.

Testing teams should share best testing practices, experience with other teams in their organization.

Increasing conversation with developers we can get know a lot about the product and we can understand the requirement in-depth which in turn will helps in finding more defects.

Written & Oral communication – It is very much essential for the Testers.In order to author the test cases properly one should have writing skills & to attend the client calls or gather requirements, oral communication is very much essential.

Write clear, descriptive, unambiguous bug report. Do not only provide the bug symptoms but also provide the effect of the bug and all possible solutions.

Don’t forget testing is a creative and challenging task.

Exploration is important Keep on reading books, white papers, case studies related to software testing. Never be idle. If you time, just go through some testing related sites and gather the useful information.

It depends on Individuals skill and experience, how they handle this challenging Testing Profession.

 
1 Comment

Posted by on May 14, 2012 in Technical

 

Project Management System


Image

In the present Software World, Project problems are frequently caused by ineffective project management. As the result projects are late, project costs exceed expected values; organization has problems with clients, stakeholders, and personnel motivation.

Project Management helps to solve these problems. It is a set of processes, tools, and templates used to effectively plan and manages project work.

Although identified as distinct processes, in practice, the processes overlap and interrelate. Some processes are iterative; repeated and revised throughout the life of a project. Seasoned project managers acknowledge there are many ways to manage a project. As organizations evolve in maturity level, PMs will be better equipped to determine which processes to utilize and how rigorously to apply these processes to deliver the project.

The particular SDLC depends upon agency standards and the type of project undertaken.  Although terminology can differ, the Project Management and System Development Life Cycle methodologies can be easily integrated.

Image

Image

Advantages of PMS:

The advantages of establishing sound project management practices are:

  1. Improves overall project performance
  2. Increases projects delivered on-time and within budget
  3. Reduces project risk
  4. Enhances quality
  5. Improves inter and intra-project communication
  6. Establishes a consistent standard that everyone can follow
  7. Utilities a common project management terminology

Good project management requires:

n  Defining measurable and achievable goals that shall be met in the specified time period.

n  Defining proper project success criteria that will motivate project personnel to achieve organizational business goals,

n  Application of project management software that helps to plan, to analyze, and to control project execution,

n  Implementation of the organizational structures that support project management processes,

n  Implementation of the project participant’s award and recognition system that motivates project teams to achieve project goals.

1. Origination Stage:

Purpose

The Origination Stage is a set of agency specific processes. The purpose of this stage is to identify Secretariat and agency priorities and align these priorities with the Commonwealth’s strategic direction so that resources can be targeted at strategically important initiatives. The specific templates used in this process will vary based upon the agency project prioritization and selection processes.

1.1 Inputs

  • Commonwealth’s strategic priorities
  • Secretariat and Agency priorities
  • Feasibility Studies
  • Potential funding sources
  • Project prioritization and selection processes

 Image

1.2 Outputs

  • Project justifications in Agency specific format (e.g. Business Case, Cost/Benefit Analysis)
  • Complexity Matrix
  • Approved and funded projects
  • Origination Stage Checklist

2. Initiation Stage:

Purpose

The goal of this stage is to verify project needs and feasibility.  The project manager, in conjunction with the sponsor and key stakeholders specify:  goals, objectives, and critical success factors.  Funding sources are confirmed. Formal approval to proceed with the project, as defined in the Charter, is secured.

2.1 Inputs

  • Authorized projects with funding
  • Project Manager assigned
  • Project documents created during Origination Stage (e.g. Cost-Benefit Analysis)
  • Consultations with subject matter experts and sponsor
  • Governance Guidelines
  • Independent Verification & Validation Guidelines
  • Complexity Matrix

Image

2.2 Outputs

  • Completed Complexity Matrix
    • Project Level Determined
    • Governance Structure defined
    • Decision made on whether an Independent Verification and Validation (IV&V) is required. If required, specify the type of IV&V to be funded
  • Approved Charter and authorization to apply Commonwealth’s resources
  • Project Tracking Log (Action Items, Issues, Risks, Dependencies and Key Decisions)
  • Repository Setup
  • Initiation Stage Exit Checklist

3. Planning:

Purpose

This stage establishes the framework for the project so the work can begin.  Information is assembled into the scope statement and plans from numerous sources, each with varying degrees of confidence.  Activities and resources are arranged to deliver the product and/or service and task ownership is assigned and communicated.

Planning is highly iterative and involves key team members and stakeholders. Each iteration produces increasingly more precise and reliable project management information.  Although the graphic below depicts a suggested workflow, the project manager will determine the most appropriate sequence of activities given the nature of the project.

Time invested during this stage to develop the structure to organize and manage project activities significantly improves performance during the Execution and Control Stage.

3.1 Inputs

  • Project Tracking Log (Action Items, Issues, Risks, Dependencies and Key Decisions)

Image

3.2 Outputs

  • Budget
  • Scope Statement
  • Resource Plan
  • Baseline Project Plan & Schedule Tracking Template
    • Work Breakdown Structure (WBS)
    • Schedule, Milestones, Critical Path
    • Resource Assignments, Dependencies
  • Risk Management Plan, Issues Management Plan,
  • Quality Management Plan , Change Management Plan
  • Updated Project Tracking Log (Action Items, Issues, Risks, Dependencies & Key Decisions)
  • Transition Plan & Checklist
  • Status Report
  • Planning Stage Exit Checklist
  • Project Kick-off Meeting

4. Execution & Control:

Purpose

The Execution and Control stage is when the tasks that build deliverables are executed and the detailed work gets done.  Plans developed during the Planning Stage are executed.  Performance measures are taken to determine whether the project deliverables and objectives are being satisfied.     Monitoring and controlling processes focus on collecting and disseminating information and measurements on:  scope, schedule, costs, resources, quality, issues, and risks. The objective of regular monitoring is to make adjustments to corrective variances so that problems can be avoided.  If it is not possible to avoid particular problems, corrective measures must be identified and applied quickly to get the project back on track.   This stage ends when the product and/or service has been delivered and formally accepted by the project sponsor.

4.1 Inputs

  • Budget
  • Schedule Management Guidelines
  • Project Plan & Schedule
  • Risk Management Plan, Issues Management Plan,
  • Quality Management Plan , Change Management Plan
  • Communication Plan & Register
  • Procurement Plan & Contract Administration
  • Transition Plan, Transition Checklist
  • Monitoring & Control Processes
    • Scope Control, Cost Control, Quality Control, Change Control
    • Stakeholder Management
    • Risk Analysis, Issues Management & Unresolved Escalation Items

Image

4.2 Outputs

  • Recommended Corrective & Preventive Actions
  • Recommended Preventative Actions
  • Performance, Dashboards and Status Reporting
  • Change Control Forms & Change Control Log
  • Current Budget vs. Actual Tracking
  • Current Project Plan & Schedule Tracking
  • Current Communication Register
  • Current Project Tracking Log (Action Items, Issues, Risks, Dependencies and Key Decisions)
  • Current Transition Checklist & Go-Live Checklist
  • Current Procurement Tracking
  • Current Quality Tracking Log
  • Executed Contracts
  • Execution and Control Stage Exit Checklist
  • Final Product/Service
  • Formal Product/Service Acceptance by Sponsor

5. Closure:

Purpose

This is the final stage in the project life cycle and is triggered when the sponsor accepts the project.  The objectives of this stage are to: transition the product, services and deliverables to operations and support; logically complete administrative and logistical close-out activities; and capture performance information that will help improve future projects.

Due to the broad range of process activities, Closure occurs over a period of time.  Acceptances and procurement close-outs occur immediately after the project is delivered; while post implementation review workshop sessions, surveys and lessons learned sessions typically occur approximately 4-6 weeks after the official implementation/transition of the project. The goal is to allow for sufficient time to lapse so that the full extent of benefits and short-comings of the project can be identified and discussed.

5.1 Inputs

  • Survey/interview key stakeholders including: team members &  support.
  •  Post implementation review and lessons learned sessions
  • Existing contracts

Image

5.2 Outputs

  • Project deliverables turned over to operations, support and help desk
  • Post Implementation Review Surveys, Report
  • Post Implementation Documented/shared Lessons Learned and Project Successes
  • Contracts closed out; other procurement processes closed
  • Team disbanded; financial accounts closed; equipment & facilities redistributed
  • Project documentation collected and updated in repository.
  • Closure Stage Exit Checklist
 
Leave a comment

Posted by on April 24, 2012 in Technical

 

Roles & Responsibilities of Software Tester


Software Testing is more than finding the bugs. It can be stated as Set of activities which are performed to check whether the application is designed, developed & working as per the customer requirements or not?

Purpose of Software Testing:

Software testing can be defined as the process of validating and verifying that a software product. Testing is conducted to check whether;

1)      Application is designed as per customer requirements.

2)      Working as per the customer requirements.

3)      Any bugs exist in the application.

Facts about Software Testing:

  • Testing is not done to provide the Quality. It is conducted to find the bugs.
  • Through testing we can’t get 100% bug free product, it’s not possible all the time.
  • Testing is all about checking all possible conditions i.e.  valid & in valid conditions.
  • In order to test any application one should know application flow.
  • Minimum Data Base knowledge is required to understand how data flow is happening between front-end & back-end application.
  • Testers should not test the application from developers view, should test application from customers view.

Roles & Responsibilities of Testers in a Project:

  • Understanding Application related Documents:

It is very much important to get clear idea on the application i.e. need of the application, work flow of the application and also should go through the requirements documents & should review them

  • Assist with preparation of test plan:

Testing process start with the preparation of Test Plan. Test plan is a document which includes introduction, assumptions, list of test cases, list of features to be tested, approach, deliverables, resources, risks and scheduling. It will be prepared by the Lead. As a tester it’s your responsibility to take part in the preparation of Test Plan.

  • Preparation of Test Cases:

Before preparing the test cases it’s very necessary to have an idea on the application work flow. The basic objective of writing test cases is to validate the testing coverage of the application. Every organization has their own test case formats.

There is no assurance that, the person who authored test cases will execute them. So while preparing the test cases see that they simple, easy to understand & all the steps were in proper sequence, so that it will easy for the executioners to execute them.

  • Preparation of test scripts:

If it’s necessary to automate the application, if organization accepts & if client is ready, basing on the requirement we can automate the application.

Preparation of test scripts is very crucial in the Automation process. For generating the scripts programming i.e. coding knowledge is required.

  • Preparation of Test Data:

Test Data is the data which is used to test the application. Test Data may be provided by the client or if it’s necessary we have to prepare the Test Data. During the execution of test cases, we use test data and test the application. Basing on the test data the coverage of testing will depend.

There are different mechanisms which are used in preparation of the test data:

1)      Boundary Value Analysis.

2)      Equivalence Class Partition.

3)      Error Guessing

  • Execution of Test Cases:

Executing the test cases is one of the important phases in Testing. Execution is nothing but running the cases on the application. The Test cases should be executed in the manner specified. If there is no time to execute all the Test Cases, we have to execute the High Priority test cases first & then if the time permits others.

  • Defect Tracking:  It is the process of finding defects in a product or in Software. The defects found during the process of testing should be tracked. The defects are entered into Bug tracking tool for better maintenance.

Bugs can be detected through;

1)      Smoke Testing.

2)      Test Cases Execution.

3)      Adhoc Testing.

4)      Regression Testing.

5)      Priority Based Testing.

6)      Exploratory Testing.

  • Retest fixed defects:

Once if the development team fixes the bug, we have to retest the application or that particular functionality.

  • Attending Client Calls & Team Meetings:

It is very much important to attend the client calls or scrum calls. If we have any issues regarding requirements, validations etc, we can directly interact with the client and can get resolved. Team meetings are very important because, we can know what’s happening within the team & how tasks are being done, status of the application, any enhancements etc. If we have better ideas to develop the application we can share with the development team.

  • Status Report:

It is a good practice to maintain Work Sheet. During the time of reviews it will be very much useful & also we can make self analysis of the tasks that we have completed and tasks that are pending. In few organizations it is mandatory, to update status report daily.

  • Assist the team members:

If it’s necessary & if it’s possible assist your team mates, in order to complete their duties.

  • Be a Good Team Player:

Whether you are developer or tester it is very much important to have rapport with the members in the team.

 
Leave a comment

Posted by on March 21, 2012 in Technical

 

Approach for System Testing


Approach for System Testing

 

System testing of software is a testing process which is conducted on a complete, integrated system to evaluate the system’s compliance with its specified requirements whereas Functional testing is testing each and every functionality of the application individually.

System testing is testing the application as a whole, without leaving even a single object. This type of testing involves testing of the functionality, performance, security; user interfaces etc, System testing falls under black box testing. It doesn’t require the programming knowledge. In system testing software test professional aims to detect bugs, both within the interfaces and also within the software as a whole. However, during the integration testing of the application the software test professional aims to detect the bugs / defects between the individual units that are integrated together.


During the development developers perform the unit testing. After the integration of all components of the software being developed, the whole software system is rigorously tested to ensure that it meets the specified business, functional & non-functional requirements. System Testing is done after the unit testing and integration testing are completed. In many organizations there are separate and dedicated teams for performing System Testing.
Why system testing is Important?

 System Testing is a crucial step in Quality Management Process.

1)   The System Testing enables us to test, verify and validate both the Business requirements as well as the Application Architecture matches.

2)   The System is tested to verify if it meets the functional and technical .requirements.
3)   The application/System is tested in an environment that closely resembles the production environment where the application will be finally deployed

 

Pre Requisites for System Testing:

The prerequisites for System Testing are:
A)  All the Individual components should have been successfully Unit Tested.
B) All the components must have been integrated and Integration .Testing should be completed.
C) Test environment should be ready to carry out testing process.

Steps needed to do System Testing:

The following steps are important to perform System Testing:
1: Create a Test Plan
2: Create Test Cases
3: Identification of test data for system testing.

4: Create Scripts if necessary

– Build environment and
– to automate Execution of test cases
5: Execute the test cases
6: Fix the bugs if there are any and perform regression testing

7: Repeat the test cycle.

What is a ‘System Test Plan’?

Test plan is a document which includes introduction, assumptions, list of test cases, list of features to be tested, approach, deliverable s, resources, risks and scheduling.

The contents of a software system test plan may vary from organization to organization or project to project. It depends how we have created the software test strategy, project plan and master test plan of the project. However, the basic contents of a software system test plan should be:

– Scope
– Goals & Objective
– Area of focus (Critical areas)
– Deliverable s
– System testing strategy
– Schedule
– Entry and exit criteria
– Suspension & resumption criteria for software testing
– Test Environment
– Assumptions
– Staffing and Training Plan
– Roles and Responsibilities
– Glossary

How to write system test cases: The basic objective of writing test cases is to validate the testing coverage of the application. The system test cases are written in a similar way as we write functional test cases. However, while creating system test cases following points needs to be kept in mind:

They cover all the use cases and scenarios

– The Test cases were prepared as per the technical Requirements and Specifications.
– The Test cases validate the technical Requirements and Specifications
– The Test cases verify if the application/System meets the Business & Functional Requirements specified
– The Test cases may also verify if the System meets the performance standards

There is no assurance that, the person who authored test cases will execute them. So while preparing the test cases see that they simple, easy to understand & all the steps were in proper sequence, so that it will easy for the executioners to execute them.


The Test Case Template format: Every organization has their Test Case Template. The format varies from one organization to other.

  • Test Case Name
  • Steps to Execute – Steps to follow for execution of the test case
  • Expected Result
  • Status
  • Defect Id.
  • Severity
  • Comments.

Steps for Effective System Testing:

There are various factors that affect the success of System Testing:

1) Test Coverage:   Test Coverage means the test cases that were designed & then executed should cover all the requirements, Functionalities as per the use cases, Business Requirements, Technical Requirements, and Performance Requirements. System Testing will be effective only to the extent of the coverage of Test Cases. Adequate Test coverage implies the scenarios covered by the test cases are sufficient. The Test cases should “cover” all scenarios.

2) Test Execution:   Executing the test cases is one of the important phases in STLC. The Test cases should be executed in the manner specified. If there is no time to execute all the Test Cases, we have to execute the High Priority test cases first & then if the time permits others.

3) Defect Tracking:  It is the process of finding defects in a product or in Software. The defects found during the process of testing should be tracked.

4) Build Process Automation: A Lot of errors occur due to an improper build. ‘Build’ is a compilation of the various components that make the application deployed in the appropriate environment. The Test results will not be accurate if the application is not ‘built’ correctly or if the environment is not set up as specified. Automating this process may help reduce manual errors.

5) Test Automation: Automating the Test process could help us in many ways:

a. The test can be repeated with fewer errors of omission or oversight

b. Some scenarios can be simulated if the tests are automated for instance
simulating a large number of users or simulating increasing large amounts
of input/output data

6) Documentation: Proper Documentation is very much necessary. It helps us to keep track of No.of test cases executed, bugs raised, etc. It provides clear picture about the tasks that were done & to be done.  It also helps create a knowledge base for current and future projects..

 
Leave a comment

Posted by on February 24, 2012 in Technical

 
 
%d bloggers like this: