What is Architecture and how can Agile improve Architectural Design?Saturday, September 22, 2018
A curious aspect of IT Architecture is that there is no single definition of Architecture. This causes real problems on projects. The reason is that Architecture and Design, are the pre-requisites for good IT systems. In Waterfall we have the ‘Big UpFront Design’ or BUFD, which is inefficient, unrealistic and untethered to technical reality. For example, how will I know what my real design is based on implementation details in 6 months? Agile, proposes an iterative design creation, with minimum and sometimes no real design made up front. This is likewise problematic.
Agile and Domain Driven DesignWednesday, September 05, 2018
Agile is not only a delivery method of course, but an approach to project management and deployment. Agile stresses Proof of Concepts, sometimes called ‘Minimum Viable Product’ or MVP, which are hands-on attempts to assess technologies, concepts and first designs. The design process is never ‘skipped’ in Agile, it is just not as formalized and sequential as the Waterfall theology. MVPs or POCs are practical attempts to see what works, and what does not. They are not the theoretical models of Waterfall liturgy, but rational attempts to investigate if the chosen technologies, platforms, or services, do actually work in real life. Design
Migrating Applications to the Cloud - a summary of how to do itTuesday, August 21, 2018
There are four types of application modernization strategies to migrate legacy applications in the cloud (figure below). You first need to carry out a careful analysis of each legacy application to determine the best method to maximize long-term benefits, taking into account time, costs, and user impact. Some legacy applications are mission critical and unique to your business such that the long- term effort to redesign and recode them is worth the time and cost. Then, there will be relatively simple applications that you can quickly port (i.e., rehost or refactor) to a cloud platform, or even eliminate and replace with a SaaS offering from a cloud provider.
Important aspects of Storage and Compute VirtualisationFriday, August 17, 2018
A standard method is to utilize local storage installed within each physical server when configuring hypervisors and VMs. Some modern clouds and storage systems still recommend numerous scaled-out storage nodes with direct-attached storage rather than deploying a SAN. This is not however best practice, especially if you want to be Cloud-enabled because you will lose some significant capabilities.
Orchestrating Automated Actions in the CloudWednesday, August 15, 2018
An orchestrator refers to a software system programmed with workflow rules and business logic that facilitates automated actions and integrated connectors to external software systems. Many IT organizations create scripts to automate manual tasks; however, these are now considered a legacy technique. Scripts are also difficult to maintain and reuse, and their sequential processing limits their flexibility. An orchestration system goes well beyond scripting with parallel tasking, branching workflows, situational-awareness logic, and the ability to back out from or resume workflows that fail or sense an error.