Practices and Thinking of the Models Practices and Thinking of the - - PDF document

practices and thinking of the models practices and
SMART_READER_LITE
LIVE PREVIEW

Practices and Thinking of the Models Practices and Thinking of the - - PDF document

Bi- -Trans in ABC 2010 Trans in ABC 2010, 15, March, Tokyo, Japan , 15, March, Tokyo, Japan Bi Practices and Thinking of the Models Practices and Thinking of the Models in Trustie E nvironment in Trustie E


slide-1
SLIDE 1

可信 共享 协同 Practices and Thinking of the Models Practices and Thinking of the Models in Trustie E nvironment in Trustie E nvironment

National 863 Grand Project National 863 Grand Project - -

Trustworthy Software Tools and Integration Trustworthy Software Tools and Integration Environment (Trustie) Environment (Trustie)

http://www.trustie.net Yin Gang, NUDT, Yin Gang, NUDT, Changsha Changsha, China , China

Research Secretary of Trustie Project Research Secretary of Trustie Project

Bi Bi-

  • Trans in ABC 2010

Trans in ABC 2010, 15, March, Tokyo, Japan , 15, March, Tokyo, Japan

Source 1: Huaimin Wang, Gang Yin, Trustworthy software evolution in Internet-era, CCCF, 6 (2), pp 28-36. Source 2: Trustie technical specifications and platforms, http://www.trustie.net, 2007-2010. Source 3: BT-in-ABC, 2009, 2008, 2007, and discussions in BT-in-ABC 2010.

可信 共享 协同 Contents Contents

  • Trustie as a Trustworthy Software E

volution E nvironment Trustie as a Trustworthy Software E volution E nvironment

  • Trustie towards a F
  • undation for Model Interaction

Trustie towards a F

  • undation for Model Interaction
slide-2
SLIDE 2

可信 共享 协同 Background of Trustie Background of Trustie

We need Trustworthy Software Systems We need Trustworthy Software Systems large scale complexity dynamic requirements dynamic environments high availability high dependability high performance high adaptability …

Current Status of Technologies and Infrastructures Current Status of Technologies and Infrastructures

Software technologies

  • foundational software technologies
  • application software technologies

Internet technologies

  • communication tools
  • software resources
  • open source communities

Theoretical tools

  • social-networks
  • mathematical statistics

Given enough eyeballs, all bugs are shallow…

ABC ABC

PKU PKU

StarBus StarBus m iddlew are NUDT

m iddlew are NUDT … … … …

可信 共享 协同 One Motivation of Trustie One Motivation of Trustie

Software System Updating

Fault Handling Fault Analysis Defect Testing Defects Reporting Defect Handling Fault Monitoring

Development Evolution Management Runtime Evolution Management

Internet

SourceForge OW2 软件360 GoogleCode Linux Community

Development Evolvement Development Evolvement

Amazon Online Services 淘宝 MySpace eBanks Chains Systems

Runtime Evolvement Runtime Evolvement

Trustworthy software are coming from trustworthy software evolution…

slide-3
SLIDE 3

可信 共享 协同 One Motivation of Trustie One Motivation of Trustie

We believe We believe: :

Enhancing the model interactions between the two evolvement Enhancing the model interactions between the two evolvement stages will lead to efficient trustworthy software evolution, an stages will lead to efficient trustworthy software evolution, and d evolution data and evidences are foundation for these evolution data and evidences are foundation for these interactions. interactions.

key issues in architecture key issues in architecture-

  • based and component

based and component-

  • based

based software engineering include interactions of models, software engineering include interactions of models, such as transformation, mapping, sequentialization, such as transformation, mapping, sequentialization, … …

可信 共享 协同

  • ne Fantasy
  • ne Fantasy –

– Evolvable Evolvable Model Interactions Model Interactions

Models in Development Stages (source) Models in Runtime Stages (target)

Get: update the target models Put: update the source models

interaction rules interaction operations

All these are data consuming…

slide-4
SLIDE 4

可信 共享 协同

Conceptual Trustie Architecture Conceptual Trustie Architecture

Software composition tools Software composition tools

Software

  • config. tools

Software

  • config. tools

Monitoring

  • diag. tools

Monitoring

  • diag. tools

Collaborative develop tools Collaborative develop tools Process mgt tools Process mgt tools Trustworthiness evaluation tools Trustworthiness evaluation tools

Periphery Tools

Runtime EM Development EM

SourceForge OW2 软件360 GoogleCode Linux社区 Amazon Online Services 淘宝 MySpace

Internet

eBanks Chains Systems Community-based Kernel Services

Resource Management Evidence Management Project management Service Management

Management of software repository, and quality evidences Management of software repository, and quality evidences Management of service status, faults and feedbacks Management of service status, faults and feedbacks management of software version and defects management of software version and defects Management of evidences from project data, resource data, service feedbacks Management of evidences from project data, resource data, service feedbacks

Trustie Trustie -

  • Conceptual Blueprint

Conceptual Blueprint Architecture Architecture

可信 共享 协同

SourceForge OW2 软件360 GoogleCode Linux社区 Amazon Online Services 淘宝 MySpace

Internet

eBanks Chains Systems

Practical Trustie Environment Practical Trustie Environment

Trustie common Community Services Trustie common Trustie common Community Community Services Services

技术特征 生产线 技术特征 生产线 服务资源 服务资源 构件资源 构件资源

Trustie SRR Trustie SRR

构件库 服务库 工具库 资源管理 证据管理

Trustie Forge Trustie Forge

软件版本库 缺陷库 项目管理 缺陷管理

Trustie SPLIF Trustie SPLIF

工具仓库 任务管理 生产线管理 生产线配置 可信评估 工具集 可信评估 工具集 服务组合 工具集 服务组合 工具集 协同开发 工具集 协同开发 工具集 应用领域 生产线 应用领域 生产线

www.trustie.net

Trustie Trustie -

  • Current Practical Architecture

Current Practical Architecture Kernel Services and Models Kernel Services and Models: :

(1) Collaboration Software Development (1) Collaboration Software Development (2) Software Resource Management (2) Software Resource Management (3) Framework of Software Production Lines (3) Framework of Software Production Lines (4) (4) Software Trustworthy Evaluation Software Trustworthy Evaluation

Home - http://www.trustie.net

slide-5
SLIDE 5

可信 共享 协同

Kernel data generating Services in Trustie Kernel data generating Services in Trustie Collaboration development environment http://www.trustie.net, http://www.trustie.net/trustie/forge

  • nline project repositories, svn, scm, ci, …, more than 350 projects

communication tools, im, ml, …

可信 共享 协同

Kernel data generating Services in Trustie Kernel data generating Services in Trustie Software resource library http://tsr.trustie.net more than 16,000 software components and services runtime service directories

  • nline software ranking and evaluation
slide-6
SLIDE 6

可信 共享 协同

Kernel data Models in Trustie Kernel data Models in Trustie

Software production line (SPL) The software development environment in which developers, tools and artifacts are orderedly organized and cooperate according to specified software development methods. Technical-features-oriented SPL Heterogeneous-Integration-oriented Component-oriented Service-oriented Monitoring-oriented

Data Flow Control Flow

可信 共享 协同

Kernel data Models in Trustie Kernel data Models in Trustie

Software trustworthy evidence models and specifications Evidences at development stages Evidences at release stages Evidences at application stages

slide-7
SLIDE 7

可信 共享 协同

Trustie Trustie – – Towards Trustworthy Evolution Ecosystem Towards Trustworthy Evolution Ecosystem

Components in Development Environments

(Development Evolvement)

Components in Components in Development Environments Development Environments

(Development Evolvement) (Development Evolvement)

Components in Runtime Software Systems

(Runtime Evolvement)

Components in Runtime Components in Runtime Software Systems Software Systems

(Runtime Evolvement) (Runtime Evolvement)

bug analysis tools social network tools feedback analysis tools bug list… developer Info … test report…

Trustie CDE, SRE Trustie CDE, SRE Tools for statistical data manipulation, mining, … Tools for Tools for statistical statistical data data manipulation, mining, manipulation, mining, … … Software evolution data covering both evolving stages Software evolution data Software evolution data covering both evolving covering both evolving stages stages

可信 共享 协同 Contents Contents

  • Trustie as a Trustworthy Software E

volution E nvironment Trustie as a Trustworthy Software E volution E nvironment

  • Trustie towards a F
  • undation for Model Interaction

Trustie towards a F

  • undation for Model Interaction
slide-8
SLIDE 8

可信 共享 协同

Evolvable Data Center System Evolvable Data Center System

Internet Internet

Application components Monitor components Reconfiguration components

Based upon Trustie ecosystem, how to Based upon Trustie ecosystem, how to enable the model interactions during enable the model interactions during the evolution of such systems ? the evolution of such systems ?

Monitoring Monitoring Reconfiguration Reconfiguration Development Development

可信 共享 协同

Cases and Challenges Cases and Challenges

Internet Internet

How to monitor such system How to reconfigure such system How to evaluate such system and, all in the evolving manner … ? Case 1: monitoring Case 2 - reconfiguration Case 3 - evaluation

slide-9
SLIDE 9

可信 共享 协同

Case 1 Case 1 – – evolving monitoring evolving monitoring

analyze code structure model monitoring requirement generate monitoring probes insert probes into codes

component without monitoring

Source code topology Monitoring requirement Monitoring probes

component with monitoring

Trustie software production integration framework

可信 共享 协同

Case 1 Case 1 – – evolvable monitoring evolvable monitoring

Static Monitoring Probes Model Static Monitoring Probes Model Runtime Monitoring Probes Model Runtime Monitoring Probes Model

update SMPM update RMPM

bug analysis tools social network tools feedback analysis tools bug list developer info test report

Trustie CDE, SRE Trustie CDE, SRE

slide-10
SLIDE 10

可信 共享 协同

Case 1 Case 1 – – evolvable monitoring evolvable monitoring

Static probes model Runtime probes model

Get: configuration into a data center system Put: update of the static probe models

Evaluation & Modification Evaluation & Modification

  • efficiency of the monitor data

efficiency of the monitor data

  • redundant probes

redundant probes

  • comp. with bad reputation
  • comp. with bad reputation
  • comp. with alpha or beta
  • comp. with alpha or beta
  • experiences of admin.

experiences of admin.

Update of probes Update of probes

  • fewer probes

fewer probes

  • more critical probes

more critical probes

  • more efficient patterns

more efficient patterns

bug analysis tools social network tools feedback analysis tools bug list developer info test report

Trustie Core CDE, SRE Trustie Core CDE, SRE

可信 共享 协同

Case 2 Case 2 – – evolvable evolvable reconfiguration reconfiguration

Static Software Architecture Model Static Software Architecture Model Runtime Software Architecture Model Runtime Software Architecture Model

application components

bug analysis tools social network tools feedback analysis tools bug list developer info test report

Trustie Core CDE, SRE Trustie Core CDE, SRE

update RSA update SSA

slide-11
SLIDE 11

可信 共享 协同

Case 2 Case 2 – – evolvable evolvable reconfiguration reconfiguration

Static architecture model Runtime architecture model Get: configuration in data center system Put: updates of the static models

Update of Update of

  • inefficient comp.

inefficient comp.

  • power

power-

  • consuming comp.

consuming comp.

  • runtime relations

runtime relations

Modification Modification

  • comp. with tested errors
  • comp. with tested errors
  • new composition styles

new composition styles

Evaluation & Evaluation & Modification Modification

  • unpred
  • unpred. requests

. requests

  • faults in actual

faults in actual env env. .

  • power saving req.

power saving req.

  • admin experiences

admin experiences

Update of Update of

  • comp. with faults
  • comp. with faults
  • comp. hard to
  • comp. hard to reconfig

reconfig. .

  • inefficient composition style

inefficient composition style

bug analysis tools social network tools feedback analysis tools bug list developer info test report

Trustie Core CDE, SRE Trustie Core CDE, SRE

可信 共享 协同

Case Case 3

3 – – evolving software evaluation evolving software evaluation

slide-12
SLIDE 12

可信 共享 协同

Case Case 3

3 – – evolving software evaluation evolving software evaluation

bug analysis tools social network tools feedback analysis tools bug list developer info test report

Trustie Core CDE, SRE Trustie Core CDE, SRE

Static Software Evidence Model Static Software Evidence Model

Development evidences Requirement evidences Design evidences Source code evidences Test evidences Audit evidences Release evidences Availability evidences Dependability evidences Security evidences Real-time evidences Maintainability evidences Survivability evidences

Runtime Software Evidence Model Runtime Software Evidence Model

Application evidences Application popularity User feedbacks Application scenarios Third-party evaluation

development evidence model Runtime evidence model Mining results Data losses High cost

可信 共享 协同 Conclusion Conclusion

Efficient interactions between the models at different evolution stages are critical for trustworthy software evolution Model interactions are challenging

  • runtime evaluation of the “target” models
  • evolution of the interaction rules or operations
  • requires a huge amount of data generated in evolution processes

Trustie environment - towards a foundation platform for model- based (architecture-based) software engineering

  • specified, structured and interconnected data that records the evolution

processes

  • spectrum of tools manipulating and mining these data
  • there is a long but interesting road for us to go…
slide-13
SLIDE 13

可信 共享 协同

Thank You Thank You ! !

Comments are welcomed Comments are welcomed

Welcome to Welcome to Trustie

Trustie Trustie Trustie

http://www.trustie.net