Subject Code      21CS61
Sri Devaraj Urs Educational Trust (R.)
                                 R. L. JALAPPA INSTITUTE OF TECHNOLOGY
                                       (Approved by AICTE, New Delhi & Affiliated to VTU, Belagavi)
                                             Kodigehalli, Doddaballapur- 561 203
                        DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
                                    Scheme & Solution
CIE                        III       Subject                Software Engineering and Project Management
Semester / Section        VI B       Faculty Name                          Ms. M S Rekha
Question                                                                                                    Marks
                                                     Solution
Number                                                                                                     Allocated
  1a)    Define Project? Explain the importance of project management?                                         5M
         A project is a planned activity, according to dictionary definitions.                                 2M
         1.Planning Emphasis:
         Planning involves determining how to carry out a task before starting.
           Essential for careful consideration even with uncertain or exploratory projects, where plans
         should be seen as provisional.
         2.Routine vs. Non-Routine Activities:
            Routine maintenance tasks are often well-known and documented, making detailed
         planning unnecessary.
          Documentation ensures consistency and aids newcomers.
         3. Optimal Use of Conventional Project Management:
          Most beneficial for activities that fall between routine and highly uncertain exploratory
         projects.
         4.Boundary between Routine and Non-Routine:
           There is a hazy boundary where the first instance of a routine task can resemble a project.
          Conversely, developing a system similar to previous ones can have significant routine
         elements.
                                                                                                               3M
         Importance of Project Management:
           Technical students might resist studying project management as it diverts them from
         coding.
          Financial Stakes:
          Significant amounts of money are involved in ICT projects.
           Example: In the UK during 2002-2003, the central government spent more on ICT projects
         (£2.3 billion) than on road contracts (£1.4 billion).
            The Department for Work and Pensions alone spent over £800 million on ICT.
         Consequences of Mismanagement:
           Poor management of ICT projects can lead to reduced funding for essential services like
         hospitals.
         Project Success Rates:
           A 2003 report by the Standish Group in the US analysed 13,522 projects: o Only a third
         were successful. o 82% were late. o 43% exceeded their budget.
          Causes of Project Failures:
          Mismanagement is often the root cause.  The National Audit Office in the UK highlighted
         a 'lack of skills and a proven approach to project management and risk management' as
         factors contributing to project failures.
  1.b)   Explain ways of Categorizing of software projects?                                                    5M
         1. Compulsory vs. Voluntary Users                                                                     1M
         Compulsory Users:
           Users must use the system to perform tasks (e.g., recording a sale).
          Easier to elicit precise requirements from users.
         Voluntary Users:                                                                                      1M
                                                      Page 1 of 5
                                                                            Subject Code         21CS61
        Users choose to use the system (e.g., computer games).
         Difficult to elicit precise requirements.  Relies on developers' ingenuity, market surveys,
       focus groups, and prototype evaluation.
        2. Information Systems vs. Embedded Systems:
       Information Systems:  Enable staff to carry out office processes.
        Example: Stock control system.
        Embedded Systems:
        Control machines.  Example: Air conditioning control in a building.
       3. Hybrid Systems:                                                                                 1M
       Combine elements of both information and embedded systems.  Example: Stock control
       system that also controls an automated warehouse.
       4.Outsourced Projects:                                                                             2M
        1. Commercial Sense of Outsourcing: Companies may outsource parts of a project if they
       lack expertise or find it cost-effective.
       2. Project Characteristics: Outsourced projects are typically small and need to be completed
       within a few months.
        3. Management Challenges: Managing outsourced projects entails special challenges due to
       their size and time constraints.
       4. Indian Software Companies: Indian companies are renowned for executing outsourced
       software projects and are beginning to focus on product development.
2.a)   Define Software Quality? Explain the importance of software quality?
       Concept of Quality:                                                                                5M
                                                                                                          3M
        Generally agreed to be beneficial.
        Often vaguely defined in practice.
        Requires precise definition of required qualities.
       Objective Assessment:
        Judging if a system meets quality requirements needs measurement.
        Critical for package selection, e.g., Brigette at Bright mouth College.
       Development Perspective:
        Waiting until the system is complete to measure quality is too late.
        During development, it's important to Assess the likely quality of the final system. o Ensure
       development methods will produce the desired quality.
       Emphasis on Development Methods:
        Potential customers, like Amanda at IOE, might focus on:
       Checking if suppliers use the best development methods.
       Ensuring these methods will lead to the required quality in the final system.
       Importance of software quality                                                                    2M
       Special Characteristics of Software Affecting Quality Management
       General Expectation:
        Quality is a concern for all producers of goods and services.
       Special Demands in Software:
       1.Increasing Criticality of Software
       2.Intangibility of Software
       3.Accumulating Errors During Software Development
2.b)   Write the differences between process metrics and product metrics?                                 5M
       Understanding the differences between product metrics and process metrics is crucial in            2M
       software development:
       1. Product Metrics:
       o Purpose: Measure the characteristics of the software product being developed.
       Examples:
        Size Metrics: Such as Lines of Code (LOC) and Function Points, which quantify the size
                                                   Page 2 of 5
                                                                          Subject Code         21CS61
       or complexity of the software.
        Effort Metrics: Like Person-Months (PM), which measure the effort required to develop
       the software.
        Time Metrics: Such as the duration in months or other time units needed to complete the
       development.
       2.Process Metrics:                                                                              3M
       o Purpose: Measure the effectiveness and efficiency of the development process itself.
       Examples:
       Review Effectiveness: Measures how thorough and effective code reviews are in finding
       defects.
        Defect Metrics: Average number of defects found per hour of inspection, average time
       taken to correct defects, and average number of failures detected during testing per line of
       code.
        Productivity Metrics: Measures the efficiency of the development team in terms of output
       per unit of effort or time.
        Quality Metrics: Such as the number of latent defects per line of code, which indicates the
       robustness of the software after development
3.a)   Explain stakeholders and setting objectives in project management?                               5M
       Stakeholders                                                                                     3M
        Definition: People who have a stake or interest in the project.
        Early Identification:
        Important for setting up adequate communication channels. Categories of Stakeholders:
       1.Internal to the Project Team: Under direct managerial control of the project leader.
       2. External to the Project Team but within the Same Organization: For example, users
       assisting with system testing; requires negotiated commitment.
       3. External to Both the Project Team and the Organization: Includes customers or users
       benefiting from the system and contractors working on the project; relationships based on
       contracts.
       Diverse Objectives: Different stakeholders have different objectives that need to be
       recognized and reconciled by the project leader (e.g., ease of use for end-users vs. staff
       savings for managers).
       Theory W: Proposed by Boehm and Ross, where the project manager aims to create win win
       situations for all parties involved.
       Overlooked Stakeholders: Important stakeholder groups can sometimes be missed,
       especially in unfamiliar business contexts.
       Communication Plan: Recommended practice to create a communication plan at the start of
       a project to coordinate stakeholder efforts effectively
       Setting Objectives:                                                                             2M
       1. Project Owners: Stakeholders who own the project control its financing and set the
       objectives.
       2. Objectives Definition: Objectives define what the project team must achieve for project
       success and identify shared intentions among stakeholders.
         3. Objectives focus on desired outcomes (post-conditions) rather than specific Outcome
       Focused: tasks. o Example: "The project will be a success if customers can order our
       products online" vs. "to build an e-commerce website".
        4. There are often several ways to meet an objective, which is Multiple Routes to Success:
       advantageous.
       5. Project Authority: When multiple stakeholders claim project ownership, a project
       steering committee (or similar body) with overall authority is needed to set, monitor, and
       modify objectives.
        6. Project Manager's Role: The project manager runs the project daily and reports regularly
       to the steering committee.
                                                  Page 3 of 5
                                                                          Subject Code        21CS61
3.b)   Explain traditional versus modern project management practices?                                5M
       Traditional Project Management Practices:                                                      2M
       1.Long-Term Planning: Projects were planned in detail upfront, often with extensive
       documentation and fixed requirements.
        2.Predictability and Stability: o Projects were simpler and more predictable due to stable
        requirements and longer development cycles. o Changes to requirements post-sign-off were
        discouraged, aiming for stability throughout the project lifecycle.
        3. Customer Interaction: o Customer involvement was limited mainly to requirement
        gathering and sign-off phases. o Customer feedback during development was minimal, with
        changes considered disruptive.
        4. Quality Management: o Quality management was primarily about meeting predefined
        specifications and standards.
        Modern Project Management Practices:                                                          3M
       1.Adaptive Short-Term Planning: o Projects are planned in shorter cycles, focusing on
       incremental deliveries of functionalities. Agile methodologies and extreme project
       management are adopted to accommodate changing requirements and customer feedback.
         2. Flexibility and Agility: Rapid application development and deployment strategies are
        prioritized to meet shorter project timelines.
        3.Customer Engagement and Feedback: o Customers are actively involved throughout the
        development process, with their feedback encouraged and incorporated iteratively. o
        Incremental delivery models facilitate regular customer feedback loops, enabling continuous
        improvement and alignment with customer needs.
        4. Enhanced Quality Management: o Quality management is integrated throughout the
        development process, focusing on iterative improvement and customer satisfaction. o Project
        managers play a crucial role in assessing project progress dynamically and ensuring quality
        in all intermediate artifacts.
        5. Change Management (Configuration Management): o Change management is integral
        to handling continuous customer feedback and evolving requirements.
4.a)   Explain Software Quality process capability models in detail?                                   5M
       The SEI Capability Maturity Model (CMM) is a framework developed by the Software                2M
       Engineering Institute (SEI) to assess and improve the maturity of software development
       processes within organizations.
       SEI CMM Levels:
       Level 1: Initial
       Level 1: Repeatable
       Level 1: defined
       Level 1: Managed
       Level 1: optimized
       Use of SEI CMM:                                                                                 3M
         Capability Evaluation: Used by contract awarding authorities (like the US DoD) to assess
       potential contractors' capabilities to predict performance if awarded a contract.
          Process Assessment: Internally used by organizations to improve their own process
       capabilities through assessment and recommendations for improvement.
       Evolution from CMM to CMMI:
       Expansion and Adaptation: Over time, various specific CMMs were developed for different
       domains such as software acquisition (SA-CMM), systems engineering (SE-CMM), and
       people management (PCMM). These models provided focused guidance but lacked
       integration and consistency.
       Need for Integration:
        Challenges: Organizations using multiple CMMs faced issues like overlapping practices,
       inconsistencies in terminology, and difficulty in integrating practices across different
       domains.
                                                 Page 4 of 5
                                                                         Subject Code         21CS61
      o CMMI Solution: CMMI (Capability Maturity Model Integration) was introduced to
      provide a unified framework that could be applied across various disciplines beyond just
      software development, including systems engineering, product development, and services.
4.b) Explain the techniques used to enhance software quality?                                          5M
     1.Increasing Visibility:                                                                          1M
      Early practices like Gerald Weinberg's 'egoless programming' promoted code review among
     programmers, enhancing visibility into each other's work.
     Modern practices extend this visibility to include walkthroughs, inspections, and formal
     reviews at various stages of development, ensuring early detection and correction of defects.     1M
     2.Procedural Structure:
     Initially, software development lacked structured methodologies, but over time,
     methodologies with defined processes for every stage (like Agile, Waterfall, etc.) have
     become prevalent.
     Structured programming techniques and 'clean-room' development further enforce procedural
     rigor to enhance software quality.
     3. Checking Intermediate Stages:                                                                  1M
     Traditional approaches involved waiting until a complete, albeit imperfect, version of
     software was ready for debugging.
     Contemporary methods emphasize checking and validating software components early in
     development, reducing reliance on predicting external
     quality from early design documents.
     4. Inspections:                                                                                   1M
     Inspections are critical in ensuring quality at various development stages, not just in coding
     but also in documentation and test case creation.
     5.Benefits of Inspections:
     Inspections are noted for their effectiveness in eliminating superficial errors, motivating       1M
     developers to write better-structured code, and fostering team collaboration and spirit.
   Prepared By                         Verified by Department IQAC                      Approved by HoD
                                                Co-ordinator
                                                 Page 5 of 5