A collection of techniques for designing and running architecture reviews
Presentation was given at the norwegian computer society SW2015 conference and Javazone 2015.
Theres a video of the javazone talk online: https://vimeo.com/138848892
In this session we will discuss the use of Agile constructs within the domain of software architecture. This will include an exploration of how to balance emergent designs with intentional planning. Additional ancillary topics will also be addressed including: common architecture principles, guidelines for measuring good architecture, and an evaluation of agile techniques.
By the end of the session, attendees will have a new perspective on architecture that will empower them to create flexible software solutions.
How we think of architecture shapes what we do as architects, and what we do, shapes how we think of architecture. We will explore our conception of architecture in this dual sense, with an emphasis on visualization and visual expression of design (intention and reflection).
Presented at SATURN 2017
3d, 4d, 5d and 6d bim provide exceptional results for building construction!bimservicesindia1
BIM Services India is an eminent Architectural and Engineering consulting company provides all round solutions such as site analysis, CAD Services, planning, 3D 4D & 5D BIM Architectural and Engineering designs and other relevant consulting services to the clients from Architectural, Mechanical and Structural spheres at highly competitive cost with promising prompt delivery.
website:www.bimservicesindia.com
In this session we will discuss the use of Agile constructs within the domain of software architecture. This will include an exploration of how to balance emergent designs with intentional planning. Additional ancillary topics will also be addressed including: common architecture principles, guidelines for measuring good architecture, and an evaluation of agile techniques.
By the end of the session, attendees will have a new perspective on architecture that will empower them to create flexible software solutions.
How we think of architecture shapes what we do as architects, and what we do, shapes how we think of architecture. We will explore our conception of architecture in this dual sense, with an emphasis on visualization and visual expression of design (intention and reflection).
Presented at SATURN 2017
3d, 4d, 5d and 6d bim provide exceptional results for building construction!bimservicesindia1
BIM Services India is an eminent Architectural and Engineering consulting company provides all round solutions such as site analysis, CAD Services, planning, 3D 4D & 5D BIM Architectural and Engineering designs and other relevant consulting services to the clients from Architectural, Mechanical and Structural spheres at highly competitive cost with promising prompt delivery.
website:www.bimservicesindia.com
TrueCADD - Leading BIM Engineering Solutions provider firm in India. We have expertise in MEP BIM, Clash Detection, Revit MEP Coordination, Quantity Take off etc.
Presentation About of Revit Architecture Desing and History, Then Revit Architecture Course provides by Croma campus one of the best training institutes.
The quality of data-powered applications depends not only on code, but also on collected data, as well as models trained on data. This renders traditional quality assurance inadequate. We will take a look in our toolbox for more holistic tactics that bridge the gap between code and data quality assurance.
Sustainability of software depends on several factors including the processes deployed to develop, operate, maintain and dispose software systems. To make such sustainability-related processes actually deployable and controllable, specific green metrics and indicators are necessary. In this paper we propose a sound methodological approach to derive green metrics and we provide also a significant set of metrics, derived according to such an approach, able to address different aspects of software sustainability.
Best Practices for the Hadoop Data Warehouse: EDW 101 for Hadoop ProfessionalsCloudera, Inc.
The enormous legacy of EDW experience and best practices can be adapted to the unique capabilities of the Hadoop environment. In this webinar, in a point-counterpoint format, Dr. Kimball will describe standard data warehouse best practices including the identification of dimensions and facts, managing primary keys, and handling slowly changing dimensions (SCDs) and conformed dimensions. Eli Collins, Chief Technologist at Cloudera, will describe how each of these practices actually can be implemented in Hadoop.
Talk given at Montréal Elixir meetup on Nov. 14th: https://www.meetup.com/fr-FR/montrealelixir/events/256148599/
In this talk, we'll see how we can improve the maintainability of our projects, either greenfield or legacy. We'll use concrete examples in Elixir.
TrueCADD - Leading BIM Engineering Solutions provider firm in India. We have expertise in MEP BIM, Clash Detection, Revit MEP Coordination, Quantity Take off etc.
Presentation About of Revit Architecture Desing and History, Then Revit Architecture Course provides by Croma campus one of the best training institutes.
The quality of data-powered applications depends not only on code, but also on collected data, as well as models trained on data. This renders traditional quality assurance inadequate. We will take a look in our toolbox for more holistic tactics that bridge the gap between code and data quality assurance.
Sustainability of software depends on several factors including the processes deployed to develop, operate, maintain and dispose software systems. To make such sustainability-related processes actually deployable and controllable, specific green metrics and indicators are necessary. In this paper we propose a sound methodological approach to derive green metrics and we provide also a significant set of metrics, derived according to such an approach, able to address different aspects of software sustainability.
Best Practices for the Hadoop Data Warehouse: EDW 101 for Hadoop ProfessionalsCloudera, Inc.
The enormous legacy of EDW experience and best practices can be adapted to the unique capabilities of the Hadoop environment. In this webinar, in a point-counterpoint format, Dr. Kimball will describe standard data warehouse best practices including the identification of dimensions and facts, managing primary keys, and handling slowly changing dimensions (SCDs) and conformed dimensions. Eli Collins, Chief Technologist at Cloudera, will describe how each of these practices actually can be implemented in Hadoop.
Talk given at Montréal Elixir meetup on Nov. 14th: https://www.meetup.com/fr-FR/montrealelixir/events/256148599/
In this talk, we'll see how we can improve the maintainability of our projects, either greenfield or legacy. We'll use concrete examples in Elixir.
Software Architecture: views and viewpointsHenry Muccini
This is an introductory lecture to Software Architecture Views and Viewpoints, part of the Advanced Software Engineering course, at the University of L'Aquila, Italy (www.di.univaq.it/muccini/SE+/2012)
Moving To The Cloud, Evaluating ArchitecturesMark Sigler
Much has changed in the Cloud, but some fundamentals remain unchanged. As enterprises continue a migration to cloud platforms, architectures and operating models, there is a periodic need to reevaluate their portfolio of preexisting applications to assess the options for migration.
This is a reprise and reimagining of a white paper authored and informed by a cloud consulting project in 2009.
AWS User Group presentation on AWS Well-Architected Framework. Includes items from framework and additional best practices I have implemented (identified by slides with (Me) in the title).
This presentation is about a lecture I gave within the "Software systems and services" immigration course at the Gran Sasso Science Institute, L'Aquila (Italy): http://cs.gssi.infn.it/.
http://www.ivanomalavolta.com
A guide to hiring a great developer to build your first app (redacted version)Oursky
Hiring the right developer for your startup can be wearying. In this bitesized Garage Academy session, Ben Cheng, CEO of Oursky will provide you with all the tips for hiring your first developer -- from app development team structure to recruitment to management.
About the speaker:
Ben Cheng is the CEO of Oursky, a Hong Kong-based app dev studio that helps entrepreneurs and startups turn their ideas into reality. He has driven the company’s vision, strategy, and growth since its inception in 2008, and grown the technology-driven team from 3 to over 40 in Hong Kong and Taipei.
ABOUT OURSKY:
Founded in 2008, Oursky has developed web & mobile apps for startups and enterprises such as ASOS and Thomson Reuters. In 2015, 60% of Oursky's published iOS apps were featured in Apple's App Store and one was selected as a Best of 2013 App.
Scrum and Kanban - Getting the Most from EachMichael Sahota
Scrum is the most popular Agile methodology with Kanban a growing second choice. Learn about the core parts of each one as well as how they differ so that you can find the best fit for your team or organizational context. For example, Scrum is great when you want to shake up the status quo and transform the way you work. Kanban is great when small changes are a better fit for the environment. Learn how they work and how you can use them in your environment.
Working Software Over Comprehensive DocumentationAndrii Dzynia
Не один десяток раз каждый из нас видео этот пункт Agile манифеста. Кто на официальном сайте Agile Manifesto, кто в книгах или статьях, кто на тренингах или конференциях. Звучит правильно очевидно и просто, но на практике возникают некие сложности с его реализацией. Как определить какие документы писать нужно, а какие не стоит? Как поддерживать документы с наименьшими усилиями? От каких документов нужно отказаться или заменить на более простые решения? Что стоит документировать тестировщику, разработчику, бизнес-аналитику в Agile проектах, для того чтобы презентовать результаты своей работы. На все эти вопросы я постараюсь ответить в своем докладе, закрепляя примерами которые вы сможете попытаться применить на своих проектах.
This presentation is about a lecture I gave within the "Software systems and services" immigration course at the Gran Sasso Science Institute, L'Aquila (Italy): http://cs.gssi.infn.it/.
http://www.ivanomalavolta.com
Similar to Toolbox of techniques for Architecture Reviews (20)
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Łukasz Chruściel
No one wants their application to drag like a car stuck in the slow lane! Yet it’s all too common to encounter bumpy, pothole-filled solutions that slow the speed of any application. Symfony apps are not an exception.
In this talk, I will take you for a spin around the performance racetrack. We’ll explore common pitfalls - those hidden potholes on your application that can cause unexpected slowdowns. Learn how to spot these performance bumps early, and more importantly, how to navigate around them to keep your application running at top speed.
We will focus in particular on tuning your engine at the application level, making the right adjustments to ensure that your system responds like a well-oiled, high-performance race car.
Zoom is a comprehensive platform designed to connect individuals and teams efficiently. With its user-friendly interface and powerful features, Zoom has become a go-to solution for virtual communication and collaboration. It offers a range of tools, including virtual meetings, team chat, VoIP phone systems, online whiteboards, and AI companions, to streamline workflows and enhance productivity.
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppGoogle
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
👉👉 Click Here To Get More Info 👇👇
https://sumonreview.com/ai-fusion-buddy-review
AI Fusion Buddy Review: Key Features
✅Create Stunning AI App Suite Fully Powered By Google's Latest AI technology, Gemini
✅Use Gemini to Build high-converting Converting Sales Video Scripts, ad copies, Trending Articles, blogs, etc.100% unique!
✅Create Ultra-HD graphics with a single keyword or phrase that commands 10x eyeballs!
✅Fully automated AI articles bulk generation!
✅Auto-post or schedule stunning AI content across all your accounts at once—WordPress, Facebook, LinkedIn, Blogger, and more.
✅With one keyword or URL, generate complete websites, landing pages, and more…
✅Automatically create & sell AI content, graphics, websites, landing pages, & all that gets you paid non-stop 24*7.
✅Pre-built High-Converting 100+ website Templates and 2000+ graphic templates logos, banners, and thumbnail images in Trending Niches.
✅Say goodbye to wasting time logging into multiple Chat GPT & AI Apps once & for all!
✅Save over $5000 per year and kick out dependency on third parties completely!
✅Brand New App: Not available anywhere else!
✅ Beginner-friendly!
✅ZERO upfront cost or any extra expenses
✅Risk-Free: 30-Day Money-Back Guarantee!
✅Commercial License included!
See My Other Reviews Article:
(1) AI Genie Review: https://sumonreview.com/ai-genie-review
(2) SocioWave Review: https://sumonreview.com/sociowave-review
(3) AI Partner & Profit Review: https://sumonreview.com/ai-partner-profit-review
(4) AI Ebook Suite Review: https://sumonreview.com/ai-ebook-suite-review
#AIFusionBuddyReview,
#AIFusionBuddyFeatures,
#AIFusionBuddyPricing,
#AIFusionBuddyProsandCons,
#AIFusionBuddyTutorial,
#AIFusionBuddyUserExperience
#AIFusionBuddyforBeginners,
#AIFusionBuddyBenefits,
#AIFusionBuddyComparison,
#AIFusionBuddyInstallation,
#AIFusionBuddyRefundPolicy,
#AIFusionBuddyDemo,
#AIFusionBuddyMaintenanceFees,
#AIFusionBuddyNewbieFriendly,
#WhatIsAIFusionBuddy?,
#HowDoesAIFusionBuddyWorks
We describe the deployment and use of Globus Compute for remote computation. This content is aimed at researchers who wish to compute on remote resources using a unified programming interface, as well as system administrators who will deploy and operate Globus Compute services on their research computing infrastructure.
Enhancing Research Orchestration Capabilities at ORNL.pdfGlobus
Cross-facility research orchestration comes with ever-changing constraints regarding the availability and suitability of various compute and data resources. In short, a flexible data and processing fabric is needed to enable the dynamic redirection of data and compute tasks throughout the lifecycle of an experiment. In this talk, we illustrate how we easily leveraged Globus services to instrument the ACE research testbed at the Oak Ridge Leadership Computing Facility with flexible data and task orchestration capabilities.
OpenMetadata Community Meeting - 5th June 2024OpenMetadata
The OpenMetadata Community Meeting was held on June 5th, 2024. In this meeting, we discussed about the data quality capabilities that are integrated with the Incident Manager, providing a complete solution to handle your data observability needs. Watch the end-to-end demo of the data quality features.
* How to run your own data quality framework
* What is the performance impact of running data quality frameworks
* How to run the test cases in your own ETL pipelines
* How the Incident Manager is integrated
* Get notified with alerts when test cases fail
Watch the meeting recording here - https://www.youtube.com/watch?v=UbNOje0kf6E
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus
As part of the DOE Integrated Research Infrastructure (IRI) program, NERSC at Lawrence Berkeley National Lab and ALCF at Argonne National Lab are working closely with General Atomics on accelerating the computing requirements of the DIII-D experiment. As part of the work the team is investigating ways to speedup the time to solution for many different parts of the DIII-D workflow including how they run jobs on HPC systems. One of these routes is looking at Globus Compute as a way to replace the current method for managing tasks and we describe a brief proof of concept showing how Globus Compute could help to schedule jobs and be a tool to connect compute at different facilities.
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Crescat
Crescat is industry-trusted event management software, built by event professionals for event professionals. Founded in 2017, we have three key products tailored for the live event industry.
Crescat Event for concert promoters and event agencies. Crescat Venue for music venues, conference centers, wedding venues, concert halls and more. And Crescat Festival for festivals, conferences and complex events.
With a wide range of popular features such as event scheduling, shift management, volunteer and crew coordination, artist booking and much more, Crescat is designed for customisation and ease-of-use.
Over 125,000 events have been planned in Crescat and with hundreds of customers of all shapes and sizes, from boutique event agencies through to international concert promoters, Crescat is rigged for success. What's more, we highly value feedback from our users and we are constantly improving our software with updates, new features and improvements.
If you plan events, run a venue or produce festivals and you're looking for ways to make your life easier, then we have a solution for you. Try our software for free or schedule a no-obligation demo with one of our product specialists today at crescat.io
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Globus
Large Language Models (LLMs) are currently the center of attention in the tech world, particularly for their potential to advance research. In this presentation, we'll explore a straightforward and effective method for quickly initiating inference runs on supercomputers using the vLLM tool with Globus Compute, specifically on the Polaris system at ALCF. We'll begin by briefly discussing the popularity and applications of LLMs in various fields. Following this, we will introduce the vLLM tool, and explain how it integrates with Globus Compute to efficiently manage LLM operations on Polaris. Attendees will learn the practical aspects of setting up and remotely triggering LLMs from local machines, focusing on ease of use and efficiency. This talk is ideal for researchers and practitioners looking to leverage the power of LLMs in their work, offering a clear guide to harnessing supercomputing resources for quick and effective LLM inference.
Enterprise Resource Planning System includes various modules that reduce any business's workload. Additionally, it organizes the workflows, which drives towards enhancing productivity. Here are a detailed explanation of the ERP modules. Going through the points will help you understand how the software is changing the work dynamics.
To know more details here: https://blogs.nyggs.com/nyggs/enterprise-resource-planning-erp-system-modules/
Quarkus Hidden and Forbidden ExtensionsMax Andersen
Quarkus has a vast extension ecosystem and is known for its subsonic and subatomic feature set. Some of these features are not as well known, and some extensions are less talked about, but that does not make them less interesting - quite the opposite.
Come join this talk to see some tips and tricks for using Quarkus and some of the lesser known features, extensions and development techniques.
Navigating the Metaverse: A Journey into Virtual Evolution"Donna Lenk
Join us for an exploration of the Metaverse's evolution, where innovation meets imagination. Discover new dimensions of virtual events, engage with thought-provoking discussions, and witness the transformative power of digital realms."
Understanding Nidhi Software Pricing: A Quick Guide 🌟
Choosing the right software is vital for Nidhi companies to streamline operations. Our latest presentation covers Nidhi software pricing, key factors, costs, and negotiation tips.
📊 What You’ll Learn:
Key factors influencing Nidhi software price
Understanding the true cost beyond the initial price
Tips for negotiating the best deal
Affordable and customizable pricing options with Vector Nidhi Software
🔗 Learn more at: www.vectornidhisoftware.com/software-for-nidhi-company/
#NidhiSoftwarePrice #NidhiSoftware #VectorNidhi
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Globus
The Earth System Grid Federation (ESGF) is a global network of data servers that archives and distributes the planet’s largest collection of Earth system model output for thousands of climate and environmental scientists worldwide. Many of these petabyte-scale data archives are located in proximity to large high-performance computing (HPC) or cloud computing resources, but the primary workflow for data users consists of transferring data, and applying computations on a different system. As a part of the ESGF 2.0 US project (funded by the United States Department of Energy Office of Science), we developed pre-defined data workflows, which can be run on-demand, capable of applying many data reduction and data analysis to the large ESGF data archives, transferring only the resultant analysis (ex. visualizations, smaller data files). In this talk, we will showcase a few of these workflows, highlighting how Globus Flows can be used for petabyte-scale climate analysis.
First Steps with Globus Compute Multi-User EndpointsGlobus
In this presentation we will share our experiences around getting started with the Globus Compute multi-user endpoint. Working with the Pharmacology group at the University of Auckland, we have previously written an application using Globus Compute that can offload computationally expensive steps in the researcher's workflows, which they wish to manage from their familiar Windows environments, onto the NeSI (New Zealand eScience Infrastructure) cluster. Some of the challenges we have encountered were that each researcher had to set up and manage their own single-user globus compute endpoint and that the workloads had varying resource requirements (CPUs, memory and wall time) between different runs. We hope that the multi-user endpoint will help to address these challenges and share an update on our progress here.
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisGlobus
JASMIN is the UK’s high-performance data analysis platform for environmental science, operated by STFC on behalf of the UK Natural Environment Research Council (NERC). In addition to its role in hosting the CEDA Archive (NERC’s long-term repository for climate, atmospheric science & Earth observation data in the UK), JASMIN provides a collaborative platform to a community of around 2,000 scientists in the UK and beyond, providing nearly 400 environmental science projects with working space, compute resources and tools to facilitate their work. High-performance data transfer into and out of JASMIN has always been a key feature, with many scientists bringing model outputs from supercomputers elsewhere in the UK, to analyse against observational or other model data in the CEDA Archive. A growing number of JASMIN users are now realising the benefits of using the Globus service to provide reliable and efficient data movement and other tasks in this and other contexts. Further use cases involve long-distance (intercontinental) transfers to and from JASMIN, and collecting results from a mobile atmospheric radar system, pushing data to JASMIN via a lightweight Globus deployment. We provide details of how Globus fits into our current infrastructure, our experience of the recent migration to GCSv5.4, and of our interest in developing use of the wider ecosystem of Globus services for the benefit of our user community.
GraphSummit Paris - The art of the possible with Graph TechnologyNeo4j
Sudhir Hasbe, Chief Product Officer, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
3. essential problem
“Identify the forces on the system
Grok the system’s essential architecture.
Generate scenarios that exercise the
relevant forces against the architecture.
Throw the essential architecture against
those scenarios, then evaluate how they land
relative to the relevant forces.
Wash, rinse, repeat”
- Grady Booch
@jbaragry
22. tool selection and customisation
Amount of Ceremony
∝
Consequence of Loss +
Difficulty of Communication
@jbaragry
source: Alistair Cockburn on Agile Methods:
http://alistair.cockburn.us/People+and+methodologies+in+software+development
23. using the toolbox for reviews
. take an active stance
. plan the review and adapt as needed
. work through system qualities
. develop the scenarios or checklists
for those qualities
. choose a scenario- or experience-
based method
. customise the appropriate level of
ceremony
. identify the people issues and adjust
@jbaragry
24. using the toolbox for design
test driven architecture
. use quality attributes and test
criteria early in the project
. product owners also own quality
. user stories, acceptance criteria
or architecture reviews
@jbaragry
most organisations use home-grown, informal, ad-hoc techniques .
40% that claim to use a structured approach very few have heard of or use any established technique
improve what you do by becoming familiar with existing techniques and using them _as appropriate_
. Massive amounts of information sent to everyone who might have an interest
- swamped with information
. Many reviews have no background in sw dev and don’t know what they are reviewing
- many end up saying nothing or, worse, focussing on issues that are not relevant
. “Review” workshop turns into a tutorial that explains how it works
. Devolves into round-table discussion with a random list of suggestions for the designers
Result: things that should be captured, discussed, and adjusted in the review process end up slipping through
Tend to focus solely on functionality and not system qualities
basic approach is pretty simple
everything is just different ways to do this
Simplest Tool
From 30+years ago
Which qualities are important and why? How will you evaluate them wrt to the architecture?
Not “Is it reusable/service oriented/fast enough?” Instead: “Explain the flow bw the user interface and the customer DB“, “which information is maintained between client calls? How is that dealt with in a failover situation?”
Other useful bits
Most likely iterative approach. High level review followed by smaller reviews focusing on specific aspects / qualities
You need something that is reviewable – architecture is more than box and line diagrams or 60 pages with prose
1999 : working group to collect industrial experience and research techniques.
many participants from multiple organisations
presented the SARA report at the ICSE in 2002
what steps to follow,
what questions to ask,
what information to collect and document,
what documentation templates to use, and
tips on how to manage the social, managerial, and technical issues that arise when reviewing an artifact as important and complicated as a software architecture.
Inputs
Outputs
Methods and Techniques
Review Workflow
Pragmatics and People Issues
see blog entry for more details
- difficult to identify ASDs and ASRs
Inputs
Outputs
Methods and Techniques
Review Workflow
Pragmatics and People Issues
see blog entry for more details
- difficult to identify ASDs and ASRs
- Objectives: conformance, quality, opportunities, example
- Scope: all quals (just perf)? whole sys (just domain)? all systems in value chain
- Arch: context drives doc formality, objectives drive views, other artefacts are useful
- Criteria: get some! will come back to this
- Intangibles: can be most important (shared view, archs get to explain to others)
- want to find significant reqs and design choices (not always known in advance)
- Tradeoffs: not important to find "right and wrong", explain consequences of tradeoffs
- Risks: what most people think of - but also outside the arch, eg: process
- lastly: what didn't you review, who couldn't attend, etc
- will come back to this
- context will determine scenario v experience v code analysis etc
- before: eg: does everyone have time in their calendar, do you have champion that can get them to attend?
- after: who are you communicating for? how to summarise a lot of detail?
- retrospective for yourself
- will come back to this also:
- huge difference between internal, regular, planned and external, triggered, one-off
experience = evaluation criteria as tacit knowledge
scenarios = specific to the project / domain
checklists = use them across projects / domains
Don’t call them NFRs
Prioritise them
You can’t check everything,
you will need to make tradeoffs,
so you need to specify what’s most important
often come from business drivers
Start with ISO 25010 standard for software product quality
Extend it as you need: e.g: its security aspects are not very comprehensive, TTM is often a criteria
Eg: for functional correctness
Wikipedia list is huge
After prioritising your quality attributes, then you need to testable criteria – either scenarios or experience based. Start with scenarios
Some common for all projects, others need to be created per project/solution
Scenario format: SMART or “given, when, then”
- Tom Gilb to quantify everything
Collect them during the course of the project – also leads to Test Driven Architecture
good way to get stakeholders involved
good way to build knowledge as an architect if you are relatively new to a domain
BUT : scenarios are hard…
most popular approach
good for things that recur across projects – technology and detailed, application architecture related issues
see also TOGAF and Stackoverflow lists
important to group them and formulate them as open questions (not like this list)
lots of specific methods exist
most fall into 1 of 2 categories: experience-based and scenario-based
ATAM stop the boat and run a big review
1. Present the ATAM. 2. Present business drivers.
(iteration 1)
Present architecture. 4. Identify architectural approaches. 5. Generate quality attribute utility tree. 6. Analyze architectural approaches.
(iteration 2)
7. Brainstorm and prioritize scenarios. 8. Analyze architectural approaches. 9. Present results.
Learn ATAM so that you can customise it to your needs.
LAAAM – in-process technique just to get stakeholder to focus on qualities
Peer Review – iterative, focussing on a few scenarios/qualities each time
Important: ATAM as it is presented is usually is often too heavy to use in industrial settings (in enterprise domains)
too hard to get all the stakeholders together at the same time
too hard to set off that much time in a fast moving project, etc
But it’s a very useful method to know about and understand so that you can customise it to your context
Scenarios are hard
scenario-based methods assume there is no existing system
sometimes you already have something to review –much of industrial assessment is brown-field
have a sponsor with a very specific goal that doesn’t need a full review
often you have lots of tacit knowledge about a domain or the owner has a very explicit need, don’t need to get into scenario workshops
(in practice, you already have the scenarios in that tacit knowledge)
master-apprentice pattern to build up experience for other architects
many more methods
modifiability, long-lived applications, etc
and there are 1001 methods just for security
social, psychological, and managerial context
Make developers feel confident, not defensive.
presence of non-technical people or people from outside the project. pro and con. good for communication, can be bad for defensiveness
using a review can help to make political games more rational.
having an external reviewer is often the best approach, but it increases the tension with the project team
planned, in-house reviews are a good way to spread knowledge, with minimal tension, but you risk missing things that external eyes will pick up
stakeholder management
ego, confrontation, self-defence are all consequences you need to deal with
planning and finding time with people is a limiting factor
focus on risk – don’t get sidetracked or bikesheded
as a reviewer – bury your ego. There to raise issues not solve them
most important tool – use your common sense
“a fool with a tool is still a fool”
amount of ceremony is proportional to the consequence of loss and the difficulty of communication
how formal should the review be?
how much documentation of the architecture do you need?
is the goal to test all evaluation criteria or to make them visible and part of the design discussion?
- build up your toolbox and choose the one that is appropriate to the context of your project
also a toolbox for driving architecture design
evaluation criteria are just test cases for your architecture
= test driven architecture
Just a taste in this presentation
Writing up this topic as a series of articles on these blogs.
Presenting more detail and links to tools, books, and articles you can use to build your toolbox