Programvarusystem byggs allt mer som kompositioner av återanvändbara artefakter (komponenter, ramar, verktygssatser, plug-ins, API:er, etc) som har icke-triviala användningsbegränsningar i form av gränssnittsavtal, underliggande antaganden och regler för designsammansättning. Att tillfredställa dessa begränsningar är utmanande: de är ofta inte väldokumenterade, eller de är svåra att integrera i programvaruutvecklingsprocessen på sätt som tillåter deras identifiering av utvecklare, eller de kan inte genomdrivas av befintliga verktyg och utvecklingsmiljöer. Aspect-orienterad programmering har förespråkats som ett tillvägagångssätt för att representera och genomdriva programvarubegränsningar i kod artefakter. Aspekter kan användas för att upptäcka begränsningar överträdelser, eller mer proaktivt, för att säkerställa att begränsningarna är uppfyllda utan att kräva utvecklarens uppmärksamhet. I detta dokument diskuteras vår erfarenhet med hjälp av aspekter för att dokumentera och genomdriva programvarubegränsningar i en industriell applikation, särskilt TDE/UML, ett modelldrivet programvarutestverktyg utvecklat på SIEMENS. Vi presenterar en analys av gemensamma begränsningar som finns i vår fallstudie, en uppsättning primitiva aspekter som utvecklats för att hjälpa efterlevnaden av programvarubegränsningar, och visa hur AOP har införlivats i befintliga programutvecklings- och styrningsstrategier i TDE/UML-projektet. Vi avslutar med en diskussion om AspectJ:s styrkor och begränsningar när det gäller att stödja dessa begränsningar.
Filho m.fl. I REF föreslås att man använder aspekter för att dokumentera och validera programregler i en industriell MDE-applikation.
Experiences documenting and preserving software constraints using aspects
{'venue': "AOSD '11", 'journal': None, 'mag_field_of_study': ['Computer Science']}