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
Understanding Bitcoin and blockchain

Understanding Bitcoin and blockchain

Bitcoin and blockchain may be somewhat off-topic for this blog, but summertime is always a good time for me to pick up off-topic books to read during my vacation. With the current cryptocurrency craze it was unavoidable that I should pick up a book on the topic. Although I was previously vaguely familiar with Bitcoin and blockchain, I wanted to learn more about what exactly the hype is all about. I picked up the book Mastering Bitcoin: Unlocking Digital Cryptocurrencies by Andreas M. Antonopoulos which came highly recommended on Goodreads. I'm satisfied that I picked the right book because after having read it I can confirm that the book really does explain Bitcoin and blockchain in a way that is both highly detailed and easy to understand. Throughout the book there are real world examples on how the use of Bitcoin is applied, from simple examples such as buying a coffee to more complex examples using smart contracts. Even math-heavy topics such...
Read More
How GDPR affects project management

How GDPR affects project management

The new general EU Data Protection Regulation (GDPR) will become a binding law at end of May this year. The aim of the regulation is to establish greater control over the handling of personal data. As project managers, we must be aware that personal data may also be handled within projects, especially with respect to project communication and documentation as well as other areas that may be impacted. To comply with GDPR, we must be more conscious of personal data handling in project management via a more strategic and systematic approach to collecting and storing data. Informing and collecting consent from individuals about the collection and processing of their personal data may also be required where applicable by the regulation. I co-authored the paper Project management and GDPR that was presented at the Slovenian Society Informatika annual conference in April 2018. In the paper, we state that in addition to process and awareness, project managers must also ensure that the project management software...
Read More