InfoQ Homepage Architecture Content on InfoQ
-
The Real Question is Why?
The Agile movement has driven a revolutionary change in the way we build and deliver software solutions. In the past few years Agile frameworks have become mainstream. Agile has solved the problems of the 90's and early 2000's. Now a new kind of problem is emerging that needs an equally elegant solution, how do we build the right solution? Do we know Why we are building it?
-
Key Takeaway Points and Lessons Learned from QCon London 2013
This article presents the main takeaway points as seen by the many attendees who blogged or tweeted about QCon. Comments are organized by tracks and sessions: Keynotes, Distributed Systems / REST, The Java Developer Track, The Developer Track, Building for Clouds, Real Startups, Creative Thinking & Visual Problem-solving, Handheld Banking and many more!
-
Choosing the Right ESB for Your Integration Needs
Kai Wähner explains the differences between an integration framework, an ESB and an integration suite, following with advice for selecting the right one from existing commercial and open source solutions.
-
Capturing Compliance Requirements: A Pattern-Based Approach
Assuring compliance across an enterprise is critical and necessitates a holistic approach for defining a consistent set of process and system level controls. In this article, authors discuss a new pattern-based framework to capture and manage business process compliance requirements. They also talk about implementation of the framework and two case studies in banking and e-business domains.
-
How Would You Build Up a City from Components?
Aliaksei Papou explores how components and common design patterns such as the Observer and Finite State Machine make it possible to design an application such that it can grow and change according to your needs using the analogy of a house.
-
Application Performance Management Maturity Model
In this article, author Jim Hirschauer justifies the importance of application performance management (APM) process in organizations. He also describes a maturity model for application performance management with three different levels of maturity.
-
Evaluating Agile and Scrum with Other Software Methodologies
Historical data is a key resource for judging the effectiveness of software process improvement methods and also for calibrating software estimation accuracy. In this article, Capers Jones compares Agile and Scrum with a sample of contemporary software development methods using several standard metrics.
-
Growing EAI with Apache Camel
This article comprises practical examples of typical integration challenges and explores how Apache Camel can meet these challenges. These examples are presented in the context of an integration solution that starts simply but grows over time as new integration needs arise. The article concentrates on how Camel helps managing complexity and keeping the team productive.
-
Design Pattern Automation
Despite the high total cost of ownership of a line of code, a lot of boilerplate code still gets written every day. Much of it could be avoided if we only had smarter compilers. Indeed, most boilerplate code stems from repetitive implementation of design patterns that are so well-understood that they could be implemented automatically if we had a way to teach it to compilers.
-
Self-Organizing Organizations (For Real)
This is a true story about a company that operates under principles of self-organization. It is organized according to the free will of each individual in the company, all of them freely choosing to co-operate for achieving some goals. All you’ve ever wanted to know about self-organized companies, without daring actually run one.
-
Refactoring Legacy Applications: A Case Study
To refactor legacy code, the ideal is to have a suite of unit tests to prevent regressions. However it's not always that easy. This article describes a methodology to safely refactor legacy code.
-
Application Security Testing: The Double-sided Black Box
In this article, Rohit Sethi discusses one of the biggest risks with software security, the opaque nature of verification tools and processes, and the potential for false negatives not covered by the different verification techniques. He also talks about some examples of security requirements and examines how common verification methods apply to them.