InfoQ Homepage Architecture Content on InfoQ
-
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.
-
Cloudberry: An HTML5 Cloud Phone Platform for Mobile Devices
In this article, authors introduce Cloudberry, an HTML5-based cloud phone software which offers the benefit of changing features on mobile devices almost instantly. They also talk about challenges of using this platform.
-
Interview and Book Review: Enterprise Software Delivery
"Enterprise Software Delivery" is the latest book by Alan W. Brown, and is a must-read guide for anybody concerned with the development and delivery of software in a large organisation.
-
Designing and Implementing Hypermedia APIs
This article (the second in a four-part series) walks through the implementation of a hypermedia server based on the design for the class scheduling problem domain outlined in the first installment of this series. In upcoming weekly installments of the series, details of implementing hypermedia clients will be reviewed along with techniques for evolving the API safely over time.
-
Jonah Kowall on Application Performance Monitoring and Management
Application Performance Management (APM) focuses on monitoring and managing the performance and availability of software applications running in an enterprise. Jonah Kowall from Gartner team co-authored the Gartner Magic Quadrant report on Application Performance Monitoring. InfoQ spoke with Jonah about the APM space, techniques and tools and emerging trends in this area.
-
Automating Data Protection Across the Enterprise
This article builds on the foundational Regulatory Compliant Cloud Computing (RC3) architecture for application security in the cloud by defining a Data Encryption Infrastructure(DEI) which is not application specific. DEI encompasses technology components and an application architecture that governs the protection of sensitive data within an enterprise.
-
Designing and Implementing Hypermedia APIs
This article (the first in a four-part series) talks briefly about the concept of using hypermedia as an application programming interface (API) and how to design a hypermedia type to use as a basis for your API. In upcoming weekly installments of the series, details of implementing hypermedia servers and clients will be reviewed along with techniques for evolving the API safely over time.