The document introduces the Component Based Software Production Line (CBSPL) built by Peking University. The CBSPL is a set of integrated tools that support the entire lifecycle of Component Based Software Development. It consists of 8 main tools that support requirements elicitation, domain modeling, meta-modeling, UML modeling, round-trip engineering, component measurement, test case management, and a software resource repository. The tools are designed to work together to facilitate component reuse and improve software quality throughout the development process.
Automating Google Workspace (GWS) & more with Apps Script
Component Based Software OW2 Conference Nov10
1. Introduction of Component Based
Software Production Line
Yasha WANG & Junfeng ZHAO
Peking University, CHINA
25 November, 2010
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
2. Definition of CBSPL
The CBSPL (component based software
production line) built by Peking University is
a set of tools which can be integrated to
support the whole lifecycle of CBSD
(Component Based Software Development).
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
3. Concept Model of CBSPL
Trustie Software Resource Repository
1. Cooperative Requirement Elicitation and 5. Round Trip Engineering Tool: OODIA
Analysis Tool:CRE 6. Component Measurement Tool: PKUMetric
2. Feature Oriented Domain Modeling Tool: FODM 7. Junit Based Test Case Management Tool: Jtop
3. Meta-model Modeling Tool: JB MetaModeler 8. Trustie Software Resource Repository: TSRR
4. UML Modeling Tool: JB UML Modeler
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
4. Tools Supporting the Lifecycle of CBSD
Requirement
1 Cooperative Requirement Elicitation & Analysis Tool
CRE
2 Feature Oriented Domain Modeling Tool
FODM
3 Meta-model Modeling Tool
Design
JB MetaModeler
Management
4 UML Modeling Tool
JB UML Modeler
5 Round Trip Engineering Tool
Imple
ation
ment
OODIA
6 Component Measurement Tool
Evaluation
& Testing
PKUMetric
7 Junit Based Test Case Management Tool
Jtop
8 Trustie Software Resource Repository
TSRR
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
5. Introduction of Tools (1/8)
Cooperative Requirement Elicitation and Analysis Tool: CRE
Requirement Acquirer
Stakeholders cooperate
with each other to elicitate
Client
User
and analysis software
requirements
Developer
Tester
First find out the difference
between current and
Other Stakeholder expecting situations by
Cooperation Between Requirement Modeling establish the models of
Stakeholders Based on Scenarios
current and expecting
scenarios, and then form
current status of goal of the solution by
business business cooperation.
Main Features
Finding Recognizing Stakeholder Cooperation
problems solutions Problem Driven
Problem Driven Requirement Elicitation Scenario Based
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
6. Introduction of Tools (1/8)
Cooperative Requirement Elicitation and Analysis Tool: CRE
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
7. Introduction of Tools (2/8)
Feature Oriented Domain Modeling Tool: FODM
Organizing and modeling
the requirement of a given
domain by feature models
Supporting editing,
customization, verification
and storing of feature models
Features:
feature as the basic unit of
requirement capsulation
Organizing domain
requirements by feature and
relations
supporting reuse by
customizing domain feature
model into application feature
models
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
8. Introduction of Tools (2/8)
Feature Oriented Domain Modeling Tool: FODM
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
9. Introduction of Tools (3/8)
Meta-model Modeling Tool: JB MetaModeler
JB MetaModeler is a GUI
based meta-modeler which
support the construction of
Meta Model domain specific modeling
languages and modeling
Domain tools
Requirements
Meta Modeling Tool
Modeling Modeling Tool JB MetaModeler has been
Tool Generator
verified as a practical tool
Meta-Meta by constructing serveral
Plug-in
Model
Infrastructure modeling tools such as JB
UML Modeler, JB Service
Oriented Modeler , JB
BPEL Modeler and JB QVT
Modeler.
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
10. Introduction of Tools (4/8)
UML Modeling Tool: JB UML Modeler
Supporting UML 2.0
standard
Can build use case
diagram, class
diagram, component
diagram, sequence
diagram etc.
Main features:
good expansibility
(generated by JB
MetaModeler)
powerful document
generation function
(supporting multi-
language document
generation)
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
11. Introduction of Tools (5/8)
Round Trip Engineering Tool: OODIA
OODIA is to maintain the
consistency between
software model and code.
The developer can modify
the model or the code, the
tool can update these
modification to the
corresponding code and
model
The input of OODIA is the
source code and operation
of user editing. The output
is the consistent software
model and code
OODIA is realized as a
plug-in of Eclipse
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
12. Introduction of Tools (6/8)
Component Measurement Tool: PKUMetric
The goal of PKUMetric
is to evaluate the
quality of component in
TSRR
The main metric goal
is focused on Java
language. The tool is
concerned about the
code static quality
attributes, such as the
depth of inheritance,
LOC, McCabe
complexity etc.
PKUMetric is realized
as a plug-in of Eclipse
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
13. Introduction of Tools (7/8)
Junit Based Test Case Management Tool: Jtop
To help developer and
tester manage the test
case of JUnit
Demonstrate the
relation between the
functions of test cases
and the functions of
source codes
Adjust the execution
sequence of test
cases manually
To eliminate and rank
test cases
automatically
Jtop is realized as a
plug-in of Eclipse
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
14. Introduction of Tools (8/8)
Trustie Software Resource Repository
(TSRR)
1 Introduction to TSRR
2 Current Status of TSRR
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
16. The Background of TSRR
Software resources are
diversifying
Function
• From closed, static, code
closed static
• TO open, dynamic, service Class
open dynamic
More and more Web based Software Resource
Repository
development & application R
A
A1
A2
A3
EJB/ A4
The development environment COM B B1
B2
Web
requires Services
• Enhance software quality
• Improve Software reuse
Trust is the belief that the trustor has in the trustee willingness and capability
to deliver a quality of service in a given context and in a given Timeslot.
[Chang 2005]
The Trustie (Trust integrated environment) Software Resource Repository
(TSRR) is to provide mechanism to describe, collect, evaluate, classify and
TSRR
manage software resources’ trustworthiness, to support trust software
development.
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
17. The Goal of TSRR
Provide software resource management mechanism and
software resources sharing environment.
Provide software resources acquisition, organization
and management on Internet.
Provide mechanism to describe, collect, evaluate,
classify and manage software resources’
trustworthiness, to support trust software development.
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
18. The Framework of TSRR
Cooperative developing
Developer User platform
SR
SR Software products
Internet line & tool
Interoperation
Interface Web Access Muti-SR Interoperation External Integration
Layer Interface Interface Interface
management
management
publishing
publishing
Classification
Classification
SR’s trust evaluation
SR’s
retrieving
retrieving
Internet
User
User
SR
SR
SR
SR
SR
SR
Function SR search
Layer Subject feedback Object feedback
engine mechanism mechanism
Code measurement
Code measurement
Collection Tool
Tool for trust
Collection Tool
Tool for trust
Storage security mechanism: backup, recover, access control
QoS
QoS
Storage Software
Layer Code SR Service SR
Tools
2010-11-26
TSRR can
Provide software resources(SR) management mechanism and software resources sharing environment
Provide multi-SRs acquisition, organization and management in Internet
Provide SR’s trust evaluation and classification mechanism
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
19. Main functions of TSRR
Now, TSRR has:
• Software resource publish, retrieval, http://222.240.205.134/index.jsp
classification, user management,
statistics etc.
• Support RAS specification for storing
and managing resources.
• Web Service’s QoS management
subsystem can collect and measure Web
Service’s QoS
• Internet software resources search
engine can harvest resources and their
description, classification information,
etc.
• provide mechanisms to manage
trustworthy software resources and
manage their evaluation information
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
20. Trustworthiness Resource Management
•Evidence model determines
what is needed to collect and
organize the evidence.
Trustworthiness •Evidence gathering module
evaluation
Trustworthiness
collects and stores various
classification
Trustie Software kinds of evidence for
Resource Evaluation Algorithm trustworthy software resource
Repository evaluation.
Domain/User
Expectation Model •Evidence trustworthiness
management module deals
with the situation that the
Evidence Model
Model Publishing
Evidence Trustworthiness management collected evidence is false or
inaccurate.
Evidence gathering
Model verification Evidence storage •Trustworthiness evaluation
and classification uses
Model
Model customization Evidence collection gathered evidence and the
user-defined expectation
User Web Code testing & model to evaluate the
Quality Model feedback Service analysis data
QoS trustworthiness of software
resources.
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
www.trustie.net
21. Facet
Basic Classification
Information
Extended
Information
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
www.trustie.net
22. To upload entity files for the
published resources, requirement,
design, implementation, test,
manual
Trust
Evidence
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
www.trustie.net
23. If possible , publishers
could provide detailed
quality information for their
published resources.
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
www.trustie.net
24. Basic
Information
RAS package
Trust evidence
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
www.trustie.net
25. Project scale
• Environment:
JO2nAS + MySql +Windows/ Linux
Eclipse
• System scale:
EJB
entity beans: 139
session beans:
28 stateless; 29 stateful
LOC: 128,789
Supporting classes and servlet classes
java class: 200
LOC: 50,000
Web pages
JSP file: 78 files
LOC: 20,685
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
26. Homepage on OW2 Forge
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
27. Project introduction
http://websvn.ow2.org/listing.php?repname=tsrr&path=%2Ftrunk%2F&rev=0
Three sub-projects (corresponding to the three modules under svn/trunk )
707Web: Source code of web application. High level view (web pages) and business
logic is implemented in this project. With improvement of the system function, modification
on this project will be performed. This is a web application project under Eclipse. It is relied
by sub-project TSRR. Please refer to referenced-lib under 'Release Files' section for the
lib files it relies.
Change history (As for the limitation of bandwidth, the frequency of updating is limited):
First uploaded in June, 2010
Revised in Nov, 2010.
Complib4Jonas: Source code of EJBs which are in charge of basic business logic
implementation and data persistence. This module seldom needs modification for new
function because it is designed as extensible as possible. It is relied by TSRR. Please refer
to referenced-lib under 'Release Files' section for the lib files it relies.
Change history (As for the limitation of bandwidth, the frequency of updating is limited): :
First uploaded in June, 2010
Revised in Nov, 2010.
TSRR: Enterprise Application Project for Eclipse; It relies on project '707Web' and
'Complib4Jonas'. With this project, an deployable EAR file which can be deployed on
Jonas directly can be exported.
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.
29. Released archives-documentation
Documentation
•TSRR_Introduction_for_OW2 (uploaded in June, 2010)
Introduction document for TSRR. It was used to introduce TSRR on
OW2 forum 2009.
•TSRR-User-Manual (uploaded in Nov, 2010)
Preliminary version of user manual for TSRR
•TSRR-Installation-Guide (uploaded in Nov. 2010)
Installation guide for TSRR. Some artifacts needed to install TSRR are
available on: http://asset.seforge.org/index-en.htm
30. Released archives-documentation
•Archives for deploying TSRR
•Due to the internet bandwidth, we didn’t upload archives with large
size onto the forge. We provide downloading service on our own web
server which can be visited at: http://asset.seforge.org/index-en.htm
31. Thank you !
Merci Beaucoup !
OW2 Annual Conference 2010, November 24-25, La Cantine, Paris.
www.ow2.org.