Förbättra implementeringen med digital uppfinningEmpower adoption with digital invention

Det ultimata testet av innovation är att kunden reagera på din uppfinning.The ultimate test of innovation is customer reaction to your invention. Skulle hypotesen visa sig vara sann?Did the hypothesis prove true? Använder kunderna lösningen?Do customers use the solution? Skalar den för att uppfylla behoven för den önskade procent andelen av användarna?Does it scale to meet the needs of the desired percentage of users? Viktigast av detta ska de fortsätta att komma tillbaka?Most importantly, do they keep coming back? Ingen av dessa frågor kan tillfrågas förrän den lägsta produkt-och MVP-lösningen har distribuerats.None of these questions can be asked until the minimum viable product (MVP) solution has been deployed.

I den här artikeln kommer vi att fokusera på att göra implementeringen av pipeline-verktyg för kontinuerlig integrering och kontinuerlig distribution (CI/CD).In this article, we'll focus on empowering adoption with continuous integration and continuous deployment (CI/CD) pipeline tools. Kontinuerlig integrering är automatiserad kod flera gånger per dag för att få ett uppdaterat enskilt projekt.Continuous integration is the automating of code multiple times per day in order to have an updated single project. Kontinuerlig distribution är automatisk leverans av dessa funktioner under dagen.Continuous deployment is the automatic delivery of those functions throughout the day.

Minska friktionen CI/CD som påverkar införandeReduce CI/CD friction that affects adoption

Vissa hinder för införande kan minimeras genom en kombination av teknik och processer.Some obstacles to adoption can be minimized through a combination of technology and processes. Följande CI/CD-pipeline är välkända för läsare med kunskaper om CI/CD-eller DevOps-processer.For readers with knowledge of CI/CD or DevOps processes, the following CI/CD pipeline processes will be familiar. I den här artikeln upprättas en utgångs punkt för moln implementerings team som arbetar med utveckling och feedback av bränslen.This article establishes a starting point for cloud adoption teams that fuels innovation and feedback loops. Den här start punkten kan gynna mer robusta CI/CD-eller DevOps-metoder som de produkter och team som är mogna.This starting point might foster more robust CI/CD or DevOps approaches as the products and teams mature.

Som det beskrivs i mått för kund påverkan, kräver positiv verifiering av alla hypotes upprepning och bestämning.As described in Measure for customer impact, positive validation of any hypothesis requires iteration and determination. Denna CI/CD-artikel syftar till att minimera tekniska toppar som saktar ned innovation, samtidigt som du ser till att du behåller bästa praxis på plats.This CI/CD article aims to minimize technical spikes that slow innovation, while making sure you keep best practices in place. På så sätt blir det lättare för IT-utformningen att leverera på aktuella kund behov.Doing so will help the team design for future success while delivering on current customer needs.

Förbättra införandet och digital uppfinning: förfallo modellenEmpower adoption and digital invention: The maturity model

Det främsta målet med förnyelse metoden är att bygga upp kund partnerskap och påskynda feedback-slingor, vilket leder till marknads innovationer.The primary goal of the Innovate methodology is to build customer partnerships and accelerate feedback loops, which lead to market innovations. I följande bild och avsnitt beskrivs de första implementeringar som har stöd för den här metoden.The following image and sections describe initial implementations that support this methodology.

Diagram som visar en modell för att anta förfallo dags modell.

  • Delad lösning: upprätta en central lagrings plats för alla aspekter av lösningen.Shared solution: Establish a centralized repository for all aspects of the solution.
  • Feedback-slingor: se till att feedback-slingor kan hanteras på ett konsekvent sätt via iterationer.Feedback loops: Make sure that feedback loops can be managed consistently through iterations.
  • Kontinuerlig integrering: Bygg och konsolidera regelbundet lösningen.Continuous integration: Regularly build and consolidate the solution.
  • Tillförlitlig testning: validera lösnings kvalitet och förväntade ändringar för att säkerställa att dina test mått är tillförlitliga.Reliable testing: Validate solution quality and expected changes to ensure the reliability of your testing metrics.
  • Lösnings distribution: distribuera lösningar så att teamet snabbt kan dela ändringar med kunderna.Solution deployment: Deploy solutions so that the team can quickly share changes with customers.
  • Integrerad mätning: Lägg till inlärnings mått i feedback-slingan för att ta bort en fullständig analys av hela teamet.Integrated measurement: Add learning metrics to the feedback loop for clear analysis by the full team.

För att minimera tekniska toppar antar vi att förfallo tiden inlednings vis är låg för var och en av dessa principer.To minimize technical spikes, assume that maturity will initially be low across each of these principles. Planera framåt genom att justera till verktyg och processer som kan skalas när Hypotheses blir mer detaljerade.Plan ahead by aligning to tools and processes that can scale as hypotheses become more fine-grained. I Azure ger GitHub och Azure DevOps små team att komma igång med lite friktion.In Azure, GitHub and Azure DevOps allow small teams to get started with little friction. Dessa team kan växa för att inkludera tusentals utvecklare som samarbetar kring skalnings lösningar och testar hundratals kund Hypotheses.These teams might grow to include thousands of developers who collaborate on scale solutions and test hundreds of customer hypotheses. Resten av den här artikeln illustrerar tillvägagångs sättet "plan Big, start Small" som gör det möjligt att fatta beslut över var och en av dessa principer.The rest of this article illustrates the "plan big, start small" approach to empowering adoption across each of these principles.

Delad lösningShared solution

Som det beskrivs i mått för kund påverkan, kräver positiv verifiering av alla hypotes upprepning och bestämning.As described in Measure for customer impact, positive validation of any hypothesis requires iteration and determination. Du får mycket fler avbrott än WINS under en Innovations cykel.You'll experience far more failures than wins during any innovation cycle. Detta är förväntat.This is expected. Men när en kund behöver, hypotes och lösning justeras i skala, ändras världen snabbt.However, when a customer need, hypothesis, and solution align at scale, the world changes quickly.

När du skalar Digital uppfinning och innovation finns det inget värdefullt verktyg än en delad kodbas för lösningen.When you're scaling digital invention and innovation, there's no more valuable tool than a shared code base for the solution. Tyvärr finns det inget tillförlitligt sätt att förutsäga vilken iteration eller vilken MVP som ger den vinnande kombinationen.Unfortunately, there's no reliable way of predicting which iteration or which MVP will yield the winning combination. Därför är det aldrig för tidigt att upprätta en delad kodbas eller lagrings plats.That's why it's never too early to establish a shared code base or repository. Detta är den tekniska insamling som inte bör fördröjas.This is the one technical spike that shouldn't be delayed. När teamet itererar genom olika MVP-lösningar möjliggör en delad lagrings platsen enkel samarbete och snabbare utveckling.As the team iterates through various MVP solutions, a shared repo enables easy collaboration and accelerated development. När du gör ändringar i lösningen och drar nedåt inlärnings mått kan du återställa till en tidigare, mer effektiv version av lösningen.When changes to the solution drag down learning metrics, version control lets you roll back to an earlier, more effective version of the solution.

Det mest använda CI/CD-verktyget för att hantera kod databaser är GitHub, vilket gör att du kan skapa en delad kod lagring på bara några få steg.The most widely adopted CI/CD tool for managing code repositories is GitHub, which lets you create a shared code repository in just a few steps. Dessutom kan Azure databaser -funktionen i Azure DevOps användas för att skapa en git -eller TFVC -lagringsplats.Additionally, the Azure Repos feature of Azure DevOps can be used to create a Git or TFVC repository.

FeedbackslingorFeedback loops

Att göra kund delen av lösningen är nyckeln till att skapa kund samarbeten under Innovations cykler.Making the customer part of the solution is the key to building customer partnerships during innovation cycles. Detta sker delvis genom att mäta kund påverkan.That's accomplished, in part, by measuring customer impact. Den kräver konversationer och direkt testning med kunden.It requires conversations and direct testing with the customer. Båda genererar feedback som måste hanteras effektivt.Both generate feedback that must be managed effectively.

Varje återkopplings punkt är en potentiell lösning på kund behovet.Every point of feedback is a potential solution to the customer need. Mer viktigt är att varje bit av direkt kundfeedback representerar en möjlighet att förbättra samarbetet.More importantly, every bit of direct customer feedback represents an opportunity to improve the partnership. Om feedback gör det till en MVP-lösning, kommer du att fira med kunden.If feedback makes it into an MVP solution, celebrate that with the customer. Även om vissa synpunkter inte är åtgärds bara, är det helt enkelt att bli transparent med beslutet att bli av med att göra en växande tänkesätt och fokusera på kontinuerlig inlärning.Even if some feedback isn't actionable, simply being transparent with the decision to deprioritize the feedback demonstrates a growth mindset and a focus on continuous learning.

Azure DevOps innehåller metoder för att begära, tillhandahålla och hantera feedback.Azure DevOps includes ways to request, provide, and manage feedback. Vart och ett av dessa verktyg centraliserar feedback så att teamet kan vidta åtgärder och tillhandahålla uppföljning av en genomskinlig feedback-slinga.Each of these tools centralizes feedback so that the team can take action and provide follow-up in service of a transparent feedback loop.

Kontinuerlig integreringContinuous integration

Kontinuerlig integrering är automatiserad kod flera gånger per dag för att få ett uppdaterat enskilt projekt.Continuous integration is the automating of code multiple times per day to have an updated single project. Eftersom antaganden skalas och en hypotes är närmare den sanna innovationen i stor skala, är antalet mindre Hypotheses som testas att växa snabbt.As adoptions scale and a hypothesis gets closer to true innovation at scale, the number of smaller hypotheses to be tested tends to grow rapidly. För riktiga feedback-slingor och smidiga implementerings processer är det viktigt att var och en av dessa Hypotheses är integrerad och att du har stöd för den främsta hypotesen bakom innovationen.For accurate feedback loops and smooth adoption processes, it's important that each of those hypotheses is integrated and supportive of the primary hypothesis behind the innovation. Detta innebär att du snabbt kan komma igång snabbt och växa, vilket kräver flera utvecklare för att testa variationer i Core-hypotesen.This requires you to move quickly to innovate and grow, which requires multiple developers for testing variations of the core hypothesis. För senare utveckling av steg kan du behöva flera team av utvecklare, varje byggnad mot en delad lösning.For later stage development efforts, you might even need multiple teams of developers, each building toward a shared solution. Kontinuerlig integrering är det första steget mot hantering av alla rörliga delar.Continuous integration is the first step toward management of all the moving parts.

I kontinuerlig integrering slås kod ändringar ofta samman i huvud grenen.In continuous integration, code changes are frequently merged into the main branch. Automatiserade bygg-och test processer se till att koden i huvud grenen alltid är produktions kvalitet.Automated build and test processes make sure that code in the main branch is always production quality. Detta säkerställer att utvecklare arbetar tillsammans för att utveckla delade lösningar som ger korrekta och tillförlitliga feedback-slingor.This ensures that developers are working together to develop shared solutions that provide accurate and reliable feedback loops.

Azure-DevOps och Azure-pipeliner ger kontinuerlig integrering med bara några få steg i GitHub eller andra databaser.Azure DevOps and Azure Pipelines provide continuous integration capabilities with just a few steps in GitHub or other repositories. Mer information finns i Vad är kontinuerlig integrering? eller ta en titt på praktiska labb övningar.For more information, see What is continuous integration? or check out the hands-on lab. Det finns lösnings arkitekturer som kan påskynda skapandet av dina CI/CD-pipeliner via Azure DevOps.Solution architectures are available that can accelerate creation of your CI/CD pipelines via Azure DevOps.

Tillförlitlig testningReliable testing

Fel i alla lösningar kan skapa falska positiva eller falska negativa negativa tal.Defects in any solution can create false positives or false negatives. Oväntade fel kan lätt leda till fel tolkning av användar mått.Unexpected errors can easily lead to misinterpretation of user adoption metrics. De kan också generera negativa synpunkter från kunder som inte korrekt representerar testet av din hypotes.They can also generate negative feedback from customers that doesn't accurately represent the test of your hypothesis.

Vid tidiga iterationer av en MVP-lösning förväntas fel.During early iterations of an MVP solution, defects are expected. Tidiga antaganden kanske till och med tycker att de är kära.Early adopters might even find them endearing. I tidiga versioner är test av godkännanden vanligt vis icke.In early releases, acceptance testing is typically nonexistent. En aspekt av att skapa med empati avser dock valideringen av behovet och hypotesen.However, one aspect of building with empathy concerns the validation of the need and hypothesis. Båda kan slutföras genom enhets tester på en kod nivå och manuella acceptans test före distributionen.Both can be completed through unit tests at a code level and manual acceptance tests before deployment. Tillsammans ger dessa en viss tillförlitlighet för testning.Together, these provide some means of reliability in testing. Du bör försöka automatisera en väldefinierad serie med build-, enhets-och acceptans test.You should try to automate a well-defined series of build, unit, and acceptance tests. Dessa säkerställer pålitliga mått som är relaterade till bättre anpassningar till hypotesen och den resulterande lösningen.These will ensure reliable metrics related to finer tweaks to the hypothesis and the resulting solution.

Funktionen Azure-testplaner innehåller verktyg för att utveckla och driva test planer under manuell eller automatiserad test körning.The Azure Test Plans feature provides tooling to develop and operate test plans during manual or automated test execution.

LösningsdistributionSolution deployment

Kanske är den mest meningsfulla aspekten av den bättre implementeringen din möjlighet att styra lanseringen av en lösning till kunderna.Perhaps the most meaningful aspect of empowering adoption is your ability to control the release of a solution to customers. Genom att tillhandahålla en självbetjänings-eller automatiserad pipeline för att släppa ut en lösning till kunder kan du påskynda feedback-slingan.By providing a self-service or automated pipeline for releasing a solution to customers, you'll accelerate the feedback loop. Genom att göra det möjligt för kunder att snabbt interagera med ändringar i lösningen kan du bjuda in dem till processen.By allowing customers to quickly interact with changes in the solution, you invite them into the process. Den här metoden utlöser även snabbare tester av Hypotheses, minskar antaganden och eventuell möjlighet att arbeta.This approach also triggers quicker testing of hypotheses, reducing assumptions and potential rework.

Det finns flera metoder för distribution av lösningen.There are several methods for solution deployment. De tre vanligaste är:The three most common are:

  • Kontinuerlig distribution är den mest avancerade metoden, eftersom den automatiskt distribuerar kod ändringar till produktion.Continuous deployment is the most advanced method, as it automatically deploys code changes into production. För vuxen team som testar mogna Hypotheses kan kontinuerlig distribution vara mycket värdefull.For mature teams that are testing mature hypotheses, continuous deployment can be extremely valuable.
  • Vid tidiga utvecklings faser kan kontinuerlig leverans vara mer lämpligt.During early stages of development, continuous delivery might be more appropriate. I kontinuerlig leverans distribueras alla kod ändringar automatiskt till en produktions miljö.In continuous delivery, any code changes are automatically deployed to a production-like environment. Utvecklare, företags besluts fattare och andra i teamet kan använda den här miljön för att kontrol lera att deras arbete är produktions klart.Developers, business decision-makers, and others on the team can use this environment to verify that their work is production-ready. Du kan också använda den här metoden för att testa en hypotes med kunder utan att påverka pågående affärs aktiviteter.You can also use this method to test a hypothesis with customers without affecting ongoing business activities.
  • Manuell distribution är den minst avancerade metoden för versions hantering.Manual deployment is the least sophisticated approach to release management. Som namnet antyder distribuerar någon i teamet manuellt de senaste kod ändringarna.As the name suggests, someone on the team manually deploys the most recent code changes. Den här metoden är fel känslig, otillförlitlig och betraktas som ett antimönster av de mest erfarna teknikerna.This approach is error prone, unreliable, and considered an anti-pattern by most seasoned engineers.

Under den första iterationen av en MVP-lösning är manuell distribution vanligt, trots föregående utvärdering.During the first iteration of an MVP solution, manual deployment is common, despite the preceding assessment. När lösningen är mycket flytande och kundfeedback är okänd, finns det en betydande risk för att återställa hela lösningen (eller till och med Core hypotesen).When the solution is extremely fluid and customer feedback is unknown, there's a significant risk in resetting the entire solution (or even the core hypothesis). Här är den allmänna regeln för manuell distribution: inget kund bevis, ingen distributions automatisering.Here's the general rule for manual deployment: no customer proof, no deployment automation.

Att investera tidigt kan leda till förlorad tid.Investing early can lead to lost time. Det kan vara viktigt att skapa beroenden på den versions pipeline som gör teamet mer motstånds kraftiga mot en tidig Pivot Pivot.More importantly, it can create dependencies on the release pipeline that make the team more resistant to an early pivot. Efter de första iterationerna eller när kunden feedback föreslår potentiell framgång, bör en mer avancerad distributions modell snabbt antas.After the first few iterations or when customer feedback suggests potential success, a more advanced model of deployment should be quickly adopted.

I alla stadier av hypotes validering ger Azure-DevOps och Azure-pipeliner kontinuerlig leverans och kontinuerliga distributions möjligheter.At any stage of hypothesis validation, Azure DevOps and Azure Pipelines provide continuous delivery and continuous deployment capabilities. Läs mer om kontinuerlig leveranseller ta en titt på praktiska labb övningar.Learn more about continuous delivery, or check out the hands-on lab. Lösnings arkitekturen kan också påskynda skapandet av dina CI/CD-pipeliner via Azure DevOps.Solution architecture can also accelerate creation of your CI/CD pipelines through Azure DevOps.

Integrerade mätningarIntegrated measurements

När du mäter kund påverkanär det viktigt att förstå hur kunderna reagerar på ändringar i lösningen.When you measure for customer impact, it's important to understand how customers react to changes in the solution. Dessa data, som kallas telemetri, ger insikter om vilka åtgärder en användare (eller kohort av användare) vidtog när de arbetade med lösningen.This data, known as telemetry, provides insights into the actions a user (or cohort of users) took when working with the solution. Från dessa data är det enkelt att få en kvantitativ validering av hypotesen.From this data, it's easy to get a quantitative validation of the hypothesis. Dessa mått kan sedan användas för att justera lösningen och generera mer detaljerade Hypotheses.Those metrics can then be used to adjust the solution and generate more fine-grained hypotheses. De här diskreta ändringarna hjälper till att mogna den första lösningen i senare iterationer, vilket i slut ändan upprepas i stor skala.Those subtler changes help mature the initial solution in later iterations, ultimately driving to repeat adoption at scale.

I Azure tillhandahåller Azure Monitor verktyg och gränssnitt för att samla in och granska data från kund upplevelser.In Azure, Azure Monitor provides the tools and interface to collect and review data from customer experiences. Du kan använda dessa observationer och insikter för att förfina efter släpning med hjälp av Azure-kort.You can apply those observations and insights to refine the backlog by using Azure Boards.

Nästa stegNext steps

När du har fått en förståelse för de verktyg och processer för CI/CD-pipeline som behövs för att kunna tillämpa, är det dags att undersöka en mer avancerad Innovations disciplin: interagera med enheter.After you've gained an understanding of the CI/CD pipeline tools and processes needed to empower adoption, it's time to examine a more advanced innovation discipline: interact with devices. Den här disciplinen kan hjälpa till att minska barriärerna mellan fysiska och digitala upplevelser, vilket gör lösningen ännu enklare att införa.This discipline can help reduce the barriers between physical and digital experiences, making your solution even easier to adopt.