Ett stabilt konstruktionsflöde måste fånga upp konstruktioner på väldefinierade abstraktionsnivåer och gå vidare mot ett effektivt genomförande. De kritiska besluten omfattar systemets arkitektur, som kommer att utföra de beräknings- och kommunikationsuppgifter som är förknippade med designens övergripande specifikation. Att förstå applikationsdomänen är viktigt för att säkerställa en effektiv användning av designflödet. Idag saknar designkedjan tillräckligt stöd. De flesta formgivare på systemnivå använder en samling verktyg som inte är kopplade till varandra. Implementeringen fortsätter sedan med informella tekniker som involverar många mänskliga-språksinteraktioner som skapar onödiga och oönskade iterationer bland grupper av designers i olika företag eller olika divisioner. Dessa grupper har föga förståelse för sina respektive kunskapsområden. Utvecklare kan därför inte vara säkra på att dessa verktyg, kopplade genom manuell eller empirisk översättning av mellanformat, kommer att bevara designens semantik. Denna osäkerhet leder ofta till fel som är svåra att identifiera och felsöka. Flytten mot programmerbara plattformar förskjuter designimplementeringsuppgiften mot inbäddad programvarudesign. När inbäddad programvara når den komplexitet som är typisk för dagens design ökar risken dramatiskt för att programvaran inte kommer att fungera korrekt. Denna risk beror främst på bristfälliga designmetoder och ömtåliga programvarusystemarkitekturer, som beror på att funktionaliteten växer över ett befintligt genomförande som kan vara ganska gammalt och odokumenterat. Metropolis-projektet syftar till att utveckla en enhetlig ram som kan hantera dessa utmaningar. Vi designade Metropolis för att tillhandahålla en infrastruktur baserad på en modell med exakt semantik som är tillräckligt allmän för att stödja befintliga beräkningsmodeller 1 och rymma nya. Denna metamodell kan stödja inte bara funktionalitet fånga och analys, men också arkitektur beskrivning och kartläggning av funktionalitet till arkitektoniska element. Metropolis använder ett logiskt språk för att fånga icke-funktionella och förklarande begränsningar. Eftersom modellen har en exakt semantik kan den förutom simulering stödja flera syntes- och formella analysverktyg. Den första designaktiviteten som Metropolis stödjer, kommunikationen av design intention och resultat, fokuserar på samspelet mellan människor som arbetar på olika abstraktionsnivåer och bland människor som arbetar samtidigt på samma abstraktionsnivå. Metamodellen innehåller begränsningar som representerar abstrakta krav som ännu inte implementerats eller antas vara uppfyllda av resten av systemet och dess miljö. Metropolis bygger på en metamodell med formella semantik som utvecklare kan använda för att fånga design, och ger en miljö för komplex design av elektroniska system som stöder simulering, formell analys och syntes.
Metropolis REF tillhandahåller en meta-modell med formella semantik för att fånga och analysera elektroniska systemdesigner på flera nivåer av abstraktioner.
Metropolis: an integrated electronic system design environment
{'venue': 'IEEE Computer', 'journal': 'IEEE Computer', 'mag_field_of_study': ['Computer Science']}