SlideShare a Scribd company logo
1 of 19
Model-Driven Design  of Audiovisual Indexing Processes for Search-Based Applications Alessandro Bozzon,  Marco Brambilla , Piero Fraternali http://dbgroup.como.polimi.it/brambilla/mdd-search-apps CBMI 2009, June 5 th , Chania, Crete.
Agenda ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Introduction ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Motivations ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Thesis ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],SBA Model Driven Development Framework
The contribution ,[object Object],[object Object],[object Object],[object Object]
Background ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Background Models BPMN WebML ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Modeling Approach ,[object Object],[object Object],[object Object],[object Object],[object Object]
CPA Process - Domain Model ,[object Object],[object Object],[object Object],[object Object],[object Object]
CPA Process - Process and Application design ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Refinement M2M Transformation M2T Transformation ,[object Object],[object Object],[object Object],Full Size Video
CPA - Examples of complex processes Analysis of audiovisual content Analysis of audio-visual content with textual annotations
Search-specific extensions to the process model (BPMN*) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
BPMN* > WebML transformation ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],ATL Transformation Example of ATL BPMD-WebML transformation rule for activities
Verification of properties for CPA processes ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Implementation ,[object Object],[object Object],[object Object]
Experiences ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Pros Cons Complete set of design dimensions High-quality prototypes Quick prototyping cycles Fast development time Lack of reverse transformations from application to process models Availability of only simple guard condition expressions
Conclusions and future work ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Thank You! Marco Brambilla [email_address] www.dei.polimi.it http://www.pharos-audiovisual-search.eu/

More Related Content

Viewers also liked

Utrikesminister (m.m.) – en sammanställning av saker carl bildt har haft för sig
Utrikesminister (m.m.) – en sammanställning av saker carl bildt har haft för sigUtrikesminister (m.m.) – en sammanställning av saker carl bildt har haft för sig
Utrikesminister (m.m.) – en sammanställning av saker carl bildt har haft för sigAlliansfritt Sverige
 
Upphandling av finansiell rådgivare för Vattenfall AB (publ)
Upphandling av finansiell rådgivare för Vattenfall AB (publ)Upphandling av finansiell rådgivare för Vattenfall AB (publ)
Upphandling av finansiell rådgivare för Vattenfall AB (publ)Alliansfritt Sverige
 
Merill Lynch: Fairness opinion letter
Merill Lynch: Fairness opinion letterMerill Lynch: Fairness opinion letter
Merill Lynch: Fairness opinion letterAlliansfritt Sverige
 
Com redactar pels diferents canals d'informació (presentació)
Com redactar pels diferents canals d'informació (presentació)Com redactar pels diferents canals d'informació (presentació)
Com redactar pels diferents canals d'informació (presentació)Eva Sanagustin
 
Marqueting de continguts dialoga amb els teus clients oferint-los materials u...
Marqueting de continguts dialoga amb els teus clients oferint-los materials u...Marqueting de continguts dialoga amb els teus clients oferint-los materials u...
Marqueting de continguts dialoga amb els teus clients oferint-los materials u...Eva Sanagustin
 
Estrategia de contenidos de Loogic
Estrategia de contenidos de LoogicEstrategia de contenidos de Loogic
Estrategia de contenidos de LoogicEva Sanagustin
 
Tu Plan de Marketing Digital en 120 minutos
Tu Plan de Marketing Digital en 120 minutosTu Plan de Marketing Digital en 120 minutos
Tu Plan de Marketing Digital en 120 minutosMau Santambrosio
 

Viewers also liked (8)

Utrikesminister (m.m.) – en sammanställning av saker carl bildt har haft för sig
Utrikesminister (m.m.) – en sammanställning av saker carl bildt har haft för sigUtrikesminister (m.m.) – en sammanställning av saker carl bildt har haft för sig
Utrikesminister (m.m.) – en sammanställning av saker carl bildt har haft för sig
 
Upphandling av finansiell rådgivare för Vattenfall AB (publ)
Upphandling av finansiell rådgivare för Vattenfall AB (publ)Upphandling av finansiell rådgivare för Vattenfall AB (publ)
Upphandling av finansiell rådgivare för Vattenfall AB (publ)
 
Merill Lynch: Fairness opinion letter
Merill Lynch: Fairness opinion letterMerill Lynch: Fairness opinion letter
Merill Lynch: Fairness opinion letter
 
Det moderata bidragsberoendet
Det moderata bidragsberoendetDet moderata bidragsberoendet
Det moderata bidragsberoendet
 
Com redactar pels diferents canals d'informació (presentació)
Com redactar pels diferents canals d'informació (presentació)Com redactar pels diferents canals d'informació (presentació)
Com redactar pels diferents canals d'informació (presentació)
 
Marqueting de continguts dialoga amb els teus clients oferint-los materials u...
Marqueting de continguts dialoga amb els teus clients oferint-los materials u...Marqueting de continguts dialoga amb els teus clients oferint-los materials u...
Marqueting de continguts dialoga amb els teus clients oferint-los materials u...
 
Estrategia de contenidos de Loogic
Estrategia de contenidos de LoogicEstrategia de contenidos de Loogic
Estrategia de contenidos de Loogic
 
Tu Plan de Marketing Digital en 120 minutos
Tu Plan de Marketing Digital en 120 minutosTu Plan de Marketing Digital en 120 minutos
Tu Plan de Marketing Digital en 120 minutos
 

Similar to Model-Driven Design of Audiovisual Indexing Processes for Search Apps.

WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web
WebRatio BPM: a Tool for Designing and Deploying Business Processes on the WebWebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web
WebRatio BPM: a Tool for Designing and Deploying Business Processes on the WebMarco Brambilla
 
Rapid Prototyping for Service-Oriented Architectures
Rapid Prototyping for Service-Oriented ArchitecturesRapid Prototyping for Service-Oriented Architectures
Rapid Prototyping for Service-Oriented ArchitecturesBrian Elvesæter
 
Searching Repositories of Web Application Models
Searching Repositories of Web Application ModelsSearching Repositories of Web Application Models
Searching Repositories of Web Application ModelsMarco Brambilla
 
Business Process Design
Business Process DesignBusiness Process Design
Business Process DesignSandy Kemsley
 
Modeling Search Computing Applications
Modeling Search Computing ApplicationsModeling Search Computing Applications
Modeling Search Computing ApplicationsMarco Brambilla
 
Tibco amx bpm online & corporate training by virtual nuggets
Tibco amx bpm online & corporate training by virtual nuggetsTibco amx bpm online & corporate training by virtual nuggets
Tibco amx bpm online & corporate training by virtual nuggetspsrani
 
The Role of Standards in BPM
The Role of Standards in BPMThe Role of Standards in BPM
The Role of Standards in BPMSandy Kemsley
 
Introduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTUREIntroduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTUREIvano Malavolta
 
Saul Cunningham - Oracle - Best Practices for Scaling your SOA Infrastructure...
Saul Cunningham - Oracle - Best Practices for Scaling your SOA Infrastructure...Saul Cunningham - Oracle - Best Practices for Scaling your SOA Infrastructure...
Saul Cunningham - Oracle - Best Practices for Scaling your SOA Infrastructure...Saul Cunningham
 
Service Oriented Architecture
Service Oriented Architecture Service Oriented Architecture
Service Oriented Architecture Prabhat gangwar
 
Oracle OpenWorld 2009 AIA Best Practices
Oracle OpenWorld 2009 AIA Best PracticesOracle OpenWorld 2009 AIA Best Practices
Oracle OpenWorld 2009 AIA Best PracticesRajesh Raheja
 
Malta soa infrastructure
Malta soa infrastructureMalta soa infrastructure
Malta soa infrastructureAngel Knight
 
Advanced monitoring-in-wso2
Advanced monitoring-in-wso2Advanced monitoring-in-wso2
Advanced monitoring-in-wso2WSO2
 
Impact 2011 2667 - Developing effective services for use in critical business...
Impact 2011 2667 - Developing effective services for use in critical business...Impact 2011 2667 - Developing effective services for use in critical business...
Impact 2011 2667 - Developing effective services for use in critical business...Brian Petrini
 
Integrating SIS’s with Salesforce: An Accidental Integrator’s Guide
Integrating SIS’s with Salesforce: An Accidental Integrator’s GuideIntegrating SIS’s with Salesforce: An Accidental Integrator’s Guide
Integrating SIS’s with Salesforce: An Accidental Integrator’s GuideSalesforce.org
 
Mashups and Business Process Management in SOA
Mashups and Business Process Management in SOAMashups and Business Process Management in SOA
Mashups and Business Process Management in SOAWSO2
 
Model driven development and code generation of software systems
Model driven development and code generation of software systemsModel driven development and code generation of software systems
Model driven development and code generation of software systemsMarco Brambilla
 
Ws Soa V6 Theory And Practice
Ws Soa V6 Theory And PracticeWs Soa V6 Theory And Practice
Ws Soa V6 Theory And PracticePini Cohen
 

Similar to Model-Driven Design of Audiovisual Indexing Processes for Search Apps. (20)

WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web
WebRatio BPM: a Tool for Designing and Deploying Business Processes on the WebWebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web
WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web
 
Scc talk
Scc talkScc talk
Scc talk
 
Rapid Prototyping for Service-Oriented Architectures
Rapid Prototyping for Service-Oriented ArchitecturesRapid Prototyping for Service-Oriented Architectures
Rapid Prototyping for Service-Oriented Architectures
 
Searching Repositories of Web Application Models
Searching Repositories of Web Application ModelsSearching Repositories of Web Application Models
Searching Repositories of Web Application Models
 
Business Process Design
Business Process DesignBusiness Process Design
Business Process Design
 
soa1.ppt
soa1.pptsoa1.ppt
soa1.ppt
 
Modeling Search Computing Applications
Modeling Search Computing ApplicationsModeling Search Computing Applications
Modeling Search Computing Applications
 
Tibco amx bpm online & corporate training by virtual nuggets
Tibco amx bpm online & corporate training by virtual nuggetsTibco amx bpm online & corporate training by virtual nuggets
Tibco amx bpm online & corporate training by virtual nuggets
 
The Role of Standards in BPM
The Role of Standards in BPMThe Role of Standards in BPM
The Role of Standards in BPM
 
Introduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTUREIntroduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTURE
 
Saul Cunningham - Oracle - Best Practices for Scaling your SOA Infrastructure...
Saul Cunningham - Oracle - Best Practices for Scaling your SOA Infrastructure...Saul Cunningham - Oracle - Best Practices for Scaling your SOA Infrastructure...
Saul Cunningham - Oracle - Best Practices for Scaling your SOA Infrastructure...
 
Service Oriented Architecture
Service Oriented Architecture Service Oriented Architecture
Service Oriented Architecture
 
Oracle OpenWorld 2009 AIA Best Practices
Oracle OpenWorld 2009 AIA Best PracticesOracle OpenWorld 2009 AIA Best Practices
Oracle OpenWorld 2009 AIA Best Practices
 
Malta soa infrastructure
Malta soa infrastructureMalta soa infrastructure
Malta soa infrastructure
 
Advanced monitoring-in-wso2
Advanced monitoring-in-wso2Advanced monitoring-in-wso2
Advanced monitoring-in-wso2
 
Impact 2011 2667 - Developing effective services for use in critical business...
Impact 2011 2667 - Developing effective services for use in critical business...Impact 2011 2667 - Developing effective services for use in critical business...
Impact 2011 2667 - Developing effective services for use in critical business...
 
Integrating SIS’s with Salesforce: An Accidental Integrator’s Guide
Integrating SIS’s with Salesforce: An Accidental Integrator’s GuideIntegrating SIS’s with Salesforce: An Accidental Integrator’s Guide
Integrating SIS’s with Salesforce: An Accidental Integrator’s Guide
 
Mashups and Business Process Management in SOA
Mashups and Business Process Management in SOAMashups and Business Process Management in SOA
Mashups and Business Process Management in SOA
 
Model driven development and code generation of software systems
Model driven development and code generation of software systemsModel driven development and code generation of software systems
Model driven development and code generation of software systems
 
Ws Soa V6 Theory And Practice
Ws Soa V6 Theory And PracticeWs Soa V6 Theory And Practice
Ws Soa V6 Theory And Practice
 

More from Marco Brambilla

M.Sc. Thesis Topics and Proposals @ Polimi Data Science Lab - 2024 - prof. Br...
M.Sc. Thesis Topics and Proposals @ Polimi Data Science Lab - 2024 - prof. Br...M.Sc. Thesis Topics and Proposals @ Polimi Data Science Lab - 2024 - prof. Br...
M.Sc. Thesis Topics and Proposals @ Polimi Data Science Lab - 2024 - prof. Br...Marco Brambilla
 
Thesis Topics and Proposals @ Polimi Data Science Lab - 2023 - prof. Brambill...
Thesis Topics and Proposals @ Polimi Data Science Lab - 2023 - prof. Brambill...Thesis Topics and Proposals @ Polimi Data Science Lab - 2023 - prof. Brambill...
Thesis Topics and Proposals @ Polimi Data Science Lab - 2023 - prof. Brambill...Marco Brambilla
 
Hierarchical Transformers for User Semantic Similarity - ICWE 2023
Hierarchical Transformers for User Semantic Similarity - ICWE 2023Hierarchical Transformers for User Semantic Similarity - ICWE 2023
Hierarchical Transformers for User Semantic Similarity - ICWE 2023Marco Brambilla
 
Exploring the Bi-verse. A trip across the digital and physical ecospheres
Exploring the Bi-verse.A trip across the digital and physical ecospheresExploring the Bi-verse.A trip across the digital and physical ecospheres
Exploring the Bi-verse. A trip across the digital and physical ecospheresMarco Brambilla
 
Conversation graphs in Online Social Media
Conversation graphs in Online Social MediaConversation graphs in Online Social Media
Conversation graphs in Online Social MediaMarco Brambilla
 
Trigger.eu: Cocteau game for policy making - introduction and demo
Trigger.eu: Cocteau game for policy making - introduction and demoTrigger.eu: Cocteau game for policy making - introduction and demo
Trigger.eu: Cocteau game for policy making - introduction and demoMarco Brambilla
 
Generation of Realistic Navigation Paths for Web Site Testing using RNNs and ...
Generation of Realistic Navigation Paths for Web Site Testing using RNNs and ...Generation of Realistic Navigation Paths for Web Site Testing using RNNs and ...
Generation of Realistic Navigation Paths for Web Site Testing using RNNs and ...Marco Brambilla
 
Analyzing rich club behavior in open source projects
Analyzing rich club behavior in open source projectsAnalyzing rich club behavior in open source projects
Analyzing rich club behavior in open source projectsMarco Brambilla
 
Analysis of On-line Debate on Long-Running Political Phenomena. The Brexit C...
Analysis of On-line Debate on Long-Running Political Phenomena.The Brexit C...Analysis of On-line Debate on Long-Running Political Phenomena.The Brexit C...
Analysis of On-line Debate on Long-Running Political Phenomena. The Brexit C...Marco Brambilla
 
Community analysis using graph representation learning on social networks
Community analysis using graph representation learning on social networksCommunity analysis using graph representation learning on social networks
Community analysis using graph representation learning on social networksMarco Brambilla
 
Available Data Science M.Sc. Thesis Proposals
Available Data Science M.Sc. Thesis Proposals Available Data Science M.Sc. Thesis Proposals
Available Data Science M.Sc. Thesis Proposals Marco Brambilla
 
Data Cleaning for social media knowledge extraction
Data Cleaning for social media knowledge extractionData Cleaning for social media knowledge extraction
Data Cleaning for social media knowledge extractionMarco Brambilla
 
Iterative knowledge extraction from social networks. The Web Conference 2018
Iterative knowledge extraction from social networks. The Web Conference 2018Iterative knowledge extraction from social networks. The Web Conference 2018
Iterative knowledge extraction from social networks. The Web Conference 2018Marco Brambilla
 
Driving Style and Behavior Analysis based on Trip Segmentation over GPS Info...
Driving Style and Behavior Analysis based on Trip Segmentation over GPS  Info...Driving Style and Behavior Analysis based on Trip Segmentation over GPS  Info...
Driving Style and Behavior Analysis based on Trip Segmentation over GPS Info...Marco Brambilla
 
Myths and challenges in knowledge extraction and analysis from human-generate...
Myths and challenges in knowledge extraction and analysis from human-generate...Myths and challenges in knowledge extraction and analysis from human-generate...
Myths and challenges in knowledge extraction and analysis from human-generate...Marco Brambilla
 
Harvesting Knowledge from Social Networks: Extracting Typed Relationships amo...
Harvesting Knowledge from Social Networks: Extracting Typed Relationships amo...Harvesting Knowledge from Social Networks: Extracting Typed Relationships amo...
Harvesting Knowledge from Social Networks: Extracting Typed Relationships amo...Marco Brambilla
 
Model-driven Development of User Interfaces for IoT via Domain-specific Comp...
Model-driven Development of  User Interfaces for IoT via Domain-specific Comp...Model-driven Development of  User Interfaces for IoT via Domain-specific Comp...
Model-driven Development of User Interfaces for IoT via Domain-specific Comp...Marco Brambilla
 
A Model-Based Method for Seamless Web and Mobile Experience. Splash 2016 conf.
A Model-Based Method for  Seamless Web and Mobile Experience. Splash 2016 conf.A Model-Based Method for  Seamless Web and Mobile Experience. Splash 2016 conf.
A Model-Based Method for Seamless Web and Mobile Experience. Splash 2016 conf.Marco Brambilla
 
Big Data and Stream Data Analysis at Politecnico di Milano
Big Data and Stream Data Analysis at Politecnico di MilanoBig Data and Stream Data Analysis at Politecnico di Milano
Big Data and Stream Data Analysis at Politecnico di MilanoMarco Brambilla
 
Web Science. An introduction
Web Science. An introductionWeb Science. An introduction
Web Science. An introductionMarco Brambilla
 

More from Marco Brambilla (20)

M.Sc. Thesis Topics and Proposals @ Polimi Data Science Lab - 2024 - prof. Br...
M.Sc. Thesis Topics and Proposals @ Polimi Data Science Lab - 2024 - prof. Br...M.Sc. Thesis Topics and Proposals @ Polimi Data Science Lab - 2024 - prof. Br...
M.Sc. Thesis Topics and Proposals @ Polimi Data Science Lab - 2024 - prof. Br...
 
Thesis Topics and Proposals @ Polimi Data Science Lab - 2023 - prof. Brambill...
Thesis Topics and Proposals @ Polimi Data Science Lab - 2023 - prof. Brambill...Thesis Topics and Proposals @ Polimi Data Science Lab - 2023 - prof. Brambill...
Thesis Topics and Proposals @ Polimi Data Science Lab - 2023 - prof. Brambill...
 
Hierarchical Transformers for User Semantic Similarity - ICWE 2023
Hierarchical Transformers for User Semantic Similarity - ICWE 2023Hierarchical Transformers for User Semantic Similarity - ICWE 2023
Hierarchical Transformers for User Semantic Similarity - ICWE 2023
 
Exploring the Bi-verse. A trip across the digital and physical ecospheres
Exploring the Bi-verse.A trip across the digital and physical ecospheresExploring the Bi-verse.A trip across the digital and physical ecospheres
Exploring the Bi-verse. A trip across the digital and physical ecospheres
 
Conversation graphs in Online Social Media
Conversation graphs in Online Social MediaConversation graphs in Online Social Media
Conversation graphs in Online Social Media
 
Trigger.eu: Cocteau game for policy making - introduction and demo
Trigger.eu: Cocteau game for policy making - introduction and demoTrigger.eu: Cocteau game for policy making - introduction and demo
Trigger.eu: Cocteau game for policy making - introduction and demo
 
Generation of Realistic Navigation Paths for Web Site Testing using RNNs and ...
Generation of Realistic Navigation Paths for Web Site Testing using RNNs and ...Generation of Realistic Navigation Paths for Web Site Testing using RNNs and ...
Generation of Realistic Navigation Paths for Web Site Testing using RNNs and ...
 
Analyzing rich club behavior in open source projects
Analyzing rich club behavior in open source projectsAnalyzing rich club behavior in open source projects
Analyzing rich club behavior in open source projects
 
Analysis of On-line Debate on Long-Running Political Phenomena. The Brexit C...
Analysis of On-line Debate on Long-Running Political Phenomena.The Brexit C...Analysis of On-line Debate on Long-Running Political Phenomena.The Brexit C...
Analysis of On-line Debate on Long-Running Political Phenomena. The Brexit C...
 
Community analysis using graph representation learning on social networks
Community analysis using graph representation learning on social networksCommunity analysis using graph representation learning on social networks
Community analysis using graph representation learning on social networks
 
Available Data Science M.Sc. Thesis Proposals
Available Data Science M.Sc. Thesis Proposals Available Data Science M.Sc. Thesis Proposals
Available Data Science M.Sc. Thesis Proposals
 
Data Cleaning for social media knowledge extraction
Data Cleaning for social media knowledge extractionData Cleaning for social media knowledge extraction
Data Cleaning for social media knowledge extraction
 
Iterative knowledge extraction from social networks. The Web Conference 2018
Iterative knowledge extraction from social networks. The Web Conference 2018Iterative knowledge extraction from social networks. The Web Conference 2018
Iterative knowledge extraction from social networks. The Web Conference 2018
 
Driving Style and Behavior Analysis based on Trip Segmentation over GPS Info...
Driving Style and Behavior Analysis based on Trip Segmentation over GPS  Info...Driving Style and Behavior Analysis based on Trip Segmentation over GPS  Info...
Driving Style and Behavior Analysis based on Trip Segmentation over GPS Info...
 
Myths and challenges in knowledge extraction and analysis from human-generate...
Myths and challenges in knowledge extraction and analysis from human-generate...Myths and challenges in knowledge extraction and analysis from human-generate...
Myths and challenges in knowledge extraction and analysis from human-generate...
 
Harvesting Knowledge from Social Networks: Extracting Typed Relationships amo...
Harvesting Knowledge from Social Networks: Extracting Typed Relationships amo...Harvesting Knowledge from Social Networks: Extracting Typed Relationships amo...
Harvesting Knowledge from Social Networks: Extracting Typed Relationships amo...
 
Model-driven Development of User Interfaces for IoT via Domain-specific Comp...
Model-driven Development of  User Interfaces for IoT via Domain-specific Comp...Model-driven Development of  User Interfaces for IoT via Domain-specific Comp...
Model-driven Development of User Interfaces for IoT via Domain-specific Comp...
 
A Model-Based Method for Seamless Web and Mobile Experience. Splash 2016 conf.
A Model-Based Method for  Seamless Web and Mobile Experience. Splash 2016 conf.A Model-Based Method for  Seamless Web and Mobile Experience. Splash 2016 conf.
A Model-Based Method for Seamless Web and Mobile Experience. Splash 2016 conf.
 
Big Data and Stream Data Analysis at Politecnico di Milano
Big Data and Stream Data Analysis at Politecnico di MilanoBig Data and Stream Data Analysis at Politecnico di Milano
Big Data and Stream Data Analysis at Politecnico di Milano
 
Web Science. An introduction
Web Science. An introductionWeb Science. An introduction
Web Science. An introduction
 

Recently uploaded

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 

Recently uploaded (20)

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 

Model-Driven Design of Audiovisual Indexing Processes for Search Apps.

  • 1. Model-Driven Design of Audiovisual Indexing Processes for Search-Based Applications Alessandro Bozzon, Marco Brambilla , Piero Fraternali http://dbgroup.como.polimi.it/brambilla/mdd-search-apps CBMI 2009, June 5 th , Chania, Crete.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12. CPA - Examples of complex processes Analysis of audiovisual content Analysis of audio-visual content with textual annotations
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19. Thank You! Marco Brambilla [email_address] www.dei.polimi.it http://www.pharos-audiovisual-search.eu/

Editor's Notes

  1. Good morning blah blah blah I’m here today to present you my doctoral thesis, named “ Model-driven development of Search-Based Web Applications”
  2. If we consider: 1) The huge increasing in the availability of data in digital format that we have witnessed in the recent years 2) The spread of Internet as one of the main communication mean, from which we derived, in everyday' life, many of its interaction paradigms (e.g., Web search, from which we got use to the easiness and comfort of a single text-box search interface) it can be stated that search (intended as querying heterogenous data sources by means of Search Engines ) has become a de-facto standard paradigm for information seeking , in many usage domain, not only the Web. We can therefore define SBAs as the class of applications in which searching over heterogeneous data constitutes the predominant user interaction paradigm . W.r.t. search engines , which are canned applications with a fixed behaviour, homogeneous data sources , simple content processing flows and basic query flows , SBA are typically tailor-made solutions , where data and user’s needs nature vary for different business sectors and requirements For instance, the front end of a professional SBA for searching audio content can offer advanced feature extraction (e.g., inference of music mood, genre, key, etc) and a simple keyword base interface. The same application could be extended and offered to the general public, by adding a more captivating front-end, allowing query by humming, similarity search with music recorded with a mobile terminal, and so on. Likewise, at the back-end side, the content processing pipeline may vary, e.g., due to the added requirement of extracting a novel feature (e.g., music danceability) or to integrate a novel feature extraction algorithm. In SBAs, search engines are a part of a complex system, involving: heterogeneous data source integration , articulated content analysis operations , complex querying processes , Web-mediated social interactions
  3. Even by starting from such an informal definition, it appears clear how SBAs are inherently complex applications , exposing many of the functionalities typical of modern Web applications (such as adaptivity, multi-channel delivery, personalization, etc), retain also a specific flavor, due to the prevailing role of search : they must integrate a complex front-end (devoted to query expression and result presentation ) with a complex back-end (specialized in content provisioning , annotation , indexing and distributed query executio n) SBAs . The trait d'union of these apparently dissimilar focuses is the fact that both embody data-intensive and process-intensive tasks. The query and the result list are first class citizens, which are subject to a life-cycle: they must be obtained, reformulated, possibly integrated with external information, and stored. The same is true for content, which must be provisioned, transcoded, analyzed, annotated, and indexed. We can identify 3 reference processes: + CPI Process: indexation of contents coming from the application data sources (thus involving data retrieval from external sources, transformation or aggregation of the retrieved data and, finally, their indexation) + QRP Process: addressing the operations related to query execution, orchestration and result-set composition + User Interaction process: i.e., the way users interact with the application's functionalities. SBAs heterogeneity is due to several reasons: + heterogeneous nature of the managed contents + information need of its users (end-user, professional) + business field + reduced time-to-market for innovations, especially for what concerns analysis technologies + need for fast prototyping
  4. The current state of the art (both in industry and in academia), does not provide methodologies and tools able to holistically cater for the needs of SBA development , as they usually rely either on the developer programming skills or on simple models addressing just part of SBA complexity Such a situation leads to problems really well-know in the SW Engineering field, like a lack of separation of concerns among the different involved actors, low productivity , difficulties in managing and maintaining the application over time, etc.. We claim that SBAs development demand for new methodologies and tools , following a path that somehow resembles the evolution that we have witnessed for fields such Web engineering (need to take into account features typical of the domain): rational development process, clear separation of concerns among the involved actors, central roles of models , automatic code generation , etc. My thesis therefore propose a modeling framework, specifically addressed to SBA application . Modeling frameworks help in rationalizing the design and development process , while reducing the overhead associated with common activities in application development . Moreover, frameworks enable the reuse of software design, and provide tools for the specification of the relevant aspects of the application.
  5. Here’s an outline of my thesis’s contributions, which is composed of: + A modeling framework for SBA Model Driven Development. - Set of reference domain specific design dimensions - Development methodologies - Modeling Tools + Semi automatic code generation from Computer-aided design tools + A reference data and process model for the 3 identified processes (CAI, QRP and UI), in which we exemplify how the identified design dimensions influence their specification + The practical implementation of the proposed approach in a tool set + The validation of the approach in the context of an EU project
  6. The works lies in space at the intersection of 3 discipline, information retrieval, business process design and model-driven development , from which we selectively derived concepts and principles as foundations of our SBA modeling framework. Search engines and SBA applications derives from the decades-lasting work in the field of IR , a discipline devoted to solve the problem of finding contents that satisfy an information need from within large collections. The discipline proposed solutions for this problem from many point of view (type of managed document and their representation, analysis operation, search algorithms tailored to given document representations, query format, user interaction, also in its social alternatives and so on) Business process design is a method for the representation of processes (of different nature) in terms of related, structured activities or tasks that produce a specific service or product. There have been proposed several standards and methodologies to address BP design at a conceptual level. One of the most notable is the well-know BPMN, now supported my the OMG. MDD for Web Engineering, instead, is a discipline born around 15 years ago, aimed at raising the level of abstraction for (data-intensive or process-intensive) applications on the Web. By sharing (or mutuating) part of its methodology with the MDA (model driven architecture) activity, in Web engineering the use of models and models transformation is fostered, as they are key artifacts for application development. Also here, many methodologies has been proposed. WebML, the Web modeling language, is one of such proposals as it is the one adopted in this work.
  7. A slide to make a really brief introduction to the modeling lnaguages adopted in the thesis. The BPMN notation allows representing all the basic process concepts defined by the WfMC model: + ACTIVITIES: the units of works composing a process, typically performed by a single actor + FLOWS: shows in which order the activities will be performed + CONSTRAINS: a condition, related to the activity selection and/or completion, which must be met during work processing; + ARTIFACTS: Data Objects show the reader which data is required or produced in an activity. + EVENTS: denotes something that happens (rather than Activities which are something that is done) **************************************************************************************************************** WebML, a conceptual language for the specification of data-intensive Web applications, i.e., application having as main purpose the manipulation or the publication of data. Among the different Web engineering proposals, we chose WebML for different reasons: because of its general diffusion and acceptance, the simplicity of its notation, and the availability of a code generator we could extend to validate our proposals on real applications. WebML decompose the Web application development problem into 3 major aspects: + domain model, to represent the objects and items that will be managed by the Web application (ER/UML) + navigation model, which covers two aspect, which are the design of how user can interact with the application and the reaction of the system upon link navigation. + service composition and orchestration models: the goal of the process model is to allow designers to specify the workflow enacted by a Web application. The process model is usually defined in advance w.r.t. the domain and the application model, as it influences the design of both.
  8. One aspect of the proposed development framework is the definition of a methodology for the design and implementation of the application to be produced. A development approach based on a formal methodology and appropriate high level modeling languages smoothly incorporates change management into the mainstream production life-cycle, and greatly reduces the risk of breaking the software engineering process due to the occurrence of changes. The proposed methodology follows the path of the MDD approach by leveraging on a incremental, iterative design steps that foster separation of concerns among the actors involved in the SBA design. The Conceptual Design macro activity represents the core of the development lifecycle, since it involves the main design activities In the terminology of MDD, the BPMN Process Model can be seen as a Computation Independent Model (CIM), which specifies SBA requirements for the CAI and QRP processes; as we will see, instead, the UI process is address as an Interaction pattern composition activity. The WebML application model is a Platform Independent Model (PIM), which exploits SOA and Web hypertext interfaces as a technical space. Finally, the application code is a Platform Specific Model (PSM) for the Java 2 technical space. Initially, requirements are conceptualized in a Domain Model, which formalizes the essential data objects managed by the application, and a Process Model, which pinpoints the workflow of the CAI,QRP and UI processes. The link between the domain and process models is established by the type of objects that flow between activities. The designed solutions do not take into account domain specific informations like the schema of the adopted search technologies, or the format of the annotations produced by the analysis components. Nonetheless, the focus on a specific class of applications allows one to include, in the business model, high-level concepts relative to the applications’ domain. For SBA, for instance, the concept of query, user, index and so on. The use of an high-level model combined with coarse grained domain concepts allows one to address the designed application in perspective, possibly by creating designs that can be applied to classes of applications (e.g., audiovisual search engines), more than punctual solutions. Abstract-level notation, though, cannot be translated into running code,due to the lack of platform-specific details (e.g., the technologies adopted by actual search engines, analysis components, deployment platform etc.) needed to enact code generation. The Domain Model and Process Model are then subject to a first (CIM to PIM) transformation, which produces the Application Model and process metadata. objects. Therefore, coarse-grained design is followed by refinements that take into account more domain-specific information, like the structure and format for the contents, the annotations and indexes. To do so, a finer grained model is adopted, in order to enable the definition of domain-and application-specific details that can lead to automatic code generation. The proposed approach is generic enough in order to adopt alternative modeling languages, both for process and application design. This slide discusses how to derive an application model from high-level process model. The proposed framework employ the BPMN modeling language for process specification and the WebML modeling language for the design of hypertextes and Web service orchestrations
  9. Let’s now have a bird’s eye view on some reference, example design for all the 3 identified SBA’s processes. The CAI process can be defined as the work to be performed by the actors of a SBA to achieve the indexation of a content item . The goal of the domain model is to formalize content- and index-related data and metadata managed by the search applications. Such models build on five basic domain concepts: + Content Item : a Content Item is an individual information unit which is relevant in a search based Web application for indexing purposes. + Annotation : an annotation is the textual information associated with a content item for indexing and searching purposes. Such information might be of different nature, being both manual annotation, provided by the content provider or by the user, and automatically generated annotation, produced by the search application during the Indexing process. + Usage Group : Content Items are published by one or more Content Provider, which is responsible for their publication. A Usage Group is an access profile specified by a content provider to define the set of operations allowed for a given content item to a set of users: + Index : the notion of Index, well known in many disciplines of computer science, denotes a data structure designed in order to optimize speed and performance in finding relevant content items for a search query.
  10. Here’s instead, an example of top-down specification for an indexing process, using the proposed methodology. The Figure depicts a coarse model of the indexing process in BPMN, where just a single actor (the search application) is considered. The indexing process is composed by three atomic sub-processes (which span through the architectural layers of the Back-end Business Logic Tier ), namely the content registration process, content analysis process and the content indexation process. The combination of the three processes allows the creation of the search applications’ indexes, starting from content items in their original format, through the creation of suitable annotations produced either automatically by the system or manually by users. Others....
  11. BPMN has know problems, i.e., converting BPMN models to executable environments. In the case of SBA, then, where processes are also data-intensive, there is an addition problem of lack of support for the formal definition of process data and data flows among activities. Moreover, being an high-level, domain-independent model, BPMN does not convey domain-specific information about the business logic enacted by the activities, this hindering even further the process of model transformation or, at the end, the automatic generation of running applications. For this reason we formalized extensions to the BPMN language so to introduce the concepts of.....
  12. Thanks to the implemented extensions, we inject more information in the higher level model, thus leading to: + finer-grained application models + less errors + more efficiency. Transformations were implemented in ATL, a language for model transformations. Here’s a graphical example of model transformation among BPMN* activities and WebML model, and here’s just to give you a hint of how transformations are coded
  13. BPMN extensions also allow alternative representations of a CAI process, in order to perform additional verifications of the process properties. For instance, in order to assess the outputs produced by a CAI process, we advised a method to define a textual, algebraic representation of the process. Each typed activity is defined as an expression which depends on its type and on the process schema. The semantic of each activity is therefore defined extensively, as tabular expression of its input-output. Starting from the BPMN* process definition, and trough a decomposition method, the algebraic representation of the process can be solved on order to obtain the process output for the ground-truth data. Thanks to this method is possible to assess how variation of activities’ business logics produce variations in the representativeness of annotation. *************************************************************************************************** The algebraic representation is assembled by encoding the BPMN structural operators Build a decomposition of the process where: each activity is independent fro the other activity in the same step each activity of the step n+1 has a predecessor in the step n Start from the activity with no antecedents in the process and build the input-output expression Inputs are empty or literal value Proceed to the next steps, using the previously determined expressions to denote the output of activities in the preceding steps The specification of the process can be assembled from that of the activities, by properly encoding the BPMN structural operators: links, conditions, and gateways. The general procedure can be summarized as follows: + Construct the Cartier-Foata decomposition of the process (Cartier & Foata, 1969); such a form is composed by the sequentialization of subsequent "steps" defined as follows: GOAL: decomposition of operations that can be performed simultaneously Since BPMN loops are not treated, the normal form exists and is unique. Examples of process schema dependency: + GUARD CONDITION: composition of an expression of the condition and that of the activity. P(X):= (X.duration<=1200) to state that the face recognition component should be called only for short videos. Then, the expression for the output of the AnalyzeFaces activity would become: if P(TranscodeAudioVideo(RetrieveVideo()).videoOut) then AnalyzeFaces(TranscodeAudioVideo(RetrieveVideo()).videoOut) else () where () denotes the empty expression. + MUTUAL EXCLUSION: When an activity a(x) has multiple incoming links from two or more antecedent activities (say a1 and a2) that are associated with the same input value x of a(), the expression of the output of a() becomes if mutuallyExclusive-a1-a2() then (a1()? a(a1(); a(a2()) else () The condition mutuallyExclusive-a1-a2()checks whether the schema of the process ensures that activity a1 and a2 cannot be executed both at the same time. This happens when a1 and a2 belong to distinct branches of a XOR gateway5. Conversely, if a1 and a2 can be executed both, e.g., because they reside in distinct branches of an AND gateway, the resulting expression of the output of a() is the empty expression .
  14. The methodology and the modeling primitives introduced have been implemented in order to test their feasibility and their effectiveness as a mean to model search based Web applications We extended WR 5, a commerical tool for the automatic generation of Web applications, to address the new modeling primitives introduced by this work. We also developed a novel Web editor for the on-line specification of BPMN models (the SBA-WF Editor). Web application external to WebRatio, but fully interoperable with it. The SBA-WF Editor allows user to create and modify BPMN diagrams targeted to the specification of SBA application. The code generator of WR5 was extended: first, the overall code generation process now includes a prior step, that is the transformation of the BPMN diagrams designed in the SBA-WF Editor into WebML models. Then, all the libraries and runtime descriptors needed by the new modeling primitives had been designed and implemented from scratch. The new runtime architecture adds to the previous one the support for a new source of information, i.e., the search engines. The extensions presented in this section are required in order to enable (i) the creation/manteinance of the search engines’ indexes modeled in the Index Model Process metadata generation has been formalized as an ATL transformation from the BPDM metamodel to the process Model
  15. The implementation of the illustrated primitives granted the opportunity to put SBA conceptual modeling to work in the development of real-world applications, in order to evaluate the strengths and weaknesses of the approach. We applied the presented methodology within the context of the PHAROS European project. The evaluation of the approach concentrated on two essential issues for a MDD, that are ease of use and effectiveness: the notation and development methodology should provide tangible benefits, in terms of learning curve, intuitiveness and communicability of the specifications, and ease of maintenance. Ease of use and effectiveness can be qualitatively evaluated by comparing model-driven development of SBA with their manual coding: this is a long debated issue (Nussbaumer et al., 2006), which is outside the scope of this work. However the use of a methodology based on conceptual modeling and code generation gain momentum especially when technology is evolving and common standards are lacking: the advantage derives from the generalization of the software design and implementation into an abstract modeling and development framework. This is the current situation with SBA development, where a variety of different tools and architectures are available for much the same objectives.