Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Components Andreas Sjögren Industrial IT group Computer Science Lab MdH.

Similar presentations


Presentation on theme: "Software Components Andreas Sjögren Industrial IT group Computer Science Lab MdH."— Presentation transcript:

1 Software Components Andreas Sjögren Industrial IT group Computer Science Lab MdH

2 Contents Introduction The Research Area –Components –Advantages/disadvantages with Components –Component Technologies –Hot Topics and Future Work The Community –Conferences –Research Groups and Researchers –Seminal Papers and Books Conclusion

3 Introduction From other engineering disciplines –Notations of prefabrication of generic parts and their assembly to form more specific parts Component Based Software Engineering (CBSE) –Realization of systems from reusable parts (components) –Building components Software Architectures –Concerned with the high-level structure of systems –A separate, but close related topic

4 THE RESEARCH AREA

5 Components (i) ”Components are for composition” Ontological point of view: –Everything that can be composed into a composite is a component (i.e. expressions, functions, statements, classes, modules, etc.) Pragmatic point of view: –Only if they form isolatable parts of a deployed solution should they be called components

6 Components (ii) Definition [Szyperski]: –”A component is a unit of composition with contractually specified interfaces and explicit context dependencies only” –”A component can be independently deployed and is a subject to composition by third parties” Components: –Clear specifications of what it provides and requires –Separated from its environment and from other components –Interact with the environment through well-defined interfaces (and possibly platforms assumptions) only

7 Arguments for Components 1.The Baseline Argument –Combining ”make” and ”by” –Organizations can focus on core business 2.The Enterprise Argument –Several products of a Product-Line from a core set of components plus product specific ones 3.The Dynamic Computing Argument –If well-architectured systems can be dynamically extended on demand

8 Disadvantages Change of Organization Takes time and effort to develop reusable components Trade-off between usability and reusability Predictability of Component Compositions The area is still immature Is it a hype?

9 Component Technologies Standards: –CORBA/CCM (OMG) –Java Beans (Javasoft, Sun) –COM/DCOM (Microsoft) –.NET (Microsoft) Disadvantages: –For practical problems –Specifications –Trade-off between: Platform independence (Java Beans) or language independence (.NET, COM)

10 Hot Topics/Future Work Components and architectures Interfaces, object interfaces not enough (Formal) Specifications and verification of Components Web Services Certifications (3 rd parties)

11 THE COMMUNITY

12 Conferences/Workshops ICSE (International Conference of Software Engineering) –CBSE Workshop ESEC (European Software Engineering Conference) APSEC (Asia-Pacific Software Engineering Conference) ECBS (Engineering of Computer Based Systems) OOPSLA (ACM International Conference on OO-systems) ECOP (European Conference on OOP) –Workshop on Component-Oriented Programming Euromicro –CBSE Workshop SERP (Swedish conference on SE Research and Practise)

13 Research groups and Researchers CMU, Pittsburgh, USA –SE-institute: Kurt Wallnau, Judith Stafford –CompSci. Dep.: Dave Garland Heinz Schmidt, Monash University, Australia Ivica Crnkovic, IDt, MdH Jan Bosch, Univ. of Groningen, Holland (BTH) Murali Sitaraman, Clemson University, USA Kung-Kiu Lau, Manchester University Clemens Szyperski, MS Research ABB Corporate Research, Switzerland and Germany Lots of other industrial companies

14 Research groups in Sweden CompSci. Dep., Karlstad University –Semantic Integrity Group SW Research Lab, BTH (Karlskrona/Ronneby) –Software Architectures, Product Lines Industrial Information & Control Systems, KTH –Software Architectures PELAB, IDA, Linköping University –Components and Software Architectures

15 Seminal Papers Szyperski, Component-Oriented Programming, The Oberon Tribune, Oberon Mircosystems, Zürich, Switzerland 1995 Szyperski, Independently Extensible Systems, 19th Australian Computer Science Conference Szyperski, Component Software – a market on the verge of success, The Oberon Tribune, Oberon Mircosystems, Zürich, Switzerland 1997

16 Books Component Software (Beyound Object-Oriented Prog.) –Clemens Szyperski, 1997 Large Scale Component-Based Development –Alan Brown, 2000 Foundations of Component-Based Systems –Leavens and Sitaraman (editors), 2001 Component-Based SE (putting the pieces togheter) –Heineman and Councill (editors), 2001 Building Systems from Commercial Components –Wallnau, Seacord, et al, 2001 Building Reliable Component-Based Systems –Ivica Crnkovic and Magnus Larsson (editors), (tba)

17 Conclusions Pres/Cons +Lots of challenges +Needs for formal methods (at least research) +The group on MdH –Contradictions in the community –”Market-driven” –Microsoft dominance

18 The End QUESTIONS?


Download ppt "Software Components Andreas Sjögren Industrial IT group Computer Science Lab MdH."

Similar presentations


Ads by Google