Explain the primary difference between CMMI Maturity Level 2 and CMMI Maturity Level 3 regarding process consistency and tailoring, as documented in Module 03, Section M of the course handouts. Then, write a Python function 'tailor_process' that takes a base dictionary representing the 'organization_standard_processes' and a string representing the 'project_type', and returns a tailored set of processes for that specific project, simulating the CMMI Level 3 tailoring rule.
Ch 03: Standards and Models
Detailed examination of quality leverage points, mature vs immature organizations, and the CMMI architecture across Maturity Level 1 (Initial), Level 2 (Managed), Level 3 (Defined), Level 4 (Quantitatively Managed), and Level 5 (Optimizing).
325 Questions325 MCQs0 Short Questions0 Long Questions
SEMESTER PASS
CS611 - Software Quality Engineering Examination Practice
Timed practice exam simulation for CS611 - Software Quality Engineering.
Showing 211 โ 220 of 325 Questions
Page 22 of 33
Explain how a CMMI Level 5 organization optimizes the project kickoff process using 'Option-1: Reduce Audience of Meeting' and 'Option-2: Merge Internal and Client Kickoff' to reduce total man-time from the Level 4 baseline of 9 hours. Then, write a Python function 'optimize_kickoff_process' that takes a string representing the chosen optimization option ('option1' or 'option2') and returns a dictionary with the optimized participant counts, planned times, total man-minutes, and total hours based on Module 03, Section R of the course handouts.
Explain the 'People-Process-Technology' triad (the golden triangle) as described in Module 03, Section B of the handouts, and explain why 'Process' is considered the leg or glue of this triad. Then, write a Python function 'evaluate_ppt_balance' that takes scores (0.0 to 10.0) for People, Process, and Technology, and returns a quality readiness status, highlighting if the Process score is low (which starves the other aspects).
Explain the fundamental differences between mature and immature software development organizations as described in Module 03, Section F of the handouts. Then, write a Python function 'audit_organization_maturity' that takes a list of observed behaviors (e.g., 'reactive', 'quality_sacrificed', 'consistent_practices', 'management_commitment') and classifies the organization as 'MATURE', 'IMMATURE', or 'TRANSITIONAL' based on a score, returning a maturity report.
Explain how the Capability Maturity Model Integration (CMMI) framework organizes process improvement and deconstruct the core beliefs it holds regarding organizational change, as documented in Module 03, Section G of the handouts. Then, write a Python function 'evaluate_change_readiness' that takes a dictionary containing a project's change parameters (such as 'is_slow_and_incremental' as a boolean, 'is_future_oriented' as a boolean, and 'has_massive_overhaul' as a boolean) and returns a report detailing whether the change strategy conforms to CMMI beliefs.
Explain the significance of the CMMI Maturity Level 4 moral: 'Process without Stats can't be improved,' with reference to the kickoff process example (Internal vs. Client Kickoff) from the course handouts. Then, write a Python function 'calculate_kickoff_man_time' that takes the participant count and planned time (minutes) for both Internal and Client kickoff meetings, computes the individual and total man-minutes and total hours, and returns a metric-based report conforming to Page 18-19.
Explain the role of a software process as an integration point and why simply 'working hard' is not the optimal solution for a workforce, referencing Module 03, Section C of the handouts. Then, write a Python function 'evaluate_productivity' that simulates a team's output. The function takes the team's 'hours_worked' (float), 'is_process_defined' (bool), and 'technology_multiplier' (float), and calculates an 'effective_output_score' where an undefined process caps the benefits of technology and penalizes excessive work hours, illustrating the concept of working smarter instead of harder.
Describe why a process cannot be absolutely labeled as 'good' or 'bad' and explain what must be evaluated before adopting an external process, as documented in Module 03, Section D. Then, write a Python function 'evaluate_benchmarked_process' that evaluates whether an external process should be adopted based on three factors: 'external_process_cost' (float), 'available_budget' (float), and 'internal_skills_match' (bool). The function should return a feasibility report including whether the process is approved for adoption and a descriptive warning message.
Define the three core components of the CMMI process model (Process Area, Generic Practice, and Specific Practice) through which capability and maturity are derived, as stated in Module 03, Section T of the course handouts. Then, write a Python function 'get_cmmi_component' that takes a string representation of a component name ('process_area', 'generic_practice', or 'specific_practice') and returns a dictionary with its CMMI definition, role, and SQA alignment guidance.
Explain why relying on undocumented 'Heroes' under CMMI Level 2 leads to a complete loss of supplier credibility when key resources depart, and discuss how CMMI Level 3's focus on established standard processes resolves this issue. Then, write a Python function 'evaluate_level_3_compliance' that takes a dictionary representing a project's parameters (such as 'is_process_defined' [bool], 'has_written_documentation' [bool], and 'relies_on_hero' [bool]) and returns a status dictionary indicating whether it meets CMMI Level 3 requirements.