12.07.2015 Views

Software Engineering Management SWEBOK Certification Program

Software Engineering Management SWEBOK Certification Program

Software Engineering Management SWEBOK Certification Program

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong>As per (IEEE610.12‐90), <strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> can be defined as theapplication of management activities—planning, coordinating, measuring,monitoring, controlling, and reporting—to ensure that the development andmaintenance of software is systematic, disciplined, and quantifiedThe following aspects complicate software engineering management– Clients often a lack of appreciation for the complexity inherent in software engineering,particularly in relation to the impact of changing requirements– Often software engineering processes themselves generate the need for new or changedclient requirementsReference Copy– As a result, software is often built in an iterative process rather than a sequence of closedtasksNot for Distribution– <strong>Software</strong> engineering necessarily incorporates aspects of creativity and discipline.Maintaining an appropriate balance between the two is often difficult– The degree of novelty and complexity of software is often extremely highIEEE Computer Society– There is a rapid rate of change in the underlying technology<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-3


Content Area 1Initiation and Scope DefinitionReference CopyNot for DistributionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-4


Content Area 1: Initiation and Scope DefinitionInitiation and Scope DefinitionReference CopyNot for DistributionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-5


Content Area 2: <strong>Software</strong> Project PlanningWaterfall and Prototyping ModelImplementationTestReference CopyNot for DistributionInstallation and CheckoutOperation and MaintenanceIEEE Computer SocietyRetirement<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-11Prototyping model can beused with other modelsbesides just waterfall


Content Area 2: <strong>Software</strong> Project PlanningIterative and Evolutionary ModelIterative ModelConcept ExplorationDefined foreachiteration orjust onceRequirementsDesignIterationsImplementationTestReference CopyInstallation and CheckoutOngoing maintenanceoccurs as soon as thefirst testedimplementation is in the<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-12field.Evolutionary ModelPartial RequirementsPrototypeNot for DistributionAdditional RequirementsOperationIEEE Computer SocietyIterationsRetirement


Content Area 2: <strong>Software</strong> Project PlanningSpiral ModelIterations are independent, but knowledgegained is rolled over as project grows in sizeReference CopyNot for DistributionIEEE Computer SocietySpiral Model explicitly considers risk in every iteration<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-13


Content Area 2: <strong>Software</strong> Project PlanningRisk Analysis “against” Selectinga Life-Cycle ModelOnce‐through (Waterfall) Incremental EvolutionaryRisk ItemRequirements not wellunderstoodSystem too large to do atonceRapid changes intechnology anticipated –may change requirementsLimited staff or budgetavailable nowRiskLevelHMHMRisk ItemRequirements not wellunderstoodUser prefers all capabilitiesat first deliveryReference CopyRapid changes intechnology anticipated –may change requirementsNot for DistributionRiskLevelIEEE Computer SocietyHMHRisk ItemUser prefers allcapabilities atdeliveryRiskLevelMSource: IEEE/EIA Std. 12207.2-1997<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-14


Content Area 2: <strong>Software</strong> Project PlanningDiscussion QuestionWhat is the difference between iterative and incrementalsoftware development?Reference CopyNot for DistributionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-16


Content Area 2: <strong>Software</strong> Project PlanningIterative Versus IncrementalIncrementalStaging & scheduling strategyVarious parts of the system aredeveloped and built at differentimprove parts of the producttimesIteration is examined forIntegrated as they are completedmodificationversus integrating in one go– But not shipped– Increments may be shippedHelps improve the developmentprocessWorks well with waterfall oriterative approachesIterativeReference CopyNot for DistributionRework scheduling strategyRework strategy to revisit andHelps improve the productWorks well with incrementaldevelopmentIEEE Computer SocietyReference: http://alistair.cockburn.us/index.php/Incremental_versus_iterative_development<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-17


Content Area 2: <strong>Software</strong> Project PlanningDiscussion QuestionWhat are the principal activities and elements of softwareproject planning?Reference CopyNot for DistributionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-18


Content Area 2: <strong>Software</strong> Project PlanningProject Planning Process7. Planning tomanage the plan6. Developing aquality managementprocess5. Identifying andManaging risksProjectPlanningReference CopyNot for Distribution4. Allocating resources(equipment, facilities,people)IEEE Computer Society1. Planning the process(lifecycle stages, methods,tools, tasks)2. Determining deliverables(buy vs. develop vs. reuse)3. Estimating effort,schedule and cost<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-19


Content Area 2: <strong>Software</strong> Project PlanningDetermination of DeliverablesProject plan specifies the project deliverables which mayinclude, without being limited to:– The operational software– Customer requirements– Functional specifications– Design specifications– Design documentation– Source code– User manuals– Principles of operation– Installation instructions– Maintenance procedures– Training materialsReference CopyNot for DistributionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-20


Content Area 2: <strong>Software</strong> Project PlanningMake versus Buy DecisionsTo evaluate the relative merits of building, buying, or reusing software,the project manager has to consider the following– Evaluate whether to reuse existing components or buy off‐the‐shelfcomponents– Plan for any use of third parties– Procure software and select suppliers– Determine training needs and how to address themBefore purchasing or reusing software, the project manager mustevaluateReference CopyNot for Distribution– Whether the software truly satisfies the requirements– Whether the software is compatible with the rest of the systemIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-21


Content Area 2: <strong>Software</strong> Project PlanningProject Planning Process7. Planning tomanage the plan6. Developing aquality managementprocess5. Identifying andManaging risksProjectPlanningReference CopyNot for Distribution4. Allocating resources(equipment, facilities,people)IEEE Computer Society1. Planning the process(lifecycle stages, methods,tools, tasks)2. Determining deliverables(buy vs. develop vs. reuse)3. Estimating effort,schedule and cost<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-22


Content Area 2: <strong>Software</strong> Project PlanningEstimation of SizeSize in SLOCSizeMeasuresSize in function points1. Count features internal inputs or files;external outputs, inquiries, or interfaces)2. Weight features for level of complexity3. Adjust to account for 14 factors affectingfunctional sizeReference CopyGaffney and Cruikshank identify the following14 factors for function point estimation:‣ Data communications‣ Distributed functions‣ Performance‣ Heavily used operational configuration‣ Transaction rate‣ Online data entry‣ Design for end‐user efficiency‣ Online update (for logical internal files)‣ Complex processingNot for Distribution‣ Reusability of system code‣ Operational ease‣ Multiple sites‣ Ease of changeIEEE Computer SocietyReference: Thayer, Richard H. <strong>Software</strong> <strong>Engineering</strong> Project <strong>Management</strong>, 2nd ed. Los Alamitos, California: IEEEComputer Society, 2000<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-23


Content Area 2: <strong>Software</strong> Project PlanningEstimation of EffortEffort estimation depend upon the project size estimation– Combine size with productivity estimation to compute effort inperson‐monthsSLOC/person‐monthProductivityMeasuresReference CopyFunction points/person‐monthCode statements/person‐monthNot for DistributionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-24


Content Area 2: <strong>Software</strong> Project PlanningEstimation of ScheduleProject manager must create the most efficient schedule keeping inmind the available resources and the nature of tasksMilestone chart method (for smaller projects)– Lists task completion time; does not show task interactionsCritical Path Method (CPM)– Critical path consists of all tasks that must wait for prior completion of other tasks.Other tasks can be run simultaneously in parallel<strong>Program</strong> Evaluation and Review Technique (PERT)– Has a network of tasks like CPM but has project events as milestones instead of projectactivities.Reference CopyNot for Distribution– Can specifies probabilities for meeting deadlines for each event (this is especially usefulwhen doing estimations for Research and Development projects where the causeeffectrelationship is not very well‐established)IEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-25


Content Area 2: <strong>Software</strong> Project PlanningPERT/CPM ChartReference CopyNot for DistributionIEEE Computer SocietyReference: http://www.rff.com/pert_hardware.htm<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-26


Content Area 2: <strong>Software</strong> Project PlanningEstimation of ScheduleGantt chart method– Is a bar chart that illustrates start and end dates for all tasks– Provides a visual representation of the degree to which tasks overlap in time– Does not explicitly display the dependent tasks like PERT/CPMFull‐wall scheduling method– Use a large wall containing a grid to indicate weeks of project time– Post‐it notes are used by team‐members to indicate the start and end datesof tasksReference Copy– Invites most participation from team‐members than other methods– Does not show task relationshipsNot for Distribution– Poorly adapts to revision when changes occur to tasks/timesIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-27


Content Area 2: <strong>Software</strong> Project PlanningGantt ChartReference CopyNot for DistributionIEEE Computer SocietyReference: Gantt Chart Tutorial http://www.gantt-chart.biz/<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-28


Content Area 2: <strong>Software</strong> Project PlanningDiscussion QuestionWhen would you use a PERT chart or a GANTT chart? Explain.Reference CopyNot for DistributionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-29


Content Area 2: <strong>Software</strong> Project PlanningEstimation of CostConvert all preceding estimates into costs. This includes all resources required tocomplete all the designated tasks– E.g. labor, tools, travel, facilities, material items (e.g., off‐the‐shelf software)Work Breakdown Structure (WBS) allowsbottom‐up costing– This method supports Earned Value<strong>Management</strong> (EVM) approach toproject managementCosting should account for– Peripherals when outsourcing– Overhead (e.g., benefits, support staff)for internal laborReference CopyNot for DistributionIEEE Computer SocietySample Chart showing Earned Valueversus Planned Value versus Actual Cost<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-30


Content Area 2: <strong>Software</strong> Project PlanningDiscussion QuestionA software development project is behindschedule and requires 6‐man months effort forcompletion. The team working on the projectcurrently consists of 3 employees. In order tofinish the project by the deadline which is in 1month, the project manager decides to add 3new software developers to the existing team.Do you think the project will be completed intime? Explain.Reference CopyNot for DistributionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-31


Content Area 2: <strong>Software</strong> Project PlanningProject Planning Process7. Planning tomanage the plan6. Developing aquality managementprocess5. Identifying andManaging risksProjectPlanningReference CopyNot for Distribution4. Allocating resources(equipment, facilities,people)IEEE Computer Society1. Planning the process(lifecycle stages, methods,tools, tasks)2. Determining deliverables(buy vs. develop vs. reuse)3. Estimating effort,schedule and cost<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-32


Content Area 2: <strong>Software</strong> Project PlanningResource AllocationResources i.e. tools, people, facilitiesneed to be assigned for specific tasks– Allocation of people requires balanceof expertise and personalitiesTraining of team members can help– Teams to become productive quickly– Select leaders– Improve communication skillsSchedule/cost adjustment is needed if resources become unexpectedlyunavailableReference CopyNot for DistributionProject manager may need to alter team size and structure so thatconcurrent activities can be effectively executedIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-33


Content Area 2: <strong>Software</strong> Project PlanningProject Planning Process7. Planning tomanage the plan6. Developing aquality managementprocess5. Identifying andManaging risksProjectPlanningReference CopyNot for Distribution4. Allocating resources(equipment, facilities,people)IEEE Computer Society1. Planning the process(lifecycle stages, methods,tools, tasks)2. Determining deliverables(buy vs. develop vs. reuse)3. Estimating effort,schedule and cost<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-34


Content Area 2: <strong>Software</strong> Project PlanningRisk <strong>Management</strong>All project management activities can be seen as risk management– E.g., Cost estimates mitigate the risk of losing moneyThe ISO/IEC Std. 24765 vocabulary defines risk management as:(1) an organized process for identifying and handling risk factors.(2) an organized means of identifying and measuring risk (risk assessment)and developing, selecting, and managing options (risk analysis) forresolving (risk handling) these risks.(3) organized, analytic process to identify what might cause harm or loss(identify risks); to assess and quantify the identified risks; and to developand, if needed, implement an appropriate approach to prevent or handleReference CopyNot for Distributioncauses of risk that could result in significant harm or loss.IEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-35


Content Area 2: <strong>Software</strong> Project PlanningRisk <strong>Management</strong> ProcessAs per IEEE/EIA Std. 12207.0‐1996Plan and implementrisk managementManage projectrisk profileRisk management plan is negotiated & accepted by allstakeholders. Assign resources and responsibilities.Perform riskanalysisIdentify project’s risks as well as priority, status,threshold, and action requests for each riskPerform risktreatmentIdentify conditions that cause risks andconsequences of those risksReference CopyPerform riskmonitoringSelect, plan, monitor, and controlactions to decrease risk exposureNot for DistributionIEEE Computer SocietyEvaluate riskmanagement processReview/update risk levels, assess effectivenessof risk treatment, search for new risks & sourcesInform stakeholders about thequality of risk management<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-36


Content Area 2: <strong>Software</strong> Project PlanningTechniques to Manage RisksOnce risks are identified, they can be managed in the following ways:Avoidance ‐ Avoid high risks– E.g., Choose a component that performs acceptably but has a lower risk thananother componentControl ‐ Use traditional project management techniques to control risks– E.g., Use QA, reviews, and auditsAssumption– If potential benefits are high enough and probability of risk occurrence islow, accept the risksReference CopyNot for DistributionTransfer ‐ If a risk seems high in one area, transfer it another area– E.g., If subcontracting development involves a high risk of late delivery, bringoffshore development to in‐house for tighter controlIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-37


Content Area 2: <strong>Software</strong> Project PlanningDiscussion QuestionIdentifying and managing risks are an important part ofeffective management of the software engineering effort.Risks are documented:A. In a concise statement of what went wrong and whenthey occurred in the project lifecycleB. As clearly defined tasks in the project scheduleC. In a concise statement that includes the context,conditions, and consequences of risk occurrenceD. As clearly defined line‐items in the project budgetAnswer: CReference CopyNot for DistributionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-38


Content Area 2: <strong>Software</strong> Project PlanningProject Planning Process7. Planning tomanage the plan6. Developing aquality managementprocess5. Identifying andManaging risksProjectPlanningReference CopyNot for Distribution4. Allocating resources(equipment, facilities,people)IEEE Computer Society1. Planning the process(lifecycle stages, methods,tools, tasks)2. Determining deliverables(buy vs. develop vs. reuse)3. Estimating effort,schedule and cost<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-39


Content Area 2: <strong>Software</strong> Project PlanningQuality <strong>Management</strong>Project manager works with all stakeholders to establish a quality plan forboth the process and productsAs per IEEE/EIA Std. 12207.0‐1996, a quality assurance management planshould include:– Quality standards, methodologies, procedures, and tools for performing the qualityassurance activities (or their references in organization’s official documentation).– Procedures for contract review and coordination thereof.– Procedures for identification, collection, filing, maintenance, and disposition of qualityrecords.Reference Copy– Resources, schedule, and responsibilities for conducting the quality assurance activities.Not for Distribution– Selected activities and tasks from supporting processes such as Verification, Validation,Joint Review, Audit, and Problem Resolution.More details are covered in Content Domain “<strong>Software</strong> Quality”IEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-40


Content Area 2: <strong>Software</strong> Project PlanningProject Planning Process7. Planning tomanage the plan6. Developing aquality managementprocess5. Identifying andManaging risksProjectPlanningReference CopyNot for Distribution4. Allocating resources(equipment, facilities,people)IEEE Computer Society1. Planning the process(lifecycle stages, methods,tools, tasks)2. Determining deliverables(buy vs. develop vs. reuse)3. Estimating effort,schedule and cost<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-41


Content Area 2: <strong>Software</strong> Project PlanningPlan <strong>Management</strong>Project management plan helps assess how the project is faring.Therefore, as the project progresses, the plan must be updated to reflect– Revised requirements– Extended schedules– Changes in testing procedures– Modified software functionalityAdherence to the plan must be systematically directed, monitored,reviewed, reported, and revisedProject management plans are configuration items and are part of theprogram baseline– Thus, changes to a plan should be analyzed, scoped, and submitted to theChange Control Board (CCB) for dispositionReference CopyNot for DistributionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-42


Content Area 2: <strong>Software</strong> Project PlanningDiscussion QuestionPaul has drafted a software project management plan. Which ofthe following items should be discussed in this plan?I. ScheduleII. BudgetIII. RequirementsIV. StaffingA. I, III, IV onlyB. I, II, III onlyC. I, II, IV onlyD. I, II, III, IVAnswer: CReference CopyNot for DistributionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-43


Content Area 3<strong>Software</strong> Project EnactmentReference CopyNot for DistributionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-44


Content Area 3: <strong>Software</strong> Project EnactmentProject EnactmentAfter the project plan has been prepared and approved bystakeholders, the project manager has to implement the planEnactment involves the following project manager duties:– Managing any supplier contracts– Monitoring adherence to the plan to discover any significant variances– Controlling any problems discovered by monitoring– Reporting adherence to the plan to stakeholders both on and outsidethe teamReference CopyNot for DistributionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-45


Content Area 3: <strong>Software</strong> Project EnactmentSupplier Contract <strong>Management</strong>Managing agreements with subcontractors who either sell or developsoftware components introduces special demands on the projectmanagerProcess for handling supplier contracts as per IEEE Std. 1062: 1998– Planning organizational strategy– Implementing organization’s process– Determining software requirements– Identifying potential suppliers– Preparing contract documents– Evaluating proposals and selecting suppliers– Managing supplier performance– Accepting the software– Using the softwareReference CopyNot for DistributionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-46


Content Area 3: <strong>Software</strong> Project EnactmentMonitoring Plan AdherenceAt predetermined intervals, the project manager assesses the status ofthe process to see if there are any variances from the planSuccessful monitoring includes the following activities:– Analysis of outputs and completion conditions for each task– Evaluation of deliverables in terms of required characteristics (such as byreviews and audits)– Investigation of effort expenditure, schedule adherence & costs to date– Examination of resource usageAmong the types of variance that may require action are cost overruns,schedule slippage, incomplete delivery of an item, failure to meet qualityReference CopyNot for Distributionstandards, status or risks, and risk reportsIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-47


Content Area 3: <strong>Software</strong> Project EnactmentControl Process & ReportingTo control problems discovered by monitoring, the following needs to bedone:Accurate assessment of the real cause of the problemsIdentification of the side‐effects of those problems using an appropriate projectmanagement model such as CPM/PERT diagramsMaking suitable decisions to address the problems as well as their side‐effectsUpdating the schedule and cost estimates based on the new decisionsDocumenting the decisions and communicating them to all relevant partiesReporting is essential for proper monitoring and control of the projectThe project manager is responsible for establish reporting procedures for the project.These procedures include:Reference CopyNot for DistributionIEEE Computer Society– Timing, nature, distribution list, and media of communication for the reports<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-48


Content Area 4Review and EvaluationReference CopyNot for DistributionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-49


Content Area 4: Review and EvaluationReview and EvaluationSatisfied users provide the ultimate measure of success for a software engineeringproject. So, it is important to regularly assess progress towards user satisfactionFormal reviews at major milestones help– Detect variances from the plan– Address the identified variances– Communicate the problems and adopted solutions to stakeholders– Record review data in a central databasePeriodic performance reviews help assess concerns such as– Individual performance to dateReference Copy– Readiness for performing future tasksNot for Distribution– Relationships within the team and hierarchyThe process, itself, should also be subjected to review and revisionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-50


IEEE Computer SocietyContent Area 5Reference CopyNot for DistributionClosure<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-51


Content Area 5: Closure<strong>Software</strong> Project ClosureThe following are project closure criteria:– Tasks specified in the plans have been completed, and satisfactory achievement ofcompletion criteria has been confirmed– All planned products have been delivered with acceptable characteristics– Requirements are checked off and confirmed as satisfied– Project objectives have been achievedClosure activities include:– Archiving of project materialsReference Copy– Updating the organization’s measurement database with final project data followedby post‐project analysesNot for Distribution– Undertaking the project postmortem so that all issues, problems, and opportunitiesencountered during the process (particularly via review and evaluation) areanalyzed. Lessons are drawn from the process and fed into organizational learningand improvement endeavorsIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-52


Content Area 6<strong>Software</strong> <strong>Engineering</strong>MeasurementReference CopyNot for DistributionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-53


Content Area 6: <strong>Software</strong> <strong>Engineering</strong> Measurement<strong>Software</strong> <strong>Engineering</strong>MeasurementAccurate measurement is critical for effective project managementISO/IEC Std. 15939 identifies four steps in establishing and applying ameasurement system:– Establish and sustain measurement commitment– Plan the measurement process– Perform the measurement process– Evaluate measurementReference CopyNot for DistributionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-54


Content Area 6: <strong>Software</strong> <strong>Engineering</strong> MeasurementEstablish & Sustain MeasurementCommitmentAccept requirements for measurement based on objectives acceptedby all relevant partiesCreate a plan for measuring progress towards each objective– Specify the scope of measurement: identify what is to be measured– Obtain a formal agreement from management and staffReference CopyCommit resources for measurement– Assign people to carry out specific measurement‐related tasks– Provide funds, training, and toolsNot for DistributionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-55


Content Area 6: <strong>Software</strong> <strong>Engineering</strong> MeasurementPlan the Measurement ProcessPlanning the measurement process includes the following activities:– Characterize the organizational unit in terms of organizational processes, applicationdomains, technology, and organizational interfaces– Identify and prioritize information needs based on goals, constraints, risks, andproblems of the organizational unit– Select measures from candidate measures with clear links to information needs, basingselection on priority of information needs and other practical criteria– Define data collection, analysis, and reporting procedures– Define criteria for evaluating the information productsReference Copy– Review, approve, and provide resources for measurement tasks:• All stakeholders must review the planNot for Distribution• Resources should be made available for implementing the planned and approvedmeasurement tasks– Acquire and deploy supporting technologiesIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-56


Content Area 6: <strong>Software</strong> <strong>Engineering</strong> MeasurementPerform the MeasurementProcessThe measurement process can be broken down into four phases:– Integrate measurement procedures, such as data collection, with relevantproject processes. This may involve changing processes to accommodatethe measurement activity or to minimize additional effort required ofteam members– Collect, verify, and store data– Analyze data and develop information products. This involves aggregation,transformation, or recording of data as part of analysis. This results,typically, in graphs, numbers, or other indications that must be interpretedto yield conclusions for presentation to stakeholdersReference CopyNot for Distribution– Communicate results to users and other stakeholdersIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-57


Content Area 6: <strong>Software</strong> <strong>Engineering</strong> MeasurementEvaluate MeasurementAs the project progresses and measurements are taken, themeasurement activities and products can be evaluated and improvedas necessary. The project team may:– Evaluate information products against criteria to determine their strengthor weakness, and seek feedback from users. Record lessons in a database– Evaluate the measurement process, and include feedback from users.Record lessons in a database– Identify potential improvementsReference CopyNot for DistributionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-58


Content Area 7<strong>Software</strong> <strong>Management</strong> ToolsReference CopyNot for DistributionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-59


Content Area 7: <strong>Software</strong> <strong>Management</strong> Tools<strong>Software</strong> <strong>Management</strong> Tools<strong>Software</strong> engineering management tools can be very helpful inmonitoring and measuring the program process<strong>Software</strong> engineering management tools can be divided into threecategories– Project planning and tracking tools• Used in software project effort measurement, cost estimation, andscheduling• E.g. Primavera, MS Project etc.– Risk management tools• Used to identify, estimate, and monitor risks– Measurement toolsReference CopyNot for Distribution• Assist in performing activities related to the software measurementprogramIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-60


End of Module 4IEEE Computer SocietyNot for DistributionModule – 3Chapter –DebriefReference Copy<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong><strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-61


Suggested Reading & ReferencesBoehm, Barry W. “A Spiral Model of <strong>Software</strong> Development and Enhancement.”Computer, Vol. 21, Issue 5, May 1998Brooks, Frederick P. The Mythical Man‐Month: Essays on <strong>Software</strong> <strong>Engineering</strong>. Reading,Massachusetts: Addison‐Wesley, 1975Guide to the <strong>Software</strong> <strong>Engineering</strong> Body of Knowledge (<strong>SWEBOK</strong>), 2004 ed. Los Alamitos,California: IEEE Computer Society Press, 2004Ian Sommerville, “<strong>Software</strong> <strong>Engineering</strong>”, 8th ed., Addison‐Wesley, 2006Thayer, Richard H. <strong>Software</strong> <strong>Engineering</strong> Project <strong>Management</strong>, 2nd ed. Los Alamitos,California: IEEE Computer Society, 2000Thayer, Richard H., and Mark J. Christensen, eds. <strong>Software</strong> <strong>Engineering</strong>, Volume 1: TheDevelopment Process, 3rd ed. Hoboken, New Jersey: John Wiley/Los Alamitos, California:IEEE Computer Society Press, 2005Reference CopyThayer, Richard H., and Merlin Dorfman, eds. <strong>Software</strong> <strong>Engineering</strong>, Volume 2: TheSupporting Processes, 3rd ed. Hoboken, New Jersey: John Wiley/Los Alamitos, California:IEEE Computer Society Press, 2005Not for DistributionIEEE Computer Society<strong>Software</strong> <strong>Engineering</strong> <strong>Management</strong> - Slide-62

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!