User Experience: More than Just a Pretty Interface

The rise in digitization is resulting in an increasing number of applications which aren’t just optional for users, they’re mandatory, which means that user interface design, and in turn issues related to user experience (UX) and user interface, are now moving into the spotlight.

Just think of the check-in process for low-cost airlines, which is increasingly being provided only online, or the ability to make contact with public authorities outside of business hours. This was completely impossible just a few years ago, but today is part of every digitalization strategy. And just over this past year, many of us are ordering food by smartphone, since more and more restaurants are no longer providing this service face-to-face.

User Interface as a Central Point of Reference

This increasing (and sometimes exclusive) use of online methods as a way to make contact with our customers means that user interfaces are replacing personal customer contact – the friendly word, small ways of showering attention on customers and interpersonal relationships in general – and as a result, our websites need to make customers feel at home.

What Makes for Good UX Design?

The obvious conclusion is that a good user interface must be modern and clearly structured, and must always be accessible by all users, including the disabled – this last requirement goes without saying. However, in reality many applications don’t focus too strongly on the first two items.

In particular, a good user interface must be appropriate to its task, and must also be able to helpand guide users through every step of the application, without being patronizing. Interface evaluation cannot take place in an environment which is far removed from reality, which unfortunately is often the case in software tests. For example, actual users will use their smartphones right in the middle of the street, use their tablets as they’re relaxing in front of the TV, or may just have something better to do than to muddle through the system of user guidance we’ve come up with. We need to be able to meet users at whatever point they actually use our application, and to be aware of how they interact with it.

As a result, it’s an absolute necessity to have a solid knowledge of not only our users, but also their environment, their suggestions and their usage habits, and develop our applications in line with that. Although a pretty user interface is certainly a great thing for customers and developers, it can be frustrating for an actual user if it’s not also appropriate to its task, helpful and in general a satisfying experience.

Key Factors in UX

User Experience describes a user’s perceptions and reactions which arise as a result of the use or presumed use of a product, system or service. Achieving a positive user experience requires work on a wide variety of aspects, which must eventually also brought into harmony with one another.

The following areas in the field of User Experience are especially receiving attention these days:

  • Information architecture describes structuring and organizing information in such a way that it’s easy for users to collect, evaluate and use.
  • Interaction design is concerned with the various aspects of human-machine interaction. In addition to technology as well as the timing and sequence of events involved in an interaction, its social and emotional aspects are receiving greater consideration and being included more.
  • Usability describes how an application will support users in the given use context.
  • Visual design, or UI Design, is the UX area responsible for the aesthetic design of the final product.

Considerations related to User Experience must begin right from the start of a project, involving close work with usability experts (first as a business analyst and later as a requirements engineer) to identify and prepare the groundwork required for optimal solutions.

We’ve just released a new training package which focuses on Usability and User Experience, and is based on recognized standards in the UXQB field. These courses will give you the tools you need to meet digitalization project challenges related to User Experience.


Learn more about our trainings on UX/UI:

Digitalization, Digitization and Digital Transformation – It’s Now or Never!

Digitalization – digitization – digital transformation – what exactly are the differences between those terms, and why do you need to know how they’re defined? It’s obvious that information technology has radically changed not only work life, but also day-to-day living in general, and a number of terms which use the word “digital” are being used to describe that phenomena. In this blog, we clarify how IT professionals use those different terms, and what that means as a result.

Up to just a short time ago, digitalization was still the accepted way in any modern corporate strategy to make an organization fit for the future. However, it has become an absolute necessity over these past few months, and in these special times is providing companies with the flexibility they need to continue to work productively and in an orderly fashion in spite of all challenges.

A company’s digital fitness has now become a key factor in its resilience to crises, and now might be the last good chance for many businesses to take the right steps to ensure they don’t fall behind and the competition becomes uncatchable. As a result, it’s crucial you know the three levels of digital change, and are able to define, based on your own business, an honest self-assessment as well as the next steps to take.

What is Digitization?

Digitization describes a change at the beginning of the process. Digitization describes the receiving of data represented in digital form so they can be read and processed by computers. The term therefore describes a technology which has existed since the very earliest days of information technology. It’s only through digitization that the information which exists in the world can be made usable for IT systems.

Here, it’s definitely possible to make the sweeping statement that as the availability of quality data from the greatest possible number of sources increases, the better these data can be then be evaluated, tied together and cultivated for decision-making purposes. The concept of data wealth is applicable in this regard. The challenge lies in obtaining data of good quality. Digitization techniques are constantly improving.

Currently, the use of AI (artificial intelligence) is essential for progress in this field. Artificial intelligence has been used for a number of years for text recognition in printed documents, with natural language recognition being another important application of AI. And recognizing objects in images and correctly interpreting scenes taken by cameras is possible in digitization only through AI.

In addition, digitization will also remain an essential task in the future so computers can record reality outside of their own digital worlds. Even today, sophisticated sensors make it possible for computers to see, hear and even smell better than a human ever could. Areas of application such as autonomous driving, medicine and agriculture are key examples of this field of application.

What is Digitalization?

Digitalization refers to a change to an overall process. The term describes the comprehensive use of information technology in the implementation of business, production and service processes, comprehensive meaning that computers are used in a process from start to end. The necessary data are passed digitally from one step to the next, or are already available digitally, and there are no media discontinuities in processing.

Digitalization requires that companies convert their technical ecosystems to information technology, and it’s essential that all functionality and relevant data can be used anywhere they’re required, without technical barriers.

One significant consequence of digitalization is an explosive increase in data, which can be explained by the fact that data are not only processed automatically, but the vast majority of data today are also being created automatically. Big data methods and technologies are addressing this challenge. Data needs to be made usable, since more and more political and business decisions are being made quickly and reliably on the basis of information which is detailed, dependable and up-to-date.

What is Digital Transformation?

Digital transformation goes even further – the term refers to a change in business models, customer relationships and even social structures. This is accompanied by changes in market and business structures which are based on the use of information technology. These extremely rapid changes are having so sweeping an effect on existing processes and systems that the term disruptive is often used instead.

Digital transformation is changing society, business and the world of work, and innovations and disruptive changes must be considered the main factors responsible for this. Technology and its use are integral in determining whether an organization or company will be successful over the medium term.

Examples of digital transformation are by no means new, since the process got underway in the mid-90s and is gaining momentum more and more. Examples of the phenomenon of digital transformation include the online mail-order industry, Internet banks and insurance companies, arranging personal transportation via app, streaming providers in the field of media, the use of social media for targeting advertising, and much more. In our opinion, the fact that many activities which previously involved at least some travel are also being carried out via web conference is likewise leading to permanent changes in the travel industry, in particular when it comes to business trips.

In light of established examples of digital transformation, it becomes apparent that speed is more important that company size and technical competence is more important than capital. A important point here is the improved possibility of obtaining cost-effective, highly scalable and globally available IT infrastructures, made possible through public cloud services.

Bottom line: Digitization isn’t enough – go for transformation

Even our quick glimpse of the differences between digital concepts shows that digitization alone does not go far enough, and it’s clear that reliable data are an essential condition for all processes further down the line. Digitalizing processes can often boost potentials for savings as well as customer satisfaction. However, to survive over the medium term, companies need to review their business models and adapt them with an eye to digital transformation. In order to remain OR become a leader in the digital transformation race, you need to keep an eye on the following items and build up a corresponding skill set in your organization:

  • Agile management and design thinking
  • Cloud technologies
  • Artificial intelligence
  • Big data

And as experts in digital innovation and technology, we can help you do exactly that.


UNSERE TRAININGSANGEBOTE ZU INNOVATIONSTECHNOLOGIEN:

Artificial Intelligence (AI) in Medicine

The term artificial intelligence (AI) comes up in the IT world time and time again – but what does it actually mean? The truth is, there’s no single generally accepted definition for artificial intelligence. In principle, the term describes systems which have the ability to perform activities normally associated with human intelligence, such as learning, logical… Continue Reading Artificial Intelligence (AI) in Medicine

Service Scaling Through Native Cloud Computing

Being in cloud is just a start – it’s even more important to take advantage of the special opportunities provided by cloud computing, one of which is the almost unlimited scalability of the applications and services you make available through the cloud. However, you first need to make sure the services you use are cloud-native and use orchestration services such as Kubernetes. The following overview of the architecture of one such system was prepared by our cloud experts.

First, the software and libraries required at the operating system level must be bundled using so-called containers. Containers use the kernel of the host operating system, but are separated from other containers and from the host at the process and file level. In addition, containers can be precisely configured in terms of the amount of resources they consume.

Operating these containers within a cluster of virtual or physical computers requires the use of a container orchestrator. Kubernetes represents the dominant container orchestrator on the market (with a market share between 80 and 90 percent, depending on the survey in question); Docker Swarm and Apache Mesos provide alternative orchestrator options but only play a minor role on the market.

Kubernetes was originally developed by Google and was released in 2014 as an open source platform for the automatic deployment, scaling and management of containerized applications. Today, Kubernetes is managed by the Cloud Native Computing Foundation (CNCF). The CNCF was founded in 2015 as a non-profit organization, and is part of the Linux Foundation, which means that the continued development of Kubernetes is ensured well into the future.

A business looking to use Kubernetes can either install it itself on-premise or in the cloud, or can make use of a managed Kubernetes cluster,  though market research (https://security.stackrox.com/state-of-containers-and-kubernetes-security-report-winter-2020.html, no longer online) shows the number of self-managed Kubernetes installations is dwindling, while the use of managed Kubernetes cluster services is growing greatly.

Architecture of a Managed Kubernetes Cluster

A Kubernetes cluster (K8s) consists of 2 components:

Source: Microsoft Azure documentation
  • The control plane takes over the control of the K8. It is managed by the provider and is often even provided free of charge.
  • Nodes on which the applications packaged in containers run. The nodes on which the applications are deployed are managed by the customer and billed like virtual machines depending on the processor type, the number of virtual VPUs and the RAM. Nodes are grouped together in node pools.

Implementing a Managed Kubernetes Cluster (K8s)

A K8s can be installed in a number of ways – via command line, through the cloud provider’s portal or by using tools such as Rancher or Terraform.

The number of nodes and Kubernetes version is specified during installation, and some providers make it possible to specify a higher availability for the control plane. The K8s then becomes available after 5 to 15 minutes. K8s performance can be modified at any time by adding or removing nodes. As with VMs, a provider will bill the nodes configured in a K8s independently of their utilization. Autoscaling is one option available for optimizing costs.

Autoscaling in the Cloud

Autoscaling can be used to automatically provide an application with additional resources (CPU and RAM) as needed. Administrators can configure the related rules in advance, using parameters such as number of requests, CPU/RAM utilization, etc., so that manual steps during operational management are unnecessary and the application reacts virtually immediately to changes.

Both upscaling as well as resource reduction can be performed automatically, meaning both the number of nodes is automatically adjusted (based on configuration) and applications/services in additional instances are started or stopped. This is made possible through so-called pods.

pod represents the smallest deployable object in a Kubernetes cluster, and one or more containers can run in a pod. A pod represents one instance of an application, and an application can be upscaled (= horizontal scaling) by starting up additional pods.

Practical Example of Autoscaling in the Cloud

The example above clearly shows how the autoscaler begins to start up additional pods (graphic at lower right) when the critical processor load defined by the administrator is reached. However, since the current nodes are above the load limit and additional pods cannot start up (shown by the small red peaks in the graphic to the lower right), additional nodes must first be started up. The application will then be able to manage the increased usage volume with the help of the additional nodes and pods.

Our Goal: A Cloud Strategy for Your Company

Before you can develop a complete cloud strategy and implement it meaningfully for your business, you should become familiar with cloud-native methods. A basic understanding of how scaling works in the cloud will help you to better identify application cases and processes that can benefit from it. A scalability approach which is simple yet comprehensive is one of the many ways you can get the best out of the cloud, and our courses and consulting services can show you how you and your company can make optimal use of the opportunities provided by cloud computing.


Learn more about our trainings on innovation technologies:

Cloud Management – Possibilities and Success Factors

Moving IT services to the cloud is currently a key issue for many companies. A critical factor in this move is not only making applications, databases and network structures cloud-appropriate, companies also need to consider how they’ll administer their cloud services in the future. In this blog article, we’ll share with you what we’ve learned from our practical experience regarding possibilities and success factors for good cloud management.

Using cloud services, such as the well-known public clouds offered by AWS, Azure and Google, provides businesses the following advantages:

  • The resources they need can be scaled.
  • Costs and administration are transparent and are traceable.
  • Specialized services such as AI, blockchain and specialized caches are easy to access and use.

Case Example: Moving a Company into the Cloud

Let’s take the example of an international Austrian-based company which up to now has used servers in the data center of an external provider, who’s also responsible for server administration and for installing the applications used there. IT and other services are billed on a monthly basis. Before converting to cloud services, the company needs to ask itself how this relationship should be regulated. The following three items are essential at the very start for successful cloud management:

  • Clearly defining the cloud administrator’s role
  • Using container technologies such as Docker
  • Making optimal use of scalability

Clearly defining the cloud administrator’s role

When moving up into the cloud, it’s a good idea to clearly define, and if necessary reorganize, interfaces between application developers, infrastructure providers (cloud providers) and the eventual cloud administrator.

The role of cloud administrator can be assumed either internally, or by an external service provider. If that role is taken on by an external service provider, the subscription should not be in the name of the cloud administrator but that of the client, and should also have clear guidelines for the actual users of resources. This makes it possible for the client to directly receive billing for the resources used and therefore have complete transparency, through the detailed bill itemization, of the structure of the costs which actually accrued.

The subscription should give the cloud administrator access to resources, but not the right to change the subscription itself (e.g. methods of payment). Should it become necessary to make change administrators (e.g. because the service provider becomes insolvent or just performs poorly), this can just be done through authorization (users and permissions granted).

Using container technologies such as Docker

Because of the complications involved in installing software applications, the interface between application development and administration is often complex. Container technologies such as Docker provide a good solution to this problem, especially when a business is using cloud services.

Relying on container technologies such as Docker then makes it possible for cloud administration to concentrate on essential tasks, namely using cloud resources (processors, storage, load balancing, CDN, managed databases, etc.) to create a system environment which is secure, scalable, high-performance and cost-effective.

Application developers are then responsible for completely provisioning software on the basis of containers. Application installation becomes unnecessary, since the container contains the fully configured runtime environment. As a result, this also rules out installation errors.

Making optimal use of scalability

Since they can be continuously kept at constant capacity, it’s currently still more cost-effective to maintain virtual machines in traditional data centers than in the cloud. Nevertheless, a key attraction of cloud packages lies in the fact that those services which a business cannot maintain in its own data center in a comparatively cost-effective manner infrastructure can be easily scaled, throughout the world if necessary.

By using scalable Docker containers, a cloud administrator can react quickly to additional demand, and through just a few simple commands can start up the number of container instances which were started simultaneously, and reduce them again when necessary. This process can even be automated, by using container management systems like Kubernetes.

In order to use scaling efficiently, the related responsibilities must be clearly defined between application development and administration, with the use of containers being a must, and development’s responsibility being to provision scalable applications.

Making Use of the Potential Provided by the Cloud

Cloud services mean companies have access to powerful, scalable infrastructure tools, which if used selectively and in combination with good cloud management will yield all sorts of potential – and not just for large companies.

Any business looking to procure cloud resources must consider their vastly different technical and organizational conditions as compared to traditional IT systems. Spirit in Projects specializes in developing cloud concepts and technical documents for procurement processes and invitations to tender. We bring in our technical expertise and work with our clients to develop viable, sustainable concepts, prepare the necessary documentation and provide support in the procurement process. 


Learn more about our trainings for innovation technologies:

Agile Requirements Engineering – Success Factors for Implementing Agile Methods

Think requirements specifications and functional specifications are too cumbersome and boring? You’re in luck! Agility’s the latest buzzword. Projects need to be implemented quickly. As a result, agile methods are what everyone’s talking about, and are being used for all stages of a project, from eliciting requirements to implementation. We’ve identified six success factors for… Continue Reading Agile Requirements Engineering – Success Factors for Implementing Agile Methods

Trends in Requirements Engineering – Methodological Digital Transformation

“Why do we still need requirements? We’re agile!” Have you ever heard something like that? In these times of rapid innovation, just the term requirements engineering sounds pretty laborious. Nevertheless, just in view of the radical transformation of companies and business models, requirements engineering is playing a central role in managing digital transformation. However, making this possible also requires a transformation in the methods applied. As a result, in this blog article we present you with the latest trends in requirements engineering.

All too often innovation pressure, whether real or imagined (“We need to innovate!”), results in projects which get bogged down before they’re halfway done and result in horrendous costs. Why does this happen? Because the requirements gathered aren’t specific or accurate enough. This is because, as has been long accepted in the field of IT, requirements engineering is one of the most important factors determining the success of a project. As a result, many organizations have made great efforts to ensure that their requirements are correct and that they flow into their projects in a well-coordinated manner and at the right time. And in addition to conventional methods, those organizations are also relying more and more on agile processes.

The Challenge of Digital Transformation

So where does the challenge lie? In spite of sound methodological principles, projects which focus heavily on digitally transforming large companies or organizations often feel that conventional requirements engineering methods are inadequate. Those methods are sometimes seen as not being practical, and are also often considered to be too slow and excessive. Agility is apparently not always an adequate solution here either, since agile requirements engineering methods are sometimes considered to be relevant only to development, or they’re seen as too superficial and not suitable for complex tasks. In a nutshell, established requirements engineering tools fall short when it comes to managing digital change.

“These days, a requirements engineer is faced with great changes – approaches in this field have undergone fundamental change, and in some cases have even turned completely upside down.”

Karl Schott, CEO Spirit in Projects

Trend: The Moving Target

No one who works in the field of requirements engineering for an organization committed to digital change will be able to implement projects as they did previously and still be successful. The reason for this is that role of requirements engineer has fundamentally changed:

“More and more, requirements engineers are finding themselves back in digital transformation projects, and although those projects are driven by a vision and strategic goals, neither the path which needs to be taken, nor the actual benefits of the project nor the strategic technology for implementation actually exist, and need to be first worked out over the course of the project.”

Karl Schott, CEO Spirit in Projects

This is reflected in the problems of the industry, and in the current discussion going on in research surrounding the subject of ubiquitous requirements engineering. When it comes to innovation processes, the theme of requirements analysis forms a framework which surrounds the entire project.

Aspects of Ubiquitous Requirements Engineering

The term ubiquitous refers to the fact that requirements engineering is omnipresent in innovation projects. This results in a number of problems and changes which in our opinion account for the current trends in requirements engineering:

  • Open ended: Analysis projects for establishing technical ecosystems must be implemented without clear end criteria.

  • Holistic approach: A holistic approach will move into focus if the solution affects your environment so strongly in terms of technology and organization that clear boundaries cannot be established for the analysis.

  • Borderless systems: Systems cross borders in cases where the solution is being developed and used across regions or globally and participants are difficult to manage in terms of location and/or time.

  • Everyone: Many voices will be included in the conversation when the digital transformation results in the inclusion of an increasing number of stakeholders who are unable to provide expertise in the development of solution ideas.

  • Crowd: When it can no longer be determined whether users are key stakeholders or if it’s not even clear whether they’re actual people, the elicitation of requirements must be performed automatically.

  • Outside the comfort zone: When the problem to be solved can no longer be analyzed using an organization’s own know-how and skills, but solving the problem instead requires collaboration which crosses different domains, organizations and/or companies – that’s “being outside the zone of comfort”.

An important trend is also how the role of requirements engineering has changed for companies themselves – it no longer concerns “just” eliciting requirements, but instead bringing in possible technologies and solution approaches at a very early stage. The trend is moving towards requirements engineering providing even more:

  • Strategic consulting: This is because corporate strategies are relying more and more on the use of technologies to find and implement solutions.

  • Business enabler: In cases where the possibility of using technologies determines market success.

  • Orientation toward disruptive technologies: In cases where new technologies are being brought in to make it possible for a company’s new requirements to exist in the first place.

These trends point to a development we refer to as “new requirements engineering”. Our website contains detailed articles on our related practical experience we’ve gained from actual projects; incidentally you can also read more here about our consulting approach in the area of requirements management.


Learn more about our trainings for innovation & digital transformation:

Agile Methods

Invitations to tender

Digitalization