Workshop: Agile planning in practice (Together in Excellence 2020 conference)

Workshop: Agile planning in practice (Together in Excellence 2020 conference)

One of the myths about agile is that in agile there is no planning. This myth probably stems from comparison with waterfall approaches, where detailed up-front planning is the norm. In agile, there is still a need to plan over a long period of time, commit to a completion date, plan resources, and align the product to a strategic vision. But instead of detailed planning at the beginning, agile planning is spread throughout the entire development process, and it involves all team members, not just one individual who is the designated project manager. Agile planning and estimation breaks down development into small units which can deliver value to a customer. Teams plan for what they can accomplish to satisfy a customer in a short period of time. Some examples of agile planning are during daily standups, during sprint planning meetings and during release planning. In this workshop, delivered at the Together in Excellence 2020 conference, we covered topics related to agile planning...
Read More
Hadoop vs. relational databases

Hadoop vs. relational databases

People with limited knowledge of Hadoop sometimes ask me why do we need a new data storage technology? Why not stay with true and tested relational database technology? Why not indeed? In this post I will discuss the main differences between Hadoop and relational databases and some reasons why we want to use one versus another. Hadoop is technically not a database so when we compare it to relational databases it appears as if we are comparing apples to oranges. But Hadoop is actually used to store data sets across a cluster of computers although it behaves like a distributed file system. It is designed to store very large files and is fault-tolerant by replicating blocks of data within the cluster. From the point of view of being able to store large volumes of data, we can thus continue to compare it to relational databases. I am in no means suggesting that we have to use Hadoop rather than traditional databases because...
Read More
Main components of chatbot development

Main components of chatbot development

Artificial Intelligence is becoming ubiquitous and nowadays anyone can get their hands on natural language processing technologies. One example of an application of natural language processing is a chatbot that provides customer support or augments call centers by supplying computer generated responses to customer questions. Building a chatbot that provides customer support on a website is technologically quite feasible. However, comparing chatbot development with typical software application development, there are major differences. The key aspect of chatbot development is natural language understanding for which we can't provide completely detailed specifications up front. Natural language means that customers may pose questions in many different forms, not all of which can be planned ahead. How do we begin to develop a chatbot? Below I have listed the main components and addressed some challenges to be overcome when building chatbots. Define the purpose of the chatbot Chatbots come in different types, depending on which target group of users they address and which business problem they are meant...
Read More
Bringing ETL and BI closer together

Bringing ETL and BI closer together

A widespread reason why projects don’t meet expectations is that they fulfill specifications to the dot but neglect to consider what the users really wanted. IT professionals typically argue that the application that they delivered does exactly what the requirements say. Unfortunately, requirements are sometimes ambiguous, incomplete, or just plain wrong. Sure, it is not IT’s job to correct wrong requirements, but a little more flexibility on both sides, business and IT, could avoid many misunderstandings and unmet expectations. Getting data in is disconnected from getting data out In my data warehousing experience, I frequently come across the understanding that data integration or getting data into the data warehouse is completely unrelated to business intelligence or getting data out of the data warehouse in the form of querying or reports. This is similar to implementing projects according to specifications (getting data in) but neglecting a deep understanding of what the users actually wanted (getting data out). Technically, we might use different tools and...
Read More
The Great ScrumMaster

The Great ScrumMaster

In her book The Great ScrumMaster, author Zuzana Šochová reminds us that we may have lost our way in understanding the role of the ScrumMaster in agile. She describes the role using the #ScrumMasterWay concept which, according to the author, finally provides ScrumMasters the answer to their most common question: “What will the ScrumMaster do once the team is self-organized?” She starts by stating that the ScrumMaster is one of the most undervalued roles in Scrum and agile. Particularly new agile teams don’t understand the value that a ScrumMaster brings to the high performing team. In my opinion, this belief that the ScrumMaster is just a secretary to the team actually comes from some of the training materials that I remember from when I was preparing for my ScrumMaster certification. I remember learning that the ScrumMaster role is not a full-time role and that a ScrumMaster may either be shared across more than one Scrum team or that the ScrumMaster may...
Read More
Case study: Business Process Modeling as a basis for defining Key Performance Indicators

Case study: Business Process Modeling as a basis for defining Key Performance Indicators

I recently completed a project where we modeled business processes for the Surveying and Mapping Authority in Slovenia and I co-authored and presented a paper about it at the Slovenian Society Informatika annual conference in April 2019. Some of the main benefits of this project that we outlined in the paper were: Business process modeling was performed for future business processes which coerced us to think in detail about how we want to perform activities in a more streamlined, consistent and fully automated way in the future. The completed business process models were used as input to derive specifications for a new information system that will be built to support the new processes. Business process modeling included identifying activities and assigning actors to these activities as well as estimations of expected time spent performing each activity. This in turn was used as input for defining a new leaner and more efficient organizational structure of the Surveying and Mapping Authority. Key...
Read More
Coursera IBM Data Science Professional Certificate

Coursera IBM Data Science Professional Certificate

Recently I came across the IBM Data Science Professional Certificate set of courses on Coursera and I wanted to brush up my data science knowledge. I had taken a similar series of courses some six years ago and the first thing I noticed this time is how much the field has advanced. Six years ago, the language of choice was R, which I never really embraced, mostly because I saw it as an archaic language that has no business in the 21st century. I’m really happy that nowadays it appears that python is the language of choice. I love python, and this is definitely one of the reasons why I enjoyed doing this set of courses. Next topic is Pandas. I hate dataframes. As an SQL person, I find it frustrating that I can’t just simply select and group by and join tables using syntax that comes off the top of my head in seconds. With dataframes, I struggle to do even...
Read More
Projects are more successful than we think

Projects are more successful than we think

If you are involved with project management, chances are you have heard of the Chaos report published by the Standish group. The Chaos report delivers shocking results about the overwhelming failure of most projects. In the initial report that was published in 1994, just 16 percent of all projects were considered successful and this number has varied over the years, sometimes going as high as close to 40 percent successful projects, which is still disappointing considering the maturity of the project management profession. In my experience, I don’t see such low rates of project success. On the contrary, I hardly ever come across a failed project. While I have encountered many troubled projects, these are still eventually completed to stakeholder satisfaction. I have seen that project sponsors are reluctant to admit that a project has failed, considering how invested they are in its success. Projects that run massively over budget or significantly over schedule are still considered successful once they are completed....
Read More
Hybrid project management is the answer to the agile vs. traditional dilemma

Hybrid project management is the answer to the agile vs. traditional dilemma

When it comes to choosing either an agile or a traditional project management methodology, we don’t necessarily have to pick either one. Hybrid project management is a better answer, because it combines the best of both worlds and it allows a smoother transition from traditional to agile as compared to making the transition in one leap. Many organizations that use waterfall methods do want to transition to agile but organizational change does not happen overnight. There is always a warming-up period during which stakeholders adapt to the agile mindset. They may start new projects in the agile way while existing projects still continue in waterfall or in a combination of waterfall and agile. In my experience, waterfall continues to be used for high level planning, budgeting, defining milestones and setting expectations. It is the safe and known way of doing business as compared to agile which is new and less known to the organization. Using the waterfall approach is fine when requirements are...
Read More
Promises and challenges of artificial intelligence

Promises and challenges of artificial intelligence

Although artificial intelligence has been around for many decades, it has emerged as the next big thing only in recent years. Everyone is talking about it but in my view not everyone knows precisely what it is and what it is used for. I hear the term artificial intelligence used in many different contexts, anywhere from simple data analysis to full-fledged robots with the potential to conquer the Earth. Let’s look further into what is artificial intelligence, how it is applied, how mature it is and what are its promises and challenges. In science fiction, artificial intelligence is often portrayed as computers or robots with human-like characteristics, sometimes also in human form, but not necessarily. A machine that thinks like a human can be a representative example of artificial intelligence. It reminds me of HAL, the computer in 2001: A Space Odyssey, a prime example of artificial intelligence that is willing to exert extreme measures to protect its own existence. But generally, artificial...
Read More