2009-11-25 26 views
5

Me especialicé en un excelente programa de ingeniería de software, y me enseñaron la importancia del proceso y los pasos de un modelo de ciclo de vida. Estoy familiarizado con el modelo clásico de "cascada". Aunque exploramos otros, la cascada hace un buen trabajo al enumerar las posibles tareas, sin importar cuán astuto o astuto sea su modelo de nueva era. Entonces es un buen punto de partida.Modelos de ciclo de vida del software para desarrollo web

Cuando estaba terminando la escuela, .NET estaba en aumento, así que no cubrimos nuevas formas de abordar el desarrollo web con un buen modelo de ciclo de vida. Ahora trabajo en una tienda web y estamos tratando de establecer algunas buenas prácticas y procesos donde no tenemos ninguno. Como solo me gradué hace 6 años y tengo experiencia en entornos de software más estructurados, soy el tipo que presenta algunas cosas nuevas.

En este momento la oficina es solo un caos. Recibí muchas risas de un gerente de proyecto ayer diciéndole que "nuestro proceso es el sonido de una mano aplaudiendo". Estamos desesperados por el proceso, pero no sabemos qué hacer. Todo el mundo está adoptando un enfoque al revés de querer una herramienta que les diga cómo hacer las cosas, cuando deberíamos reunir los requisitos primero.

Somos una tienda de 9 personas en total. Necesitamos poder hacer el trabajo rápido. ¿Cuáles son algunos buenos modelos de desarrollo de software que son estándares de la industria ahora? Todos los demás están haciendo esto, así que tenemos que aprender, esta tienda ha estado construyendo sitios desde 1995. ¿Dónde puedo encontrar buenos recursos en las mejores prácticas? Somos una tienda LAMP.

EDITAR: También debería agregar, estaríamos buscando agregar un proceso a los sitios web existentes. Así que no estamos construyendo nuevos proyectos, que es a lo que estos modelos siempre se dirigen. Estamos manteniendo monstruos de sitios de 10 años (vale más como 3-5 años, pero los clientes son más antiguos) y manteniéndolos en funcionamiento, al tiempo que agregamos nuevas funciones de forma incremental. ¿Puede algo de esto ayudar allí?

Respuesta

0

Agile y eXtreme Programming (XP) ambos funcionan bien. También he tenido buenas experiencias con el Rational Unified Process (RUP).

Todos ellos son iterativos, lo que les da una ventaja sobre Waterfall ya que no te quedes atascado implementando grandes cantidades de funcionalidad sin visibilidad de cómo se va a percibir (sin mencionar que los usuarios obtienen trozos más pequeños de funcionalidad mucho más a menudo que la versión monolítica tradicional).

RUP hace un gran trabajo al reunir requisitos por adelantado. Tanto Agile como XP emplean algunas técnicas realmente interesantes para garantizar la calidad con un giro rápido. Echaré un vistazo a los tres y descubriré cuál sería la mejor opción para tu equipo (o canibalizaré las mejores partes de las tres para tu aplicación).

4

Lo que muchas tiendas están utilizando ahora es el método de desarrollo ágil. Es escalable de un único desarrollador a tantos como puedas tener. El uso de este método facilita el seguimiento de la cantidad de trabajo que cualquier persona podrá completar en un período de tiempo determinado. Echa un vistazo a la página de Wikipedia que describe la metodología:

http://en.wikipedia.org/wiki/Agile_software_development

También hay un gran código abierto y herramientas gratuitas para ayudar a configurar equipos, proyectos, iteraciones, y todo.

Sin embargo, diré que solía trabajar en una tienda de cataratas, ya menos que la gerencia esté a bordo con el cambio, no conseguirá nada tratando de cambiar de cascada a ágil.

EDITAR (En respuesta a la edición de la pregunta): ¡SÍ! Agile definitivamente lo ayudará con las versiones de mantenimiento y mejora de proyectos existentes, así como posibles versiones de refactorización. Es todo incluido.

~ ~ md5sum

+0

1 para todo el mundo tiene que estar a bordo o no va a funcionar. gestión Y desarrolladores. – kenwarner

+0

Es bueno tener a sus desarrolladores existentes a bordo, pero SON reemplazables si no quieren cooperar, y además, no he conocido a ningún desarrollador "bueno" que haya tenido problemas para trabajar bajo una metodología ágil. Lamentablemente, no puedes despedir a tu jefe. El arquitecto de soluciones donde solía trabajar era responsable de elegir la metodología utilizada, y, aunque era un tipo agradable, no creo que pudiera resolver la prueba FizzBuzz en menos de 3000 líneas de código C#. Dijo que le gustaba Scrum, y que éramos ágiles, pero nos parecíamos más a una especie de cascada rota. Una cascada sin agua tal vez ... –

0

Scrum, que es una práctica ágil, habría una sugerencia para tratar de controlar a algunos de los caos. ¿Qué prácticas tienen los gerentes de proyecto? Esa sería una de las preguntas más importantes ya que quizás las risas provienen de alguien que se siente amenazado en su posición.

EDIT: Al igual que otra cosa a tener en cuenta, es lo que tienen estos en su lugar:

  • Pruebas - ¿Tiene algún pruebas automatizadas?
  • Integración continua: ¿lo conoce? Úselo para nada?
  • Control de fuente: ¿tiene sucursales, procedimientos o registros?
  • Metodología de desarrollo - ¿Ad hoc o "solo haz lo que funciona" mentalidad?
  • Ambientes: ¿hay entornos de desarrollo, prueba y producción?
+0

no, las risas fueron genuinas porque él sabe que tengo razón. Literalmente no hay proceso. Cada gerente de proyecto hace lo suyo. Hablamos entre nosotros y hacemos el trabajo "hecho", y luego terminamos apagando incendios más tarde. Verdaderamente caos. – tkotitan

+0

Al menos se hace algo de trabajo. Me imagino que en algunos lugares no se hace nada debido a que todos los dedos señalan de quién es la culpa de que no se haga nada. –

+0

Sí, pero hay días, mejor aún, semanas, incluso meses, ¡donde mataría por algún tiempo de inactividad! :) Pero estás en lo correcto. Tenemos un increíble espíritu de colaboración en mi oficina, sin culpa, solo trabajando juntos para resolver el problema y ayudar a los clientes. Nunca he visto algo así. – tkotitan

0

The hype is Agile. Amo los principios detrás de Lean que tiene sus raíces en la comunidad ágil.

0

Creo que un buen punto de partida es Joel Test. Aquí está el Joel Test for web development. Una vez que le eches un vistazo a esto, sabrás por dónde empezar a mejorar las cosas. Estos son los básicos.

1

Sé que esta es una publicación realmente antigua y el póster original no ha estado activo recientemente. Sin embargo, me pregunto si esto podría no ser un problema actual que aún necesita una respuesta. Soy un novato en StackOverflow, pero tengo una idea de este problema.

Hay una serie de cosas que abordar para esta publicación. En primer lugar, desea conocer el "mejor" tipo de modelo SDLC. Hay muchos modelos diferentes, pero no una respuesta correcta. Dependerá de lo que esté tratando de lograr y de cómo su equipo funcione mejor.

En función de su publicación, una combinación de Agile y Scrum sería un buen enfoque para gestionar su pedido de procesos. El ágil le permitirá trabajar más rápido en iteraciones, mientras que el Scrum ayudará a su equipo a identificar tareas, responsabilidades, prioridades, desafíos y soluciones.

Al establecer las mejores prácticas y metodologías es importante, se debe abordar la identificación del proceso y la atención al método SDLC. La organización debe evaluar qué proyectos se deben realizar, quién y qué se necesita, problemas y posibles soluciones, y la estructura de desglose del trabajo que ayudará a gestionar las necesidades de cada tarea para crear el proceso.

** Por ejemplo, ** Si necesita agregar una página a un sitio existente, quizás cree una guía de proceso (ya que cada página será diferente, como lo será el cliente). Es posible que tenga un proceso similar al siguiente: 1. Reúna las inquietudes, los requisitos, las ideas, las expectativas, etc. del cliente .: (Entrevista de requisitos) 2. Normas existentes/identificación de implementación 3. Enumere cada tarea necesaria para completar la adición de página 4. Cree una estructura de desglose de trabajo elaborada (WBS) y un calendario/fecha límite para cada tarea 5. Cree un sistema de gestión de progreso (este es un nuevo proceso por desarrollar) 6. Delega tareas/plazos/equipos/etc. 7. Establezca un equipo de comunicaciones 8. Revisión/progreso de la prueba 9.Ajuste las tareas/WBS/calendario según los métodos Agile/Scrum establecidos.
10. Repita hasta completar/cumple los requisitos.

Puede tener configurados los procesos Agile y Scrum antes de configurar otros procesos, y puede ajustarlos hasta que funcionen para los servicios que proporciona.

No tiene que usar el Agile o Scrum o una combinación específica de las disponibilidades según lo que hacen los demás. La belleza de tener tantos para elegir es que puedes mezclarlos y combinarlos hasta que encuentres lo que funciona para tu proyecto (s).

Para que cualquiera de sus procesos sea efectivo, tendrá que comunicarse con su equipo lo que funciona, no funciona o lo que funciona, pero necesita mejoras. Algunas de las herramientas por las que he oído grandes elogios son: 1. Slack dot com: esta es una herramienta de gestión de proyectos en equipo. 2. G Suite: esta es una suite de aplicaciones pagada, pero también puede usar Gmail, Google Drive, Hojas de cálculo, Documentos, Calendario, Hangouts, Google + y sus otras herramientas gratuitas.
3. Trello dot com: Esta es una junta de colaboración genial que uso con algunos amigos para mis proyectos. Puedes tener paneles personales o tableros compartidos: calendarios, equipos, conexiones de correo electrónico, recordatorios, etc. Realmente he disfrutado esta herramienta de sitio.

Estas son solo algunas de las que creo que son decentes, pero hay más que ofrecen características diferentes, por lo que puede elegir lo que funcione para usted.

Finalmente, la gestión de proyectos es una tarea desalentadora, pero la que usted contrató debería haber sido capaz de ayudarlo con este dilema. Sin embargo, aquí hay algunos sitios que pueden ayudarlo a hacer algo de su propia gestión de proyectos: 1. PMI punto org: este es el instituto de gestión de proyectos. Incluso si usted no es el gerente de proyecto y no quiere serlo, aquí hay ideas y consejos realmente geniales para cualquier persona en un puesto de gestión que supervisa la logística de los proyectos.
2. SDLC PM: Este sigue siendo PMI.org, pero este enlace es específico para su pregunta. 3. Projectmanager.com: Esto tiene herramientas para la gestión de proyectos. También hay un enlace aquí con recursos adicionales.

Bueno, espero que esta información ayude a usted y a los demás. Hubiera tenido más enlaces, pero necesito más puntos de reputación. Sin embargo, intenté colarlos allí. Atentamente.

-AudreyLin

Cuestiones relacionadas