Methods & Tools Software Development Magazine

Software Development Magazine - Project Management, Programming, Software Testing

Scrum Expert - Articles, tools, videos, news and other resources on Agile, Scrum and Kanban

Methods & Tools - November 2021
Sharing global software development expertise since 1993

=== Sponsor ===

5 Ways to Time Travel Test [Whitepaper]

Temporal testing is critical for date sensitive business rules such as insurance rates, billing, and enrollment. Efficient time travel testing can increase your test coverage, accelerate development, and improve software quality.

Read our whitepaper to learn the 5 ways to time travel software!

*** Updates ***

Last Articles Published on Methods & Tools Website

WebPageTest - Online Website Performance and Analytics Tool WebPageTest is an open source web performance tool providing diagnostic information about how a web page performs under a variety of conditions. It offers an online version where each test can be run from different locations around the world, on real browsers, over any number of customized network conditions. Read more...

*** From The Archives ***

Articles from Methods & Tools' Archives

The Art of Mocking in Software Testing One of the challenges developers face when writing unit tests is how to handle external dependencies. In order to run a test, you may need a connection to a fully populated database, or some remote server; or perhaps there is a need to instantiate a complex class created by someone else. All these dependencies hinder the ability to write unit tests. When such dependencies need a complex setup for the automated test to run, the end result is fragile tests that break, even if the code under test works perfectly. This article covers the subject of mocks (also known as test doubles, stubs and fakes, amongst other names) and creating manual mocks vs. using a full-fledged mocking framework. Read more...

=== Sponsor ===

Advertise with Methods & Tools

Reach an audience of more than 60'000 professional software developers, software testers and project managers publishing with Methods & Tools for as low a $60 / month. Do you want to promote a software development tool? Are you interested in buying a link to your website from a good reference?

Contact Methods & Tools today to advertise with us!

*** Quote of the Month ***

At the beginning of a Tetris game, you start with an empty game. It's like the very beginning of a coding project when there is nothing yet.

Then blocks start to fall down. The way you position each block has an impact on the rest of the game. If you place blocks around without much reflexion, letting holes slip in, you're making life harder for the rest of the game. And if you manage to build a clean, compact structure, then it will be more manageable later in the game.

The analogy with technical debt is that each new fix or development is like a new block coming in, which you need to integrate with the existing code. If you hack it in a quick and dirty way, it's like leaving holes in the Tetris structure: you're making life more difficult down the line.

And if you take the time to design a clean solution to integrate the fix or development, it's like making sure you leave few holes in the Tetris game. This is less easy to achieve but it pays off in the long run.

The goal of a Tetris game is not to always have a flat structure though. It's ok if it builds up a bit, as long as you have a plan to reduce it later. Like leaving the space for a vertical bar to slide in and clear out four rows at a time, with such a pleasant feeling:

Even if you leave a few holes in, it's ok if you manage to have compact rows above them that will clear out and allow to fill the holes later. This is similar to technical debt, that is ok to build up if it's under control and you have a plan to pay it back later.

What makes the Tetris analogy interesting is that anyone can relate to it, even people that are not developers or that don't realize the state of the code.

Source: Technical Debt Is like a Tetris Game, Jonathan Boccara,

*** Software Development Linkopedia ***

Resource: Resources on GitLab’s all-remote approach. GitLab curated list of resources for remote professionals, teams, and organizations.

Text: From Software Engineer to Engineering Manager. A year ago, all engineers at ShopBack reported directly to the CTO. We had no Engineering Managers (EM), no team leads, and in other words — no structure. Recognising this as a rising issue for a start-up with a 250% year-on-year growth rate, we hired a VP Engineering to put a proper structure in place. Introducing engineering managers was a paradigm shift he proposed which had an outsized impact on the engineering team.

Text: 7+ Ways to Track User Stories. Why do we want to track user stories? There are several reasons, some better than others.

Text: A Node.js Guide to Actually Doing Integration Tests. Your software isn't fully tested until you write integration tests for it. While unit tests help ensure that functions are properly written, integration tests help ensure that the system is working properly as a whole. In this article, Toptal Software Engineer Luka Blažecki uses Node.js to explain why integration testing is important for every development platform and how to write clean, composable integration tests.

Text: Let me finish: how to stop interrupting… and change the world. We are all guilty of interrupting – but if we all just stopped and listened, argues Nancy Kline, we could radically change the way we live…

Text: Why Senior Engineers Hate Coding Interviews (And what you should use instead). Senior engineers are the lifeblood of any software organization. They are the most desired, most expensive, and most difficult to attract. And especially in an historically tight labour market, your hiring process needs to be tailored to their specific needs, as you need them much more than they need you. Senior engineers hate coding interviews, and if you're looking to attract the best, you should hate them too.

Text: The Dark Side of Agile. After many years of working with Agile and being a witness to its results, we found the main mistakes (the dark side) that usually come up when implementing this methodology. Take a look at some reasons why Scrum fails within the software development projects.

Text: Is It Easy to Test Software? Software testing seems like an easy job to many people thinking that some little theoretical knowledge will be enough to be good software testers. This article explains that you need more than this to test software efficiently.

Video: Continuous Software Architecture in Practice. These two videos are based on an interview by Simon Brown of Eoin Woodsm Co-Author of the book "Continuous Architecture in Practice". This book is a modern and practical guide to software architecture in the age of Agile and DevOps.

Video: Resilience & Agility through Evolutionary Change & Kanban Maturity Model. Agility is the ability to adapt to changing situations. Resilience is the ability to withstand adversity. As organizations have discovered, agility alone is not sufficient; resilience is needed as well. Both are fundamental to the Kanban Method.

Video: 4 Maps of DevOps. Are you struggling to work out where to start or where to go next with their adoption of DevOps? Although DevOps practices deliver incredible benefits to organizations looking to improve their software delivery practices, the larger positive impact of DevOps to delivering value is often harder to realize. This video presents a set of practices that could help organizations and is called the 4 Maps of DevOps.

Video: Spring Cloud Gateway: Resilience and Security. Do you want to use a microservices software architecture? Are you looking for a solution to manage access to single services from clients? How can you ensure resilience and security for your entire system? Spring Cloud Gateway is a project based on Reactor, Spring WebFlux, and Spring Boot which provides an effective way to route traffic to your APIs and address cross-cutting concerns.

Video: The Hidden Costs of Poor Database Access. Software developers love to try new programming languages, use different frameworks or experiment with new software architectures. But when it comes to databases, they pretty much have been using the same database access approach for the past 30 years.

Video: Reducing Appium Tests Execution Time. This talk shares the mistakes made in the initial software testing phase while creating automated tests for mobile apps using Appium, the reasons behind those mistakes, and the solutions which helped to reduce Appium tests execution time by 50%.

The Product Owner Demystified. There is often a vacuum between the company vision and the final outcome of software development projects, causing late validation and low value. This vacuum is present in pretty much all companies, caused by a wrong and ill-conceived product delivery approach.

Tools: Lerna is an open source tool for managing JavaScript projects with multiple packages. It optimizes the workflow around managing multi-package repositories with git and npm. Lerna can also reduce the time and space requirements for numerous copies of packages in development and build environments – normally a downside of dividing a project into many separate NPM packages.

Tools: Automate REST API Tests with Cerberus Testing Framework. Welcome to this Cerberus Testing step-by-step tutorial for testing REST APIs. This guide will help you understand the test automation workflow and good practices supported by the Cerberus Testing open source framework.

*** Software Development Training ***

Software Development Lifecycle Specialization: This course is designed for people who are new to software engineering. It is also for those who have already developed software, but wish to gain a deeper understanding of the underlying context and theory of software development practices.

Contact us if you want to your training courses listed in this newsletter and reach 35'000 software development profesionnals worldwide.

November 2022
October 2022
September 2022
August 2022
June 2022
May 2022
April 2022
March 2022
February 2022
January 2022
December 2021
November 2021
October 2021
September 2021
August 2021
June 2021
May 2021
April 2021
March 2021
February 2021
January 2021
December 2020
November 2020
October 2020
September 2020
August 2020
June 2020
May 2020
April 2020
March 2020
February 2020
January 2020
December 2019
November 2019
October 2019
September 2019
August 2019
June 2019
May 2019
April 2019
March 2019
February 2019
January 2019
December 2018
November 2018
October 2018
September 2018
August 2018
June 2018
May 2018
April 2018
March 2018
February 2018
January 2018
December 2017
November 2017
October 2017
September 2017
August 2017
June 2017
May 2017
April 2017
March 2017
February 2017
January 2017
December 2016
November 2016
October 2016
September 2016
August 2016
June 2016
May 2016
April 2016
March 2016
February 2016
January 2016
December 2015
November 2015
October 2015
September 2015
August 2015
June 2015
May 2015
April 2015
March 2015
February 2015
January 2015
December 2014
November 2014
October 2014
September 2014
August 2014
June 2014
May 2014
April 2014
March 2014
February 2014
January 2014
December 2013
November 2013
October 2013
September 2013
August 2013
June 2013
May 2013
April 2013
March 2013
February 2013
January 2013
December 2012
November 2012
October 2012
September 2012
August 2012
June 2012
May 2012
April 2012
March 2012
February 2012
January 2012
December 2011
November 2011
October 2011
September 2011
August 2011
June 2011
May 2011
April 2011
March 2011
February 2011
January 2011
December 2010
November 2010
October 2010
September 2010
August 2010
June 2010
May 2010
April 2010
March 2010
February 2010
January 2010
November 2009
October 2009
August 2009
May 2009
April 2009
February 2009
January 2009
November 2008
October 2008
August 2008
May 2008
April 2008
February 2008
January 2008
November 2007
October 2007
August 2007
May 2007
April 2007
February 2007
January 2007
November 2006
October 2006
August 2006
May 2006
April 2006
February 2006
January 2006
November 2005
October 2005
August 2005
May 2005
April 2005
February 2005
January 2005
November 2004
October 2004
August 2004
May 2004
April 2004
February 2004
January 2004
November 2003
October 2003
August 2003
May 2003
April 2003
February 2003
January 2003
November 2002
October 2002
May 2002
April 2002
February 2002
January 2002
November 2001
October 2001
May 2001
April 2001
February 2001
January 2001
Winter 2000
Fall 2000

Methods & Tools
is supported by

Software Testing

The Scrum Expert