Gestión De Proyectos Software

Total Page:16

File Type:pdf, Size:1020Kb

Gestión De Proyectos Software Proyecto Fin de Carrera AITForge: Gestión de Proyectos Software Autor: Antonio Domingo Lagares Alfaro Titulación: Ingeniero de Telecomunicación (Plan 98) Especialidad: Telemática Año: 2005 Tutor: Antonio Estepa Alonso AITForge: Gestión de Proyectos Software Índice de contenido 1 Prefacio..................................................................................................................6 2 Portales de Desarrollo Colaborativo......................................................................7 2.1 Introducción a los Entornos Colaborativos....................................................8 2.1.1 Hosting de Proyectos de Software Libre (FOSPHost)...........................9 2.1.2 ¿Software Libre y Software de Fuentes Abiertas?...............................10 2.1.3 Prácticas deseables en Software Libre................................................11 2.1.4 El nacimiento de una nueva filosofía de trabajo...................................13 2.1.5 Objetivos de los sistemas libres de FOSPHost....................................14 2.1.6 Principales características de los sistemas FOSPHost........................16 Características intrínsecas..........................................................................16 Características de utilidad...........................................................................17 Características de usabilidad......................................................................18 Características contextuales.......................................................................19 2.1.7 FOSPHost administrados externamente y auto-administrados..........20 Ventajas de los sitios administrados externamente...................................20 Ventajas de los sitios auto-administrados..................................................21 2.1.8 FOSPHost con infraestructura y sin infraestructura.............................21 Propiedades de los sitios con infraestructura.............................................22 Propiedades de los sitios sin infraestructura..............................................22 2.1.9 Controversia entre libertad y seguridad................................................23 3 Comparativa de sistemas FOSPHost .................................................................26 3.1 GForge..........................................................................................................29 3.1.1 Historia..................................................................................................30 3.1.2 Herramientas.........................................................................................31 3.1.3 Requerimientos.....................................................................................36 3.1.4 Características como FOSPHost..........................................................37 3.2 Savane..........................................................................................................40 3.2.1 Historia..................................................................................................41 Antonio Domingo Lagares Alfaro 2 AITForge: Gestión de Proyectos Software 3.2.2 Herramientas.........................................................................................42 3.2.3 Requerimientos.....................................................................................46 3.2.4 Características como FOSPHost..........................................................47 3.3 PHProjekt......................................................................................................49 3.3.1 Historia..................................................................................................49 3.3.2 Herramientas.........................................................................................50 3.3.3 Requerimientos.....................................................................................56 3.3.4 Características como FOSPHost..........................................................57 3.4 Tabla comparativa........................................................................................59 3.5 Conclusiones................................................................................................64 4 Gestión de proyectos fin de carrera....................................................................66 4.1 Justificación..................................................................................................67 4.2 Análisis.........................................................................................................69 4.2.1 Visión global de la aplicación................................................................69 4.2.2 Requisitos de almacenamiento de información....................................72 4.2.3 Requisitos funcionales..........................................................................77 Casos de uso comunes a todos los usuarios.............................................77 Casos de uso para los usuarios registrados con cualquier rol...................82 Casos de uso para Profesores y Administradores.....................................86 Casos de uso para Administradores..........................................................98 Casos de uso para los alumnos...............................................................106 4.3 Comparativa de las posibles soluciones....................................................111 4.3.1 Gforge.................................................................................................112 Ventajas:...................................................................................................114 Inconvenientes:.........................................................................................114 4.3.2 J2EE....................................................................................................115 Ventajas:...................................................................................................116 Inconvenientes:.........................................................................................116 4.3.3 Elección de la herramienta a utilizar...................................................117 5 Diseño de una aplicación de gestión de PFC a partir de GForge....................118 Antonio Domingo Lagares Alfaro 3 AITForge: Gestión de Proyectos Software 5.1 Estudio del sistema GForge.......................................................................119 5.1.1 Arquitectura de GForge......................................................................119 Arquitectura del servidor GForge..............................................................120 Front-end...................................................................................................122 Back-end...................................................................................................122 5.1.2 Interfaz con el usuario: PHP...............................................................123 Capa de presentación...............................................................................124 Capa de lógica de negocio.......................................................................125 5.1.3 Sistema autónomo : Cron...................................................................126 5.1.4 Configuración de GForge....................................................................128 5.2 Diseño de un interfaz propia para AITForge..............................................130 5.2.1 Modelo de datos..................................................................................130 5.2.2 Arquitectura de la nueva vista............................................................133 5.2.3 Estructura de directorios.....................................................................136 5.3 Diseño del módulo de solicitud de proyectos............................................138 5.3.1 Seguridad: gestión de roles................................................................139 5.3.2 Gestión de estados de los proyectos.................................................141 5.3.3 Modelo de datos..................................................................................145 5.3.4 Arquitectura del módulo......................................................................146 Capa de presentación...............................................................................147 Capa de lógica de negocio.......................................................................151 5.3.5 Estructura de directorios.....................................................................154 Capa de presentación...............................................................................154 Capa de lógica de negocio.......................................................................155 5.4 Diseño de un módulo de generación de documentos...............................156 5.4.1 Modelo de datos..................................................................................156 5.4.2 Arquitectura.........................................................................................161 Capa de presentación...............................................................................161 Capa de lógica de negocio.......................................................................162 5.4.3 Estructura de directorios.....................................................................164 Antonio Domingo Lagares Alfaro 4 AITForge: Gestión de Proyectos Software Capa de presentación...............................................................................165 Capa de lógica de negocio.......................................................................165
Recommended publications
  • Gforge-Lists-Mailman Apache2 0. Mailman 0. Gforge-Db-Postgresql
    llvm-2.8-dev mongodb-clients libfpdi-php lazarus-ide-gtk2 libecpg6 libtulip-ogl-dev gnome-mime-data 0. 0. 0. libparrot3.3.0 libwnck-3-0 0. 0. libjaxp1.3-java-gcj 0. libusbmuxd1 erlang-public-key 0. 1.93236714976 0. llvm-2.8 mongodb-dev libfpdf-tpl-php 0. libecpg-compat3 0. lazarus-ide libgemplugin-ruby1.8 0. 0. 2.24719101124 0. libtulip-dev 3.33333333333 0. 0. 0. 0. 0. 0. 0. 0. libgnomevfs2-0 gnome-desktop3-data 0. 0. 0. 1.68269230769 libopenr2-3 gir1.2-wnck-3.0 0. libxalan2-java-gcj 2.22222222222 libimobiledevice1 3.22580645161 erlang-inets 0. libgpg-error0 libblkid1 0.24154589372 libparrot-dev parrot llvm-2.8-runtime mongodb-server pnp4nagios-web libpgtypes3 libtulip-qt4-dev libnet-daemon-perl lazarus-src 0.0. 0. 0. 0. libgemplugin-ruby kdebase-workspace-data libecore-input1 0. libbft-dev libgtk2.0-common 0. 0. 0. 0.70949940875 0.749506903353 libeet-dev python-lazr.uri 0. 4.54674623473 0. cl-alexandria libxau6 0. pia freespacenotifier libksieve4 libtasn1-3 libgnutls26 0.45045045045 libwnck-3-common usbmuxd erlang-ssl libxerces2-java-gcj libgnomevfs2-common 0.0426257459506 0. gir1.2-gnomedesktop-3.0 fxload 0. dahdi-linux 0. 0. libcgns-dev 0. 0. 0. 0. mount initscripts sysvinit-utils 0. 0. reportbug libdbi-perl geant321-data 0.0394477317554 0.355029585799 0. 0. 4.07786302927 llvm-2.9 libecore-evas1 libecore-fb1 0. 0. 0.1574803149611.06709047565 libatk1.0-0 0. sugar-presence-service-0.90 0. 0. 0. 0. parrot-minimal mongrel 1.41899881751.45956607495 libgcrypt11 0. ksysguard kdebase-workspace-bin 0.
    [Show full text]
  • Free Software Needs Free Tools
    Free Software Needs Free Tools Benjamin Mako Hill [email protected] June 6, 2010 Over the last decade, free software developers have been repeatedly tempted by devel- opment tools that offer the ability to build free software more efficiently or powerfully. The only cost, we are told, is that the tools themselves are nonfree or run as network services with code we cannot see, copy, or run ourselves. In their decisions to use these tools and services – services such as BitKeeper, SourceForge, Google Code and GitHub – free software developers have made “ends-justify-the-means” decisions that trade away the freedom of both their developer communities and their users. These decisions to embrace nonfree and private development tools undermine our credibility in advocating for soft- ware freedom and compromise our freedom, and that of our users, in ways that we should reject. In 2002, Linus Torvalds announced that the kernel Linux would move to the “Bit- Keeper” distributed version control system (DVCS). While the decision generated much alarm and debate, BitKeeper allowed kernel developers to work in a distributed fashion in a way that, at the time, was unsupported by free software tools – some Linux developers decided that benefits were worth the trade-off in developers’ freedom. Three years later the skeptics were vindicated when BitKeeper’s owner, Larry McVoy, revoked several core kernel developers’ gratis licenses to BitKeeper after Andrew Tridgell attempted to write a free replacement for BitKeeper. Kernel developers were forced to write their own free software replacement: the project now known as Git. Of course, free software’s relationships to nonfree development tools is much larger than BitKeeper.
    [Show full text]
  • This Book Doesn't Tell You How to Write Faster Code, Or How to Write Code with Fewer Memory Leaks, Or Even How to Debug Code at All
    Practical Development Environments By Matthew B. Doar ............................................... Publisher: O'Reilly Pub Date: September 2005 ISBN: 0-596-00796-5 Pages: 328 Table of Contents | Index This book doesn't tell you how to write faster code, or how to write code with fewer memory leaks, or even how to debug code at all. What it does tell you is how to build your product in better ways, how to keep track of the code that you write, and how to track the bugs in your code. Plus some more things you'll wish you had known before starting a project. Practical Development Environments is a guide, a collection of advice about real development environments for small to medium-sized projects and groups. Each of the chapters considers a different kind of tool - tools for tracking versions of files, build tools, testing tools, bug-tracking tools, tools for creating documentation, and tools for creating packaged releases. Each chapter discusses what you should look for in that kind of tool and what to avoid, and also describes some good ideas, bad ideas, and annoying experiences for each area. Specific instances of each type of tool are described in enough detail so that you can decide which ones you want to investigate further. Developers want to write code, not maintain makefiles. Writers want to write content instead of manage templates. IT provides machines, but doesn't have time to maintain all the different tools. Managers want the product to move smoothly from development to release, and are interested in tools to help this happen more often.
    [Show full text]
  • Cross-Platform Environment for Application Life Cycle Management
    International Journal “Information Theories and Applications”, Vol. 24, Number 2, © 2017 177 CROSS-PLATFORM ENVIRONMENT FOR APPLICATION LIFE CYCLE MANAGEMENT Elena Chebanyuk, Oleksii Hlukhov Abstract: “Application Lifecycle Management (ALM) integrates and governs the planning, definition, design, development, testing, deployment, and management phases throughout the application lifecycle” [OMG, 2006]. This paper is devoted to designing of ALM for supporting all software development processes. A review of papers, making strong contribution for improving software development life cycle processes is represented. This review touches three branches of investigation, namely papers, related to: (1) improving of communication processes between stakeholders; (2) increasing effectiveness of some operations in software development life cycle processes; (3) developing fundamental methods and tools for performing different operations related to several software development life cycle. Then comparative analysis of such ALM environments as Visual Studio, Team Foundation Server, FusionForge, TeamForge, IBM Rational Team Concert, IBM Rational Software Architect, and IBM Rational Functional Tester, is performed. Comparison of different ALM environments’ functionality lets to formulate requirements for designing cross-platform ALM environment. Then the conceptual schema of cross-platform ALM based on Eclipse environment is proposed. All plugins’ functionalities were properly tested. Collaboration of plugins for supporting several software development tasks
    [Show full text]
  • Introducting Innovations in Open Source Projects
    Introducing Innovations into Open Source Projects Dissertation zur Erlangung des Grades eines Doktors der Naturwissenschaften (Dr. rer. nat.) am Fachbereich Mathematik und Informatik der Freien Universität Berlin von Sinan Christopher Özbek Berlin August 2010 2 Gutachter: Professor Dr. Lutz Prechelt, Freie Universität Berlin Professor Kevin Crowston, Syracuse University Datum der Disputation: 17.12.2010 4 Abstract This thesis presents a qualitative study using Grounded Theory Methodology on the question of how to change development processes in Open Source projects. The mailing list communication of thirteen medium-sized Open Source projects over the year 2007 was analyzed to answer this question. It resulted in eight main concepts revolving around the introduction of innovation, i.e. new processes, services, and tools, into the projects including topics such as the migration to new systems, the question on where to host services, how radical Open Source projects can change their ways, and how compliance to processes and conventions is enforced. These are complemented with (1) the result of five case studies in which innovation introductions were conducted with Open Source projects, and with (2) a theoretical comparison of the results of this thesis to four theories and scientific perspectives from the organizational and social sciences such as Path Dependence, the Garbage Can model, Social-Network analysis, and Actor-Network theory. The results show that innovation introduction is a multifaceted phenomenon, of which this thesis discusses the most salient conceptual aspects. The thesis concludes with practical advice for innovators and specialized hints for the most popular innovations. 5 6 Acknowledgements I want to thank the following individuals for contributing to the completion of this thesis: • Lutz Prechelt for advising me over these long five years.
    [Show full text]
  • Download, Copy, Distribute, Print, Search, Or Link to the Full Texts of Articles
    Interdisciplinary Journal of Problem-Based Learning Volume 4 | Issue 2 Article 6 Published online: 9-19-2010 An Investigation of an Open-Source Software Development Environment in a Software Engineering Graduate Course Xun Ge University of Oklahoma, [email protected] Kun Huang University of Oklahoma, [email protected] Yifei Dong Openseed Institute, [email protected] IJPBL is Published in Open Access Format through the Generous Support of the Teaching Academy at Purdue University, the School of Education at Indiana University, and the Jeannine Rainbolt College of Education at the University of Oklahoma. Recommended Citation Ge, X. , Huang, K. , & Dong, Y. (2010). An Investigation of an Open-Source Software Development Environment in a Software Engineering Graduate Course. Interdisciplinary Journal of Problem-Based Learning, 4(2). Available at: https://doi.org/10.7771/1541-5015.1120 This document has been made available through Purdue e-Pubs, a service of the Purdue University Libraries. Please contact [email protected] for additional information. This is an Open Access journal. This means that it uses a funding model that does not charge readers or their institutions for access. Readers may freely read, download, copy, distribute, print, search, or link to the full texts of articles. This journal is covered under the CC BY-NC-ND license. An Investigation of an Open-Source Software Development Environment in a Software Engineering Course Xun Ge, Kun Huang, and Yifei Dong Abstract A semester-long ethnography study was carried out to investigate project-based learning in a graduate software engineering course through the implementation of an Open-Source Software Development (OSSD) learning environment, which featured authentic projects, learning community, cognitive apprenticeship, and technology affordances.
    [Show full text]
  • [Scale=0.250]Images/Logoidl Forge : Concept Et Utilisation [Scale
    Le concept Les fonctionnalit´es Les produits disponibles Les forges utilis´ees Forge : Concept et utilisation [email protected] INRA-MIA 9 d´ecembre 2011 1 [email protected] INRA MIA BioSP / PEPI - Ecole´ IDL 2011 Le concept Les fonctionnalit´es Les produits disponibles Les forges utilis´ees Pr´eambule principales sources de ce topo projet-plume.org/ressource/faq-forge FusionForge User guide portail fusionforge 2 [email protected] INRA MIA BioSP / PEPI - Ecole´ IDL 2011 Le concept Les fonctionnalit´es Exemples Les produits disponibles D´efinition Les forges utilis´ees 3 [email protected] INRA MIA BioSP / PEPI - Ecole´ IDL 2011 Le concept Les fonctionnalit´es Exemples Les produits disponibles D´efinition Les forges utilis´ees 4 [email protected] INRA MIA BioSP / PEPI - Ecole´ IDL 2011 Le concept Les fonctionnalit´es Exemples Les produits disponibles D´efinition Les forges utilis´ees 5 [email protected] INRA MIA BioSP / PEPI - Ecole´ IDL 2011 Le concept Les fonctionnalit´es Exemples Les produits disponibles D´efinition Les forges utilis´ees 6 [email protected] INRA MIA BioSP / PEPI - Ecole´ IDL 2011 Le concept Les fonctionnalit´es Exemples Les produits disponibles D´efinition Les forges utilis´ees 7 [email protected] INRA MIA BioSP / PEPI - Ecole´ IDL 2011 qui permet ´egalement aux diff´erentes communaut´es d'utilisateurs des logiciels d'acc´eder aux sources, aux executables, aux documentations et informations diverses qui offre un espace d'´echange entre utilisateurs et concepteurs d'un projet
    [Show full text]
  • Githosting Public Git Hosting Sites
    GitHosting From Git SCM Wiki Public Git hosting sites Here are some places that provide free Git hosting. Check on GitServer if you want to host your own repository. List is limited to sites that provide explicit Git hosting, not including generic hosting sites that can be used to host Git repositories. Framework is Support for Open-source Space Free private Provider open-source? other SCM repositories (GB) repositories Assembla (http://www.assembla.com/catalog/51-free-private- No SVN/Hg/P4 Yes 0.15 1 project, 3 users git-repository-package?type=private&ad=git-wiki) Beanstalk (http://beanstalkapp.com/?ad=git-wiki) No SVN No 0.1 1 projects, 1 user Unlimited projects, 5 bitbucket.org (http://bitbucket.org/) No Mercurial Yes Unlimited collaborators 5 repositories, 5 Codetidy (https://codetidy.net) No No No 0.1 collaborators Public access 1 project (unlimited Codebase (http://codebasehq.com) No Mercurial/SVN 0.05 available repos), 2 collaborators CloudForge (http://www.cloudforge.com/) No CVS/SVN Yes 0.2 1 user only Unlimited projects, 6 Deveo (https://deveo.com/) No Mercurial/SVN No Unlimited collaborators Unlimited projects, 10 GitEnterprise (http://www.gitenterprise.com/) No No No 1 collaborators GitHub (http://github.com/) No SVN Yes Unlimited No Unlimited projects, GitLab.com (https://about.gitlab.com/gitlab-com/) Yes No Yes Unlimited unlimited collaborators Pikacode (http://pikacode.com/) No Mercurial Yes 1 No 1 project, 2 ProjectLocker (http://www.projectlocker.com) No SVN Read-only http 0.2 collaborators repo.or.cz (http://repo.or.cz/)
    [Show full text]
  • Collaborative Software Development Using R-Forge
    INVITED SECTION:THE FUTURE OF R 9 Collaborative Software Development Using R-Forge Special invited paper on “The Future of R” Forge, host a project-specific website, and how pack- age maintainers submit a package to the Compre- by Stefan Theußl and Achim Zeileis hensive R Archive Network (CRAN, http://CRAN. R-project.org/). Finally, we summarize recent de- velopments and give a brief outlook to future work. Introduction Open source software (OSS) is typically created in a R-Forge decentralized self-organizing process by a commu- nity of developers having the same or similar inter- R-Forge offers a central platform for the develop- ests (see the famous essay by Raymond, 1999). A ment of R packages, R-related software and other key factor for the success of OSS over the last two projects. decades is the Internet: Developers who rarely meet R-Forge is based on GForge (Copeland et al., face-to-face can employ new means of communica- 2006) which is an open source fork of the 2.61 Source- tion, both for rapidly writing and deploying software Forge code maintained by Tim Perdue, one of the (in the spirit of Linus Torvald’s “release early, release original SourceForge authors. GForge has been mod- often paradigm”). Therefore, many tools emerged ified to provide additional features for the R commu- that assist a collaborative software development pro- nity, namely a CRAN-style repository for hosting de- cess, including in particular tools for source code velopment releases of R packages as well as a quality management (SCM) and version control.
    [Show full text]
  • Increase in Efficiency of Free Software Projects Through Information
    Increase in efficiency of free software projects through information management Robert Schuster Working group Software Engineering Freie Universität Berlin 2005-05-17 Abstract Free and Open Source Software is an enduring undertaking. How- ever this does not mean that this development model has no flaws. This paper will present a problem of the F/OSS development pro- cess that results from insufficient care for information management. I will outline the factors that lead to this problem and propose a light- weight process enhancement to cope with it. This enhancement will 1 introduce a role named “mediator” - a person whose task it is to make it easier for new developers to enter the project and support the knowledge transfer between developers. The role is then imple- mented in the project GNU Classpath and evaluated by it's develop- ers with the help of a survey. The key aspects of mediation are sum- marized and abstracted in form of a short manual which is targetted for use by any F/OSS project. Contents 1 Introduction 3 1.1 Disambiguation . 4 1.2 Categories and conditions of F/OSS projects . 5 1.2.1 Categories . 5 1.2.2 Environment and conditions . 8 1.2.3 Definition of success . 11 2 Introducing mediation 13 2.1 Which difficulties exist? . 13 2.2 The idea of mediation . 13 2.3 Selected tasks . 14 2.4 Project properties supporting the success of the mediation role . 15 2.5 Related works . 16 3 Implementing the mediator 18 3.1 Introduction to GNU Classpath . 18 3.2 Why GNU Classpath has been chosen for exemplifying me- diation .
    [Show full text]
  • Software Studies: a Lexicon, Edited by Matthew Fuller, 2008
    fuller_jkt.qxd 4/11/08 7:13 AM Page 1 ••••••••••••••••••••••••••••••••••••• •••• •••••••••••••••••••••••••••••••••• S •••••••••••••••••••••••••••••••••••••new media/cultural studies ••••software studies •••••••••••••••••••••••••••••••••• ••••••••••••••••••••••••••••••••••••• •••• •••••••••••••••••••••••••••••••••• O ••••••••••••••••••••••••••••••••••••• •••• •••••••••••••••••••••••••••••••••• ••••••••••••••••••••••••••••••••••••• •••• •••••••••••••••••••••••••••••••••• F software studies\ a lexicon ••••••••••••••••••••••••••••••••••••• •••• •••••••••••••••••••••••••••••••••• ••••••••••••••••••••••••••••••••••••• •••• •••••••••••••••••••••••••••••••••• T edited by matthew fuller Matthew Fuller is David Gee Reader in ••••••••••••••••••••••••••••••••••••• •••• •••••••••••••••••••••••••••••••••• This collection of short expository, critical, Digital Media at the Centre for Cultural ••••••••••••••••••••••••••••••••••••• •••• •••••••••••••••••••••••••••••••••• W and speculative texts offers a field guide Studies, Goldsmiths College, University of to the cultural, political, social, and aes- London. He is the author of Media ••••••••••••••••••••••••••••••••••••• •••• •••••••••••••••••••••••••••••••••• thetic impact of software. Computing and Ecologies: Materialist Energies in Art and A digital media are essential to the way we Technoculture (MIT Press, 2005) and ••••••••••••••••••••••••••••••••••••• •••• •••••••••••••••••••••••••••••••••• work and live, and much has been said Behind the Blip: Essays on the Culture of •••••••••••••••••••••••••••••••••••••
    [Show full text]
  • The Lcg Savannah Software Development Portal
    THE LCG SAVANNAH SOFTWARE DEVELOPMENT PORTAL Y. Perrin, D. Feichtinger#1, F. Orellana#2, CERN, Geneva, Switzerland, M. Roy, FSF France Abstract A web portal has been developed, in the context of ORGANIZATION AND the LCG/SPI project, in order to coordinate workflow FUNCTIONALITY and manage information in large software projects. It is LCG Savannah is organized in projects which are a development of the GNU Savannah package and grouped according to their type as entered at offers a range of services to every hosted project: Bug / registration time. All projects of the same type inherit a support / patch trackers, a simple task planning system, number of common characteristics and default values news threads, and a download area for software with, of course, the possibility to define new types and releases. Features and functionality can be fine-tuned to override the defaults for any given project. on a per project basis and the system displays content LCG Savannah should be seen as a development and grants permissions according to the user's status front-end for every project it hosts. It provides, in a (project member, other Savannah user, or visitor). A fully configurable and integrated way, the main highly configurable notification system is able to functions required by any significant software channel tracker submissions to developers in charge of development project. These include bug and support specific project modules. request tracking, task management, automatic The portal is based on the GNU Savannah package notification of people concerned, access to CVS which is now developed as 'Savane' with the support of repository, download area, news and mailing lists.
    [Show full text]