Um método de apoio à decisão na estimação de software baseado em serviços em uma perspectiva SOA

Detalhes bibliográficos
Autor(a) principal: Ghoddosi, Nader
Data de Publicação: 2017
Tipo de documento: Tese
Idioma: por
Título da fonte: Repositório Institucional da UFSC
Texto Completo: https://repositorio.ufsc.br/handle/123456789/189291
Resumo: Tese (doutorado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Engenharia de Automação e Sistemas, Florianópolis, 2017.
id UFSC_c07f63918a30f1633c52e5decd9d1566
oai_identifier_str oai:repositorio.ufsc.br:123456789/189291
network_acronym_str UFSC
network_name_str Repositório Institucional da UFSC
repository_id_str 2373
spelling Universidade Federal de Santa CatarinaGhoddosi, NaderRabelo, Ricardo José2018-08-23T04:02:24Z2018-08-23T04:02:24Z2017353278https://repositorio.ufsc.br/handle/123456789/189291Tese (doutorado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Engenharia de Automação e Sistemas, Florianópolis, 2017.A indústria de software tem se tornado cada vez mais um setor de grande relevância econômica e estratégica no desenvolvimento de um país. Cada vez mais pressionadas pela grande competitividade e pela constante necessidade de investimentos em inovação e recursos humanos, tem sido essencial para a sobrevivência das empresas a adoção de novos paradigmas tecnológicos que as dê melhores condições de implementação de mais rentáveis e sustentáveis modelos de negócio. A Arquitetura Orientada a Serviços (Service Oriented Architecture - SOA) tem emergido como um dos mais importantes novos paradigmas de software. Diferentemente do modelo tradicional de software, em SOA um sistema é constituído por uma composição de módulos de software distribuídos, desacoplados e heterogêneos - chamados serviços - cujas funcionalidades são invocadas dentro de variadas lógicas de negócio do sistema. Neste sentido, SOA introduz uma nova visão quanto ao projeto, desenvolvimento, reuso e integração de software, podendo este ser fornecido mais flexivelmente sob diversas arquiteturas e modelos de negócios com um maior grau de alinhamento à camada negócio da empresa. Apesar de suas grandes potencialidades e dos grandes avanços verificados nos ambientes de desenvolvimento, normas e modelos de maturidade para ajudar no desenvolvimento de soluções SOA, a sua adoção num sistema e por parte de uma empresa tem vários impactos, em diferentes dimensões. Como consequência, projetos SOA geralmente acabam por ser mais complexos de serem projetados, geridos, integrados e implantados e, portanto, com um razoável risco de insucesso. Além disso, dependendo do tipo de problema a ser resolvido, do que já existe de sistemas legados, dos requisitos do negócio em questão e de um grande número de outros aspectos, nem sempre a adoção de SOA / orientação a serviços pode vir a ser a melhor decisão para o caso. Dentro do ciclo de vida SOA, essas ponderações são feitas na fase de análise e levam em consideração estimações de software, que basicamente culminam com o cálculo de custos, esforço, tempo de desenvolvimento e grau de alinhamento ao negócio. A literatura mostra uma lacuna sobre métodos mais completos ou que não sejam apenas baseados em checklists genéricos para apoiar gestores de TI nessa decisão sobre quando implementar demandas de software na forma de serviços. Observações empíricas e relatos na Internet também comentam que muitos gestores tomam tal decisão essencialmente com base na sua experiência e nível de conhecimento técnico, portanto com grande margem de subjetividade, baixa padronização, pouca mensuração quantitativa dos custos gerais daquela adoção e com limitada visão do grau de alinhamento ao negócio. Na direção de mitigar tais problemas, esta tese propõe um método que sistematiza o processo de análise sobre a adoção ou não de serviços numa dada solução de software que contempla os devidos fatores de decisão em SOA. O método é constituído por 15 fatores inter-relacionados, que são organizados e sequencialmente percorridos pelo gestor de TI, que os alimenta com certas informações da empresa e da solução pretendida. Cada fator é calculado e gera um valor. O método sintetiza os valores dos fatores e provê ao final números concretos para custos, esforço, tempo de desenvolvimento e grau de alinhamento ao negócio. O método foi desenvolvido com base nas melhores práticas de engenharia de software e de SOA, adaptando-as a um cenário de tomada de decisão multicritério e de comparação em relação a custos gerais de desenvolvimento de um software tradicional. Um conjunto de empresas de software foi utilizado para avaliar o método, onde se pôde confirmar a sua proposição de valor.Abstract : The software industry has become increasingly a very important and strategic sector for countries development. More and more pressured by high competitiveness and constant need for investments in innovation and human resources, the adoption of new technological paradigms by companies to leverage them to implement more profitable and sustainable business models has been essential for their survival. Service Oriented Architecture (SOA) has emerged as one of the most important new paradigms of software. Unlike the traditional software model, in SOA a system is constituted by a composition of distributed, decoupled and heterogeneous software modules - called services - whose functionalities are invoked under several business logics. Thus, SOA introduces a new vision in terms of design, development, reuse and software integration. New systems can be provided more flexibly under different architectures and business models and with a higher degree of alignment to the company's business layer. Despite its high potential and the large advances in the development environments, norms and maturity models to assist in the development of SOA solutions, their use in a system and adoption by a company has several impacts, in different dimensions. As a consequence, SOA projects often end up being more complex to be designed, managed, integrated and deployed, and therefore having a reasonable failure risk. In addition, depending on the type of problem to be solved, on what already exists in in terms of legacy systems, on the business requirements in place and on a large number of other aspects, the adoption of SOA / service orientation may not be the best decision for the case. Regarding the SOA life cycle, these reflections are carried out in the analysis phase, where software estimations are done essentially considering costs, development time, efforts and degree of business alignment. Literature shows a gap of more comprehensive supporting methods or of ones that are not just presented as generic checklists to support IT managers in that estimation. Empirical observations and reports in the Internet have been also pointed out that many managers take that decision essentially based on their experiences and technical background, therefore with a large level of subjectivity, low standardization, low quantitative measurement of the general costs of that adoption, and with a limited vision of the degree of business alignment. In order to mitigate such problems, this thesis proposes a method that systematizes the process of analysis about the adoption or not of services in given software solutions. The method is composed of 15 interrelated estimation factors, which are organized and sequentially executed by the IT manager, who feeds them with information related to the company and to the intended solution. Each factor has actually a formula and generates a value. The method synthesizes all factors values and provides concrete numbers for costs, effort, development time and degree of alignment to the business in the end. The method was developed based on the best practices of software engineering and SOA, adapting them to a multi-criteria decision-making scenario and comparing it to the general costs of developing software in the traditional way. A number of software companies was used to evaluate the method, where they could confirm its value proposition.257 p.| il.porEngenharia de sistemasArquitetura orientada a serviços (Computador)SoftwareUm método de apoio à decisão na estimação de software baseado em serviços em uma perspectiva SOAinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisreponame:Repositório Institucional da UFSCinstname:Universidade Federal de Santa Catarina (UFSC)instacron:UFSCinfo:eu-repo/semantics/openAccessORIGINALPEAS0270-T.pdfPEAS0270-T.pdfapplication/pdf4686573https://repositorio.ufsc.br/bitstream/123456789/189291/-1/PEAS0270-T.pdf183e1f97f32784383359c087fb457098MD5-1123456789/1892912018-08-23 01:02:34.369oai:repositorio.ufsc.br:123456789/189291Repositório de PublicaçõesPUBhttp://150.162.242.35/oai/requestopendoar:23732018-08-23T04:02:34Repositório Institucional da UFSC - Universidade Federal de Santa Catarina (UFSC)false
dc.title.none.fl_str_mv Um método de apoio à decisão na estimação de software baseado em serviços em uma perspectiva SOA
title Um método de apoio à decisão na estimação de software baseado em serviços em uma perspectiva SOA
spellingShingle Um método de apoio à decisão na estimação de software baseado em serviços em uma perspectiva SOA
Ghoddosi, Nader
Engenharia de sistemas
Arquitetura orientada a serviços (Computador)
Software
title_short Um método de apoio à decisão na estimação de software baseado em serviços em uma perspectiva SOA
title_full Um método de apoio à decisão na estimação de software baseado em serviços em uma perspectiva SOA
title_fullStr Um método de apoio à decisão na estimação de software baseado em serviços em uma perspectiva SOA
title_full_unstemmed Um método de apoio à decisão na estimação de software baseado em serviços em uma perspectiva SOA
title_sort Um método de apoio à decisão na estimação de software baseado em serviços em uma perspectiva SOA
author Ghoddosi, Nader
author_facet Ghoddosi, Nader
author_role author
dc.contributor.none.fl_str_mv Universidade Federal de Santa Catarina
dc.contributor.author.fl_str_mv Ghoddosi, Nader
dc.contributor.advisor1.fl_str_mv Rabelo, Ricardo José
contributor_str_mv Rabelo, Ricardo José
dc.subject.classification.none.fl_str_mv Engenharia de sistemas
Arquitetura orientada a serviços (Computador)
Software
topic Engenharia de sistemas
Arquitetura orientada a serviços (Computador)
Software
description Tese (doutorado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Engenharia de Automação e Sistemas, Florianópolis, 2017.
publishDate 2017
dc.date.issued.fl_str_mv 2017
dc.date.accessioned.fl_str_mv 2018-08-23T04:02:24Z
dc.date.available.fl_str_mv 2018-08-23T04:02:24Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/doctoralThesis
format doctoralThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://repositorio.ufsc.br/handle/123456789/189291
dc.identifier.other.none.fl_str_mv 353278
identifier_str_mv 353278
url https://repositorio.ufsc.br/handle/123456789/189291
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv 257 p.| il.
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFSC
instname:Universidade Federal de Santa Catarina (UFSC)
instacron:UFSC
instname_str Universidade Federal de Santa Catarina (UFSC)
instacron_str UFSC
institution UFSC
reponame_str Repositório Institucional da UFSC
collection Repositório Institucional da UFSC
bitstream.url.fl_str_mv https://repositorio.ufsc.br/bitstream/123456789/189291/-1/PEAS0270-T.pdf
bitstream.checksum.fl_str_mv 183e1f97f32784383359c087fb457098
bitstream.checksumAlgorithm.fl_str_mv MD5
repository.name.fl_str_mv Repositório Institucional da UFSC - Universidade Federal de Santa Catarina (UFSC)
repository.mail.fl_str_mv
_version_ 1766804923292319744