Software Development Challenges
40 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

What type of software is specifically designed to control products and systems within industrial markets?

  • Web-based software
  • Artificial intelligence software
  • Business software
  • Embedded software (correct)
  • What characteristic makes software elastic?

  • It is easily replicated. (correct)
  • It is built to resist modifications.
  • It requires constant updates.
  • It functions independently of changes.
  • Which statement accurately describes the trend in software costs after 2020?

  • Software costs have decreased significantly.
  • Software costs do not influence overall system costs.
  • Software costs are usually lower than hardware costs.
  • Maintenance costs of software may exceed development costs. (correct)
  • Which type of software is characterized by non-numerical algorithms to tackle complex problems?

    <p>Artificial intelligence software</p> Signup and view all the answers

    Why can a small change in code significantly affect software behavior?

    <p>The code is tightly coupled.</p> Signup and view all the answers

    What is a notable characteristic of the software development process compared to hardware?

    <p>Software is developed and engineered rather than manufactured.</p> Signup and view all the answers

    What is an example of system software?

    <p>Operating Systems</p> Signup and view all the answers

    Which application domain does personal computer software primarily encompass?

    <p>Multimedia management and spreadsheets</p> Signup and view all the answers

    Which of the following is categorized as application software?

    <p>Electronic Spread Sheets</p> Signup and view all the answers

    What is one reason that software project failure is increasingly common?

    <p>Increased system complexity and demands</p> Signup and view all the answers

    What is a fundamental challenge in measuring software development progress?

    <p>There are no measurable techniques available.</p> Signup and view all the answers

    Which type of system software is responsible for managing computer resources?

    <p>System Management Programs</p> Signup and view all the answers

    Which of the following best describes web-based software?

    <p>Software that is accessed via a network by users with a modem</p> Signup and view all the answers

    Application software for accounting operations is classified as what?

    <p>Application Specific Programs</p> Signup and view all the answers

    Regarding common software types, which statements accurately describe engineering/scientific software?

    <p>It is used for engineering calculations and simulations.</p> Signup and view all the answers

    Why is the cost of software development often high?

    <p>Effective measurement techniques are scarce.</p> Signup and view all the answers

    What percentage of new systems were canceled according to the Bureau of Labour Statistics?

    <p>50%</p> Signup and view all the answers

    Which of the following statements reflects a common issue reported in the software crisis?

    <p>Projects often run over budget and time.</p> Signup and view all the answers

    What was the average schedule overshoot for projects as reported by the Bureau of Labour Statistics?

    <p>50%</p> Signup and view all the answers

    Which project was reported to be 180 million pounds over budget?

    <p>National Air Traffic Services project</p> Signup and view all the answers

    What major issue highlighted by the IBM Survey in 2000 impacted system completion?

    <p>Systems required substantial redesign.</p> Signup and view all the answers

    What did the National Audit Office report indicate about the Home Office IT project?

    <p>The project was at risk of severe delays and budget overruns.</p> Signup and view all the answers

    What complexity was cited as a cause for the software crisis?

    <p>Complexity in hardware and software development processes.</p> Signup and view all the answers

    What was one of the outcomes for large systems according to the Bureau of Labour Statistics?

    <p>Significant likelihood of project cancellation.</p> Signup and view all the answers

    Which phase contributes the largest percentage of cost to the software development life cycle?

    <p>Requirement specification</p> Signup and view all the answers

    What is one of the main difficulties in accurately estimating software project costs?

    <p>Inaccuracy in time schedules and cost estimates</p> Signup and view all the answers

    Why is adding more personnel to a software project often counterproductive?

    <p>It may cause the project to be delayed further.</p> Signup and view all the answers

    Which of the following is a reason software is considered difficult to maintain?

    <p>Rapidly evolving user requirements</p> Signup and view all the answers

    What is a significant communication barrier in software development?

    <p>Different constituencies speaking different languages</p> Signup and view all the answers

    What aspect is NOT typically a project characteristic that influences software development?

    <p>Team diversity</p> Signup and view all the answers

    What should engineers respect regarding their employers or clients?

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

    Which of the following actions is considered a violation of professional responsibility in engineering?

    <p>Accepting work outside one's competence</p> Signup and view all the answers

    What must software engineers prioritize to be respected as professionals?

    <p>Exhibiting ethical behavior and honesty</p> Signup and view all the answers

    What should engineers ensure regarding intellectual property?

    <p>It is protected according to local laws</p> Signup and view all the answers

    What is one of the challenges faced by software engineering in the context of user expectations?

    <p>Software must adapt to increasing user expectations.</p> Signup and view all the answers

    What is an example of computer misuse that software engineers should avoid?

    <p>Playing games on an employer’s machine</p> Signup and view all the answers

    What is a key component of the ACM/IEEE Code of Ethics?

    <p>Aspirations must have accompanying details</p> Signup and view all the answers

    Which group is primarily responsible for producing the Code of Ethics in software engineering?

    <p>The ACM and IEEE professional organizations</p> Signup and view all the answers

    What statement reflects the ideal aspiration of software engineers in their profession?

    <p>To make software development a respected profession</p> Signup and view all the answers

    Which of these should be avoided when practicing computer engineering?

    <p>Misusing computers for personal gain</p> Signup and view all the answers

    Study Notes

    Software Replication and Complexity

    • Software replication is easy, contributing to its elasticity and increasing complexity over time.
    • Small code changes can significantly alter a system's overall behavior.
    • Software development is a nascent field, leading to a lack of effective, well-calibrated techniques.

    Challenges in Software Development

    • Software projects often extend timeframes, pushing completion dates.
    • High development costs arise from the intricacies involved in software creation.
    • Comprehensive error detection prior to delivery is challenging due to evolving software conditions.
    • Maintenance of existing programs consumes significant time and resources.
    • Progress measurement in software development is complex and often inaccurate.

    Types of Software

    System Software

    • Designed to manage computer hardware and provide a platform for applications.
    • Comprises various programs:
      • Operating Systems (e.g., Windows, Linux)
      • System Utilities (e.g., disk management tools)
      • Programming Languages and tools (e.g., compilers, IDEs)

    Application Software

    • Programs dedicated to performing specific user tasks:
      • General Purpose Applications (e.g., word processors, spreadsheets)
      • Application Specific Applications (e.g., accounting software, database management)

    Common Software Categories

    • Business Software: Management information systems leveraging large databases for business insights.
    • Embedded Software: Resides in hardware, often using read-only memory for product control.
    • Web-based Software: Provides extensive software resources via the internet.
    • AI Software: Uses algorithms to tackle complex problems in areas like robotics and neural networks.
    • Personal Computer Software: Grows rapidly, encompassing a variety of user-friendly applications.

    Software Development Costs

    • Software expenses tend to surpass hardware costs, especially in PCs.
    • Maintenance costs can exceed initial development costs, particularly for long-term use systems.
    • Efficient software development prioritizes cost-effectiveness.

    Software Failure and Crisis

    • Software development is fundamentally different from manufacturing; it’s engineered, not produced.
    • Software failure patterns differ from hardware, with no physical wear.
    • Real-world statistics indicate a high frequency of budget overruns and project cancellations.

    Common Software Project Issues

    • Many software projects exceed budgets or fall behind schedules.
    • Development inefficiency can lead to poor-quality software.
    • Communication challenges often arise among different stakeholder groups, impacting outcome coherence.

    Ethical Responsibilities in Software Engineering

    • Software engineers must adhere to ethical standards beyond technical skills.
    • Confidentiality: Respect client confidentiality irrespective of formal agreements.
    • Competence: Engineers should accurately represent their skill levels and avoid unsustainable work.
    • Intellectual Property: Protect the rights of clients and employers regarding intellectual creations.
    • Computer Misuse: Avoid using technical skills for unauthorized purposes.

    ACM/IEEE Code of Ethics

    • Establishes ethical standards within the field of software engineering.
    • Comprises eight guiding principles directing professionals in behavior and decision-making processes.
    • Encourages commitment to elevating software analysis, specification, design, development, testing, and maintenance as a respected profession.

    Studying That Suits You

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

    Quiz Team

    Related Documents

    Description

    This quiz explores the complexities and challenges faced in software development due to the elasticity of code and the impacts of small changes. Additionally, it discusses the youth of the software development discipline and the lack of effective measurement techniques available. Test your understanding of these concepts!

    More Like This

    Cyclomatic Complexity Reduction Techniques
    9 questions
    Complejidad y Propósito del Software
    16 questions
    Software Complexity and Quality
    40 questions
    Use Quizgecko on...
    Browser
    Browser