230 likes | 435 Views
ORION - A Component-Based Software Engineering Environment. Eduardo Almeida esa2@cin.ufpe.br. Agenda. Context Requirements for Component-Based Software Engineering Environments Components of the Orion Environment The Component-Based Software Engineering Environment Summary References.
E N D
ORION - A Component-Based Software Engineering Environment Eduardo Almeida esa2@cin.ufpe.br
Agenda • Context • Requirements for Component-Based Software Engineering Environments • Components of the Orion Environment • The Component-Based Software Engineering Environment • Summary • References
Context • Tools and “Environments” – Operating Systems • Small collections of stand-alone tools • UNIX • Editors, compilers, debuggers • grep, find • Did not provide real means of integrating tools, coordinating their executions, or automating common tasks • Programming Support Environment (PSE) • The first significant efforts in producing tightly integrated development environment • Collections of tools that support coding activities • Some support for task automation • Support only one software engineering activity and its artifacts
Context • Software Engineering Environments (SEE) • Identification of the need for integrated support for software engineering activities {motivation} • Integrated collections of tools that facilitate software engineering activities – across the software lifecycle • Traceability • Process-centered Software Engineering Environment (PSEE) • Hypothesis – Software engineering process – piece of software • Need for semi-automated support for the software process
Requirements for Component-Based Software Engineering Environments • Tool integration • Platform integration • Data integration • Presentation integration • Control integration • Process integration • Support for Component-Based Software Engineering activities • Domain Engineering • Component-Based Development • Reusability • Referential Integrity • Software Configuration Management (SCM) • Multiple Views of Information • Security • Technology and Language Independence
Components of the Orion Environment • MVCASE • JADE (JAVA DESIGNER) • MoDPAI • JAMP Platform • Repository • Incremental Process Model (IPM)
XMI <XMI.content> ... <Class ...> <Element.name>Frame1</Element.name> ... <Method ...> <Element.name>Frame1</Element.name> <Method.visibility xmi.value="public"/> </Method> <Attribute ...> <Element.name>counter</Element.name> <Attribute.visibility xmi.value="public"/> <Attribute.type> <Class xmi.uuid="int"...> </Attribute.type> </Attribute> </Class> </XMI.content> ... JADE
Network MoDPAI SNMP / PING Requests MoDPAI
CASE Tools XMI XMI XMI Middleware Store and search services Artifacts repository - Version Control - Security and Transaction Management XMI XMI XMI Repository
. Development of Distributed Components
Service Order Model Framework Development of Distributed Components Repository MVCASE
MVCASE Repository Distributed Independent Layer DAP Structure Development of Distributed Components
JADE MVCASE (3) XMI Partially-generated code (1) (2) + Repository Added operations (4) XMI Completed code + Development of Distributed Components
Network topology information (XML) MoDPAI (3) (2) MVCASE Physical Network (1) (4) (6) (5) JAMP Development of Distributed Applications
Summary • Tool integration • Platform integration • Data integration • Presentation integration • Control integration • Process integration • Support for Component-Based Software Engineering activities • Reusability • Referential Integrity • Software Configuration Management (SCM) • Multiple Views of Information • Security • Technology and Language Independence • PSEE in CBSE area
References Almeida, E, S.; Bianchini, C, P.; Prado, A, F.; Trevelin, L, C. IPM: An Incremental Process Model for Distributed Component-Based Software Development. In: The 5th International Conference On Enterprise Information Systems (ICEIS), 2003, Angers - França. ACM Press Almeida, E, S.; Bianchini, C, P.; Prado, A, F.; Trevelin, L, C. MVCase: An Integrating Technologies Tool for Distributed Component-Based Software Development. In: The 6Th Asia - Pacific Network Operations and Management Symposium, Proceedings of IEEE, Poster Session, Jeju Island – Korea, 2002. Alves, V., Borba, P., 2001. Distributed Adapters Pattern (DAP): A Design Pattern for Object-Oriented Distributed Applications. In SugarLoafPlop’2001, The First Latin American Conference on Pattern Languages of Programming Bianchini, C.P., ... [et al]. Devices Monitoring Tool using Pervasive Computing and Software Agents. Proceedings of the 2002 International Conference on Security and Management. P 70-74. Las Vegas, Nevada, USA, 2002. Guimarães, M.P. Implementation Design for Cooperative Work Support in JAMP Platform (in portuguese), MSc. Dissertation - Federal University of São Carlos, 2000. Harrison, W., Ossher, H., and Tarr, P. Software Engineering Tools and Environments: A Roadmap. In The Future of Software Engineering. ACM, New York, 2000, 261-277. Heineman, G., T., Councill, W., T., 2001. Component-Based Software Engineering, Putting the Pieces Together, Addison-Wesley. USA. Lüer, C. and Rosenblum, D. S. WREN: An Environment for Component-Based Development. ACM SIGSOFT Software Engineering Notes. Volume 26. Number 5. September 2001. pp. 207-217. Souza, L.F.H. de, Trevelin, L.C. - JAMP Platform and Multimedia Oriented Middleware Services, International Conference on Intelligente Multimedia and Distance Learning Education (ICIMADE'01) June 2001 Fargo, North Dakota, USA.