Software Engineering Estimation Techniques
45 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

Which of the following techniques is mentioned for software sizing?

  • Time Tracking
  • LOC based estimation (correct)
  • Function Point Analysis
  • Agile estimation
  • Estimation models are not important for the software project planning process.

    False (B)

    What are the three types of resources mentioned in the estimation process?

    Human resources, reusable software resources, environmental resources

    The _____ model is a basic estimation model used in software engineering.

    <p>COCOMO</p> Signup and view all the answers

    Match the following concepts with their descriptions:

    <p>Software Scope = Defines the boundaries and deliverables of the project Feasibility = Determines whether the project is achievable within constraints Decomposition Techniques = Breaks down software tasks for easier estimation Project Planning Process = Involves organizing resources and timelines effectively</p> Signup and view all the answers

    Which of the following is NOT a variable to consider in operational feasibility?

    <p>Monetization Strategies (D)</p> Signup and view all the answers

    Legal and regulatory feasibility includes ensuring compliance with data privacy regulations such as GDPR.

    <p>True (A)</p> Signup and view all the answers

    What is a crucial aspect of project management that evaluates whether a project can be completed within the defined timeframe?

    <p>Schedule Feasibility</p> Signup and view all the answers

    The app's pricing strategies could include options like ______ or in-app purchases.

    <p>freemium</p> Signup and view all the answers

    Which of the following factors can influence the schedule feasibility of an app development project?

    <p>Team Skills (A)</p> Signup and view all the answers

    What is the estimated total size of the project in KLOC?

    <p>3.0 KLOC (A)</p> Signup and view all the answers

    Match the following variables with their corresponding categories regarding feasibility:

    <p>Data Privacy = Legal and Regulatory Feasibility Internal Processes = Operational Feasibility Project Complexity = Schedule Feasibility Monetization Timelines = Financial Feasibility</p> Signup and view all the answers

    Monetization timelines are unrelated to the startup's ability to achieve profitability.

    <p>False (B)</p> Signup and view all the answers

    The project falls under the organic category.

    <p>True (A)</p> Signup and view all the answers

    Name one legal framework that apps need to comply with regarding user data handling.

    <p>GDPR</p> Signup and view all the answers

    What is the average salary of software engineers assumed in the project estimation?

    <p>OMR 3000</p> Signup and view all the answers

    The formula for Initial Effort (Ei) for organic projects is Ei = 3.2 * (KLOC)^____.

    <p>1.05</p> Signup and view all the answers

    Match the following modules with their estimated sizes:

    <p>Data Entry = 0.6 KDLOC Data Update = 0.6 KDLOC Query = 0.8 KDLOC Reports = 1.0 KDLOC</p> Signup and view all the answers

    What is the Effort Adjusting Factor (EAF) calculated for the project?

    <p>1.61 (D)</p> Signup and view all the answers

    What is the final effort (E) calculated for the project in person-months?

    <p>16.3 PM</p> Signup and view all the answers

    The nominal development time (Tdev) for the project is approximately ____ months.

    <p>7</p> Signup and view all the answers

    Which of the following is NOT a category of software engineering resources?

    <p>Financial Resources (C)</p> Signup and view all the answers

    Environmental resources in software projects refer to the workspace provided to the team.

    <p>False (B)</p> Signup and view all the answers

    What are the two types of components classified under reusable software?

    <p>Full-experience components and Partial-experience components.</p> Signup and view all the answers

    For a project requiring workforce distribution, the location of each __________ resource must be specified.

    <p>human</p> Signup and view all the answers

    Match the following resource types with their definitions:

    <p>Human Resources = Individuals or teams that perform software engineering tasks Reusable Software = Existing software components that can be utilized again Environmental Resources = Hardware and software that support the project New Components = Software specifically built for the current project needs</p> Signup and view all the answers

    What is required to determine the number of people required for a software project?

    <p>Estimate of development effort (A)</p> Signup and view all the answers

    Change sizing is only applicable to new software projects.

    <p>False (B)</p> Signup and view all the answers

    Function point sizing is used to develop estimates of the information domain characteristics such as external input, external output, __________, internal logical files, and external interface files.

    <p>external inquiries</p> Signup and view all the answers

    What is the formula for the initial estimate of development effort?

    <p>Ei = a * (KLOC)b PM (C)</p> Signup and view all the answers

    The Effort Adjustment Factor (EAF) is derived from multiplying factors based on project attributes.

    <p>True (A)</p> Signup and view all the answers

    What does KLOC stand for?

    <p>Kilo Lines of Code</p> Signup and view all the answers

    For the Organic software category, the values of a and b are ___ and ___ respectively.

    <p>3.2, 1.05</p> Signup and view all the answers

    Match the following classes of software products with their respective constants for effort estimation:

    <p>Organic = 3.2, 1.05 Semidetached = 3.0, 1.12 Embedded = 2.8, 1.20</p> Signup and view all the answers

    Which formula represents the calculation for Nominal Development Time?

    <p>Tdev = a1 x (E)b1 Months (C)</p> Signup and view all the answers

    Embedded software requires a higher constant 'b' than Organic software.

    <p>True (A)</p> Signup and view all the answers

    Write the Effort Adjustment Factor formula.

    <p>E = EAF * Ei</p> Signup and view all the answers

    What is the total size estimated for the data update in the organic project?

    <p>1.6 KDLOC (C)</p> Signup and view all the answers

    The data entry module in the semidetached project is larger than the data entry module in the organic project.

    <p>True (A)</p> Signup and view all the answers

    What is the average salary of software engineers assumed for the organic project?

    <p>OMR. 4000/-</p> Signup and view all the answers

    The total estimated size for the Reports module in the organic project is _____ KDLOC.

    <p>1.2</p> Signup and view all the answers

    Which cost driver attribute has a high rating with a multiplying factor of 1.06?

    <p>Storage (A)</p> Signup and view all the answers

    The total estimated size of the Query module in the semidetached project is higher than that in the organic project.

    <p>False (B)</p> Signup and view all the answers

    What is the multiplying factor for Programmer Capability with a low rating?

    <p>1.17</p> Signup and view all the answers

    Match the modules with their respective sizes in the organic project:

    <p>Data Entry = 0.5 KDLOC Data Update = 1.6 KDLOC Query = 0.8 KDLOC Reports = 1.2 KDLOC</p> Signup and view all the answers

    Study Notes

    Software Feasibility

    • Includes technology, finance, time, resources, legal, and operational dimensions
    • Technology: Feasibility in current technology, defect reduction, matching needs.
    • Finance: Project budget feasibility, cost to organization/client/market.
    • Time: Project timeline to compete with market and competitors.
    • Resources: Availability of needed resources.
    • Legal: Complying with legal requirements.
    • Operational: Project integration into current operations (training, user onboarding, etc.).

    Technical Feasibility

    • Evaluation of the solution's technical feasibility
    • Technology Stack: Choosing appropriate programming languages, frameworks, and tools.
    • Integration: Defining how the app interacts with external services.
    • Scalability: Ensuring the architecture can handle user growth.
    • Security: Planning for data encryption, authentication, and vulnerability protection.

    Financial Feasibility

    • Assesses the project's financial feasibility and ability to sustain startup and operation
    • Budget: Costs involved in development, testing, deployment, and ongoing maintenance.
    • Revenue Model: Pricing strategies, freemium models, or in-app purchases
    • Monetization Timelines: Project timeline to achieve profitability

    Operational Feasibility

    • Evaluation of the app's integration into the startup's existing operations
    • Internal Processes: Aligning app data flows with existing workflows and support requirements.
    • Training and Support: User onboarding, support for future updates, and user retraining.
    • Resource Availability: Ensuring necessary human resources, infrastructure, and time commitment from the startup.
    • Ensuring that the app complies with legal and regulatory frameworks
    • Data Privacy: Adhering to data protection regulations (GDPR, HIPAA).
    • Financial Regulations: Compliance with financial laws and regulations (transactions, financial advice practices).
    • Licensing and Intellectual Property: Acquiring or licensing any necessary third-party components or intellectual properties.

    Schedule Feasibility

    • Evaluating if the project can be completed within the required time.
    • Project Complexity: Complex software requires more time to develop.
    • Available Resources: Adequate skilled personnel, equipment, and software tools. Resource shortages can lead to delays.
    • Team Skills: Highly skilled teams lead to faster development but lack of expertise can create delays in learning curves.
    • Potential Risks: Identifying and mitigating potential risks like technical challenges, external dependencies, unexpected obstacles.
    • Scope and Requirements: Project scope changes and frequent modifications can impact the timeline.
    • Dependencies: Understanding internal and external dependencies can help identify delays in the project. Contingency planning.
    • Buffer Time: Adding buffer for unforeseen issues or delays.

    Resource Feasibility

    • Assessing the availability of needed resources for project success
    • Human Resources: Skills matching, team capacity, workload management.
    • Financial Resources: Determining the project's budget.
    • Physical Resources: Office space, equipment, and infrastructure availability.
    • Technological Resources: Available technology and software support in the project timeline.
    • Time: Timeline adherence.
    • Resource Allocation: Efficient and effective resource allocation to avoid bottlenecks and overloads

    Software Resources

    • Human Resources
    • Reusable software resources
    • Environmental resources

    Software Resources - Human Resources

    • Individuals are sufficient for smaller projects
    • Larger projects often involve diverse and geographically dispersed teams
    • Required people numbers are determined after estimating development efforts (person-months, PM)

    Software Resources - Reusable Software

    • Off-the-shelf components are used from third-party sources or past projects.
    • Full-experience components: similar components from previous projects.
    • Partial-experience components: associated components from previous projects that need substantial modification.
    • Newly built components for unique needs.

    Software Resources - Environmental Resources

    • Environment that supports software from hardware and software
    • Hardware provides a platform for the software tools needed to generate work products

    Decomposition Techniques - Software Sizing

    • Function Point Sizing: Developing estimates of information domain characteristics
    • Standard component sizing: Estimating the occurrences of the component
    • Historical project data: Using previous project data to determine delivered LOC and sizing components
    • Change Sizing: Modifications to existing software (reuse, adding code, changing/deleting code)

    Basic COCOMO Model

    • Constructive Cost Estimation Model (COCOMO)
    • Developed by Dr. Berry Boehm in 1981
    • Stages of software cost estimation
    • Development modes (organic, semidetached, embedded)
    • Parameters for different development modes (a and b)

    Calculating Effort and Time

    • Obtain initial effort estimate (a * (KLOC)^b) in person months
    • Determine effort adjustments in a set of 15 factors
    • Calculate the nominal development time(a1 * (E)^b1) in months

    Problems

    • Example scenarios (problems with sizes) and relevant estimations
    • Organic Mode System estimations
    • Semidetached Mode System estimations

    References

    • Various sources of information on software estimation and COCOMO

    Studying That Suits You

    Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

    Quiz Team

    Related Documents

    Unit 5 Software Estimation PDF

    Description

    This quiz covers essential concepts and techniques related to software sizing and estimation in software engineering. Participants will explore estimation models, resource types, feasibility variables, and pricing strategies. Test your knowledge on these important aspects crucial for successful software project planning!

    More Like This

    Software Estimation and Planning
    5 questions
    Software Effort Estimation
    10 questions
    Software Project Effort Estimation
    38 questions
    Software Estimation Techniques
    10 questions
    Use Quizgecko on...
    Browser
    Browser