Enterprise Software

Home » Software » Enterprise Software

Cloud Design Pattern Library by Microsoft

Microsoft maintains an extensive library of cloud design patterns. Whether you create applications that run on AWS, Microsoft Azure or Google Cloud Platform, use platforms such as Heroku or you develop enterprise applications which run on on-premise cloud networks within a corporate intranet, cloud computing becomes ever more crucial to providing business value through software. Hence, it's not only expedient to know about the classic relatively low-level GoF design patterns or Martin Fowler's Patterns of Enterprise Application Architecture but about design patterns for ... Read more

State of JavaScript Survey: 2018 Edition – Criticism from an Angular Perspective

Recently, the results of the 2018 edition of the State of JavaScript survey have been published. As usual, the report comes with handy categories such as front-end, data layer, testing or mobile. While I very much support the idea of creating a yearly survey of the JavaScript landscape and this survey in particular, which I have been supporting since its inception, there's a major issue with this year's edition: In contrast to its previous editions the survey results lump together (or at least the ... Read more

Nonsense We Put up With: Complexity, Agile Gone Wrong and Enterprise Decision Making

Recently, I've come across a few articles that - although about ostensibly different subjects - share a common theme: When trying to create business value through software and devising the structures required to do so we all too often put up with wasteful processes, politics and toxic behaviour patterns that not only do not contribute to our goal but are downright detrimental. First, there's this transcript of a talk Martin Fowler gave at Agile Australia this year: The State of Agile Software ... Read more

RxJS: Observables, Observers, Subjects …

When developing web applications - or in fact any kind of application that involves interaction via a user interface - we inevitably have to deal with asynchronous events, perhaps even streams of such events, e.g.: mouse clicks asynchronous HTTP calls and subsequent display of data push notifications Because events are such an essential part of both the feature set and the user experience of many, if not even most, user-facing applications frameworks such as Angular treat them as first-class citizens and provide developers with ... Read more

Things to Consider When Creating a New Business App: A Checklist for Setting up a Java-Based Software Architecture

Software developer Tom Hombergs - a former fellow student of mine - published this useful checklist for setting up Java applications on Reflectoring: A Checklist for setting up a Java-based Software Architecture It covers a wide array of both high and low level aspects of server-side and client-side development as well as architectural concerns. Furthermore, the checklist also has sections on operations, the development process and testing in particular. While some of the details may vary depending on the type of applications you create, ... Read more

JSON Schema to TypeScript declarations: Keeping Client and Server Models in Sync with Spring Data REST and Typescript

With web applications a separation between client and server is commonplace nowadays: While the server (also often called back-end) deals with the underlying model, data storage and the predominant part of the business logic, the user interface and user-facing behaviour in general is realised with JavaScript, HTML and CSS on the client (also referred to as front-end), i.e. the user's browser. Frequently, frameworks such as Angular are used in order to facilitate development and make code easier to read and generally more ... Read more

Keep it simple, stupid

As something of a follow-up on my article on using boring solutions from two weeks ago I'd like to point you to a blog post by Justin Etheredge, cofounder of software development company Simple Thread: Software Complexity Is Killing Us In this post Justin outlines in which ways software development has become easier in the past few decades and also points out the ways in which it hasn't. Most of the complexity of software applications accumulates in the layer that deals with business processes. ... Read more

Use Boring Solutions

Often when working with both startups and project teams at larger, more seasoned companies I encounter a variation of the not invented here syndrome. This usually starts with the well-intentioned idea that in order to build the actual product you need ancillary services A, B and C in order for the product to work. However, more often than not instead of building the 'perfect' solution for your product yourself it might be a good idea to take a step back and think about ... Read more

Alexandra Leisse @ RuhrJS 2017 – Death by a thousand paper cuts

At RuhrJS 2017 UX designer Alexandra Leisse talked about her personal experience with designing user experience for enterprise applications and how to deal with the continually growing complexity involved in that process: Read more

Dimensions of Software Quality: Outcomes, Continuity, Cohesion and Coupling

IT consultant Erik Dietrich wrote this interesting article about his approach for evaluating software quality from a business perspective. He suggests these 2 questions as the main business considerations when it comes to software quality: Does the software do what it’s supposed to do? Can I easily change what the software does? In other words: Software quality is determined by both outcome and continuity (the extent to which software allows for changing circumstances, see Jeff Sussna's book Designing Delivery for more information on this matter) The ... Read more
Next Page »