Que es la gestion de software? 

la planificacion, supervision y control del proceso, del personal, la evolcion del software desde su inicio hasta su implementacion y mantenimiento

Responde a estas cuatro preguntas:

Quien lo hace? 

porque es importante? 

cuales son los pasos?

 cual es el producto obtenido ? 


Quien lo hace? 


un ingeniero de software

se dedican a diferentes areas de acuerdo al tipo de proyecto que se tenga

los gestores del proyecto:

es una actividad tradicional, la parte de gestion esta relacionada con personal profesoinal capacitado en planificacion, supervizacion y control del trabajo de equipo en un proyecto, pueden tener o no conocimiento de informatica

Hay un area de especializacion 

Los gestores ejecutivos:

Los emprendedores que generan un modelo de negocio que contratan un equipo para desarrollar el proyecto, ven lo que quieren implementar y establecen una relacion con los gestores de proyecto y los ingenieros de softwware

Porque es importante? 

si bien se ha mejorado en tecnologia y eficiencia, hay cosas importantes que son complejos, es importante las tareas de planificacion, supervision y control

es importante que todos los proyectos de software puedan ser gestionados, para ello se utilizan 4 elementos o 4 P's

Personal, Producto, Proceso, Proyecto 

es importante que todos los proyectos tengan esa gestion

esto es importante porque si no sabemos como desarrollarlo nos enfrentaremos a un monton de inconvenientes y problemas en el desarrollo del proyecto
  • Personal: funciona de forma organizada, para desarrollar el software de forma efectiva, se debe tener en cuenta las cualidades de cada individuo para la realizacion del proyecto 
  • Producto: tiene que haber comunicacion con el cliente para que sea comprensible el ambito y los requisitos, es importante porque suele existir una serie de cambios que satisfagan las necesidades 
  • Proceso: se debe tener la informacion muy clara, la cantidad de horas de trabajo, las reuniones presenciales o virtuales todo para tener un proceso adecuado tanto para el personal como para el producto, se debe establecer las metas, poder controlar su avance, verificar su cumplimiento 
  • Proyecto: se debe planificar para estimar el esfuerzo y el tiempo para tomar en cuenta, una buena planificacion afecta de forma directa a los costo
Cual es el producto obtenido? 
el resultado es el plan de proyecto, define el proceso y las tareas a realizar, el personal y los mecanismos que evaluaran los riesgos, control de cambios y evaluacion de la calidad
si nosotros somos una empresa que realizamos software necesitamos hacer nuestra planificacion (saber que necesitamos, con que capital contamos, de quienes esta conformado el equipo de trabajo, que tareas se deben realizar, etc. ) permite controlar riesgos y evaluar cambios para estimar la calidad
esto 
El espectro de la gestion
un gestion que no establece una buena comunicacion con el usuario al principio de la evolucion del proyecto se arriesga a construir una solucion elegante para un problema equivocado 

si yo no planifico bien cuando hare las cosas, voy delegando y postergando el resultado podria ser desastrozo, todo necesita un grado de planificacion 

Si un administrador presta poca atencion al proceso corre el riesgo de arrojar metodos tecnicos y herramientas eficaces al vacio

si no prestamos atencion, si no hemos hecho pruebas correctas, independientemente cuanto esfuerzo le pongamos a lo demas el proyecto podria tener muchas deficiencias palpables, se requiere hacer pruebas respectivas (pruebas de carga, de estres, etc. )

El gestor que realiza un proyecto sin un plan solido arriesga el exito del producto 

El personal: es tan importante que se ha desarrollado un modelo de madurez de capacidad de gestion de personal MMCGP: que tiene estos elementos ayudando a atraer, aumentar, motivar, desplegar y retener talento, es necesario para mejorar la capacidad de desarrollo de software, elegir mal al personal puede hacer que el proyecto no se concluya satisfactoriamente o comprometer el exito del mismo 

OSMOSIS: 

  • Atraer: se realizan actividades que hagan que las personas quieran participar 
  • Aumentar: aumentan el talento enseñandoles mas talentos incrementando su potencial
  • Motivar: se motiva con beneficios que satisfagan las necesidades del personal 
  • Desplegar: se hace que las personas capacitadas compartan su conocimiento o lo demuestren a los demas
  • Retener: se debe tener calidad y ofrecerla para poder retener al personal 
MMCGP define las siguientes areas clave practicas para el personal de software
nos brindan mayuores probabilidades de implementar formas efectivas y practicas de ingenieria de software
  • Reclutamiento
  • Eleccion
  • Entrenamiento
  • Desarrollo de la carrera
  • Gestion del desempeño
  • Diseño de la organizacion
  • Desarrollar cultura de equipo 
Quienes participan?
  • Gestores ejecutivos definen los aspectos del negocio, hacen un plan de negocio, logran concretar ideas o proyectos que se les presentan, estan de cara a hacer negociaciones con los clientes, estan capacitados en modelos de negocio, organizacion, gestion, comunicacion y otras habilidades blandas
  • Profesionales: proporcionan habilidades tecnicas necesarias para realizar la ingenieria, estan capacitados en varias disciplinas cada quien con sus propias especializaciones que pueden cubrir determinadas areas necesarias en el proyecto
  • Gestores de proyecto: planifican, motivan, organizan y controlan a los profesionales que realizan el software, realizan controles 
  • LIDERES DEL EQUIPO se debe utilizar la tecnica MOI Modelos operantes internos, se debe hacer procesos de control al lider del equipo, quien es el que reporta los indicadores de produccion 
Producto: Antes de planificar un proyecto se tiene que tener en cuenta
  • los objetivos y el ambito del producto
  • considerar soluciones y alternativas (se deben considerar la parte economica, la parte tecnica, que tipo de metodologias o herramientas son las mas adecuadas segun el conocimiento o tiempo que se tenga)
  • identificar las dificutades tecnicas o de gestion: se debe considerar todas las cosas que podrian afectar en costo, tiempo o recursos al proyecto, como la consideracion de las capacidades necesarias en el proyecto, la complejidad, el tiempo, las cosas adicionales que se deben tomar en cuenta
Sin esta informacion es imposible definir de forma efectiva o hacer restimaciones de:
  • costos: 
  • valorar los riesgos efectivamente: 
  • subdivision realista de las tareas del proyecto 
  • una planificacion del proyecto asequible que proporcione una indicacion fiable del proyecto 
es importante que esos elementos esten bien identificados

    el desarrollador y el cliente deben reunirse para definir los objetivos del producto que nos ayudara a definir los requerimientos, es el primer paso antes de iniciar el proyecto 



los objetivos identifican las metas generales del proyecto sin considerar como se conseguiran 


El ambito del proyecto: debe ser comprensible a niveles de gestion y tecnico, debe tener datos especificos y medibles:

  • Datos cuantitativos: que se puedan medir ocomo el numero de usuarios, tiempo de respuesta
  • Estrategias y limitaciones: se deben tomar en cuenta de que recursos disponemos y cuales son nuestras limitaciones, por ejemplo el coste del producto, tamaño de la memoria, equipos de hardware
  • Factores que reducen riesgos: algoritmos deseados 

Producto:
podemos descomponer el problema en partes para poder llegar a obtener una solucion si identificamos nuestros objetivos principales y los empezamos a descomponer en nuestro producto solucion 
Contamos con un marco de trabajo, desde donde podemos establecer un plan detallado para el desarrollo de software, hacemos todo un proceso para delimitar el producto apartir de ahi ya buscamos modelos de procesos que podamos aplicar al equipo de proyecto

Modelo prescriptivo del proceso de software:
  • Comunicacion: inicio del proyecto recopilacion de requisitos
  • planeacion: se realiza el proceso de verificacion de requisitos y de propuesta del proyecto
  • modelado: tenemos la parte del analisis y diseño 
  • construccion: realizamos el proceso de desarrollo y programacion
  • despliegue: realizamos el despliegue de la entrega y soporte