University of Agriculture

download University of Agriculture

of 21

Transcript of University of Agriculture

  • 7/31/2019 University of Agriculture

    1/21

    UNIVERSITY OF AGRICULTURE

    SOFTWARE PROJECT MANAGEMENT

    MS-CS (SPRING 2012)

  • 7/31/2019 University of Agriculture

    2/21

    Assignment #2 Project Risk Management

    Work Break down Structure Project Planning

    Project Cost Estimation Techniques

    Project Scheduling Techniques Project Quality Management

    Project HR Management

    Submission Date: June 01, 2012

  • 7/31/2019 University of Agriculture

    3/21

    Final Projects 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 hardwareselling Website with a cost of Rs.150,000 and timespan of 3 months

    Write a full project documentation for Implementation

    of WAN at an organization having offices in fivedifferent cities with a cost of Rs.1,500,000 and timespan of 3 months

    Write a full project documentation for up gradation ofHardware of 50 computers from P-IV computers to

    Core i5 Computers along with its Operating Systemand Microsoft Office with a cost of Rs.1,500,000 andtime span of 2 months

    Submission Date: June 27, 2012

  • 7/31/2019 University of Agriculture

    4/21

    Final Projects What is required?

    Project Charter (in already given format) WBS (in already given format) Project Time Management

    Project scheduling in MS Project

    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 ofkey project information, minutes of at least 2 meetings

  • 7/31/2019 University of Agriculture

    5/21

    Final Projects What is required?

    Project Risk ManagementAt least five Risk identification, Ranking and Mitigation Project Quality Management

    Quality Plan, Quality Control Strategy, acceptabilitymatrix

    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

  • 7/31/2019 University of Agriculture

    6/21

    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 inmaking changes to a system.

    New versions of software systems are created as theychange:

    For different machines/OS; Offering differentfunctionality; Tailored for particular userrequirements.

  • 7/31/2019 University of Agriculture

    7/21

    Configuration Management Involves the development and application of

    procedures and standards to manage an evolvingsoftware product.

    CM may be seen as part of a more general qualitymanagement process.

    When released to CM, software systems aresometimes called baselines as they are a startingpoint for further development

    Software systems are subject to continual changerequests:

    From users; From developers; From market forces.

    CM is concerned with keeping track of these changesand ensuring that they are implemented in the mostcost effective way.

  • 7/31/2019 University of Agriculture

    8/21

    Configuration Management Process Request change by completing a change request form

    Analyze change request

    ifchange is valid thenAssess how change might be implementedAssess change cost Submit request to change control board

    ifchange is accepted then repeat make changes to software

    submit changed software for quality approval

    until software quality is adequate

    create new system version

    else reject change request

    else reject change request

  • 7/31/2019 University of Agriculture

    9/21

    Configuration Management

    Change Request Form

    The definition of a change request form ispart of the CM planning process. This formrecords the change proposed, requestor ofchange, the reason why change was

    suggested and the urgency of change (fromrequestor of the change).

    It also records change evaluation, impactanalysis, change cost and recommendationsfrom maintenance staff.

  • 7/31/2019 University of Agriculture

    10/21

    Configuration Management

    Change Request Board

    Changes should be reviewed by an external groupwho decide whether or not they are cost-effectivefrom a strategic and organizational viewpointrather than a technical viewpoint.

    Should be independent of project responsible forsystem. The group is sometimes called a changecontrol board.

    The CCB may include representatives from clientand contractor staff.

  • 7/31/2019 University of Agriculture

    11/21

    Configuration Management

  • 7/31/2019 University of Agriculture

    12/21

    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, therationale for the change, who made the changeand when it was implemented.

    It may be included as a comment in code. If astandard style is used for the derivation history,tools can process this automatically.

    A major problem in change management istracking change status.

    Change tracking tools keep track the status ofeach change request and automatically ensure thatchange requests are sent to the right people at theright time.

  • 7/31/2019 University of Agriculture

    13/21

    Configuration Management

    Version and Release management

    Invent an identification scheme for systemversions. Plan when a new system version is to be

    produced.

    Ensure that version management procedures andtools are properly applied. Plan and distribute new system releases.

  • 7/31/2019 University of Agriculture

    14/21

    Configuration Management

    Versions/variants/releases

    Version An instance of a system which isfunctionally distinct in some way from othersystem instances.

    Variant An instance of a system which isfunctionally identical but non-functionally distinctfrom other instances of a system.

    Release An instance of a system which isdistributed to users outside of the developmentteam.

  • 7/31/2019 University of Agriculture

    15/21

    Configuration Management

    Versions Identification

    Procedures for version identification should definean unambiguous way of identifying componentversions.

    There are three basic techniques for componentidentification

    Version numbering;

    Attribute-based identification;

    Change-oriented identification.

  • 7/31/2019 University of Agriculture

    16/21

    Configuration Management

    Versions Number

    Simple naming scheme uses a linear derivation V1,V1.1, V1.2, V2.1, V2.2 etc. The actual derivationstructure is a tree or a network rather than asequence.

    Names are not meaningful.A hierarchical naming scheme leads to fewer

    errors in version identification.

  • 7/31/2019 University of Agriculture

    17/21

    Configuration ManagementAttribute-based identification

    Attributes can be associated with a version with thecombination of attributes identifying that version

    Examples of attributes are Date, Creator, ProgrammingLanguage, Customer, Status etc.

    This is more flexible than an explicit naming scheme forversion retrieval; However, it can cause problems withuniqueness - the set of attributes have to be chosen so thatall versions can be uniquely identified.

    In practice, a version also needs an associated name for easyreference.

    An important advantage of attribute-based identification isthat it can support queries so that you can find the mostrecent version in Java etc.

    The query selects a version depending on attribute values(language =Java, platform = XP, date =Jan 2021).

  • 7/31/2019 University of Agriculture

    18/21

    Configuration Management

    Change Oriented Identification

    Integrates versions and the changes made tocreate these versions. Used for systems rather than components. Each proposed change has a change set that

    describes changes made to implement thatchange.

    Change sets are applied in sequence so that, inprinciple, a version of the system that incorporatesan arbitrary set of changes may be created.

  • 7/31/2019 University of Agriculture

    19/21

    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:

    Configuration files defining how the release is configured for aparticular installation;

    Data files needed for system operation;

    An installation program or shell script to install the system ontarget hardware; Electronic and paper documentation;Packaging and associated publicity.

    Systems are now normally released on optical disks (CD orDVD) or as downloadable installation files from the web.

    Release management should not assume that all previousreleases have been accepted. All files required for a releaseshould be re-created when a new release is installed.

  • 7/31/2019 University of Agriculture

    20/21

    Configuration Management

    Release management

  • 7/31/2019 University of Agriculture

    21/21

    Configuration Management Release Creation

    Release creation involves collecting all files anddocumentation required to create a system release.

    Configuration descriptions have to be written for differenthardware and installation scripts have to be written.

    The specific release must be documented to record exactlywhat files were used to create it. This allows it to be re-

    created if necessary.

    The process of compiling and linking software componentsinto an executable system.

    Different systems are built from different combinations ofcomponents.

    This process is now always supported by automated toolsthat are driven by build scripts.