center for systems and software engineering nenad medvidovic director, csse computer science...
Post on 19-Dec-2015
220 views
TRANSCRIPT
Center for Systems and Software Engineering
Nenad MedvidovicDirector, CSSE
Computer Science Department Viterbi School of Engineering
University of Southern [email protected]
http://csse.usc.edu/~neno/
History and Mission• CSE Established in 1993• Merged in 2006 with SAE to form CSSE• Intended to provide an environment for research
and teaching – large-scale software design and development processes– generic and domain specific software architectures– software engineering tools and environments– collaborative system design– the economics of software engineering
• Objective is to solve problem of academic as well as industrial relevance
Affiliates• Currently 34 industrial affiliates
– 12 from commercial industry– 8 from aerospace industry– 6 from the Government– 6 FFRDCs and Consortia– 2 international
• Additionally– 3 visiting associates– 5 university affiliates
• Two closely affiliated research centers– SERC– CAST
Academics
• Over 30 PhDs conferred since inception• MSCS with emphasis in SE• Graduate Certificate in SAE• Two Certificate and Advanced Degree
programs– Systems and System-of-Systems Architecting– Software Architecture
Focus Areas in Software Engineering
• Architecture• Economics• Process• Testing & analysis
Software Architecture Research• Modeling
– xADL– UML– FSP– MTS– Crystal growth
• Analysis– Reliability– Availability– Energy Consumption– Memory Usage– Latency– …
Software Architecture Research• Implementation
– Architectural frameworks/middleware
• Deployment– QoS-based optimization
• Dynamic adaptation– Policy-driven
• Architectural styles• Software connectors• Architectural recovery
– Syntactic vs. semantic– Architectural smells
Software Architecture Research- Domains -
• Hand-held computing• Embedded systems• WSNs• Robotics• Grid• Scientific computing• Biologically-inspired computing
Sample Project 1MIDAS – Architecting Embedded and Mobile Systems
Sample Project 2GLIDE – Revisiting the Architecture of the Grid
Sample Project 3Mahjong – Emulating Crystal Growth on the Internet
?
cv0v100 0 0 01 1 1 1 1 ¬vc¬v ¬v ¬vc¬v ¬vv|
11
00
??
||0
0
0 0 0 0 0 0
c
c
v ?
c
c
¬v ?
0
*0
*0 0
*0
0
0 *0
0
0
v v
0
0
0 0OK
*0¬
v
¬v
OK
OK
v v
OK
OK
0 0
OK
OK
0 0
OK
OK
1 10
0
¬v
¬v
c
cv ?
c
c
0 0
c
c
0 0
c
c
1 1
c
c
0 0
c
c
1 1
c
c
0 0
c
c
0 0
c
c
1 1
c
c
v v
c
c
¬v
¬v
c
c
0 0
c
c
0 0
c
c
v v
c
c
1 1
c
c
0 0
c
c
0 0
c
c
1 1
c
c
v v
c
c
¬v
¬v
c
c
0 0
c
c
0 0
c
c
v v
c
c
1 1
c
c
0 0
*v
v
v v
*¬v
¬v
¬v
¬v
v
v
¬v
¬v
¬v
¬v
v v
v
v
0 0
¬v
¬v
0 0
v
v
1 1
¬v
¬v
1 1
v
*v
*0 0
¬v
*¬v
*1 1
v
v0 0
*v
v
v v
v
*v
*0 0
v
v
1 1
*v
v
v v
v
v
¬v
¬v
v
v0 0
v
v
1 1
v
*v
*0 0
v
v
0 0
*v
v
v v
v
*v
*0 0
v
v
1 1
*v
v
v v
v
v
¬v
¬v
v
v
0 0
v
v
1 1
v
*v
*0 0
v
v
0 0
*v
v
v v
v
*v
*0 0
v
v
1 1
¬v
¬v
0 0
¬v
¬v
0 0
¬v
¬v
v v
¬v
¬v
0 0
*¬v
¬v
¬v
¬v
¬v
¬v
v v
¬v
¬v
0 0
¬v
¬v
1 1
¬v
*¬v
*1 1
¬v
¬v
0 0
¬v
¬v
0 0
¬v
¬v
v v
¬v
¬v
0 0
*¬v
¬v
¬v
¬v
¬v
¬v
v v
¬v
¬v
0 0
¬v
¬v
1 1
¬v
*¬v
*1 1
¬v
¬v
0 0
¬v
¬v
0 0
¬v
¬v
v v
¬v
¬v
0 0
*¬v
¬v
¬v
¬v
¬v
¬v
v v
¬v
¬v
0 0
¬v
¬v
1 1
¬v
*¬v
*1 1
¬v
¬v
0 0
¬v
¬v
0 0
¬v
¬v
v v
¬v
¬v
0 0
*¬v
¬v
¬v
¬v
¬v
¬v
v v
¬v
¬v
0 0
¬v
¬v
1 1
¬v
*¬v
*1 1
¬v
¬v
0 0
¬v
¬v
0 0
¬v
¬v
v v
¬v
¬v
0 0
*¬v
¬v
¬v
¬v
¬v
¬v
v v
¬v
¬v
0 0
¬v
¬v
1 1
¬v
*¬v
*1 1
¬v
¬v
0 0
¬v
¬v
0 0
¬v
¬v
v v
¬v
¬v
0 0
0
0
v v
*0
0
0 *0
*0
0
0 *00
0
1 *1
1
10 *0
*1
1
1 *1
0
0
v v
1
1
v v
0
*0
*1 1
1
*1
*0 0
0
0
0 0
1
1
0 0
0
01 1
1
1
1 1
OK
*0
v v
OK
OK
0 0
OK
OK
1 *11
1
¬v
¬v
|
|
v
|
|
¬v
|
|
0
|
|
1
c
| ||
OK
|| |
v
| |
¬v
| |
0
| |
1
| |
|
||
v
|| ||
¬v
|| ||
0
|| ||
1
|| ||
*1
|| ||
1
1
0 0
1
1
v v
1
1
0 *0
1
1
1 1
0
0v v
0
0
0 0
0
0
0 0
0
0
¬v
¬v
0
0
v v
0
0
0 0
0
0
1 1
0
0
0 0
0
0
1 10
0
v v
0
0
0 0
0
0
0 0
0
0
¬v
¬v
0
0
v v
0
0
0 0
0
0
0 0
0
0
1 1
1
1
v v
1
1
v v
1
1
0 0
1
1
0 0
1
1
0 0
1
1
0 0
1
1
¬v
¬v
1
1
1 1
1
1
1 1
0
0
v v
0
0
0 0
0
0
0 0
0
0
¬v
¬v
0
0
v v
0
0
0 0
0
0
0 0
0
0
1 1
0
0
v v
0
0
0 0
0
0
0 0
0
0
¬v
¬v
0
0
v v
0
0
0 0
0
0
1 1
0
0
0 0
0
0
1 1
1
1
v v
1
1
v v
1
1
0 0
1
1
0 0
1
1
0 0
1
1
¬v
¬v
1
1
1 1
0
0
v v
0
0
0 0
0
0
0 0
0
0
¬v
¬v
0
0
1 1
*0
0
0 *0
OK
OK
1 1
0
0
1 *1
0
0
v v
0
0
0 0
0
0
0 0
0
0
¬v
¬v
0
0
v v
0
0
0 0
0
0
0 0
0
0
1 1
1
1
v v
1
1
v v
1
1
0 0
1
1
0 0
1
1
0 0
1
1
0 0
1
1
¬v
¬v
1
1
1 1
1
1
1 1
0
0
1 *1
0
0
1 *1
0
0
v v
0
0
0 0
0
0
0 0
0
0
¬v
¬v
0
0
v v
0
0
0 0
0
0
0 0
0
0
1 1
0
0
v v
0
0
0 0
0
0
0 0
0
0
¬v
¬v
0
0
v v
0
0
0 0
0
0
1 1
0
0
0 0
0
0
1 1
*1
1
1 *1
1
*1
*0 0
OK
*0
v v
OK
OK
0 0
1
1
v v
1
1
v v
1
1
0 0
1
1
0 0
1
1
0 0
1
1
¬v
¬v
1
1
1 1
0
0
v v
0
0
0 0
0
0
0 0
0
0
¬v
¬v
0
0
1 1
*0
0
0 *0
OK
OK
1 1
0
*0
*0 0
*0
0
0 *0
0
0
v v
0
0
¬v
¬v
*0
0
0 *0
0
0
v v
0
*0
*1 1
0
0
0 0
0
0
1 1
1
1
v v
1
1
0 0
1
1
0 *0
1
1
¬v
¬v
1
1
v v
1
1
0 0
1
1
1 1
1
1
0 0
*1
1
1 *1
|
|
0
|
|
0
|
|
v
|
|
1
|
|
0
c
| ||
c
| ||
0
|| ||
1
|| ||
0
| |
0
| |
¬v
| |
OK
|| |
¬v
|| ||
0
|| ||
1
|| ||
¬v
| |
0
| |
0
| |
¬v
| |
1
| |
OK
|| |
v
|| ||
0
|| ||
NetworkClient
problem
in1, in2, ...
out1, out2, ... ` `
`
`
Last, but not least!