1 / 42

Building Software Ecosystems from a Reuse Perspective

Building Software Ecosystems from a Reuse Perspective. Cláudia Werner System Engineering and Computer Science Department Federal University of Rio de Janeiro – Brazil. International Co-operation. Teaching. Stricto Sensu Graduate Level. Universities Companies. COPPE’s Objectives.

janine
Download Presentation

Building Software Ecosystems from a Reuse Perspective

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Building Software Ecosystems from a Reuse Perspective Cláudia Werner System Engineering and Computer Science Department Federal University of Rio de Janeiro – Brazil

  2. International Co-operation Teaching Stricto Sensu Graduate Level • Universities • Companies COPPE’s Objectives Lato Sensu Graduate Level Extension Courses Undergraduate Level Projects Technological Evaluations Research Solutions to Management Problems Basic Process and Product Technology Development Management Training Applied Spin-Off Companies

  3. Metallurgical and Materials Engineering Ocean Engineering Energy Planning Operations Research / Production Engineering Chemical Engineering Systems and Computer Engineering Transport Engineering 12 Graduate Programmes Biomedical Engineering Civil Engineering Electrical Engineering Departments Mechanical Engineering Nuclear Engineering

  4. 342 Faculty 100% PhD/DSc 100% Full Time Personnel 330 Technical and Administrative Staff 2.479 Students 12% Support 1.509 MSc 61% High School Graduates 970 DSc 27% University Graduates

  5. Systems and Computer Engineering Department was created in 1970 • One of the best CS Graduate program in Brazil • Level 7 (CAPES) • 5 out of 12 best CS researchers in Brazil (CNPq Fellowship) • 36 Professors, 400 students, 1000 graduate alumni

  6. Outline • Introduction • Brechó Repository • Brechó-VCM • Odyssey/Share • From SPL to SECOs • Conclusion • Next Steps • References

  7. Introduction • “Software Ecosystems (SECOs) involve various stakeholders interacting with a shared market for software and services, exchanging information, resources and artifacts within a common technological platform.” • Software Reuse Approaches • Component-Based Development (CBD) • Service-Based Development (SBD) • Software Product Line (SPL) • Software Reuse Repository 07/09/2014 Cláudia Werner - IWSECO'09 11

  8. Introduction Software Engineering Challenges Incorporation of economic aspects during the software development Uncertainty in decision making Existent technological resources Experience and industry Strategic area Creation of a earned value Cláudia Werner - IWSECO'09 12

  9. Introduction In the CBD context Lack of available components and distribution channels Business models, tool support, and intellectual property In Brazil, a study for achieving a mature market A new strategy: Value-Based Software Engineering (VBSE) To consider all facets of value for components and how they can change and evolve amongst the success-critical perspectives of stakeholders regarding value in a value chain Cláudia Werner - IWSECO'09 13

  10. Brechó Repository • Basic functionalities • Documentation, storage, publications, search and retrieval of software components • Advanced functionalities for both commercial and non-commercial purposes • Contract management, component pricing and evaluation, mechanisms for marketing and negotiation • Component usage: • Physical and as a service 07/09/2014 Cláudia Werner - IWSECO'09 14

  11. Brechó-VCM costs needs flexibility requirements Definition of VALUE time benefits risks opportunities RESEARCH GOAL To develop a value-based approach to understand market movements (in distribution channels), through financial and visualization mechanisms to support a marketplace based on information extracted from historical data and with focus on stakeholders’ decisions Cláudia Werner - IWSECO'09 15

  12. Brechó-VCM ... Some considerations about the CBD market Component value can be limited Components can be replicated infinitely and easily Stakeholders can play different roles Markets can be collaborative A centralizing entity (repository) can charge for trades Initially, the ratio between business amount and sold components is low Component financial flow will probably not be high Reputation system is important in a heterogeneous market Cláudia Werner - IWSECO'09 16

  13. Brechó-VCM Value chain for CBD Cláudia Werner - IWSECO'09 17

  14. Brechó-VCM Reusable assets Reusable assets producers consumers Analyzing and maintaining the market through the library Managing the reusable assets and organizing the library Business managers Library managers Artifacts acquisition, supply verification, maintenancerecommendations, evaluation, negotiation… Artifacts pricing, market analysis, components maintenance, demand verification, evaluation, negotiation… Services and Components Distribution Channel Identify outliers artifacts, extract information, provide definition of value, maintain demand and supply dynamics...

  15. Brechó-VCM • Underlying mechanisms 07/09/2014 Cláudia Werner - IWSECO'09 19

  16. Brechó 20

  17. Brechó • Documentation • Dynamic and configurable templates • Categories • Construction like a mosaic 07/09/2014 Cláudia Werner - IWSECO'09 21

  18. Brechó 07/09/2014 Cláudia Werner - IWSECO'09 22

  19. Internal Structure 23

  20. Reuse Map Holds information about contracts between producers and consumers. 24

  21. Pricing Mechanism 25

  22. Component Evaluation 26

  23. Services 27

  24. Odyssey/Share • Main objectives: • Provide a domain-based software reuse environment • Support SPL and CBD • Support collaborative development activities of small groups • Focus on coordination, cooperation and sharing of documents 07/09/2014 Cláudia Werner - IWSECO'09 28

  25. Application Engineer Domain Engineer Domain Expert Domain Models Specification and Evolution Tools Domain Agent Tools Naviagation Agent • Requirements Elicitation Tool • Documentation Tool • OO Diagram Editor Critiquing Agents Hypermedia Interface Conceptual Models Conceptual Models Domain Patterns System CBD Models Domain Models Software Product Line Architecture Architectural and Design Patterns System Concrete Application Architectures Framework Reusable Components Set Application Components Mediator Layer General Structure Domain engineering and Application tools Domain models at different levels Persistency level Repository Y … Repository X Brechó Repository

  26. Domain Conceptual Model Features Model Functional Model Domain Pattern Name: Proposition ........... trace Proposition Proposition Presentation Analysis Pattern Name: ......... trace trace trace Related CBD Models Type Model Use Cases Use Case: Name: Heart Attack Diagnosis ........... ....... Description: pain onarms, headache.... Use Case: Name: Heart Attack Diagnosis ........... ....... Description: pain onarms, headache.... trace trace Use Case: Name: Heart Attack Diagnosis ........... ....... Description: pain onarms, headache.... Use Case: Name: Present Proposition ........... ....... Description: Class Models Component Model trace Models Traceability

  27. <<Functional>> Alarm Clock Setting <<Functional>> Image Capturing <<Domain Technology>> Image Device <<Conceptual>> Monofonic RingTones <<Conceptual>> Polyfonic RingTones X X <<implemented by>> <<Functional>> Vibrating Alert <<Conceptual>> Alarm Clock <<Conceptual>> Camera <<Conceptual>> RingTones <<Conceptual>> Game R <<Functional>> Call Receiving <<Conceptual>> Snake <<Conceptual>> Car Racer <<Conceptual>> Cell Phone <<Conceptual>> Phone Book <<communication link>> <<Functional>> Call Searching <<Conceptual>> Ring <<Conceptual>> Message Device <<Functional>> Phone Book Organising <<actor>> User R <<implemented by>> <<Functional>> Ring Setting <<implemented by>> <<Implementation Technique>> Search Algorithms <<Domain Technology>> Sound Device <<Functional>> Dialed Call Searching <<Functional>> Received Call Searching X_1 X_1

  28. Workflow Engine 32

  29. Awareness Components

  30. Communication System 34

  31. From SPLs to SECOs Source: Jan Bosch’s SBQS’09 Keynote 07/09/2014 Cláudia Werner - IWSECO'09 35

  32. From SPLs to SECOs • Our group’s experience: • Co-developers of Odyssey: UFJF, PUC-RS, UF-Fluminense, UFF • Odyssey’s users: UFRJ, UFC, UFF • Brechó’s users: UFRJ, UFPA, UFF • Support tools: Configuration Management (SVN) and Change Control (Bugzilla) • E-mailing lists: Odyssey-dvlp and Brechó-dvlp • Developers’ Workshops • Open source development / Communities of practice • Odyssey-light + plug-ins: Dynamic loading (late biding trend) • Increase on the importance of user contribution 07/09/2014 Cláudia Werner - IWSECO'09 36

  33. Conclusion The evolution of Reuse approaches will naturally lead to Software Ecosystems Brechó-VCM supports a value-based component marketplace Odyssey/Share supports a collaborative SPL development Work in progress: Evolution of SPLs Dynamic SPLs Context Management Future Work: Evolution of Brechó-VCM to support SECOs… Cláudia Werner - IWSECO'09 37

  34. Next Steps • Observe people (psychology approach, social networks) • Study Bio-systems, SBD and self-healing software • Develop innovative, flexible and evolvable software • New software engineering techniques/methods (?): • User-centric • Global development • Agile • Challenge: get simple and customizable solutions • Economically viable • Are we getting somewhere?… 07/09/2014 Cláudia Werner - IWSECO'09 38

  35. API-based Cloud Ecosystems Bala Iyer, http://www.softwareecosystems.com 39

  36. References BASS, L., BUHMAN, C., COMELLA-DORDA, S., LONG, F., ROBERT, J., SEACORD, R. and WALLNAU, K. 2000. Market Assessment of Component-Based Software Engineering. Technical Report CMU/SEI-2001-TN-007, 33p. BOEHM, B. 2003. Value-Based Software Engineering. Software Engineering Notes 28, 2 (March), 1-12. BOEHM, B. and SULLIVAN, K. J. 2000. Software Economics: A Roadmap, In: The Future of Software Engineering, Proceedings of the 22nd ICSE, Limerick, Ireland, 319-344. BRECHÓ. 2009. Brechó Project: Software Component and Service Library. Software Reuse Team, COPPE/UFRJ, http://reuse.cos.ufrj.br/brecho. ODYSSEY. 2009. Odyssey Project: Software Reuse Environment. Software Reuse Team, COPPE/UFRJ, http://reuse.cos.ufrj.br/odyssey. 40 Cláudia Werner - IWSECO'09

  37. References FAVARO, J. M., FAVARO, K. R. and FAVARO, P. F. 1998. Value Based Software Reuse Investment. Annals of Software Engineering 5, 1, 5-52. MILI, A., MILI, R. and MITTERMEIR, R. T. 1998. A Survey of Software Reuse Libraries. Annals of Software Engineering 5, January, 349-414. SAMETINGER, J. 1997. Software Engineering with Reusable Components, 1. ed., Springer-Verlag, 272p. JANSEN, S., FILKELSTEIN, A. and BRINKKEMPER, S. 2009. A sense of Community: A research agenda for Software Ecosystems. ICSE 2009. BOSCH, J. 2009. From Software Product Lines to Ecosystems. SPLC 2009. Cláudia Werner - IWSECO'09 41

  38. THANK YOU! Cláudia Werner werner@cos.ufrj.br http://reuse.cos.ufrj.br Building Software Ecosystems from a Reuse Perspective

More Related