Spelling suggestions: "subject:"5oftware - desenvolvimento"" "subject:"5oftware - esenvolvimento""
251 |
Sistema auxiliar a projetos de estações de tratamento de esgotos compactas: SAPETECBarros, Hélio Botto de 26 February 2013 (has links)
O lançamento de esgoto não tratado é um dos principais fatores que contribuem para a poluição das águas. O tratamento de esgotos, quando existente, em grande parte dos casos é insuficiente para a remoção satisfatória de poluentes, principalmente para o atendimento aos padrões legais. Dentre os diversos motivos desta ineficiência, destacam-se o desconhecimento da composição efetiva do esgoto bruto de entrada e das eficiências dos processos unitários em diferentes locais de instalação, com alterações de clima, relevo, vegetação, dentre outros. Assim como para outras atividades, os projetos de estações e a seleção dos sistemas de tratamentos de esgoto contemplam um processo trabalhoso e demorado devido à grande quantidade de variáveis que devem ser considerados. A inexistência de modelamento sistêmico para tomada de decisão em projeto relacionados ao tratamento de esgotos dificulta ainda mais este processo. No intuito de atender esta carência, o presente projeto de pesquisa propõe que se elabore uma ferramenta que auxilie a tomada de decisão para projetos de ETE's de pequeno porte, possibilitando com uma consulta rápida, a partir do fornecimento de algumas informações sobre o local de instalação e da população a ser atendida, identificar os processos mais indicados para compor a estação de tratamento. / The release of untreated sewage is a major factor that helps contributing to water pollution. The sewage treatment, if any, in most cases is insufficient for satisfactory removal of pollutants, primarily for compliance with legal standards. Among the many reasons for this inefficiency, it was highlighted the lack of effective composition of raw sewage input and efficiencies of unit processes at different installation sites, with changes in climate, topography, vegetation, among others. As for other activities, projects of stations and selection of wastewater treatment systems include a laborious and time consuming due to the large number of factors that must be considered. The absence of auxiliary systems for decision making on project related to sewage treatment complicates this process. In order to meet this need, this research project proposes to develop a tool of decision making for projects of small WTP's, allowing with a quick query, providing some information about their location and population to be served, identify the processes that best suits to compose the treatment station.
|
252 |
Elaboração de um mapa acústico para a região central de Curitiba e principais vias de acesso ao centro da cidadeAndrade, Fernando Cunha de 30 November 2012 (has links)
Fundação Araucária / O ruído urbano vem sendo cada vez mais uma grande preocupação para a sociedade moderna. Diante disto, este estudo de caso tem como objetivoelaborar um mapa acústico com os níveis de pressão sonora da região central de Curitiba e principais vias de acesso ao centro, a fim de se conhecer quais níveis de ruído estão expostos os cidadãos e trabalhadores e identificar áreas com valores sonoros acima dos permitidos pela legislação. A metodologia adotada para a confecção do mapa acústico desta pesquisa tem como referência a norma NBR 10151, a qual estabelece critérios para os medidores de pressão e para as condições de medição. Na primeira fase foram feitas medições dos níveis de ruído presentes em 416 pontos do centro da cidade e das principais vias de acesso ao mesmo. Posteriormente levantou-se a altura das edificações de toda a região mensurada para confecção do mapa acústico por meio do software CADNAA. Os resultados obtidos foram comparados com a Lei Municipal Ordinária de Curitiba nº 10625, de 19 de dezembro de 2002, a qual define que no período diurno (07h01min até 19h00min) o limite de pressão sonora é de 65dB(A) para a zona central, e mostraram que todos os pontos de medições estavam acima do limite permitido pela referida Lei. Concluiu-se que o mapa acústico é uma ferramenta visual muito interessante para visualização dos níveis de ruído em determinado local e que Curitiba precisa tentar se precaver, pois os valores de ruído encontrados superam o limite de sua Lei municipal. Desta forma recomendam-se ações simples e objetivas como a utilização de motores híbridos para frotas de ônibus e caminhões. / The urban noise has been increasingly becoming a major concern for modern society. Given this, this case study aims to map the acoustic sound pressure levels in the central region of Curitiba and main access roads to the center in order to know what levels of noise exposed workers and citizens identify and areas with sound values above those allowed by law. The methodology adopted for the preparation of this research has acoustic map as a reference to NBR 10151, which establishes criteria for pressure gauges and measurement conditions. In the first phase measurements were made of the noise levels present in 416 points of the city center and the main access routes to it. Later raised the height of buildings across the region to prepare for the measured acoustic map through software CadnaA. The results were compared to Ordinary Curitiba Municipal Law No. 10,625, of December 19, 2002, which states that during the daytime (07h01min 19:00 until) limit sound pressure level is 65dB (A) for the central zone. In conclusion it was found that all points of measurement are above the limit allowed by local law. Thus actions are recommended simple and straight forward as using hybrid engines for trucks and bus fleets.
|
253 |
Melhoria da comunicação no desenvolvimento distribuído de software baseado em Scrum / Improved communication in distributed software development based on ScrumSantos, Leonardo Sanches dos 20 July 2016 (has links)
O desenvolvimento de software entre equipes geograficamente distribuídas tem adquirido relevância devido a interesses das organizações, relacionados a custos de projetos, busca de profissionais multidisciplinares e especializados ou visando ampliar a cobertura de seus clientes, atendendo-os de forma mais globalizada. Porém, apesar dos benefícios existentes, há algumas dificuldades oriundas da distribuição de equipes que são inerentes da dispersão temporal e geográfica. Estas dificuldades incluem as diferenças culturais, linguísticas, temporais entre outras, que comprometem a qualidade da comunicação e consequentemente interferem na compreensão mútua entre as equipes que desenvolvem um mesmo projeto de software. O objetivo deste trabalho é apresentar uma melhoria de um processo de desenvolvimento distribuído de software (DDS), baseado em Scrum, capaz de minimizar as interferências e perdas de informações, descentralização de conhecimentos em pessoas específicas e melhorar no fluxo de comunicação e disseminação das informações. Um caso real foi abordado e para o desenvolvimento deste trabalho o método de pesquisa adotado foi a pesquisa-ação. Neste cenário real haviam problemas originados da comunicação ineficiente entre seus atores e exigiu que o desenvolvimento desta pesquisa tivesse várias iterações e retroalimentações até atingir a maturidade. A melhoria da comunicação foi alcançada e é a principal contribuição deste trabalho. / Software development between geographically distributed teams has acquired relevance due to interests of organizations, project-related costs, looking for multidisciplinary and specialized professionals or aiming to expand the coverage of its customers, serving them in a globalized form. However, despite the existing benefits, there are some difficulties originated from the distribution of teams that are inherent in the temporal and geographic dispersion. These difficulties include the cultural, linguistic, temporal among others, which affect the quality of communication and consequently interfere with the mutual comprehension between the teams which develop the same software project. Thus, the aim of this work is to present an improvement in the process of distributed software development (DSD) based on Scrum, capable to minimize interference and information losses, decentralization of knowledge in specific people and improve the communication flow and dissemination of information. A real case was discussed and as for the development of this work the action research was the approach employed in this study. In this scenario, problems originated from inefficient communication between their actors and demanded that the development of this research present several iterations and feedbacks in order to reach its maturity. Improved communication has been achieved and is the main contribution of this work.
|
254 |
Estudo, desenvolvimento e implementação de algoritmos de aprendizagem de máquina, em software e hardware, para detecção de intrusão de rede: uma análise de eficiência energéticaFrança, André Luiz Pereira de 26 February 2015 (has links)
CAPES; CNPq / O constante aumento na velocidade da rede, o número de ataques e a necessidade de eficiência energética estão fazendo com que a segurança de rede baseada em software chegue ao seu limite. Um tipo comum de ameaça são os ataques do tipo probing, nos quais um atacante procura vulnerabilidades a partir do envio de pacotes de sondagem a uma máquina-alvo. Este trabalho apresenta o estudo, o desenvolvimento e a implementação de um algoritmo de extração de características dos pacotes da rede em hardware e de três classificadores de aprendizagem de máquina (Árvore de Decisão, Naive Bayes e k-vizinhos mais próximos), em software e hardware, para a detecção de ataques do tipo probing. O trabalho apresenta, ainda resultados detalhados de acurácia de classificação, taxa de transferência e consumo de energia para cada implementação. / The increasing network speeds, number of attacks, and need for energy efficiency are pushing software-based network security to its limits. A common kind of threat is probing attacks, in which an attacker tries to find vulnerabilities by sending a series of probe packets to a target machine. This work presents the study, development, and implementation of a network packets feature extraction algorithm in hardware and three machine learning classifiers (Decision Tree, Naive Bayes, and k-nearest neighbors), in software and hardware, for the detection of probing attacks. The work also presents detailed results of classification accuracy, throughput, and energy consumption for each implementation.
|
255 |
A importância dos desenvolvedores de software sob a perspectiva dos supervisoresTangari, Guilherme Costantin 13 February 2015 (has links)
Several technology companies use the amount of deliveries as evaluation metric for
the software developer s performance. This is the classical concept of productivity, and
still is widely used by the companies nowadays. It is also quite common to confuse the
concepts of importance and productivity. But developer s importance for the company,
and more specifically, for the respective team, is not related only with the amount of line
of codes produced. There is a variety of factors that contribute to the relevance of a
developer inside an organization. This work aims to map those factors, measure which
ones has greater influence in today s companies and to propose an evaluation model of
developer s importance that considers more than just deliveries. Sixteen factors, that are
more likely to be used in the developer s importance evaluation, were raised. Among
those factors, we figured out that some are more relevant than others, and that there
is a variation in the most relevant factors when we analyze under the perspective of
different companies or teams. We also built a high accuracy classifier that can identify
the developer s importance based on a series of factors. / Várias empresas de tecnologia usam a quantidade de entregas como métrica de avaliação
de performance de desenvolvedores de software. Esse é o conceito clássico de produtividade,
e ainda é amplamente usado pelas empresas hoje em dia. Também é bastante
comum misturar o conceito de importância com produtividade. Porém, a importância de
um desenvolvedor para a empresa e, mais especificamente, o time em que trabalha não
está apenas relacionado com a quantidade de linhas de código produzidos. Existe uma
variedade de fatores que contribuem para a relevância de um desenvolvedor dentro de
uma organização. Este trabalho visa mapear alguns desses fatores, medir quais possuem
maior influência e propor um modelo de avaliação da importância dos desenvolvedores que
considere mais do que apenas as entregas. Foram levantados dezesseis fatores que mais
tendem a participar da avaliação de importância dos desenvolvedores. Descobriu-se que,
dentre esses fatores, alguns são mais relevantes que os outros, bem como uma variação
nos fatores mais relevantes quando se analisa sob a óptica de uma determinada empresa
ou time. Foi construído também um classificador de alta acurácia que pode indicar a
importância do desenvolvedor baseado em uma série de atributos. / Mestre em Ciência da Computação
|
256 |
Software educativos para o ensino de matemática: desenvolvimento e classificação com base em requisitos pedagógicos de práticas com materiais concretos / Software for teaching mathematics: development and classification based on the educational requirements of practices that employ concrete materialsFigueira-sampaio, Aleandra da Silva 20 January 2012 (has links)
Fundação de Amparo a Pesquisa do Estado de Minas Gerais / In recent years, many educational practices have been based on constructivist principles
which posit that learning is a process in which students build knowledge. Thus, it is common
to use concrete materials to assist in the education of school children. Educational software is
another resource that has led to important changes in the way mathematics is taught and
learned. This study aimed to (1) contribute to the development of mathematics educational
software by building a database of educational requirements that considers educational
practices that employ concrete materials; (2) use the educational requirements of a "doublepan
balance" to develop a computational tool (a virtual double-pan balance ) that would
solve some of the material challenges facing Brazilian teachers and to observe the tool s
affect on the computational aspects of the learning process; (3) conduct a survey to determine
which educational practices employing concrete materials, educational software and software
assessment methodologies are in use by mathematics teachers at the best schools in Brazil;
and (4) create a model to classify mathematics educational software that considers the
requirements of teaching geometry with concrete materials. In order to assist developers and
evaluators of educational software, the database of educational requirements includes twentyseven
requirements on the subject of "Numbers and Operations"; twenty-nine on "Space and
Shape", twenty-three on "Quantities and Measurements" and six on "Data Processing". The
computational tool fulfilled the requirements of Brazilian teachers and increased student
motivation, accountability, dialogue, cooperation, discussion, reciprocity and reflection during
the process of building procedures to solve linear equations. Regarding exploratory practices,
all the mathematics teachers surveyed had adopted teaching strategies that used some kind of
educational material. More specifically, twenty-nine types of concrete materials and twentytwo
types of software were in use. Most of the teachers were using software that had been
recommended by other teachers, found through internet searches or mentioned in textbooks.
None of the teachers mentioned using evaluation methodologies for educational software. The
classification model for mathematics education software was based on the participation of all
involved stakeholders. Thus, the satisfaction (or dissatisfaction) with the presence (or
absence) of a product s requirements was determined. An indicator was used to qualify the
educational software as Basic, Advanced or Superior and each of these categories was
subdivided into three levels of quality. The proposed classification system considers
parameters specific to mathematics education in addition to general educational parameters. / Nos últimos anos, muitas práticas pedagógicas têm sido fundamentadas em princípios
construtivistas. Por esta concepção, a aprendizagem é um processo no qual o sujeito constrói
seu conhecimento. Assim, é comum a utilização de materiais concretos para apoiar a
aprendizagem de crianças em idade escolar. Os software educativos também são recursos
didáticos que vêm provocando importantes mudanças na forma de ensinar e aprender
matemática. Este estudo teve como objetivos (1) construir uma base de dados com requisitos
pedagógicos considerando as práticas pedagógicas com materiais concretos para contribuir
com o desenvolvimento de software educativos de matemática; (2) utilizar os requisitos
pedagógicos definidos pela prática pedagógica com a Balança de Dois Pratos para
desenvolver uma ferramenta computacional, visando solucionar alguns desafios materiais dos
professores brasileiros e verificar como a ferramenta computacional afeta os aspectos
inerentes ao processo de aprendizagem; (3) fazer um levantamento de práticas pedagógicas
com materiais concretos, software educativos e metodologias de avaliação de software
adotados pelos educadores de matemática em colégios de excelência no Brasil; e (4) criar um
modelo para a classificação de software educativos de matemática, considerando os requisitos
pedagógicos de práticas com materiais concretos para o conteúdo de geometria. A base de
dados com requisitos pedagógicos foi construída com 27 requisitos para o bloco temático
Números e Operações ; 29 para Espaço e Forma ; 23 requisitos para Grandezas e
Medidas e seis para os conteúdos do Tratamento da Informação , servindo de apoio a
desenvolvedores e avaliadores de software educativos. A ferramenta computacional atendeu
aos desafios dos professores brasileiros e despertou a motivação, a responsabilidade, o
diálogo, a cooperação, a discussão, a reciprocidade e a reflexão durante os procedimentos a
serem construídos sobre a resolução de equações de 1º grau. Quanto ao cenário de práticas
exploratórias, todos os professores de matemática adotam práticas com algum tipo de material
didático. São 29 materiais concretos e 22 software educativos sendo utilizados pelos
professores pesquisados. A maioria dos professores tem escolhido o software por indicação de
outros professores, por buscas na internet ou por sugestões encontradas nos livros didáticos.
Nenhum professor mencionou a utilização de metodologias de avaliação para software
educativos. A base do modelo para a classificação de software educativos de matemática foi a
classificação de requisitos pedagógicos com a participação dos atores educacionais
envolvidos. Com isso, foi determinada a satisfação e insatisfação com a presença e a ausência
dos requisitos no produto. Um indicador foi responsável por estimar o nível de qualidade do
software educativo considerando as categorias: Básico, Avançado e Superior. Cada categoria
foi referenciada por três níveis de qualidade. A proposta de classificação considera parâmetros
específicos aos conteúdos da área e não apenas parâmetros gerais do ponto de vista
educacional. / Doutor em Ciências
|
257 |
Recursos computacionais para auxiliar a análise da aptidão física relacionada à saúde de universitáriosSena, Rafael Veloso da [UNESP] 25 February 2013 (has links) (PDF)
Made available in DSpace on 2014-06-11T19:29:48Z (GMT). No. of bitstreams: 0
Previous issue date: 2013-02-25Bitstream added on 2014-06-13T20:39:35Z : No. of bitstreams: 1
sena_rv_me_rcla.pdf: 393538 bytes, checksum: e72ebab2329a84bc76986c21f6b4012c (MD5) / Estudar as características relacionadas à aptidão física é um importante passo tanto para avaliar indivíduos quanto à sua saúde, em relação aos considerados padrões de normalidade, como para procurar identificar possíveis associações entre essas características. Isso possibilita propor medidas que possam ser tomadas visando melhorar variáveis relacionadas à aptidão física para a manutenção ou melhora da saúde das pessoas. Esta dissertação visou identificar associações entre características de composição corporal e resultados referentes ao desempenho em testes neuromotores e cardiorrespiratório de universitários. Os dados coletados foram analisados usando recursos e técnicas computacionais, no caso, Banco de Dados e Mineração de Dados. Foram identificadas associações relevantes entre as próprias características de composição corporal e delas com os desempenhos nos testes realizados. Algumas associações mostraram valores altos para a Confiança, métrica usada nesta dissertação. Os resultados das análises permitiram descrever o perfil do grupo analisado. Considerando este perfil, foi construído um aplicativo computacional que compara dados de um indivíduo com valores de variáveis referentes ao perfil e mostra a situação do mesmo em relação a este perfil. O aplicativo também mostra como aquele indivíduo se encontra em relação a tabelas padrão conhecidas / The study of the characteristics related to physical fitness is an important step to evaluate individuals according to their health, based on the considered standards of normality. It is also important to try to identify associations between these characteristics in order to try to propose ways to improve the variables related to physical fitness to maintain or improve people health. This work was aimed to identify associations between body composition and results from neuromotor and cardiopulmonary tests of university students. The results were analyzed using Database and Data Mining techniques. Important associations were identified amongst body composition characteristics and amongst them and the test results. Some associations showed high values to Confidence, the metric used in this study. Based on the analysis results, it was possible to describe the profile of the analyzed group and, based on this profile, develop a computational system that compares data of a person with values of a specific profile and shows his/her situation with regard to that profile. The application also show the comparison of a person data with known reference tables
|
258 |
Reconstrução tridimensional digital de objetos à curta distância por meio de luz estruturadaReiss, Mário Luiz Lopes January 2007 (has links)
Neste trabalho apresenta-se o desenvolvimento e avaliação de um sistema de reconstrução 3D por luz estruturada. O sistema denominado de Scan3DSL é baseado em uma câmara digital de pequeno formato e um projetor de padrões. O modelo matemático para a reconstrução 3D é baseado na equação paramétrica da reta formada pelo raio de luz projetado combinado com as equações de colinearidade. Uma estratégia de codificação de padrões foi desenvolvida para permitir o reconhecimento dos padrões projetados em um processo automático. Uma metodologia de calibração permite a determinação dos vetores diretores de cada padrão projetado e as coordenadas do centro de perspectiva do projetor de padrões. O processo de calibração é realizado com a aquisição de múltiplas imagens em um plano de calibração com tomadas em diferentes orientações e posições. Um conjunto de algoritmos de processamento de imagens foi implementado para propiciar a localização precisa dos padrões e de algumas feições, como o centro de massa e quinas. Para avaliar a precisão e as potencialidades da metodologia, um protótipo foi construído, integrando uma única câmara e um projetor de padrões. Experimentos mostram que um modelo de superfície pode ser obtido em um tempo total de processamento inferior a 10 segundos, e com erro absoluto em profundidade em torno de 0,2 mm. Evidencia-se com isso a potencialidade de uso em várias aplicações. / The purpose of this work is to present a structured light system developed. The system named Scan3DSL is based on off-the-shelf digital cameras and a projector of patterns. The mathematical model for 3D reconstruction is based on the parametric equation of the projected straight line combined with the collinearity equations. A pattern codification strategy was developed to allow fully automatic pattern recognition. A calibration methodology enables the determination of the direction vector of each pattern and the coordinates of the perspective centre of the pattern projector. The calibration processes are carried out with the acquisition of several images of a flat surface from different distances and orientations. Several processes were combined to provide a reliable solution for patterns location. In order to assess the accuracy and the potential of the methodology, a prototype was built integrating in a single mount a projector of patterns and a digital camera. The experiments using reconstructed surfaces with real data indicated a relative accuracy of 0.2 mm in depth could be achieved, in a processing time less than 10 seconds.
|
259 |
Reconstrução tridimensional digital de objetos à curta distância por meio de luz estruturadaReiss, Mário Luiz Lopes January 2007 (has links)
Neste trabalho apresenta-se o desenvolvimento e avaliação de um sistema de reconstrução 3D por luz estruturada. O sistema denominado de Scan3DSL é baseado em uma câmara digital de pequeno formato e um projetor de padrões. O modelo matemático para a reconstrução 3D é baseado na equação paramétrica da reta formada pelo raio de luz projetado combinado com as equações de colinearidade. Uma estratégia de codificação de padrões foi desenvolvida para permitir o reconhecimento dos padrões projetados em um processo automático. Uma metodologia de calibração permite a determinação dos vetores diretores de cada padrão projetado e as coordenadas do centro de perspectiva do projetor de padrões. O processo de calibração é realizado com a aquisição de múltiplas imagens em um plano de calibração com tomadas em diferentes orientações e posições. Um conjunto de algoritmos de processamento de imagens foi implementado para propiciar a localização precisa dos padrões e de algumas feições, como o centro de massa e quinas. Para avaliar a precisão e as potencialidades da metodologia, um protótipo foi construído, integrando uma única câmara e um projetor de padrões. Experimentos mostram que um modelo de superfície pode ser obtido em um tempo total de processamento inferior a 10 segundos, e com erro absoluto em profundidade em torno de 0,2 mm. Evidencia-se com isso a potencialidade de uso em várias aplicações. / The purpose of this work is to present a structured light system developed. The system named Scan3DSL is based on off-the-shelf digital cameras and a projector of patterns. The mathematical model for 3D reconstruction is based on the parametric equation of the projected straight line combined with the collinearity equations. A pattern codification strategy was developed to allow fully automatic pattern recognition. A calibration methodology enables the determination of the direction vector of each pattern and the coordinates of the perspective centre of the pattern projector. The calibration processes are carried out with the acquisition of several images of a flat surface from different distances and orientations. Several processes were combined to provide a reliable solution for patterns location. In order to assess the accuracy and the potential of the methodology, a prototype was built integrating in a single mount a projector of patterns and a digital camera. The experiments using reconstructed surfaces with real data indicated a relative accuracy of 0.2 mm in depth could be achieved, in a processing time less than 10 seconds.
|
260 |
Uma abordagem arquitetural para o desenvolvimento rigoroso de sistemas confiáveis baseados em componentes / A rigorous architectural approach to development component-based software systemsBrito, Patrick Henrique da Silva 16 August 2018 (has links)
Orientador: Cecília Mary Fischer Rubira / Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-16T14:38:24Z (GMT). No. of bitstreams: 1
Brito_PatrickHenriquedaSilva_D.pdf: 1885619 bytes, checksum: 138c286c6050613085421c02716b1425 (MD5)
Previous issue date: 2009 / Resumo: A incorporação de tolerância a falhas em sistemas de software normalmente acarreta em um aumento da complexidade, o que consequentemente torna a sua análise mais difícil. Além disso, o uso de mecanismos de tratamento de exceções de uma maneira não-sistemática pode acarretar na adição de novas falhas ao sistema. Esta tese apresenta uma abordagem rigorosa e centrada na arquitetura para o desenvolvimento de sistemas de software tolerantes a falhas. Dependendo do modelo de falhas e da disponibilidade de recursos, abstrações arquiteturais diferentes podem ser utilizadas para representar explicitamente questões relacionadas a tolerância a falhas, tais como detecção e tratamento de erros e tratamento de falhas. Essas abstrações arquiteturais e os seus respectivos detalhamentos internos podem ser instanciados em componentes e conectores concretos durante o projeto de arquiteturas de software tolerantes a falhas. De forma complementar, a solução proposta também define atividades que combinam o uso e métodos formais e casos de teste baseados em modelos para sistematizar a verificação e validação do comportamento do sistema relativo à programação e tratamento de erros e tratamento de falhas no nível arquitetural. A verificação e validação de software ocorrem em duas fases complementares do processo de desenvolvimento do software, ambas baseadas em cenários arquiteturais que descrevem a programação e tratamento de erros envolvendo elementos arquiteturais (componentes e conectores). Primeiramente, utilizando a ferramenta de verificação de modelos ProB, que combina o uso de teoria de conjuntos matemáticos (B-Method) com álgebra de processos (CSP), a arquitetura de software é verificada formalmente com o intuito de antecipar a identificação de falhas relacionadas ao projeto do sistema. Segundo, casos de teste são gerados a partir da arquitetura de software utilizando uma abordagem baseada em modelos. O objetivo dos casos de teste gerados é verificar a consistência entre os modelos arquiteturais já verificados formalmente e a implementação do sistema. Finalmente, para auxiliar as atividades de verificação, a solução proposta também contempla a definição de regras de transformação automática de diagramas UML para especificação formal em B-Method e CSP. A diferença semântica existe entre a especificação semi-formal da UML e a especificação formal em B-Method e CSP é compensada utilizando-se estereótipos e "tags" nos modelos UML. A aplicabilidade prática da solução proposta foi avaliada no contexto de três estudos de caso: (i) uma aplicação com requisitos críticos de tempo real e confiabilidade; (ii) uma aplicação bancária real com requisitos críticos de confiabilidade e disponibilidades; e (iii) uma aplicação para dispositivos móveis / Abstract: The incorporation of fault tolerance into systems normally increases their complexity, which consequently makes their analysis more difficult. Moreover, the use of exception handling mechanisms to develop robust software systems in a non-systematic manner can be a source of many design faults. This thesis presents a rigorous and architecture-centric development approach for developing fault-tolerant software systems. Depending on the fault model and the resources available, different architectural abstractions can be employed for representing issues that are related to fault tolerance, such as error detection, and error and fault handling. These architectural abstractions and their internal views can be instantiated into concrete components and connectors for designing fault-tolerant software architectures. In a complementary way, the proposed rigorous solution also defines activities which use formal methods and model-based test cases do systematize the verification and validation of the system's behaviour related to error propagation and handling at the architecture level. The verification and validation occur in two complementary phases of the software development, both of them based on architectural scenarios describing error propagation and handling involving architectural elements (components and connectors). First, using the ProB model checker, which combines the use of set-theory (B-Method) and process algebra (CSP), the software architecture is formally verified in order to anticipate the identification of faults related to the system's model. Second, model-based test cases are generated in order to assess the consistency between the verified software architecture and the implementation of the software system. Finally, the proposed solution also defines rules for model transformation from UML diagrams to formal specification in B-Method and CSP. To overcome the gap between the semi-formal specification of UML and the formal models, the UML diagrams are complemented with predefined stereotypes and tags. The feasibility of our approach was evaluated in the context of three case studies: (i) a critical real-time application; (ii) a real banking system; and (iii) a mobile application / Doutorado / Engenharia de Software / Doutor em Ciência da Computação
|
Page generated in 0.0948 seconds