0% found this document useful (0 votes)
55 views21 pages

University of Agriculture: Software Project Management

The document discusses configuration management for software projects. It describes configuration management as the management of evolving software systems and changes to ensure new versions are implemented cost effectively. It covers configuration management processes like change requests, change control boards, version and release management, and ensuring unique identification of versions.

Uploaded by

Osama Khan
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
55 views21 pages

University of Agriculture: Software Project Management

The document discusses configuration management for software projects. It describes configuration management as the management of evolving software systems and changes to ensure new versions are implemented cost effectively. It covers configuration management processes like change requests, change control boards, version and release management, and ensuring unique identification of versions.

Uploaded by

Osama Khan
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 21

UNIVERSITY OF AGRICULTURE

SOFTWARE PROJECT MANAGEMENT

MS-CS (SPRING 2012)

Project Risk Management Work Break down Structure Project Planning Project Cost Estimation Techniques Project Scheduling Techniques Project Quality Management Project HR Management

Assignment #2

Submission Date: June 01, 2012

Write a full project documentation for Student Information System with a cost of Rs.500,000 and time span of 5 months Write a full project documentation for IT hardware selling Website with a cost of Rs.150,000 and time span of 3 months Write a full project documentation for Implementation of WAN at an organization having offices in five different cities with a cost of Rs.1,500,000 and time span of 3 months Write a full project documentation for up gradation of Hardware of 50 computers from P-IV computers to Core i5 Computers along with its Operating System and Microsoft Office with a cost of Rs.1,500,000 and time span of 2 months Submission Date: June 27, 2012

Final Projects

What is required? Project Charter (in already given format) WBS (in already given format) Project Time Management
Project scheduling in MS Project

Final Projects

Project Cost Management


Cost estimates for HR, HW, SW, Training etc.

Project HR Management
Organization Chart, Roles and Responsibility Matrix etc.

Project Communication Management


Distribution structure (what information goes to whom, when, and how) , Format, content, and level of detail of key project information, minutes of at least 2 meetings

What is required? Project Risk Management

Final Projects

At least five Risk identification, Ranking and Mitigation

Project Quality Management


Quality Plan, Quality Control Strategy, acceptability matrix

Project Procurement Management


RFP, RFQ

Project Monitoring Controlling


Issue Log (at least 10 issues) , Status Reports (at least 2 status reports)

Project Closure
Final Project report including feedback from sponsor and stakeholders

Configuration Management
It involves identifying and controlling the functional and physical design characteristics of product and their support documentation. Configuration management is concerned with managing evolving software systems Configuration management is the management of system change to software products. System change is a team activity; CM aims to control the costs and effort involved in making changes to a system. New versions of software systems are created as they change: For different machines/OS; Offering different functionality; Tailored for particular user requirements.

Configuration Management
Involves the development and application of procedures and standards to manage an evolving software product. CM may be seen as part of a more general quality management process. When released to CM, software systems are sometimes called baselines as they are a starting point for further development Software systems are subject to continual change requests: From users; From developers; From market forces. CM is concerned with keeping track of these changes and ensuring that they are implemented in the most cost effective way.

Configuration Management Process


Request change by completing a change request form Analyze change request if change is valid then Assess how change might be implemented Assess change cost Submit request to change control board if change is accepted then
repeat make changes to software submit changed software for quality approval until software quality is adequate create new system version reject change request

else

else reject change request

Configuration Management
Change Request Form The definition of a change request form is part of the CM planning process. This form records the change proposed, requestor of change, the reason why change was suggested and the urgency of change (from requestor of the change). It also records change evaluation, impact analysis, change cost and recommendations from maintenance staff.

Configuration Management
Change Request Board Changes should be reviewed by an external group
who decide whether or not they are cost-effective from a strategic and organizational viewpoint rather than a technical viewpoint. Should be independent of project responsible for system. The group is sometimes called a change control board. The CCB may include representatives from client and contractor staff.

Configuration Management

Configuration Management
Change History This is a record of changes applied to a document
or code component. It should record, in outline, the change made, the rationale for the change, who made the change and when it was implemented. It may be included as a comment in code. If a standard style is used for the derivation history, tools can process this automatically. A major problem in change management is tracking change status. Change tracking tools keep track the status of each change request and automatically ensure that change requests are sent to the right people at the right time.

Configuration Management
Version and Release management Invent an identification scheme for system
versions. Plan when a new system version is to be produced. Ensure that version management procedures and tools are properly applied. Plan and distribute new system releases.

Configuration Management
Versions/variants/releases Version An instance of a system which is
functionally distinct in some way from other system instances. Variant An instance of a system which is functionally identical but non-functionally distinct from other instances of a system. Release An instance of a system which is distributed to users outside of the development team.

Configuration Management
Versions Identification Procedures for version identification should define
an unambiguous way of identifying component versions. There are three basic techniques for component identification
Version numbering; Attribute-based identification; Change-oriented identification.

Configuration Management
Versions Number Simple naming scheme uses a linear derivation V1,
V1.1, V1.2, V2.1, V2.2 etc. The actual derivation structure is a tree or a network rather than a sequence. Names are not meaningful. A hierarchical naming scheme leads to fewer errors in version identification.

Configuration Management
Attribute-based identification Attributes can be associated with a version with the
combination of attributes identifying that version Examples of attributes are Date, Creator, Programming Language, Customer, Status etc. This is more flexible than an explicit naming scheme for version retrieval; However, it can cause problems with uniqueness - the set of attributes have to be chosen so that all versions can be uniquely identified. In practice, a version also needs an associated name for easy reference. An important advantage of attribute-based identification is that it can support queries so that you can find the most recent version in Java etc. The query selects a version depending on attribute values (language =Java, platform = XP, date =Jan 2021).

Configuration Management
Change Oriented Identification Integrates versions and the changes made to
create these versions. Used for systems rather than components. Each proposed change has a change set that describes changes made to implement that change. Change sets are applied in sequence so that, in principle, a version of the system that incorporates an arbitrary set of changes may be created.

Configuration Management
Release management Releases must incorporate changes forced on the system by
errors discovered by users and by hardware changes. They must also incorporate new system functionality. Release planning is concerned with when to issue a system version as a release. It may include:

Systems are now normally released on optical disks (CD or

Configuration files defining how the release is configured for a particular installation; Data files needed for system operation; An installation program or shell script to install the system on target hardware; Electronic and paper documentation; Packaging and associated publicity.

DVD) or as downloadable installation files from the web. Release management should not assume that all previous releases have been accepted. All files required for a release should be re-created when a new release is installed.

Configuration Management
Release management

Configuration Management
Release Creation Release creation involves collecting all files and
documentation required to create a system release. Configuration descriptions have to be written for different hardware and installation scripts have to be written. The specific release must be documented to record exactly what files were used to create it. This allows it to be recreated if necessary. The process of compiling and linking software components into an executable system. Different systems are built from different combinations of components. This process is now always supported by automated tools that are driven by build scripts.

You might also like