Slides

Integrando Teoria da Atividade e Modelagem Organizacional na Engenharia de Requisitos de Sistemas Colaborativos

Description
Integrando Teoria da Atividade e Modelagem Organizacional na Engenharia de Requisitos de Sistemas Colaborativos Genésio Gomes da Cruz Neto 1 e Alex Sandro Gomes 2 1 Faculdade Integrada do Recife (FIR).
Categories
Published
of 16
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Related Documents
Share
Transcript
Integrando Teoria da Atividade e Modelagem Organizacional na Engenharia de Requisitos de Sistemas Colaborativos Genésio Gomes da Cruz Neto 1 e Alex Sandro Gomes 2 1 Faculdade Integrada do Recife (FIR). Av. Eng. Abdias de Carvalho, n.º Madalena Recife - PE - CEP: Cento de Informática Universidade Federal de Pernambuco (UFPE) Caixa Postal Recife PE Brasil Resumo Para se obter adequadamente requisitos de sistemas colaborativos é preciso entender as atividades de grupo realizadas pelos atores envolvidos no contexto no qual o futuro software será usado. Um adequado Framework teórico para apoiar esta tarefa é oferecido pela Teoria da Atividade. A Teoria da Atividade é uma estrutura filosófica e interdisciplinar usada para estudar diferentes formas de práticas humanas através do uso da atividade como unidade básica de analise. Apesar de existirem diversas aplicações da Teoria da Atividade para o desenvolvimento de sistemas colaborativos, constata-se que existe uma carência atual de metodologias que abordem como obter uma descrição completa dos requisitos do sistema a partir das análises de práticas humanas baseadas nesta teoria. A alternativa aqui adotada baseia-se na integração de diagramas de atividades da Teoria da Atividade com modelos organizacionais baseados na técnica i*. Modelos organizacionais baseados na plataforma i* são hoje elementos centrais de uma abordagem atual e abrangente de desenvolvimento orientado a requisitos, chamada Tropos. O artigo apresenta um processo de engenharia de requisitos que direciona a geração dos modelos organizacionais das fases de Early Requirement e Late Requirement da metodologia TROPOS a partir de observações etnográficas e análises de contexto baseadas no framework da Teoria da Atividade. As etapas do processo a são ilustradas através da construção de um sistema colaborativo de aprendizagem como estudo de caso. Abstract To obtain adequate requirements for collaborative systems is necessary to understand, first of all, the groupactivities performed in the context in which the new software will be used. An adequate framework for groupactivity analysis is offered by the Activity Theory. Activity Theory is defined as a philosophic and interdisciplinary structure to study different forms of human practice by using the activity as a basic unit of analysis. Despite of having several Activity Theory applications for system design, there is a lack of methods for obtaining a complete requirement specification from social analysis based on this theory. We adopt an alternative which combines Activity Theory specifications with organizational models based on the i* framework. Organizational models based on i* are the central elements of a requirement-driven development methodology, called TROPOS. This article presents a requirement engineering process that uses ethnography observations and qualitative analysis for the generation of organizational models of the Early and Late TROPOS requirement phases. As a case study, is presented the application of the proposed process for the generation of requirements of a project based learning system. 1. Introdução Para se obter adequadamente requisitos de sistemas colaborativos é preciso entender as atividades de grupo realizadas pelos atores envolvidos no contexto no qual o futuro software será usado. Um adequado Framework teórico para apoiar esta tarefa é oferecido pela Teoria da Atividade[18][23]. A teoria da atividade, num sentido amplo, pode ser definida como uma estrutura filosófica e interdisciplinar para estudar e modelar diferentes formas de práticas humanas através do uso da atividade como unidade básica de análise. A análise de práticas humanas (e suas relações sociais), através de técnicas como Etnografia[26], é apresentada na literatura como uma das principais formas de elicitar requisitos de software[12]. O uso da Teoria da Atividade permite a transição de um trabalho etnográfico puramente intuitivo, muitas vezes sem um fim bem definido, para um método que permite a manipulação sistemática das informações coletadas com base em reflexões guiadas por uma fundamentação teórica[20]. Apesar de existirem diversas aplicações da Teoria da Atividade para o desenvolvimento de sistemas colaborativos[23][11][15][21][22], constata-se que existe uma carência atual de metodologias que abordem como obter uma descrição completa dos requisitos do sistema a partir dos modelos de atividades gerados. Abordagens atuais de engenharia de requisitos[4][17][6], por outro lado, não conseguem modelar atividades colaborativas com a riqueza de detalhes e fundamentação teórica que a Teoria da Atividade oferece. A alternativa aqui adotada baseia-se na integração de diagramas de atividades da Teoria da Atividade com modelos organizacionais baseados na técnica i*[5][30]. Modelos organizacionais baseados na plataforma i* são hoje elementos centrais de uma abordagem atual e abrangente de desenvolvimento orientado a requisitos, chamada Tropos[6]. Nesta metodologia todas as fases do desenvolvimento de software são implementadas a partir de modelos i* que descrevem as intenções presentes nos relacionamentos de dependência entre os atores da organização (incluindo futuros sistemas). O artigo apresenta um processo de engenharia de requisitos que direciona a geração dos modelos organizacionais das fases de Early Requirement e Late Requirement da metodologia TROPOS a partir de observações etnográficas e análises de contexto baseadas no framework da Teoria da Atividade. As etapas da metodologia são demonstradas através da construção de um sistema colaborativo de aprendizagem como estudo de caso. As próximas seções do artigo estão organizadas da seguinte forma: a seção 2 apresenta os trabalhos relacionados com o uso Teoria da Atividade para o desenvolvimento de software. O referencial teórico da Teoria da Atividade é introduzido na seção seguinte, de número 3. Na seqüência temos, na seção 4, uma síntese da metodologia TROPOS e suas fases de desenvolvimento. Na seção 5, uma metodologia de engenharia de requisitos centrada na atividade que integra Teoria da Atividade à Metodologia TROPOS é apresentada. Por fim, na seção 7, são apresentadas as conclusões da pesquisa e trabalhos futuros. 2. Engenharia de Requisitos & Teoria da Atividade Na Teoria da Atividade as motivações dos usuários são descritas através de uma estrutura que relaciona tais motivações com um objeto a ser transformado, com as ferramentas de mediação usadas no processo, com as regras sociais vigentes e com a divisão de trabalho definida pela comunidade. Com isto ela permite a descrição de elementos sócio-culturais relevantes de uma atividade colaborativa, tais como, objeto da atividade, ferramentas de mediação, regras sociais, comunidade e divisão de trabalho, que não conseguem ser modelados de forma satisfatória usando abordagens atuais da engenharia de requisitos, tais como, as orientadas a objetivos[1][7][17], as orientadas à Casos de Uso[14][4], ou as orientadas à modelagens organizacionais[5][30][6]. A Teoria da Atividade pode auxiliar na geração de requisitos de sistemas por permitir uma reflexão sobre as influências do contexto no futuro software a ser construído. A partir da modelagem de atividades é possível projetar de que forma o sistema irá dar suporte as atividades presentes no ambiente, ou melhor, como as atividades poderiam se desenvolver com a inclusão de possíveis novos artefatos (sistemas). Acreditamos que modelos de atividades podem ser usados dentro das abordagens atuais da engenharia de requisitos para complementar e guiar a geração e descrição dos requisitos funcionais, não funcionais e organizacionais dos sistemas. Hoje existem diversas aplicações da Teoria da Atividade para o desenvolvimento de sistemas colaborativos tanto na área de CSCW (do inglês, Computer Supported Cooperative Work)[23][3], quanto na área de CSCL (do inglês Computer Suported Cooperative Learning)[11][28][13][2]. No entanto, não existe atualmente um consenso sobre um método padrão para a aplicação desta Teoria para o design de sistemas de software. Kaptelinin[15] argumenta que isto ocorre porque existem vários princípios nos quais alguém pode se basear para a realização de suas análises. Como conseqüência disto, os conceitos da Teoria da Atividade têm sido usados de diferentes maneiras dependendo do contexto da aplicação, o que dificulta o re-uso, a comparação e a crítica sobre as diferentes abordagens. Algumas propostas de metodologias para a realização de análises de práticas humanas com base na Teoria da Ativide para o design de sistemas de software existem[15][21][22]. Os trabalhos concentram-se na investigação e especificação das atividades presentes em uma organização, bem como uma reflexão sobre como novos sistemas podem dar suporte a estas atividades. No entanto, os trabalhos não enfatizam como uma descrição completa de requisitos pode ser gerada a partir das análises de práticas humanas realizadas. 3. A Teoria da Atividade A Teoria da Atividade[23][18] possui origens na filosofia sócio-cultural soviética fundada por Lev Vygostsky[29] e seus colegas A. N. Leont ev[18] e A. R. Luria[19]. Segundo esta teoria, uma atividade é formada por um sujeito que possui uma forma de agir direcionada à um objeto. A motivação do sujeito está na transformação do objeto em um resultado. Um objeto pode ser algo concreto (como um programa) ou algo mais abstrato (como uma idéia). Ferramentas de mediação são usadas na transformação do objeto no resultado. Ferramentas evoluem com o tempo durante a prática da atividade, por esta razão, elas condensam a história do desenvolvimento humano. A Teoria da Atividade não aceita a prerrogativa de um mundo isolado da mente. As atividades possuem uma natureza dupla: o sujeito e o objeto possuem entre si uma relação de reciprocidade onde o sujeito transforma o objeto (atividade externa), enquanto as propriedades do objeto penetram no sujeito e o transformam (atividade interna). Práticas humanas estão sempre incluídas dentro de um contexto social. Na Teoria da Atividade as relações sistêmicas existentes entre o sujeito e o seu ambiente são representadas pelos conceitos de comunidade, regras e divisão de trabalho. A Comunidade é formada por todos os sujeitos que compartilham um mesmo objeto. Regras, enquanto formas de mediação entre sujeito e comunidade, são normas e convenções sociais estabelecidas dentro da comunidade. A divisão de trabalho, enquanto forma de mediação entre a comunidade e o objeto, refere-se à forma de organização de uma comunidade relacionada ao processo de transformação de um objeto em um resultado. A Figura 1 ilustra um modelo sistêmico definido por Engeström[10] que mostra graficamente as relações entre os elementos que estruturam a atividade. O modelo sistêmico da atividade proposto por Engeström permite a representação de atividades, ditas, colaborativas, ou seja, atividades em que dois ou mais indivíduos trabalham juntos em determinada situação para a realização de um objetivo comum[9]. Figura 1: Modelo Sistêmico da Atividade Atividades de práticas humanas não são isoladas umas das outras. Situações reais sempre envolvem uma teia interconectada de atividades que é especificada através de um diagrama de atividades. A Figura 5 presente na seção 5.3 apresenta uma modelagem de atividades segundo a Teoria da Atividade Níveis de uma Atividade As atividades podem ser decompostas em ações. Para cada ação existe um objetivo específico que auxilia a atividade na realização de seu motivo. Ações, por sua vez, podem ser decompostas em um conjunto de operações que especificam a forma com que elas são realizadas. Operações caracterizam-se por serem realizadas como uma resposta a condições que ocorrem no ambiente. Uma ação pode se tornar uma operação com o passar do tempo. A medida que isto ocorre, o sujeito passa a ter conscientemente um outro objetivo mais abrangente que contém a ação anterior agora como uma operação. Por outro lado, quando as condições de realização de operações mudam, as operações podem ter cada vez mais um objetivo definido e por isto transformarem-se em ações. A Figura 2 mostra os níveis de uma atividade e sua dinâmica. Figura 2: Níveis da Atividade A dinâmica entre ações e operações e seus escopos de abrangência são características fundamentais do desenvolvimento humano. Segundo os Teóricos da Atividade, para uma pessoa aprender a fazer certo procedimento, operações devem ser desenvolvidas nesta pessoa para que o escopo de seus objetivos conscientes (ações) seja cada vez mais abrangente a medida que a atividade é realizada. A flexibilidade dos conceitos básicos da Teoria da Atividade lhe torna útil para descrever o processo de desenvolvimento humano. Mas, por outro lado, torna difícil fazer classificações genéricas do que é uma atividade, do que é uma ação e do que é uma operação pois tais conceitos são totalmente dependentes de quais são os motivos, os objetivos e as habilidades dos sujeitos para com os objetos que manipulam em determinada situação[16]. 4. A Metodologia TROPOS TROPOS[6] é uma metodologia de desenvolvimento de software orientada a requisitos concebida com o intuito de reduzir a discrepância muitas vezes existente entre os sistemas computacionais e seus ambientes. Ela usa modelos organizacionais baseados na técnica i*[30] como elementos centrais para a realização de todas as fases do desenvolvimento de software. A técnica i* auxilia na compreensão do ambiente organizacional (incluindo potenciais sistemas de software) através da descrição das dependências existentes entre os atores e os sistemas presentes neste ambiente. A metodologia TROPOS é composta de 4 fases: Early Requirements: compreende o entendimento do problema através do estudo da organização. O resultado desta fase é um modelo organizacional que descreve as relações entre os atores presentes no ambiente. Late Requirements: compreende a modelagem do sistema a ser inserido dentro do modelo organizacional definido na fase de Early Requirement. O sistema é modelado através da especificação dos objetivos, tarefas e recursos que adota para a realização das intenções presentes nos seus relacionamentos com seus usuários. Architectural Design: compreende a definição da arquitetura do sistema. Detailed Design: compreende a descrição do comportamento de cada componente da arquitetura do sistema. Para descrever o ambiente organizacional (incluindo seus sistemas), a metodologia TROPOS utiliza dois modelos fornecidos pela técnica i*: o Modelo de Dependências Estratégicas e o Modelo de Razões Estratégicas. O Modelo de Dependências Estratégicas é um grafo composto pelos atores do ambiente e seus relacionamentos de dependência. A dependência entre atores é definida pela existência de um Depender que depende de alguma forma de outro ator chamado Dependee. O elemento de dependência entre Depender e Dependee é denominado de Dependum (Depender Dependum Dependee). As dependências estratégicas presentes neste modelo podem ser de vários tipos, incluindo dependências de objetivo, de objetivo-soft (objetivo cuja avaliação de realização é subjetiva), de tarefa e de recurso. A Figura 6 na seção 5.4 mostra um exemplo de Modelo de Dependências Estratégicas. O Modelo de Razões de Dependência permite modelar de forma mais detalhada as razões associadas com cada ator e suas dependências. Ele permite descrever como os atores internamente trabalham para satisfazer os relacionamentos externos de dependências presentes no Modelo Estratégico de Dependência. Para definir este modelo são usados dois novos tipos de ligações: ligação meio-fim e ligação de decomposição de tarefa. A ligação meio-fim está associada a tarefas que são necessárias para obtenção de um determinado fim, o qual pode ser um objetivo, objetivo-soft, recurso ou tarefa. Enquanto que a ligação de decomposição de tarefa é usada para modelar a decomposição de tarefas em sub-componentes. A Figura 7 na seção 5.5 mostra um exemplo de Modelo de Razões de Dependências. 5. Integrando Teoria da Atividade e Modelagem Organizacional A Figura 3 mostra um processo de engenharia de requisitos que integra análises etnográficas e estudos qualitativos baseados na Teoria da Atividade com modelos organizacionais da metodologia TROPOS. Figura 3: Metodologia de Engenharia de Requisitos Centrada na Atividade Esta metodologia contribui para uma elicitação de requisitos de sistemas colaborativos mais apropriada por usar a Teoria da Atividade para guiar e complementar os modelos organizacionais gerados nas fases de Early Requirement e Late Requirement da metodologia TROPOS. Cada etapa da metodologia é descrita nas próximas seções através da apresentação de sua aplicação no desenvolvimento de um sistema colaborativo de aprendizagem baseada em projetos, chamado AMADeUs[27] Observações Etnográficas Uma forma adequada de descrever práticas humanas é através de um processo de análise etnográfica[26]. A teoria da Atividade permite a transição de um trabalho etnográfico intuitivo focado apenas em como utilizar as informações contextuais, para um método sistemático onde passamos a questionar e modelar o contexto em si[20]. A metodologia é iniciada com uma observação etnográfica da atividade de grupo presente no contexto onde o futuro software será utilizado. Tais observações resultam em entrevistas e transcrições das observações dos diálogos dos atores. Para o estudo de caso, foi realizada uma observação etnográfica da atividade prática de um grupo de alunos, junto com o professor, em uma disciplina de engenharia de software de um curso de superior de Ciência da Computação. A disciplina teve o objetivo de aperfeiçoar os alunos quanto ao uso de metodologias, técnicas e ferramentas de engenharia de software através de um modelo de aprendizagem baseada em projetos. As observações etnográficas foram feitas com base na gravação dos diálogos do atores. Segue exemplo de trecho de diálogo do professor para o grupo de alunos. Certo? Eu disse isso na sala de aula passada. Eu vou demonstrar os projetos que existem práticos. Vou fazer a apresentação de cada um, quem é quem, o que se espera de cada um, e depois vocês vão ter uma sessão de já se juntar em grupos para compor o grupo para cada projeto. Não recomendo que os grupos sejam compostos por pessoas com habilidades similares Análise Qualitativa Em uma segunda fase temos uma análise qualitativa[8] a partir de fontes primárias de dados oriundas da etnografia. As informações coletadas são analisadas utilizando o software Nud*ist (www.qsr.com)[24] na busca de indícios que apontem para as características das atividades. Os elementos do modelo sócio cultural da atividade (usuário, objeto, ferramenta, regras sociais, comunidade e divisão de trabalho) e seus subníveis (ações e operações) servem de base para a classificação das informações, que são recortadas e armazenadas em uma árvore hierárquica. O resultado deste processo é a categorização das informações com base em cada elemento do modelo, facilitando assim a geração das especificações das atividades. A Figura 4 mostra um exemplo presente no estudo de caso que ilustra uso do software NUD IST para a classificações das informações oriundas das observações etnográficas. O software permite associar trechos de observações etnográficas com elementos que estruturam as atividades. No exemplo, o trecho de diálogo apresentado na seção anterior está vinculado ao elemento divisão de trabalho da atividade de Formação dos Projetos. Observe que o trecho menciona informações relevantes sobre a organização do grupo deixando claro, por exemplo, que o professor possui o papel de demonstrar as alternativas de projetos para os alunos dentro da atividade de Formação dos Projetos Modelando Atividades Figura 4: Análise Qualitativa do AMADeUs no NUD IST A partir das informações classificadas no Nud ist inicia-se a modelagem das atividades. Primeiramente as Atividades são descritas isoladamente utilizando o modelo sistêmico definido
Search
Similar documents
View more...
Related Search
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks