Em Direção a um Modelo para Desenvolvimento de Sistemas Computacionais de Qualidade para Aplicações Onivalentes
Resumo
Aplicações computationais atuais e do futuro são marcadas, com uma freqüencia crescente, por características como distribuição, dinamicidade e ubiqüidade. O desenvolvimento de sistemas computacionais de qualidade para aplicações com essas características, chamadas aqui de aplicações onivalentes, demanda uma combinação de requisitos muitas vezes conflitantes ou dependentes entre si. Requisitos de dependabilidade, correção, segurança, escalabilidade e evolutividade fazem parte das necessidades das aplicações onivalentes. Neste artigo discutimos os conflitos gerados pela integração desses diferentes requisitos em um mesmo sistema, e esboçamos as necessidades de um modelo de desenvolvimento de software de qualidade para aplicações onivalentes.Referências
Anderson, R. J. (2001). Security Engineering: A Guide to Building Dependable Distributed Systems. Wiley.
Avizienis, A., Laprie, J.-C., Randell, B., and Landwehr, C. E. (2004). Basic concepts and taxonomy of dependable and secure computing. IEEE Trans. Dependable Sec. Comput., 1(1):11–33.
Barcellos, M. P. and Gaspary, L. P. (2006). Fundamentos, Tecnologias e Tendências rumo a Redes P2P Seguras, pages 187–244. Atualizações em Informática. PUC-Rio, Rio de Janeiro.
Bordini, R. H. and Moreira, Á. F. (2004). Proving BDI properties of agent-oriented programming languages: The asymmetry thesis principles in AgentSpeak(L). Annals of Mathematics and Artificial Intelligence, 42(1–3):197–226. Special Issue on Computational Logic in Multi-Agent Systems.
Burch, J. R., Clarke, E. M., McMillan, K. L., Dill, D. L., and Hwang, L. J. (1992). Symbolic model checking: 1020 states and beyond. Information and Computation, 98(2):142–170.
Cazzola, W., Chiba, S., Coady, Y., and Saake, G., editors (2006). Proceedings of RAM-SE’06, 3rd ECOOP Workshop on Reflection, AOP and Meta-Data for Software Evolution Nantes, France, 4th of July.
Clarke, E., Grunberg, O., and Peled, D. (2000). Model Checking. MIT Press.
Cota, É. and Liu, C. (2006). Constraint-driven test scheduling for NoC-based systems. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 25:2465–2478.
Davidoff, S., Lee, M. K., Yiu, C., Zimmerman, J., and Dey, A. K. (2006). Principles of smart home control. In Ubicomp 2006, LNCS 4206, pages 19–34.
Défago, X., Schiper, A., and Urbán, P. (2004). Total order broadcast and multicast algorithms: Taxonomy and survey. ACM Comput. Surv., 36(4):372–421.
Devanbu, P. T. and Stubblebine, S. (2000a). Cryptographic verification of test coverage claims. IEEE Transactions on Software Engineering, 26(2):178–192.
Devanbu, P. T. and Stubblebine, S. (2000b). Software engineering for security: a roadmap. In International Conference on Software Engineering, Proceedings of the Conference on the Future of Software Engineering, pages 227–239. ACM Press.
Douceur, J. R. (2002). The sybil attack. In Peer-to-Peer Systems: First International Workshop, IPTPS 2002 Cambridge, MA, USA, March 7-8, 2002. Revised Papers, pages 251–260. Springer Berlin / Heidelberg.
Duchien, L., D’Hondt, M., and Mens, T., editors (2006). Proceedings of the International ERCIM Workshop on Software Evolution, Lille, France, 6-7th of April.
Elnozahy, E. N., Alvisi, L., Wang, Y.-M., and Johnson, D. B. (2002). A survey of rollback-recovery protocols in message-passing systems. ACM Comput. Surv., 34(3):375–408.
Eugster, P. T., Guerraoui, R., Kermarrec, A.-M., and Massoulié, L. (2004). Epidemic information dissemination in distributed systems. IEEE Computer, 37(5):60–67.
Frantz, A. P., Kastensmidt, F. L., Carro, L., and Cota, É. (2006). Dependable network-on-chip router able to simultaneously tolerate soft errors and crosstalk. In Proceedings of the IEEE International Test Conference.
Gärtner, F. C. (1999). Fundamentals of fault-tolerant distributed computing in asynchronous environments. ACM Comput. Surv., 31(1):1–26.
Hill, M. D. (1990). What is scalability? SIGARCH Comput. Archit. News, 18(4):18–21.
Hoare, C. A. R. (1969). An axiomatic basis for computer programming. Commun. ACM, 12(10):576–580.
ISC (2007). Internet domain survey. Internet system consortium. [link].
Jacques-Silva, G., Drebes, R. J., Gerchman, J., da Trindade, J. M. F., Weber, T. S., and Jansch-Pôrto, I. (2006). A network-level distributed fault injector for experimental validation of dependable distributed systems. In COMPSAC (1), pages 421–428.
Jones, C. (1990). Systematic Software Development using VDM. Prentice Hall, 2nd edition.
Lodderstedt, T., Basin, D., and Doser, J. (2002). SecureUML: A UML-based modeling language for model-driven security. In UML 2002 - The Unified Modeling Language: 5th International Conference, Dresden, Germany, September 30 - October 4, 2002. Proceedings, pages 426–441. Springer Berlin / Heidelberg.
Mendizabal, O., Dotti, F., and Ribeiro, L. (2005). Stochastic object based graph grammars. In 8th Brazilian Symposium on Formal Methods (SBMF), pages 128–143.
Rana, O. F. and Stout, K. (2000). What is scalability in multi-agent systems? In AGENTS ’00: Proceedings of the fourth international conference on Autonomous agents, pages 56–63, New York, NY, USA. ACM Press.
Ribeiro, L., Dotti, F. L., Santos, O., and Pasini, F. (2006). Verifying object-based graph grammars: An assume-guarantee approach. Software and Systems Modeling, 5:289–312.
Saito, Y. and Shapiro, M. (2005). Optimistic replication. ACM Comput. Surv., 37(1):42–81.
Sancho, J. C., Barker, K. J., Kerbyson, D. J., and Davis, K. (2006). Quantifying the potential benefit of overlapping communication and computation in large-scale scientific applications. In SC 2006.
Stallings, W. (2002). Network Security Essentials. Prentice Hall, 2nd edition.
TOP 500 (2006). TOP500 Supercomputer Sites. [link].
Vieira, R., , Moreira, Á. F., Wooldridge, M., and Bordini, R. (2007). On the formal semantics of speech-act based communication in an agent-oriented programming language (aceito para publicação). Journal of Artificial Intelligence Research.
Weiser, M. (1993). Some computer science issues in ubiquitous computing. Commun. ACM, 36(7):74–84.
Wing, J. M. (1998). A symbiotic relationship between formal methods and security. In Computer Security, Dependability and Assurance: From Needs to Solutions. Proceedings, pages 26–38. IEEE Computer Society Press.
Avizienis, A., Laprie, J.-C., Randell, B., and Landwehr, C. E. (2004). Basic concepts and taxonomy of dependable and secure computing. IEEE Trans. Dependable Sec. Comput., 1(1):11–33.
Barcellos, M. P. and Gaspary, L. P. (2006). Fundamentos, Tecnologias e Tendências rumo a Redes P2P Seguras, pages 187–244. Atualizações em Informática. PUC-Rio, Rio de Janeiro.
Bordini, R. H. and Moreira, Á. F. (2004). Proving BDI properties of agent-oriented programming languages: The asymmetry thesis principles in AgentSpeak(L). Annals of Mathematics and Artificial Intelligence, 42(1–3):197–226. Special Issue on Computational Logic in Multi-Agent Systems.
Burch, J. R., Clarke, E. M., McMillan, K. L., Dill, D. L., and Hwang, L. J. (1992). Symbolic model checking: 1020 states and beyond. Information and Computation, 98(2):142–170.
Cazzola, W., Chiba, S., Coady, Y., and Saake, G., editors (2006). Proceedings of RAM-SE’06, 3rd ECOOP Workshop on Reflection, AOP and Meta-Data for Software Evolution Nantes, France, 4th of July.
Clarke, E., Grunberg, O., and Peled, D. (2000). Model Checking. MIT Press.
Cota, É. and Liu, C. (2006). Constraint-driven test scheduling for NoC-based systems. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 25:2465–2478.
Davidoff, S., Lee, M. K., Yiu, C., Zimmerman, J., and Dey, A. K. (2006). Principles of smart home control. In Ubicomp 2006, LNCS 4206, pages 19–34.
Défago, X., Schiper, A., and Urbán, P. (2004). Total order broadcast and multicast algorithms: Taxonomy and survey. ACM Comput. Surv., 36(4):372–421.
Devanbu, P. T. and Stubblebine, S. (2000a). Cryptographic verification of test coverage claims. IEEE Transactions on Software Engineering, 26(2):178–192.
Devanbu, P. T. and Stubblebine, S. (2000b). Software engineering for security: a roadmap. In International Conference on Software Engineering, Proceedings of the Conference on the Future of Software Engineering, pages 227–239. ACM Press.
Douceur, J. R. (2002). The sybil attack. In Peer-to-Peer Systems: First International Workshop, IPTPS 2002 Cambridge, MA, USA, March 7-8, 2002. Revised Papers, pages 251–260. Springer Berlin / Heidelberg.
Duchien, L., D’Hondt, M., and Mens, T., editors (2006). Proceedings of the International ERCIM Workshop on Software Evolution, Lille, France, 6-7th of April.
Elnozahy, E. N., Alvisi, L., Wang, Y.-M., and Johnson, D. B. (2002). A survey of rollback-recovery protocols in message-passing systems. ACM Comput. Surv., 34(3):375–408.
Eugster, P. T., Guerraoui, R., Kermarrec, A.-M., and Massoulié, L. (2004). Epidemic information dissemination in distributed systems. IEEE Computer, 37(5):60–67.
Frantz, A. P., Kastensmidt, F. L., Carro, L., and Cota, É. (2006). Dependable network-on-chip router able to simultaneously tolerate soft errors and crosstalk. In Proceedings of the IEEE International Test Conference.
Gärtner, F. C. (1999). Fundamentals of fault-tolerant distributed computing in asynchronous environments. ACM Comput. Surv., 31(1):1–26.
Hill, M. D. (1990). What is scalability? SIGARCH Comput. Archit. News, 18(4):18–21.
Hoare, C. A. R. (1969). An axiomatic basis for computer programming. Commun. ACM, 12(10):576–580.
ISC (2007). Internet domain survey. Internet system consortium. [link].
Jacques-Silva, G., Drebes, R. J., Gerchman, J., da Trindade, J. M. F., Weber, T. S., and Jansch-Pôrto, I. (2006). A network-level distributed fault injector for experimental validation of dependable distributed systems. In COMPSAC (1), pages 421–428.
Jones, C. (1990). Systematic Software Development using VDM. Prentice Hall, 2nd edition.
Lodderstedt, T., Basin, D., and Doser, J. (2002). SecureUML: A UML-based modeling language for model-driven security. In UML 2002 - The Unified Modeling Language: 5th International Conference, Dresden, Germany, September 30 - October 4, 2002. Proceedings, pages 426–441. Springer Berlin / Heidelberg.
Mendizabal, O., Dotti, F., and Ribeiro, L. (2005). Stochastic object based graph grammars. In 8th Brazilian Symposium on Formal Methods (SBMF), pages 128–143.
Rana, O. F. and Stout, K. (2000). What is scalability in multi-agent systems? In AGENTS ’00: Proceedings of the fourth international conference on Autonomous agents, pages 56–63, New York, NY, USA. ACM Press.
Ribeiro, L., Dotti, F. L., Santos, O., and Pasini, F. (2006). Verifying object-based graph grammars: An assume-guarantee approach. Software and Systems Modeling, 5:289–312.
Saito, Y. and Shapiro, M. (2005). Optimistic replication. ACM Comput. Surv., 37(1):42–81.
Sancho, J. C., Barker, K. J., Kerbyson, D. J., and Davis, K. (2006). Quantifying the potential benefit of overlapping communication and computation in large-scale scientific applications. In SC 2006.
Stallings, W. (2002). Network Security Essentials. Prentice Hall, 2nd edition.
TOP 500 (2006). TOP500 Supercomputer Sites. [link].
Vieira, R., , Moreira, Á. F., Wooldridge, M., and Bordini, R. (2007). On the formal semantics of speech-act based communication in an agent-oriented programming language (aceito para publicação). Journal of Artificial Intelligence Research.
Weiser, M. (1993). Some computer science issues in ubiquitous computing. Commun. ACM, 36(7):74–84.
Wing, J. M. (1998). A symbiotic relationship between formal methods and security. In Computer Security, Dependability and Assurance: From Needs to Solutions. Proceedings, pages 26–38. IEEE Computer Society Press.
Publicado
30/06/2007
Como Citar
MOREIRA, Álvaro; COTA, Érika; RIBEIRO, Leila; GASPARY, Luciano; CARRO, Luigi; RITT, Marcus; WEBER, Taisy.
Em Direção a um Modelo para Desenvolvimento de Sistemas Computacionais de Qualidade para Aplicações Onivalentes. In: SEMINÁRIO INTEGRADO DE SOFTWARE E HARDWARE (SEMISH), 34. , 2007, Rio de Janeiro/RJ.
Anais [...].
Porto Alegre: Sociedade Brasileira de Computação,
2007
.
p. 2262-2276.
ISSN 2595-6205.
