Processo do Ciclo de Vida dos Projetos
O acesso e a utilização do conteúdo das metodologias TenStep são sujeito aos termos e as condições de uso, Clique aqui para ver este documento.
Overview of the LifecycleStep™ methodology
Projects are the way that most new work gets delivered. All projects have certain characteristics in common. They all have a beginning and an end. In other words, they do not continue on forever. Projects result in the creation of one or more deliverables. Projects also have assigned resources - either full time, part time or both. There are other characteristics as well. All organizations can have projects. Projects can include building a house or office building, planning and executing a marketing campaign, upgrading desktop operating systems, installing a new phone system, developing an IT business application, etc.
Projects can be managed using a common set of project management processes. In fact, a similar set of project management processes can be utilized regardless of the type of project. All projects should be defined and planned and all projects should manage scope, risk, quality, status, etc. Project management, however, defines the overall management and control processes for the project. Project management does not actually result in the project execution. At some point, you still need to define the actual activities necessary to build the house, execute the marketing campaign, develop the IT business application and upgrade the desktop operating systems. These activities are referred to as the project lifecycle and the project lifecycle is the focus of LifecycleStep.
The typical waterfall lifecycle model is described first in detail. The steps are as follows:
The Analysis Phase is where the project lifecycle begins. The only exception is a situation where you have broken a large project down into smaller components. In that case, you may have an entire project that is only focused on the Analysis Phase, while the next project may start at the Design Phase. The Analysis Phase is where you break down the high-level Project Definition into the more detailed business requirements. The Analysis Phase is also the part of the project where you identify the overall direction that the project will take through the creation of the project strategy documents.
Gathering requirements is the main attraction of the Analysis Phase. The process of gathering requirements is usually more than simply asking the users what they need and writing their answers down. Depending on the complexity of the application, the process for gathering requirements has a clearly defined process of its own. This process consists of a group of repeatable processes that utilize certain techniques to capture, document, communicate, and manage requirements. This formal process, which will be developed in more detail, consists of four basic steps.
The project team should have a nice set of requirements to work from, a set of direction setting strategies and a Conceptual Systems Design. There might be some on the project team that would say that this is enough to start the Construct Phase. However, it is not. The design process comes next. Even if the project was small and the requirements were simple, there is still a mental design process that occurs in between understanding the requirements and starting to construct. Design becomes more and more important as the project becomes larger, more complex and impacts more and more people. Once you complete the requirements, you will typically see a myriad of alternatives for construction. These alternatives include the tools and technology you will you utilize, the scalability of the solution, and the structure of the components you will build. In essence, the Design Phase is where you look at the many potential solutions and narrow down the choices to determine the most effective and efficient way to construct the solution. The Design Phase answers the questions about "how" you will build the best solution for your organization and your environment.
At the end of the Design Phase, you will have a logical solution defined. The solution is "logical" because it exists on paper or in a design tool. This logical solution is then passed to the Construct Phase, where the logical solution is turned into a physical solution. However, the people that specialize in constructing the solution will not have to worry about the myriad of possibilities. That guidance will be provided to them through the work in the Design Phase. The people working to construct the solution can use their talents to build the solution based on the deliverables produced during the Design Phase.
Depending on your point of view, the Construct Phase is where the "rubber meets the road". This is the point in the project when we actually start to construct the solution. In an IT development project this is the time to start writing program code. If you followed the LifecycleStep process so far, your construct team has a lot of guidance. They have a complete set of design specifications showing how the application should be structured and organized. They have design specifications for all screens, reports and programs. At this point, then, the project manager should be able to start handing out the various design specifications and the construct team can start to build the solution.
The Construct Phase is also where we will create support documentation such as a Disaster Recovery Manual and Users Manual. In essence these documents are also being "constructed" and so the logical place to create them is the Construction Phase. Depending on the type of document, the support material can also be tested in the Test Phase and then executed or implemented in the Implementation Phase.
We test our work for two main reasons. First, we want to ensure that the solution meets the business requirements. For instance, if a specific business transaction follows a logical path from A -> B -> C -> D, we want our testing to prove that this, in fact, happens. Second, we test to catch errors and defects. These may be programming errors, or errors that were introduced earlier in the development lifecycle. In other words, we need to prove that our solution is correct, while at the same time proving that there are no errors or defects. You may not catch many errors, but you still need to prove that the solution meets the business requirements.
Regardless of the type of project you are on, you want to catch as many errors as early in the lifecycle as possible. There are projects that purposely blast through the analysis, design and coding phases with a philosophy that they will fix all the problems in testing. This is usually disastrous. It’s not so bad to correct programming errors that you discover in your testing. It is much more difficult when you realize that a design error resulted in information missing from your database. It is even harder if you discover that your analysis missed an entire business process.
At the same time, you cannot ensure that your software is perfect. Even with the best tools, it is impossible to test every logic path of every program. Therefore, you cannot ever be sure that your code is bug-free. There are times when software that has been stable for ten years suddenly breaks through an unlikely combination of circumstances that never occurred before. (These are "subtle" bugs.)
Implementation refers to the final process of moving the solution from development status to production status. Depending on your project, this process is often called deployment, go-live, rollout and installation. For the purpose of LifecycleStep, all of these terms are synonymous with "implementation".
There is no single way to implement an application. It depends on the characteristics of your project and the solution. Some implementations are as easy as saying "we are now live." This type of implementation can work when the solution is brand new and you are developing and testing in what will become the production environment. In these cases, implementation is just a state of mind. One day the solution is in development and the next day it is in production. What could be easier?
When we think about implementation, we should always start by understanding the level of complexity involved. If the implementation is relatively straightforward, then there is no reason for elaborate implementation processes. However, most projects have a number of implementation events to plan for and execute successfully.
Other Lifecycle Models
In addition to the classic waterfall model described above, LifecycleStep also describes other popular lifecycle models, including Rapid Application Development, enhancements, Agile and Research and Development. Although the waterfall model can be used on all projects, other models may be more effective given the nature of the project and your organizational environment.
Tudo que você precisa para gerenciar projetos!
A TenStep Brasil oferece um número significativo de serviços de consultoria para ajudar a sua organização a destravar o potencial de seus processos de negócio. Todos os serviços serão personalizados de acordo com as necessidades da sua organização. Contate-nos para discutirmos sobre suas necessidades.
email@example.com ou +55 51 3665 6242