Bem-Vindo !

Este livro é sobre Engenharia de Requisitos, uma area de conhecimento fundamental para a construção de software.

A forma de publica-lo é diferente, mistura a tecnologia de blogs com a de páginas da internet. É um livro vivo.

A base desse livro é um pré-livro que escrevi em 1994. Por vários motivos não foi publicado em forma de livro e só agora -- Julho de 2007 -- consegui disponibilizar seu texto. Esse texto é arquivo imagem no formato "pdf". Esse texto não passou por processo de revisão editorial e contém alguns defeitos, alguns de Português e alguns conceituais. Os defeitos conceituais que existirem serão tratados na evolução do livro. Esse "blog" tem exatamente esse papel, tornar-se um livro vivo.

Os comentários serão abertos, com moderação, mas é pouco provável que sejam respondidos diretamente. Permitirei diálogos de leitores, desde de que sejam de interesse geral. Como o livro é de acesso livre, estarei utilizando anúncios veiculados pelo provedor desse conteúdo (Google). É a maneira que me parece ser mais adequada para essa iniciativa.

Esse livro é de minha inteira responsabilidade. No entanto, tenho que agradecer a PUC-Rio e ao CNPq que apoiam minhas pesquisas em Engenharia de Requisitos.

Os textos pertencem ao autor. Se gostou e quiser usar, use. No entanto, não esqueça de fazer a citação.
[Leite 07] Leite, J.C.S.P., "<"título da nota">","<"mes/ano ">", em Livro Vivo : Engenharia de Requisitos, http://livrodeengenhariaderequisitos.blogspot.com/, 2007

segunda-feira, 20 de agosto de 2007

Sistema de Desenvolvimento de Software

A Figura 11 na página 20 (Parte I) é um modelo que descreve as partes fundamentais de uma organização que tem por objetivo produzir software. Sua descrição é feita na linguagem SADT (Structured Analysis and Design Technique) de Douglas Ross. No caso estamos usando uma das perspectivas do SADT, a perspectiva de dados (datagrama).

Essa Figura foi produzida com base no livro de Peter Freeman Software Perspectives: The System is the Message e retrata como 5 sub-sistemas fundamentais para a produção de software se inter-relacionam. Vejam que temos duas entradas: “ estabelecer objetivos” e “manter o estado da arte”, uma saída: “produzir software” que é uma composição de “criar sistemas”, “organizar sistemas”, “reutilizar software” e “produzir informação”, e três retro-alimentações: “informar sobre o processo”, “medir desempenho” e “arquivar software”. Veja que na Figura a palavra “sistema” é sinônimo de “software”.

Portanto o subsistema Gerência cuida da interface com os clientes da organização procurando entender os objetivos e utilizando os sub-sistemas de Pessoal, Métodos e Ferramentas para atingir os objetivos. Veja o papel do subsistema de Informação que ajuda a gerência tanto para saber como anda o processo como também como o mercado tem evoluído na prática da construção de software. Esse subsistema também é importante por ser repositório do conhecimento produzido na produção do software. Esse modelo coloca o subsistema Pessoal como central no processo de produção. A produção de software é um trabalho criativo acima de tudo; depende da inteligência e criatividade do ser humano, mas para ser mais homogêneo necessita de padrões (sub-sistema de Métodos), como necessita de apoio para uma maior produtividade (sub-sistema de Ferramentas e sub-sistema de Informação).

Veja que essa Figura é independente do processo de produção a ser utilizado pela organização, ou seja, cada organização pode escolher diferentes maneiras de produzir software (diferentes implementações do subsistema Métodos) dependente de uma série de fatores, mas principalmente, do Pessoal disponível, dos objetivos a serem atingidos assim como pelas Ferramentas disponíveis.

É importante ressaltar que o SDS (Sistema de Desenvolvimento de Software) apresenta um esquema de aprendizado embutido, quer seja combatendo a entropia através da entrada “manter o estado da arte”, bem como aprendendo com os possíveis desvios através de processos de retro-alimentação (“medir desempenho” e “informar sobre o processo”). Ou seja, esta visão do SDS incorpora a idéia do ciclo de aperfeiçoamento presente no ciclo PDCA (veja o uso desse conceito por uma grande empresa) .

Nenhum comentário: