Program utveckling för innovativa apparApplication development for innovative apps

Som det beskrivs i demokratisera identifieringen av-data med digital uppfinning, är data bränslen de flesta innovationer i den digitala ekonomin.As discussed in Democratize data with digital invention, data fuels most innovations across the digital economy. För att bygga på den analoga funktionen, är program de bränsle stationer och den infrastruktur som krävs för att få dessa bränslen till höger.Building on that analogy, applications are the fueling stations and infrastructure required to get that fuel into the right hands.

I vissa fall räcker endast data för att ändra och möta kundernas behov.In some cases, data alone is enough to drive change and meet customer needs. Oftare behöver lösningar på kund behov program för att forma data och skapa en upplevelse.More commonly though, solutions to customer needs require applications to shape the data and create an experience. Innovativa program engagerar och interagerar med användaren och tillhandahåller information och vägledning.Innovative applications engage and interact with the user, providing information and guidance. Den här artikeln sammanfattar flera principer som kan hjälpa dig att hitta rätt applikations utvecklings lösning, baserat på Hypotheses som ska verifieras.This article summarizes several principles that can help you find the right application development solution, based on the hypotheses to be validated.

Diagrammet visar element som kan hjälpa dig att skapa en app som ger en upplevelse för kunder som uppfyller deras behov.

Delad kodShared code

Team som snabbt kan svara på kundfeedback, marknads förändringar och affärs möjligheter är vanligt vis välsamma.Teams that are quick to respond to customer feedback, market changes, and opportunities typically innovate best. Den första principen i innovativa program är ett element i tillväxten tänkesätt: "dela koden".The first principle of innovative applications is an element of the growth mindset: "Share the code." Kod delnings inbjudningar skilda perspektiv och bidrag och Spurs innovation.Code sharing invites diverse perspectives and contributions, and spurs innovation. Därför bör program utvecklingen börja med en delad kod lagrings plats.Therefore, application development should start with a shared code repository.

Ett verktyg som är vanligt för att hantera kod databaser är GitHub, vilket gör att du snabbt kan skapa en delad kod lagrings plats.A widely adopted tool for managing code repositories is GitHub, which allows you to create a shared code repository quickly. Ett alternativ är Microsoft Azure databaser, som är en Azure DevOps -tjänst som tillhandahåller obegränsade, molnbaserade privata databaser för ditt projekt.An alternative is Microsoft Azure Repos, which is an Azure DevOps service that provides unlimited, cloud-hosted private repos for your project. För versions kontroll när du använder Azure-databaser kan du välja antingen git, som är en distribuerad typ eller en Team Foundation versions kontroll (TFVC), som är centraliserad.For version control when you use Azure Repos, you can choose either Git, which is a distributed type, or Team Foundation Version Control (TFVC), which is centralized. Mer information om Azure databaser, git och TFVC finns i Azure databaser-dokumentationen.For more information about Azure Repos, Git, and TFVC, see Azure Repos Documentation.

MedborgarutvecklareCitizen developers

Professionella utvecklare är viktiga för innovation.Professional developers are important to innovation. När en hypotes bevisar sig korrekt i skala kan de stabilisera lösningen och förbereda den för skalning.When a hypothesis proves accurate at scale, they can stabilize the solution and prepare it for scale. Professionella utvecklare kan tyvärr ha kort till gång, och en professionell utveckling kan öka kostnaderna och göra innovationen långsammare.Unfortunately, professional developers may be in short supply, and professional development can increase costs and slow innovation.

Medborgare-utvecklare är användare som skapar nya affärs program med hjälp av utvecklings-och körnings miljöer som omfattas av företagets IT.Citizen developers are users who create new business applications using development and runtime environments sanctioned by corporate IT. Användningen av medborgarnas utvecklare kan hjälpa till att skala utvecklings insatser och påskynda tidigt hypotes testning.The use of citizen developers can help to scale development efforts and accelerate early hypothesis testing. Den här strategin är livskraftig och effektiv när tidig Hypotheses kan val IDE ras via verktyg som PowerView-appar för program gränssnitt, AI- verktyg för processer och förutsägelser, energi automatisering för arbets flöden och Power BI för data användning.This strategy is viable and effective when early hypotheses can be validated through tools like Power Apps for application interfaces, AI Builder for processes and predictions, Power Automate for workflows, and Power BI for data consumption.

Anteckning

När du förlitar dig på att skydda medborgarna för att testa Hypotheses, är det tillrådligt att även ha professionella utvecklare som stöder, granskar och vägleder arbetet.When you rely on citizen developers to test hypotheses, it's advisable to also have professional developers to support, review, and guide the work. Experterna kan hjälpa till att utveckla en robust design som påskyndar avkastningen i innovationen.The professionals can help develop a robust design that accelerates returns on the innovation. Genom att involvera professionella utvecklare vid rätt tidpunkt kan du inse renare över gångar senare.By involving professional developers at the right time, you can realize cleaner transitions later.

Intelligenta upplevelserIntelligent experiences

Smarta upplevelser kombinerar hastigheten och skalningen av moderna webb program med information om kognitiva tjänster och robotar.Intelligent experiences combine the speed and scale of modern web applications with the intelligence of cognitive services and bots. Var och en av dessa tekniker kan vara tillräckligt för att uppfylla kundernas behov.Alone, each of these technologies might be sufficient to meet your customers' needs. När de kombineras på ett korrekt sätt utvidgar de de behov som kan uppfyllas med en digital upplevelse och hjälper till att innehålla program utvecklings kostnader.When properly combined, they broaden the spectrum of needs that can be met through a digital experience, while helping to contain application development costs.

Moderna webbapparModern web apps

Moderna webb program kan vara det snabbaste sättet att möta behoven hos interna eller externa kunder.Modern web applications can be the fastest way to meet the needs of internal or external customers. De upplevelser de erbjuder kan engagera kunderna snabbt och tillåta snabb utveckling av lösningen.The experiences they provide can engage customers quickly and allow for rapid evolution of the solution.

Lägger till intelligensAdding intelligence

Det blir enklare för alla professionella och medborgarna att lägga till maskin inlärnings-och AI-funktioner till program som bidrar till att uppfylla kundernas behov och skapa en interaktiv upplevelse.It gets easier all the time for professional and citizen developers to add machine learning and AI features to applications that help meet the needs of the customer and create an interactive experience. Några exempel på dessa funktioner är:Some examples of these features are:

  • Tal till textSpeech to text
  • Text till talText to speech
  • DatorvisionComputer vision
  • Visuell sökningVisual search
  • Förutsägande AIPredictive AI

Innovatörer bör vara en avisering för att dra nytta av sådana funktioner för att skapa en interaktiv och modern upplevelse.Innovators should be alert to take advantage of such features to create an interactive and modern experience.

RobotarBots

En bot är ett diskussions AI-program som ger användarna en upplevelse som är mer som att hantera en person, och mindre som att hantera ett konventionellt dator program.A bot is a conversational AI application that provides users an experience that is more like dealing with a person, and less like dealing with a conventional computer application. Användare är inversa till en robot via text, interaktiva kort och tal.Users converse with a bot through text, interactive cards, and speech. En bot-interaktion kan vara ett intervall från ett snabbt fråge-och-svar – för att skapa en middags bokning, till exempel, till en sofistikerad konversation som ger intelligent åtkomst till tjänster.A bot interaction can range from a quick question-and-answer—to make a dinner reservation, for instance—to a sophisticated conversation that intelligently provides access to services.

Robotar kan göra samma saker som andra typer av program vara: läsa och skriva filer, använda databaser och API: er och hantera vanliga beräknings aktiviteter.Bots can do the same things as other types of software: read and write files, use databases and APIs, and handle regular computational tasks. Det som gör robotar unikt är användningen av mekanismer som är allmänt reserverade för kommunikation från människa till människa.What makes bots unique is their use of mechanisms generally reserved for human-to-human communication. Robotar är mycket som moderna webb program: de bor på Internet och använder API: er för att skicka och ta emot meddelanden.Bots are a lot like modern web applications: they live on the internet and use APIs to send and receive messages. Vad som finns i en robot varierar mycket beroende på vilken typ av bot det är.What's in a bot varies widely depending on what kind of bot it is. Modern bot-programvara är beroende av en trave med teknik och verktyg för att leverera allt mer komplexa upplevelser på olika plattformar.Modern bot software relies on a stack of technology and tools to deliver increasingly complex experiences on a variety of platforms. En enkel robot kan dock bara ta emot ett meddelande och eko meddelandet tillbaka till användaren med mycket lite kod.However, a simple bot could just receive a message and echo it back to the user with very little code involved.

Moln – inbyggda lösningarCloud-native solutions

Med Cloud-inbyggd arkitektur kan du använda snabba förändringar och köra elastiska och skalbara program enklare.Cloud-native architecture enables you to embrace rapid change, and run resilient and scalable applications more easily. Molnbaserade program byggs vanligt vis med behållare, mikrotjänster, hanterade tjänster, Server lös funktioner och händelsebaserade programmering.Cloud-native applications are typically built using containers, microservices, managed services, serverless functions, and event-based programming. Oftast använder Cloud-inhemska lösningar kontinuerlig leverans för att uppnå kortare tid till marknaden.Most commonly, cloud-native solutions use continuous delivery to achieve faster time to market.

En molnbaserad lösning gör det möjligt för centraliserade utvecklings grupper att upprätthålla kontrollen över affärs logiken utan att behöva monolitisk, centraliserade lösningar.A cloud-native solution allows centralized development teams to maintain control of the business logic without the need for monolithic, centralized solutions. Det skapar också en fäst punkt för att öka konsekvensen för inblandning av medborgarna och moderna upplevelser.It also creates an anchor to drive consistency across the input of citizen developers and modern experiences. Dessutom ger Cloud-inhemska lösningar en innovation Accelerator genom att frigöra medborgarna och professionella utvecklare att utveckla säkert och med minsta möjliga Blocker.Finally, cloud-native solutions provide an innovation accelerator by freeing citizen and professional developers to innovate safely and with a minimum of blockers.

Förnya genom befintliga lösningarInnovate through existing solutions

Många kund Hypotheses kan bäst levereras med en modern version av en befintlig lösning.Many customer hypotheses can best be delivered by a modernized version of an existing solution. Detta kan inträffa när den aktuella affärs logiken kommer nära att uppfylla kund behov.This can happen when the current business logic comes close to meeting customer needs.

De flesta former av modernisering, inklusive omstrukturering, ingår i metoderna för migrering i moln införande ramverket.Most forms of modernization, including refactoring, are included in the Migrate methodology within the Cloud Adoption Framework. Metodiken vägleder moln implementerings team genom processen att migrera en digital fastighet till molnet.That methodology guides cloud adoption teams through the process of migrating a digital estate to the cloud. Azure migration guide är ett effektiviserat tillvägagångs sätt för samma metod, vilket är lämpligt för ett litet antal arbets belastningar eller till och med ett enda program.The Azure migration guide provides a streamlined approach to the same methodology, which is suitable for a small number of workloads or even a single application.

När en lösning har migrerats och förberetts finns det en mängd olika sätt att skapa nya, innovativa applikations lösningar som uppfyller kundernas behov.After a solution has been migrated and modernized, there are a variety of ways it can be used to create new, innovative application solutions to meet customer needs. Till exempel kan medborgarna i Hypotheses testa, eller professionella utvecklare kan skapa intelligenta upplevelser eller molnbaserade lösningar.For example, citizen developers could test hypotheses, or professional developers could create intelligent experiences or cloud-native solutions.

Utöka en befintlig lösningExtend an existing solution

Att utöka en lösning är en vanlig form av modernisering.Extending a solution is one common form of modernization. Det kan vara den snabbaste vägen till innovation när följande gäller kund hypotes:This can be the fastest path to innovation when the following are true of the customer hypothesis:

  • Befintlig affärs logik uppfyller eller ligger nära kundernas behov.Existing business logic meets or comes close to customer needs.
  • En förbättrad upplevelse, inte en ny, passar bäst för kundernas behov.An improved experience, not a new one, best meets the needs of customers.
  • Affärs logiken som krävs av den minsta lönsamma produkt lösningen (MVP) har centraliserats, vanligt vis via en design på n-nivå, webb tjänster, API eller mikrotjänster .The business logic required by the minimum viable product (MVP) solution has been centralized, usually via an n-tier, web services, API, or microservices design. Den här metoden består av att omsluta den befintliga lösningen inom en ny upplevelse som finns i molnet.This approach consists of wrapping the existing solution within a new experience hosted in the cloud. I Azure skulle den här lösningen troligen leva i Azure App Service.In Azure, this solution would likely live in Azure App Service.

Återskapa en befintlig lösningRebuild an existing solution

Om en befintlig lösning uppfyller eller kommer nära att uppfylla kundernas behov, men inte enkelt kan utökas, kan det vara nödvändigt att gå över till den.If an existing solution meets or comes close to meeting customer needs, but can't be easily extended, it may be necessary to refactor it. I den här metoden migreras programmet till molnet.In this approach, the application is migrated to the cloud. När programmet har migrerats ändras eller dupliceras delar av det, som webb tjänster eller mikrotjänster, som distribueras parallellt med den befintliga lösningen.After the application is migrated, parts of it are modified or duplicated, as web services or microservices, which are deployed in parallel with the existing solution. Den parallella service-baserade lösningen kan behandlas som en utökad lösning.The parallel service-based solution could be treated like an extended solution. Den här lösningen skulle helt enkelt figursätta den befintliga lösningen med en ny upplevelse som finns i molnet.This solution would simply wrap the existing solution with a new experience hosted in the cloud. I Azure skulle den här lösningen troligen leva i Azure App Service.In Azure, this solution would likely live in Azure App Service.

Varning

Omstrukturering eller omkonstruktion av lösningar eller Central affärs logik kan snabbt utlösa en tids krävande teknisk insamling i stället för en källa till kund värde.Refactoring or rearchitecting solutions or centralizing business logic can quickly trigger a time-consuming technical spike instead of a source of customer value. Detta är en risk för innovation, särskilt tidigt i hypotes validering.This is a risk to innovation, especially early in hypothesis validation. Med en kreativitet i utformningen av en lösning bör det finnas en sökväg till MVP som inte kräver omfabrik av befintliga lösningar.With a bit of creativity in the design of a solution, there should be a path to MVP that doesn't require refactoring of existing solutions. Det är klokt att skjuta upp omstrukturering tills den första hypotesen kan val IDE ras i stor skala.It's wise to delay refactoring until the initial hypothesis can be validated at scale.

Innovationer om drifts modellerOperating model innovations

Förutom moderna innovativa metoder för program utveckling har det funnits viktiga innovationer i program driften.In addition to modern innovative approaches to application development, there have been notable innovations in application operations. Dessa metoder har gjort många organisations rörelser.These approaches have spawned many organizational movements. En av de mest framträdande är moln Center för den bästa drifts modellen.One of the most prominent is the cloud center of excellence operating model. När företaget är fullt bemannat och mogna har affärs teamen möjlighet att tillhandahålla sitt eget operativa stöd för en lösning.When fully staffed and mature, business teams have the option to provide their own operational support for a solution.

Typen av självbetjänings drifts hanterings modell som finns i ett moln Center med hög kvalitet gör det möjligt för bättre kontroller och snabbare iterationer i lösnings miljön.The type of self-service operational management model found in a cloud center of excellence allows for tighter controls and faster iterations within the solution environment. Dessa mål uppnås genom att du överför drifts kontroll och ansvar till affärs teamet.These goals are accomplished by transferring operational control and accountability to the business team.

Om du försöker skala eller möta global efter frågan för en befintlig lösning, kan den här metoden räcka för att validera en kund hypotes.If you're trying to scale or meet global demand for an existing solution, this approach might be sufficient to validate a customer hypothesis. När en lösning har migrerats och blivit något förmodern kan affärs teamet skala den för att testa en rad Hypotheses.After a solution is migrated and slightly modernized, the business team can scale it to test a variety of hypotheses. Dessa omfattar vanligt vis kund kohorter som är intresserade av prestanda, global distribution och andra kund behov som har hindrats av IT-driften.These typically involve customer cohorts who are concerned with performance, global distribution, and other customer needs hindered by IT operations.

Minska omkostnader och hanteringReduce overhead and management

Det finns mer att underhålla i ett innovativt program eller en lösning, desto långsammare kommer programmet eller lösningen att iterera.The more there is to maintain within an innovative application or solution, the slower that application or solution will iterate. Det innebär att du kan påskynda innovationen genom att minska effekten av åtgärder på den tillgängliga bandbredden.This means you can accelerate innovation by reducing the impact of operations on available bandwidth.

För att förbereda för många iterationer som krävs för att leverera en innovativ lösning är det viktigt att tänka på.To prepare for the many iterations required to deliver an innovative solution, it's important to think ahead. Minimera till exempel drift belastningar tidigt i processen genom att prioritera Server alternativ.For example, minimize operational burdens early in the process by favoring serverless options. I Azure kan program utan Server alternativ innehålla Azure App Service eller behållare.In Azure, serverless application options could include Azure App Service or containers.

I parallella fall bör du överväga de data alternativ för data som Azure tillhandahåller, och de kan också minska omkostnaderna.In parallel, consider the serverless transaction data options that Azure provides—they can also reduce overhead. I Azures produkt katalog finns databas alternativ som är värdar för data utan behov av en fullständig data plattform.The Azure product catalog provides database options that host data without the need for a full data platform.

Nästa stegNext steps

Beroende på hypotes och lösning kan principerna i den här artikeln hjälpa dig att utforma program som uppfyller MVP-definitioner och engagera användare.Depending on the hypothesis and solution, the principles in this article can aid in designing applications that meet MVP definitions and engage users. Härnäst följer principerna för att fatta beslut, vilket ger dig möjlighet att snabbt och effektivt hämta program och data till kundernas händer.Up next are the principles for empowering adoption, which offer ways to get the application and data into the hands of customers more quickly and efficiently.