Presented at ICSE 2011 in the New Ideas and Emerging Results track.
In the associated paper we show that in a real world ecosystem ripple effects are frequent, long lived, and can have a very broad impact. More at: http://scg.unibe.ch/scgbib?query=lungu+ripple
Optimizing Requirements Decisions with KEYSgregoryg
The document discusses optimizing requirements models using a new algorithm called KEYS. KEYS beats other standard algorithms like simulated annealing and state of the art methods. KEYS allows requirements models to be optimized 50,000 times faster, in almost real-time. KEYS works by first identifying "keys" or important variables that influence the overall model, and then optimizing settings for those key variables. The document provides details on how KEYS finds keys using a technique called BORE sampling. It also discusses using KEYS to optimize a requirements model called DDP used at JPL for designing deep space missions.
Overthrowing the Tyranny of Alphabetical Order in Documentation Systemsmircea.lungu
The document discusses overthrowing alphabetical ordering in documentation systems. It proposes augmenting documentation browsers and JavaDoc to reorder elements based on usage frequency analysis of code corpora to improve developer efficiency. This is achieved through a crawler that gathers data on method usage from Java and Smalltalk codebases and uses the data to dynamically reorder documentation elements. Challenges for dynamically typed languages are also discussed.
The Ripple Effect: The Role of Leadership & Management in Workplace Heal...Joel Bennett
WORKSHOP AT 2010 HOUSTON WELLNESS ASSOCIATION. Designed to be used with self-assessment handout.
OBJECTIVES
1) Understand the three main paths of the ripple effect (healthy role model, job design, heart-centered leadership)
2) Review research supporting the ripple effect
3) Review and/or take self-assessments that pertain to each path
4) Re-assess personal legacy and personal influence on the ripple effect
The document discusses the causes and effects of inflation. The main causes are demand pull, cost push, money supply, and wage-price spirals. The effects include depreciation of goods and services, a wider distribution of income gaps between classes as price increases affect groups differently, shifts in spending habits as wages adjust, and speculative spending as people buy more of goods before expected price increases.
This document discusses inflation including its definition, types, causes, effects, measurement, and measures to control it. Inflation is defined as a sustained increase in prices or fall in the value of money. The main types are open, suppressed, galloping, and hyper inflation. Key causes include an increase in money supply and deficit financing. Effects include inefficiencies in markets and uncertainty discouraging investment. Inflation is primarily measured using the Consumer Price Index. Measures to control inflation involve monetary, fiscal, and other policies like increasing production and implementing price controls.
Chapter 3 Feasibility analysis(lecture 4 & 5)Afzaal Ali
Feasibility analysis is conducted early in the business planning process to determine if a business idea is viable. It assesses the product/service, industry/target market, organizational capabilities, and financial requirements. A feasibility analysis helps screen ideas before significant resources are invested. It involves researching customer demand, industry attractiveness, management experience, start-up costs, and the financial performance of similar businesses. Conducting a thorough feasibility analysis improves the chances of a new business idea succeeding in the market.
The document discusses services and the web of data from an engineering perspective. It proposes that as linked data applications increase in complexity, there will need to be increased reuse of pre-existing solutions and components offered as services. Problem-solving methods research focused on decoupling problem-solving knowledge from domains to enable reuse. Infrastructure is needed to support systematically sharing and finding reusable functionality, including through the use of semantic technologies and problem-solving methods. Challenges include balancing overhead and performance with reuse and genericity.
Optimizing Requirements Decisions with KEYSgregoryg
The document discusses optimizing requirements models using a new algorithm called KEYS. KEYS beats other standard algorithms like simulated annealing and state of the art methods. KEYS allows requirements models to be optimized 50,000 times faster, in almost real-time. KEYS works by first identifying "keys" or important variables that influence the overall model, and then optimizing settings for those key variables. The document provides details on how KEYS finds keys using a technique called BORE sampling. It also discusses using KEYS to optimize a requirements model called DDP used at JPL for designing deep space missions.
Overthrowing the Tyranny of Alphabetical Order in Documentation Systemsmircea.lungu
The document discusses overthrowing alphabetical ordering in documentation systems. It proposes augmenting documentation browsers and JavaDoc to reorder elements based on usage frequency analysis of code corpora to improve developer efficiency. This is achieved through a crawler that gathers data on method usage from Java and Smalltalk codebases and uses the data to dynamically reorder documentation elements. Challenges for dynamically typed languages are also discussed.
The Ripple Effect: The Role of Leadership & Management in Workplace Heal...Joel Bennett
WORKSHOP AT 2010 HOUSTON WELLNESS ASSOCIATION. Designed to be used with self-assessment handout.
OBJECTIVES
1) Understand the three main paths of the ripple effect (healthy role model, job design, heart-centered leadership)
2) Review research supporting the ripple effect
3) Review and/or take self-assessments that pertain to each path
4) Re-assess personal legacy and personal influence on the ripple effect
The document discusses the causes and effects of inflation. The main causes are demand pull, cost push, money supply, and wage-price spirals. The effects include depreciation of goods and services, a wider distribution of income gaps between classes as price increases affect groups differently, shifts in spending habits as wages adjust, and speculative spending as people buy more of goods before expected price increases.
This document discusses inflation including its definition, types, causes, effects, measurement, and measures to control it. Inflation is defined as a sustained increase in prices or fall in the value of money. The main types are open, suppressed, galloping, and hyper inflation. Key causes include an increase in money supply and deficit financing. Effects include inefficiencies in markets and uncertainty discouraging investment. Inflation is primarily measured using the Consumer Price Index. Measures to control inflation involve monetary, fiscal, and other policies like increasing production and implementing price controls.
Chapter 3 Feasibility analysis(lecture 4 & 5)Afzaal Ali
Feasibility analysis is conducted early in the business planning process to determine if a business idea is viable. It assesses the product/service, industry/target market, organizational capabilities, and financial requirements. A feasibility analysis helps screen ideas before significant resources are invested. It involves researching customer demand, industry attractiveness, management experience, start-up costs, and the financial performance of similar businesses. Conducting a thorough feasibility analysis improves the chances of a new business idea succeeding in the market.
The document discusses services and the web of data from an engineering perspective. It proposes that as linked data applications increase in complexity, there will need to be increased reuse of pre-existing solutions and components offered as services. Problem-solving methods research focused on decoupling problem-solving knowledge from domains to enable reuse. Infrastructure is needed to support systematically sharing and finding reusable functionality, including through the use of semantic technologies and problem-solving methods. Challenges include balancing overhead and performance with reuse and genericity.
Governing services, data, rules, processes and moreRandall Hauch
Randall and Kurt will present how Guvnor is being reborn so that it can manage artifacts from a variety of domains, including web services, data services, business rules and processes, and metadata management. Guvnor not only will storing these artifacts, but it will fully manage their lifecycle, enable search and discovery, and provide insight into how, when and where they can be used. They'll also describe Guvnor's architecture and use of JCR, REST, GWT, Atom, and S-RAMP.
This document provides an introduction to OSGi, including the Jar Hell problem it aims to solve, its modular architecture and key concepts like bundles, services, and lifecycles. It also outlines some popular OSGi frameworks, tools, and next steps like advanced services, distributed OSGi, and integrating with other technologies like Spring and SCA.
This document discusses building scalable web applications. It covers topics like common database bottlenecks, using asynchronous tasks like Celery to improve performance, and building an API to optimize access to data stored across multiple databases and caches. The document provides examples of using Django, Redis, and other tools to architect a Twitter-like application called Tweeter to be scalable from the start.
This document summarizes lessons learned from issues that arose with the EVA Mobility Unit (EMU) lab at NASA's Neutral Buoyancy Laboratory (NBL). The NBL EMU lab was struggling with quality issues and low employee morale. Through open communication and teamwork between NASA and the contractor, several key lessons were identified: listening to all levels of employees, maintaining morale, and working as a collaborative team. These lessons helped turn the organization around, improving both productivity and employee satisfaction over time.
- Plone's security is handled through AccessControl which checks user roles against security definitions on objects during traversal and before applying methods.
- ClassSecurityInfo declarations are important for defining security on classes and subclasses can cause issues.
- Plone has dealt with CSRF and other vulnerabilities through packages like plone.app.protect and by providing hotfixes that are carefully structured and documented.
This document discusses varieties of self-awareness and their uses in natural and artificial systems. It proposes a conceptual framework for metacognition and natural cognition. The document contains slides for presentations on this topic, including:
- Discussing how to analyze requirements by examining natural and artificial systems to understand design discontinuities.
- Explaining how environments can have agent-relative structure that produces varied information processing demands.
- Outlining a conceptual framework that includes reactive and deliberative architectures in natural systems, with different layers providing varieties of self-awareness.
Where are we going and how are we going to get there?David De Roure
The document discusses the myExperiment virtual research environment for sharing workflows. Some key points:
1. myExperiment is a social network and repository for research workflows and methods. It currently has over 1800 users and hundreds of shared workflows.
2. The site allows fine-grained privacy controls, grouping of related content into "packs", and integration with other systems through federation.
3. Analysis found that most workflows and other content are shared publicly, and some users actively build upon other users' shared workflows. The most viewed workflow has over 1500 views.
4. The principles behind myExperiment's design focus on empowering scientists by enabling new forms of collaboration and sharing without forcing changes to workflows. The
Governing services, data, rules, processes and moreRandall Hauch
Randall and Kurt will present how Guvnor is being reborn so that it can manage artifacts from a variety of domains, including web services, data services, business rules and processes, and metadata management. Guvnor not only will storing these artifacts, but it will fully manage their lifecycle, enable search and discovery, and provide insight into how, when and where they can be used. They'll also describe Guvnor's architecture and use of JCR, REST, GWT, Atom, and S-RAMP.
This document provides an introduction to OSGi, including the Jar Hell problem it aims to solve, its modular architecture and key concepts like bundles, services, and lifecycles. It also outlines some popular OSGi frameworks, tools, and next steps like advanced services, distributed OSGi, and integrating with other technologies like Spring and SCA.
This document discusses building scalable web applications. It covers topics like common database bottlenecks, using asynchronous tasks like Celery to improve performance, and building an API to optimize access to data stored across multiple databases and caches. The document provides examples of using Django, Redis, and other tools to architect a Twitter-like application called Tweeter to be scalable from the start.
This document summarizes lessons learned from issues that arose with the EVA Mobility Unit (EMU) lab at NASA's Neutral Buoyancy Laboratory (NBL). The NBL EMU lab was struggling with quality issues and low employee morale. Through open communication and teamwork between NASA and the contractor, several key lessons were identified: listening to all levels of employees, maintaining morale, and working as a collaborative team. These lessons helped turn the organization around, improving both productivity and employee satisfaction over time.
- Plone's security is handled through AccessControl which checks user roles against security definitions on objects during traversal and before applying methods.
- ClassSecurityInfo declarations are important for defining security on classes and subclasses can cause issues.
- Plone has dealt with CSRF and other vulnerabilities through packages like plone.app.protect and by providing hotfixes that are carefully structured and documented.
This document discusses varieties of self-awareness and their uses in natural and artificial systems. It proposes a conceptual framework for metacognition and natural cognition. The document contains slides for presentations on this topic, including:
- Discussing how to analyze requirements by examining natural and artificial systems to understand design discontinuities.
- Explaining how environments can have agent-relative structure that produces varied information processing demands.
- Outlining a conceptual framework that includes reactive and deliberative architectures in natural systems, with different layers providing varieties of self-awareness.
Where are we going and how are we going to get there?David De Roure
The document discusses the myExperiment virtual research environment for sharing workflows. Some key points:
1. myExperiment is a social network and repository for research workflows and methods. It currently has over 1800 users and hundreds of shared workflows.
2. The site allows fine-grained privacy controls, grouping of related content into "packs", and integration with other systems through federation.
3. Analysis found that most workflows and other content are shared publicly, and some users actively build upon other users' shared workflows. The most viewed workflow has over 1500 views.
4. The principles behind myExperiment's design focus on empowering scientists by enabling new forms of collaboration and sharing without forcing changes to workflows. The
5. Ecosystem Ripple
Effects
Moose in the SCG Eco-
system, made with SPO
Tuesday, June 7, 2011
6. Ecosystem Ripple
Effects
?
?
? ? ? ? ?
?
?
Moose in the SCG Eco-
Evidence?
system, made with SPO
Tuesday, June 7, 2011
7. Evidence from
mailing lists
• In the paper
• Seaside
• Moose
• ...
Tuesday, June 7, 2011
8. Evidence from
mailing lists
Seaside User:
• In the paper
I noticed that the dialog classes
listed below are not in [new version]. I
am wondering if these classes have
• Seaside been dropped, have not been
ported to [new version] or does their
func- tionality exists elsewhere?
• Moose
• ...
Tuesday, June 7, 2011
9. Evidence from
mailing lists
Seaside User:
• In the paper
I noticed that the dialog classes
listed below are not in [new version]. I
am wondering if these classes have
• Seaside been dropped, have not been
ported to [new version] or does their
func- tionality exists elsewhere?
• Moose
Seaside Developer:
• ... They have been dropped. A mail
went out to this list if anybody still
used them and nobody replied. [...]
Personally I donʼt know of any
application that uses these dialogs.
Tuesday, June 7, 2011
10. Evidence from
mailing lists
• In the paper
Moose User:
• Seaside [...] where is MOLabelShape, why
was it deleted?? I use it and now is
gone!!! I even had a specialization
• Moose of it [...]
• ...
Tuesday, June 7, 2011
11. Evidence from
an ecosystem history
Tuesday, June 7, 2011
12. Evidence from
an ecosystem history
• SqueakSource - More than
• 7 years of history
• 2000 projects
• 3000 developers
Tuesday, June 7, 2011
14. Searching for Ripples
• Source: additions, deletions, modifications, deprecations
Tuesday, June 7, 2011
15. Searching for Ripples
• Source: additions, deletions, modifications, deprecations
• Algorithm for deprecation-based-ripples
Tuesday, June 7, 2011
16. Searching for Ripples
• Source: additions, deletions, modifications, deprecations
• Algorithm for deprecation-based-ripples
1. Find all the entities in the ecosystem that were
deprecated
Tuesday, June 7, 2011
17. Searching for Ripples
• Source: additions, deletions, modifications, deprecations
• Algorithm for deprecation-based-ripples
1. Find all the entities in the ecosystem that were
deprecated
2. For each look at all the events that involve that entity
and/or its suggested replacement
Tuesday, June 7, 2011
18. Searching for Ripples
• Source: additions, deletions, modifications, deprecations
• Algorithm for deprecation-based-ripples
1. Find all the entities in the ecosystem that were
deprecated
2. For each look at all the events that involve that entity
and/or its suggested replacement
3. Replacements that happened after the deprecation as
consequences of a ripple
Tuesday, June 7, 2011
19. Top 5 Ripples from The
Case Study
Systematic # of Affected # of Affected
Origin System Deprecated Method
Replacement Systems Developers
System-Support Author initials Author fullName 120 110
Seaside WACanvas bold: WACanvas strong: 61 59
Seaside WASession (...) states 43 47
registerForBackgracking:
Famix-Core FAMIXNamedEntity FAMIXNamedEntity 33 11
packagedIn parentPackage
Kernel ClassDescription metaclass ClassDescription 31 34
theMetaClass
System-Support Utilities authorInitials Author initials 37 45
Kernel Object isKindOf:orOf: 12 24
Collections-Text Text isoToSqueak 18 22
Tuesday, June 7, 2011
20. A Ripple Example
new
ripple
old
add revert
remove
... other
Tuesday, June 7, 2011
21. A Ripple Example
new
ripple
old
add revert
remove
... other
packagedIn
renamed to
parentPackage
Tuesday, June 7, 2011
22. A Ripple Example
new original
old
ripple
add
remove revert
... other
update, revert,
update again
Tuesday, June 7, 2011
26. Conclusions
• Evidence that ecosystem ripple effects can
Tuesday, June 7, 2011
27. Conclusions
• Evidence that ecosystem ripple effects can
• Have a broad impact
Tuesday, June 7, 2011
28. Conclusions
• Evidence that ecosystem ripple effects can
• Have a broad impact
• Have a long life
Tuesday, June 7, 2011
29. Conclusions
• Evidence that ecosystem ripple effects can
• Have a broad impact
• Have a long life
• Developers don’t know their clients
Tuesday, June 7, 2011
30. Conclusions
• Evidence that ecosystem ripple effects can
• Have a broad impact
• Have a long life
• Developers don’t know their clients
• Angry impactees
Tuesday, June 7, 2011
31. Conclusions
• Evidence that ecosystem ripple effects can
• Have a broad impact
• Have a long life
• Developers don’t know their clients
• Angry impactees
• Defensive deprecation
Tuesday, June 7, 2011