Composite objects – (how) do you assert them?

Practical Software - composite objects

Let me start with a code sample (in java) that will demonstrate what I am going to talk about:   …   private IMAPService _mapService;   public RealEstateField createField(List<Coordinate> coordinates) {     RealEstateField field = new RealEstateField();     field.setCoordinates(coordinates));     field.setAddress(_mapService.findAddress(coordinates));     double surface = _mapService.calcSurface(coordinates));     field.setSurface(surface);     field.setCenter(_mapService.findCenter(coordinates));     field.setPrice(surface * _pricePerMeter);      //…     […]

Unit tests, do they worth it?

Practical Software - Unit tests, do they worth it?

Often I hear people doubting the effectiveness of unit tests, they usually say “most bugs we encounter with are ‘integration bugs’”, “they usually happen due to integration flaws with the DB, with some external API, with some configuration, etc.”  Do they right? Well, it depends. Consider the following scenario in which I am sure you’ve been […]

Warning! Coderoaches!

Practical Software - Warning! Coderoaches!

Imagine a cool startup place. It has top notch working stations, huge monitors, the latest keyboards. Programmers have open cheques to choose their workstations: Mac Pro, Symphonia, ThinkStation – you name it, you got it.Vintage Pinball and Pacman machines alongside Xbox One and PS4 Pro. You know, The Works. You also see pizza trays and noodle boxes laying […]

Legacy Code – costs you a hell of a lot of money

Practical Software - Legacy Code – costs you a hell of a lot of money

Have you ever stopped to think about how Legacy Code impacts your time & money? How it impacts your products’ quality, hence, your customers? How it affects your employees?    In this article I will try to cover the bad impacts of Legacy Code, impacts that actually cost the organization money and quite a lot of it. […]

Product Owner – The Good, the Bad and the Ugly

Practical Software - Product Owner

I’ve had this thought for a while now of demonstrating how can people and organizations deal with everyday situations and present an analysis of them based on my personal views, while some might find this judgmental, others may find this an interesting reflection of their behavior and explore alternatives. For the sake of the following […]

Do You need a Scrum Master?

“A good Scrum master can serve a few teams. A great Scrum Master will serve only one”. rephrasing Michael James   There’s an ongoing debate on whether a team needs a full time Scrum master for the long run or not. Many teams feels that the duties of SM only fills a part of his […]

Who’s Responsible For The Daily Standup?

A Scrum Master recently asked me: What should he do if the team members don’t want to do the daily standup every day? After all, he told me, the daily stand up should happen every day, shouldn’t it? Well, first thing’s first. One thing you should know about Scrum is, that if you don’t hold […]

Hey, PO, Push That Button!

Practical Software - Hey, PO, Push That Button!

One of the worst nightmares of a plant manager or a supermarket owner is the silence that accompanies a complete halt at the production line or at the checkouts. Complete halt means nothing progressing, which means no revenue, which means no money. Which means big problems now. At Toyota, however, the philosophy is quite different. […]

Let’s talk about MVP

Practical Software - Let's talk about MVP

I have a confession to make: My name is Anat, and I was infected with the agile virus while I was a product owner.The first agile technique that made me look at the system differently was the minimum viable product (MVP). The moment I realized what it means, I asked myself: “why have I ever […]

Dealing with Technical Stories

Practical Software - Dealing with Technical Stories

One of the first thing they tell us about stories, is that they should be valuable.  That’s what  the ‘V’ in INVEST stands for: Taken from: V – Valuable – A user story must deliver value to the end user. That suggestion usually sits quite well with business side people, which nods in agreement when they […]