You are on page 1of 5

Software Development Methodology It is a system development methodology that refers to the framework that is used to structure, plan, and

control the process of developing an information system. Types of SDM Waterfall Model Prototyping Rapid Application Development (RAD)

The basic principles are: Project is divided into sequential phases, with some overlap and splashback acceptable between phases. Emphasis is on planning, time schedules, target dates, budgets and implementation of an entire system at one time. Tight control is maintained over the life of the project via extensive written documentation, formal reviews, and approval/signoff by the user and information technology management occurring at the end of most phases before beginning the next phase.

Waterfall Model A sequential development approach, in which development is seen as flowing steadily downwards (like a waterfall) through the phases of requirements analysis, design, implementation, testing (validation), integration, and maintenance. The first formal description of the method is often cited as an article published by Winston W. Royce in 1970

Prototyping The development approach of activities during software development, the creation of prototypes, i.e., incomplete versions of the software program being developed. The basic principles are: Not a standalone, complete development methodology, but rather an approach to handle selected parts of a larger, more traditional development methodology (i.e. incremental, spiral, or rapid application development (RAD)). Attempts to reduce inherent project risk by breaking a project into smaller segments and providing more ease-of-change during the development process. User is involved throughout the development process, which increases the likelihood of user acceptance of the final implementation. Small-scale mock-ups of the system are developed following an iterative modification process until the prototype evolves to meet the users requirements. While most prototypes are developed with the expectation that they will be discarded, it is possible in some cases to evolve from prototype to working system. A basic understanding of the fundamental business problem is necessary to avoid solving the wrong problem

Rapid Application Development (RAD) A software development methodology, which involves iterative development and the construction of prototypes. Rapid application development is a term originally used to describe a software development process introduced by James Martin in 1991. The basic principles are: Key objective is for fast development and delivery of a high quality system at a relatively low investment cost. Attempts to reduce inherent project risk by breaking a project into smaller segments and providing more ease-of-change during the development process. Aims to produce high quality systems quickly, primarily via iterative Prototyping (at any stage of development), active user involvement, and computerized development tools. These tools may include Graphical User Interface (GUI) builders, Computer Aided Software Engineering (CASE) tools, Database Management Systems (DBMS), fourth-generation programming languages, code generators, and objectoriented techniques. Key emphasis is on fulfilling the business need, while technological or engineering excellence is of lesser importance. Project control involves prioritizing development and defining delivery deadlines or timeboxes. If the project starts to slip, emphasis is on reducing requirements to fit the timebox, not in increasing the deadline. Generally includes joint application design (JAD), where users are intensely involved in system design, via consensus building in either structured workshops, or electronically facilitated interaction. Active user involvement is imperative. Iteratively produces production software, as opposed to a throwaway prototype. Produces documentation necessary to facilitate future development and maintenance. Standard systems analysis and design methods can be fitted into this framework.

Project Management Methodologies The various ways in which projects are initiated, planned, and executed unto completion. Traditional project management A step-by-step approach through each of the projects five stages initiation, planning, execution, monitoring, and completion. Each stage is broken down and begins only when the previous stage has been completed (though it is not uncommon for traditional projects to cycle back to a previous stage). This methodology is most common in construction projects where the work is very linear and rarely subject to significant change. Five process groups: Initiation Planning and Design Execution Monitoring and Controlling Closing

1. Initiation All projects start with an idea for a product, service, or other desirable outcome. The initiation process group determines the nature and scope of the project. If this stage is not performed well, it is unlikely the project will be successful in meeting the businesss needs. The key project controls needed, are an understanding of the business environment and making sure all necessary controls are incorporated into the project. Any deficiencies should be reported and a recommendation made to fix them. The first project document is the project charter, which includes: Business case Scope and deliverables Objectives Resources needed Milestone plan and timeline Cost estimate Risks and issues Dependencies The charter answers the basic question, "What are we trying to do?"

Creating a work breakdown structure Identifying deliverables Risk planning Communication planning This information forms the project contract, used to gain formal approval to begin work.

3. Execution Execution consists of the processes used to complete the work defined in the project management plan, to accomplish the project's objectives. The execution process involves coordinating people and resources, as well as integrating and performing the activities of the project. The deliverables are produced as outputs from the processes performed as defined in the project management plan.

4. Monitoring and Controlling The monitoring and controlling process group involves managing and tracking the project, so potential problems can be identified quickly and corrective action taken. To do this the project management plan is used. Monitoring and controlling includes: Measuring the ongoing project activities (where are we, against where we should be?) Monitoring the project variables (cost, effort, scope) against the project management plan and the project baseline (where should we be?) Identifying corrective actions to address risks and issues (how can we get back on track?) Managing changes using our change control process (what is the impact of this change?) The monitoring and controlling process group ends once the project has achieved its goals and objectives as detailed in the project contract. A project may be stopped before completion for various reasons, including changes in the business, lack of resources or higher priorities.

2. Planning and Design After initiation, the project is planned to an appropriate level of detail. The main purpose is to plan time, cost and resources adequately to estimate the work needed and to manage risk effectively during project execution. This is recorded in the project management plan. As with the initiation process group, a failure to plan adequately lessens the project's chances of success. Project planning includes: Developing the scope statement Developing the schedule (Gantt chart) Developing the budget Selecting the team

5. Closing Project closing is an important part of project management, sometimes overlooked. A project that is not closed will continue to consume resources. Closing a project means finishing all activities across all process groups, splitting up the project team, and signing off the project with the customer. At this point it is important to know how well the project has performed. This is done using the project closure report. It communicates how well the project has performed against its original business case, quality measures, cost, duration and tolerances. Rather than leave valuable project experiences locked in peoples heads, it's a good idea to complete and publish a lessons learned report. This is used to pass on valuable learning that can be applied to future projects.

Event Chain Methodology (ECM) Used for projects with tasks that initiate chains of events. Each task, upon completion, causes a new event in which a new task must be worked on. Because these events can be anticipated or unanticipated, risky or safe, they must be managed very carefully in order to achieve the desired results. ECM is very different from traditional project management where each stage of the project is predetermined and executed in a linear fashion. PRINCE2 PRINCE2 is a structured approach to project management, released in 1996 as a generic project management method. It combined the original PROMPT methodology (which evolved into the PRINCE methodology) with IBM's MITP (managing the implementation of the total project) methodology. PRINCE2 provides a method for managing projects within a clearly defined framework. PRINCE2 describes procedures to coordinate people and activities in a project, how to design and supervise the project, and what to do if the project has to be adjusted if it does not develop as planned. In the method, each process is specified with its key inputs and outputs and with specific goals and activities to be carried out. This allows for automatic control of any deviations from the plan. Divided into manageable stages, the method enables an efficient control of resources. On the basis of close monitoring, the project can be carried out in a controlled and organized way. PRINCE2 provides a common language for all participants in the project. The various management roles and responsibilities involved in a project are fully described and are adaptable to suit the complexity of the project and skills of the organization.

Critical Path Method (CPM) Associates each task with a time duration then determines the resources necessary to carry out the project within that time. As one project management professional puts it, The critical path is simply all the tasks that determine the end date in your project schedule. If one of those tasks is late by one day, then your project end date will be extended by one day. In other words, the critical path method aligns all tasks to bring about the greatest possible time-efficiency. Critical Chain Project Management (CCPM) In contrast to the critical path method in the way that it focuses on resources rather than time constraints. The critical chain is essentially the sequence of tasks that the team members are able to efficiently handle. When a project has limited resources and its time schedules are less strict, CCPM is used to distribute work in a flexible, collaborative way.

PRiSM (Projects integrating Sustainable Methods) A structured project management method developed to align organizational sustainability initiatives with project delivery. By design, PRiSM is a repeatable, practical and proactive methodology that ensures project success while decreasing an organization's negative environmental impact. The methodology encompasses the management, control and organization of a project with consideration and emphasis beyond the project life-cycle and on the five aspects of sustainability. PRiSM is also used to refer to the training and accreditation of authorized practitioners of the methodology who must undertake accredited qualifications based on competency to obtain the GPM certification. Process-based management Also furthering the concept of project control is the incorporation of process-based management.

Extreme project management Planning and feedback loops in Extreme programming (XP) with the time frames of the multiple loops. In critical studies of project management it has been noted that several PERT based models are not well suited for the multi-project company environment of today. Most of them are aimed at very large-scale, onetime, non-routine projects, and currently all kinds of management are expressed in terms of projects. Using complex models for "projects" (or rather "tasks") spanning a few weeks has been proven to cause unnecessary costs and low maneuverability in several cases. Instead, project management experts try to identify different "lightweight" models, such as Extreme Programming and Scrum. The generalization of Extreme Programming to other kinds of projects is extreme project management, which may be used in combination with the process modeling and management principles of human interaction management. Benefits realisation management Benefits realization management (BRM) enhances normal project management techniques through a focus on agreeing what outcomes should change (the benefits) during the project, and then measuring to see if that is happening to help keep a project on track. This can help to reduce the risk of a completed project being a failure as instead of attempting to deliver agreed requirements the aim is to deliver the benefit of those requirements. An example of delivering a project to requirements could be agreeing on a project to deliver a computer system to process staff data with the requirement to manage payroll, holiday and staff personnel records. Under BRM the agreement would be to use the suppliers suggested staff data system to see an agreed reduction in staff hours processing and maintaining staff data (benefit reduce HR headcount).

Agile project management The iteration cycle in agile project management Agile project management approaches based on the principles of human interaction management are founded on a process view of human collaboration. It is "most typically used in software, website, and technology, creative and marketing industries." This contrasts sharply with the traditional approach. In the agile software development or flexible product development approach, the project is seen as a series of relatively small tasks conceived and executed as the situation demands in an adaptive manner, rather than as a completely pre-planned process. Lean project management Lean project management uses principles from lean manufacturing to focus on delivering value with less waste.

You might also like