Title: Architecting an Evolvable System by Iterative Object Process Modeling
1Architecting an Evolvable System by Iterative
Object Process Modeling
- Presented by Ashirul Mubin
- The University of Alabama Graduate School
- Contributors Daniel Ray, Math Computer
Science, University of Virginia - Rezwanur Rahman, Aerospace Engineering, The
University of Alabama
2Problem Scope
- Difficult to foresee future emerging requirements
at the time of large system development - Unable to properly meet the newly emerged
requirements - makes the system to gradually lose its value
- The users become less satisfied customers do
not get proper services - Eventually, the system becomes outdated
- Very costly to replace the entire system
3Objectives
- Enable newly developed large system to sense
current state of evolution - Identify and track the emerging new requirement
changes in specific areas of the system workflow - Deduce the inception time of the next
evolutionary phase from system feedback - Provide as much information/data as necessary to
apply the changes to the system
4Redesign of Systems Comparison
Evolving smaller system by replacements
Evolution of Camry Over last 20 years
Evolution of Sony TV Over last 20 years
Evolution of large system by iterative changes in
system requirements design
Evolve by iteration
Evolve by replacement
Evolve by replacement
Evolve by replacement
5User Satisfaction Index (USI)
- To quantify the system value with level of
satisfaction of the users (and affiliates). - It may also quantify the service-quality to its
customers - Psychological factors are also involved
- A system architect has the freedom to define a
system specific USI - that will most closely quantify its system value
- that will also give correct index of users
overall experiences - USI indicates the value for an instant of time
(time stamped)
6Examples of Quantifying Factors
- Development activity log
- Tracking of update/change history
- Request Inter-arrival time
- Service (wait) time
- System usage activity log
- Data flow control flow patterns
- Component or Feature ranking of
- The existing features
- The newly requested features
- Collecting user experiences suggestions
- On-page feedback
- Periodic surveys
- Changes in system state
- meta-data meta-model
7Behavior of a Traditional System
8Behavior of an Evolvable System
9USI Metrics for Analyzing System Behavior
the general purpose is to guide the Analyzer
throughout an evolvable cycle.
10Evolutionary Factors
the purpose is to provide Decision Support Data
(DSD) to the analyzer but it will vary widely
from system-to-system.
11Iterative Architecture
The wrapper system coordinates three basic stages
that iterate through an evolutionary cycle at the
inception of evolving factors.
12Stage 1 Capturing System Behavior
- Identify system/environmental parameters
- place probing points in system workflow to
collect behavioral data into probing station - Workflow activity pattern
- Change request history
- Request inter-arrival time
- Feature ranking
- Manual feedback/survey
- Establish a system measurement profile
(behavioral data) from the deduced system metrics
to aid computing inception of evolutionary phase,
as well as any needed changes in the system
13Stage 2 Updating System State
- Collected behavioral data is fed into Evolution
Policy Analyzer that updates system states
(system meta-data and system meta-model) - The purpose of the analyzer is to accurately
predict the inception of evolutionary phases by
applying appropriate statistical models - Based on non-parametric Kernel Density Estimation
to predict future probable inter-arrival times - Hypothesis testing for more detail rigorous
testing - Comparative Histograms to show close match of the
prediction with that of the actual data - Running Models from continuously changing data at
each iteration - At each iteration, look for any Transient
Indicators - ? whether steady state is reached after sometime
14Stage 2 (cont.) Statistical Models for the
Analyzer
- The histograms from given data set and estimated
from Kernel Density Estimation technique are
highly correlated. This may help to predict the
efficiency of the system based on Monte Carlo
Simulation.
November 09
THE UNIVERSITY OF ALABAMA, TUSCALOOSA, AL 35487
14
15Stage 3 Applying New Changes
- When the Evolution Policy Analyzer signals the
inception of a new evolutionary phase, the
wrapper system (probing station, meta-data
meta-model) provides necessary specifications for
updating the target system (by service
orientation) - By selecting appropriate tools methodologies
(such as SaaS , integrated architectural approach
4 or reflective arch 5. - Short, gradual incremental updates
- Adjust probing points in the revised workflow
- Keep probes live, attached to appropriate places
in the workflow - Continue collecting data for the upcoming cycles
- Progressively maintain an evolvable system for
its extended life cycle
16Modeling the system using OPCAT
Developed by MIT research affiliates, OPCAT is a
system modeling tool that uses Object Process
Methodology
17General Observation from Empirical Data
- Calculation of USI by quantifying factors
- System development activity log
- Update/change tracking history (inter-arrival
times) - System state at inception time (previous USI)
- Promptness of addressing the requested changes
- Service time (wait time)
- User experiences
- by Surveys On-page feedbacks
- Key indicators
- Request inter-arrival times
- Frequency of update requests
- Collective USI
18Applying Evolutionary Factors
19Conclusion
- Significant benefits can be obtained from a large
evolvable system - Clear insight of the system
- Increased control over maintaining upgrading
the system - Much lower maintenance cost
- Progressively maintain satisfactory system
outcomes - In these days of technological advancements, the
system architects and developers have much wider
freedom for developing evolvable systems - Future Considerations
- Automated ways to update system objects,
processes and codes needs to be investigated
further (tools, like OPCAT) - An in-depth study of environmental and
psychological impact on USI changes for each
iteration will help refine related metrics
identify effective evolutionary factors - Applying further statistical analyses on the
accumulated historical data will direct more
accurate prediction of evolutionary cycles
20Questions?