Explain the relationship between project management and software development

explain the relationship between project management and software development

First the product is conceived, then developed, then introduced and managed in Project management, on the other hand, consists of the application of processes, Explaining The Dynamic Between Project Managers and Product Managers. "Hello, Can someone please explain further the relationship between the software development lifecycle and the project management lifecycle? How do these. existing software development processes lack of more project management skills in their is defined as the management of people and other resources by a project . RUP and OPEN regarding the relationship of these two classes with a role.

A subset of risk management is Opportunity Managementwhich means the same thing, except that the potential risk outcome will have a positive, rather than a negative impact. Though theoretically handled in the same way, using the term "opportunity" rather than the somewhat negative term "risk" helps to keep a team focused on possible positive outcomes of any given risk register in their projects, such as spin-off projects, windfalls, and free extra resources.

explain the relationship between project management and software development

Requirements management is the process of identifying, elicitingdocumenting, analyzing, tracingprioritizing and agreeing on requirements and then controlling change and communicating to relevant stakeholders.

New or altered computer system [1] Requirements management, which includes Requirements analysisis an important part of the software engineering process; whereby business analysts or software developers identify the needs or requirements of a client; having identified these requirements they are then in a position to design a solution.

Change management is the process of identifying, documenting, analyzing, prioritizing and agreeing on changes to scope project management and then controlling changes and communicating to relevant stakeholders. Change impact analysis of new or altered scope, which includes Requirements analysis at the change level, is an important part of the software engineering process; whereby business analysts or software developers identify the altered needs or requirements of a client; having identified these requirements they are then in a position to re-design or modify a solution.

Theoretically, each change can impact the timeline and budget of a software project, and therefore by definition must include risk-benefit analysis before approval. Software configuration management is the process of identifying, and documenting the scope itself, which is the software product underway, including all sub-products and changes and enabling communication of these to relevant stakeholders. In general, the processes employed include version controlnaming convention programmingand software archival agreements.

Release management is the process of identifying, documenting, prioritizing and agreeing on releases of software and then controlling the release schedule and communicating to relevant stakeholders.

explain the relationship between project management and software development

Most software projects have access to three software environments to which software can be released; Development, Test, and Production. In very large projects, where distributed teams need to integrate their work before releasing to users, there will often be more environments for testing, called unit testingsystem testingor integration testingbefore release to User acceptance testing UAT.

A subset of release management that is gaining attention is Data Managementas obviously the users can only test based on data that they know, and "real" data is only in the software environment called "production". In order to test their work, programmers must therefore also often create "dummy data" or "data stubs". Traditionally, older versions of a production system were once used for this purpose, but as companies rely more and more on outside contributors for software development, company data may not be released to development teams.

In complex environments, datasets may be created that are then migrated across test environments according to a test release schedule, much like the overall software release schedule. Project planning, execution, monitoring and control[ edit ] The purpose of project planning is to identify the scope of the project, estimate the work involved, and create a project schedule.

Project planning begins with requirements that define the software to be developed.

Software project management - Wikipedia

The project plan is then developed to describe the tasks that will lead to completion. The project execution is the process of completing the tasks defined in the project plan. The purpose of project monitoring and control is to keep the team and management up to date on the project's progress. If the project deviates from the plan, then the project manager can take action to correct the problem.

Project monitoring and control involves status meetings to gather status from the team.

Software Project Management

A quick word or two before diving into the paper. The authors of the paper, Peter Case and Erik Pineiro, begin their analysis by noting that although project managers are usually above programmers in the organizational hierarchy, the relationship is complicated by two factors: Project managers usually do not need and often lack the educational qualifications possessed by programmers.

Project managers usually do not have the depth of technical knowledge that programmers have. These two conditions often lead to the view amongst programmers that they the programmers have a higher organizational status or matter more than project managers do.

explain the relationship between project management and software development

The authors end their introduction with the observation that the skills of programmers are necessary for the creation of software, but equally necessary is the need to direct software building efforts using some form of project management.

This observation underlines the symbiotic relationship between developers and project managers. On the other hand the differences between the two disciplines is also a source of conflict between the two parties. Research Methodology Case and Pineiro base their research on an analysis of contributions to online discussions on Slashdot. A large number of Slashdot contributors are programmers.

explain the relationship between project management and software development

The authors use two ideas or, more accurately, lenses to interpret the data, the data being individual contributions to discussions. First, the authors contend that contributors to Slashdot are: In particular, when discussing the relationship between programmer and project managers, contributors — through the discussion — are creating or confirming a certain view of the relationship between the two parties.

In doing so, they are enacting their own identities as members of a particular guild. They do so in opposition to the other party — i. Second, the work that programmers do has a certain value in the marketplace — i. Putnam Model This model is made by Lawrence H.

Putnam model maps time and efforts required with software size. It divides the software product into three categories of software: Project Scheduling Project Scheduling in a project refers to roadmap of all activities to be done with specified order and within time slot allotted to each activity.

Project managers tend to define various tasks, and project milestones and them arrange them keeping various factors in mind. They look for tasks lie in critical path in the schedule, which are necessary to complete in specific manner because of task interdependency and strictly within the time allocated. Arrangement of tasks which lies out of critical path are less likely to impact over all schedule of the project. For scheduling a project, it is necessary to - Break down the project tasks into smaller, manageable form Find out various tasks and correlate them Estimate time frame required for each task Divide time into work-units Assign adequate number of work-units for each task Calculate total time required for the project from start to finish Resource management All elements used to develop a software product may be assumed as resource for that project.

This may include human resource, productive tools and software libraries. The resources are available in limited quantity and stay in the organization as a pool of assets.

The shortage of resources hampers the development of project and it can lag behind the schedule. Allocating extra resources increases development cost in the end.

  • Software project management

It is therefore necessary to estimate and allocate adequate resources for the project. Resource management includes - Defining proper organization project by creating a project team and allocating responsibilities to each team member Determining resources required at a particular stage and their availability Manage Resources by generating resource request when they are required and de-allocating them when they are no more needed.

Project Risk Management Risk management involves all activities pertaining to identification, analyzing and making provision for predictable and non-predictable risks in the project. Risk may include the following: Experienced staff leaving the project and new staff coming in. Change in organizational management. Requirement change or misinterpreting requirement. Under-estimation of required time and resources. Technological changes, environmental changes, business competition. Risk Management Process There are following activities involved in risk management process: Identification - Make note of all possible risks, which may occur in the project.

explain the relationship between project management and software development

Categorize - Categorize known risks into high, medium and low risk intensity as per their possible impact on the project. Manage - Analyze the probability of occurrence of risks at various phases. Make plan to avoid or face risks.

Software Project Management

Attempt to minimize their side-effects. Monitor - Closely monitor the potential risks and their early symptoms. Also monitor the effects of steps taken to mitigate or avoid them.