Quantcast
Channel: Jens-Fabian Goetzmann » Strategy
Viewing all articles
Browse latest Browse all 2

Five Things I Didn’t Learn at University

$
0
0

As a computer-scientist-gone-business-consultant I have had many opportunities to witness how IT is used in the enterprise context. Time and time again, I have found it baffling how the way that IT is really used in companies differs from what I have learnt at the three German universities I have attended over the course of my studies, or – even more important – what I did not learn at university. Here are five notable examples that I will elaborate on in this article:

  1. The relevance of enterprise architecture
  2. The legacy of enterprise IT landscapes
  3. The importance of data quality
  4. The challenge of defining and aligning on the right requirements
  5. The Embedding of IT in the enterprise and IT Strategy

 

1. The Relevance of Enterprise Architecture

Enterprise architecture, as in: the interaction between various systems, their interfaces and the definition and management of an overarching structure encompassing all systems of an enterprise, has not been covered in my studies. Architecture has been a topic of my studies only in the very concrete sense of individual systems, and in an abstract sense in terms of patterns to define various components and their connections to solve an overarching task. This did not, however, cover some of the challenges imminent to enterprise architecture, such as maintaining interoperability between various systems, standardization across the landscape, processes and tools to define an overarching enterprise application landscape, or the definition of the right interface types and technologies (think batch vs. realtime vs. neartime, pull vs. push, point-to-point vs. publish/subscribe, etc.). Since the enterprise architecture is at the very heart of all enterprise IT operations, I feel that this should be given a higher degree of attention also in university curricula.

2. The Legacy of Enterprise IT Landscapes

Universities very often use the newest technologies and concepts in their teaching: Especially in the area of software development, languages like Java and C# or even more modern ones like Ruby or Scala are used along with concepts such as object-oriented programming, aspect-oriented programming or modern functional programming. Legacy technologies like COBOL or mainframe computers are subject only to the obligatory history lesson in the first semester. This does not, however, reflect their enormous significance in businesses across different industries: in many large companies, mission-critical systems still use these legacy technologies, and they still need to be maintained, enhanced, and have to interact and interface with new pieces of technology. Students of IT-related disciplines should be made aware of these facts, since they pose challenges that are not covered by modern software development.

3. The Importance of Data Quality

Granted, I did learn how to properly validate input data and everything. That alone is probably one of the most important ingredients to ensuring data quality. Almost equally important, however, are the aspects of ensuring consistency across different systems and interfaces and the ever-present issue of how to keep persistent data that is stored over a longer period up to date. Related are the organizational challenges such as data ownership and processes to for change requests to data models. All of these are essential for maintaining and handling the data managed in large organizations. Even the notion how important these issues are, however, was barely ever touched upon during my studies. Since the quality of data is at the heart of all decision-making processes in companies, I think that this topic should be covered more deeply in university studies.

4. The Challenge of Defining and Aligning on the Right Requirements

This is actually one area in which I did learn something in university, thanks to the excellent Andreas Winter (the relevance of whose classes I only came to fully understand once I started working). The class, however, was optional, and given the enormous challenges that I have witnessed in this area in various companies across different industries, I feel that this topic deserves more attention. The issues that I have faced include:

  • Requirements are not defined clearly and unambiguously (leading to inevitable trouble during implementation)
  • Stakeholders are not properly and comprehensively identified and involved in the definition of requirements
  • Different stakeholders have conflicting requirements, and there is nobody with authority and willingness to resolve these conflicts, nor do any processes for conflict-resolution exist
  • There is no willingness or process to prioritize requirements, and senior management lacks the commitment to drive a (necessary) prioritization
  • There is a general mistrust between business units and IT function, leading them to work against each other instead of collaborating to produce the best solution for the business

None of these issues can be solved by the IT function alone, in fact, some are more business issues with an impact on IT. However, since they are all issues that can in the end cause an IT project to fail, it is in fact IT’s responsibility to highlight the issues and propose solutions. Students should therefore be made aware of the challenges and potential ways to address them.

5.  The Embedding of IT in the enterprise and IT Strategy

As I have written before, the IT function needs to be aware of its role in the enterprise both as a service provider and an enabler of business activities, and form its own strategy in close alignment with the business strategy. Students of Computer Science and related disciplines should be made aware of these strong interdependencies between business strategy and operations and IT strategy and operations. Very often, IT people tend to have a narrow focus on their own domain (in which they are experts) and neglect the impact that their decisions can have on their environments and vice versa. IT experts make decisions that they regard as technologically superior (which they might well be), but that become obsolete in the light of changing business circumstances. Nobody in the business or the IT can predict the future, but they can at least cooperate and align to make sure they are heading in the same direction. Since this foundational interdependency is so strong and can wreak so much havoc if it is neglected, I think it should be highlighted and explained to students.

Summary

Many of the challenges I have described in this article are highly relevant and I have encountered them in companies across different industries. I thus think that students of IT-related disciplines should be made aware of the challenges and potential solutions. Of course, enterprise IT is not the only potential occupation for CS graduates: they might work on standard software, on hardware, on embedded systems, or found their own Internet start-up. Enterprise IT should therefore not be given too much weight in CS curricula. A basic introduction to the challenges specific to enterprise IT, however, should in my opinion be mandatory for every CS student.


Viewing all articles
Browse latest Browse all 2

Latest Images

Trending Articles





Latest Images