Computer Science > EXAM > CS 427 Lectures 1-5 | Spring 2025, Complete Solutions (All)
CS 427 Lectures 1-5 | Spring 2025, Complete Solutions What is the primary focus of software engineering? To manage the development and maintenance of software systems. How does software engineering ... differ from programming? Software engineering encompasses a broader scope including design, development, testing, and maintenance, while programming focuses specifically on writing code. What significant event in 1968 contributed to the formalization of software engineering? The NATO Conference held in Garmisch, Germany, which addressed the software crisis. Who were the authors of the report from the 1968 NATO Conference? P. Naur and B. Randell. What is the 'Mythical Man-Month' concept proposed by Fred Brooks? The idea that adding manpower to a late software project makes it later. What does 'Information Hiding' refer to in software engineering? A principle that suggests that software modules should hide their internal workings to reduce complexity. What are the main characteristics of software? Software is malleable, complex, and often requires ongoing maintenance. What does it mean for software to be malleable? Software can be easily modified and reworked, allowing for flexibility in development. Why is software considered complex? Because software entities are unique and do not have repeated elements like other constructs, making them inherently complex. What is the significance of the term 'Loose Coupling' in software engineering? It refers to a design principle that promotes minimal dependencies between software components. What was the impact of batch processing transitioning to time-sharing in the 1960s? It allowed multiple users to access computing resources simultaneously, improving efficiency. Who are Ken Thompson and Dennis Ritchie? Pioneers in computer science known for their work on the UNIX operating system. What is the role of a software engineer? To apply engineering principles to software development, ensuring quality and efficiency. What does 'Single-Version vs. Multi-Version Programs' refer to? It contrasts the development of software with a single version against multiple versions that may cater to different needs or users. What is the importance of the 1975 paper by D.L. Parnas? It discusses methods for multi-person construction of multi-version programs. What is a key takeaway from Fred Brooks' work on software engineering? The recognition that software development is not just about writing code but involves managing complexity and collaboration. What is the significance of the term 'Software Crisis'? It refers to the challenges and difficulties faced in software development, particularly in managing large-scale projects. What does the term 'Software' encompass according to Andreessen (2011)? Software includes various industries and services such as e-commerce (Amazon), streaming (Netflix), and telecommunications (Skype). What is a notable quote by Fred Brooks regarding software creation? He likens programmers to poets, emphasizing the creativity involved in software development. What does the term 'Batch Processing' refer to in computing? A method of processing data in groups or batches rather than in real-time. What is the significance of the term 'Time Sharing' in computing? It allows multiple users to share computing resources effectively, enhancing productivity. What is the primary goal of software engineering as a discipline? To improve the quality and reliability of software systems through systematic practices. What is the educational background of Tao Xie? He is a professor in Computer Science at the University of Illinois at Urbana-Champaign. What does Fred Brooks suggest about software in his quote? He suggests that deep down, creators want others to use their work and find it helpful, similar to a child's creation for a parent. What are the factors that cause software to vary? Size, how humans interact with it, requirements stability/knowledge, need for reliability, need for security, portability, and cost. What are the characteristics of Microsoft PowerPoint software? Size: large, Interactiveness: high, Requirements: frequent new features, Reliability: moderate, Security: low, Portability: high, Cost: high. What are the characteristics of Space Shuttle software? Size: moderate to large, Interactiveness: low, Requirements: stable, Reliability: very high, Security: low, Portability: low, Cost: high. What are the characteristics of online shopping software? Size: moderate, Interactiveness: high, Requirements: frequent new features, Reliability: high, Security: high, Portability: low, Cost: low. What are the three components of the trinity of a software project? Software system, software users, and software development process. Who are the major stakeholders in a software project? Users, developers, and customers. What are the three competing goals of a software project? Quality, features, and time. What is the ideal balance of project goals according to the competing project goals? Good, Fast, Cheap. Who are some additional project stakeholders in software development? Designer, program manager, developer, management personnel, support engineer, tester, usability engineer, operation engineer. What is the significance of the quote by Fred Brooks in relation to software development? It emphasizes the intrinsic desire of developers for their software to be useful and appreciated by others. What does the term 'requirements stability' refer to in software projects? The consistency and clarity of the software requirements over time. How does the need for reliability affect software design? It influences the software to be designed with robust error handling and fault tolerance. What role does portability play in software development? It determines how easily software can be transferred and used across different platforms. Why is security a critical factor in software development? It protects user data and ensures the integrity of the software against malicious attacks. What is the relationship between software interactiveness and user experience? Higher interactiveness generally leads to a better user experience by allowing more engagement. How does cost impact software project decisions? It affects budgeting, resource allocation, and the overall feasibility of the project. What is the role of a support engineer in a software project? To assist users with technical issues and ensure smooth operation of the software. What attributes are considered major for great software engineers? Problem-solving skills, communication, teamwork, and technical proficiency. What is the importance of understanding stakeholders in a software project? It helps in aligning the project goals with the needs and expectations of those involved. What is the significance of the references provided in the notes? They offer sources for further reading and validation of the concepts discussed. Who are the stakeholders in a project team? Designer, Developer, Program Manager, Management Personnel, Tester, Support Engineer, Operation Engineer, Usability Engineer. What are the requirements in software engineering as it shifts from classroom to real world? Requirements are ambiguous and evolving. What are the characteristics of software in the real world? Software is large, existing, and evolving. What does quality assurance involve in software engineering? Quality assurance involves substantial testing and in-field feedback. What are the major attributes of great software engineers according to interviews of experienced Microsoft engineers? Personality, decision making, teammate interactions, and attention to coding details. What is one definition of software engineering provided by Bauer in 1971? The establishment and use of sound engineering principles to obtain economically reliable software that works efficiently on real machines. How does IEEE define software engineering in 1990? The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software. According to Shaw et al. (2005), what is software engineering? Software engineering is the branch of computer science that creates practical, cost-effective solutions to computation and information processing problems. What are the key points emphasized when defining software engineering? Systematic application of process, practical economic value, and quality. What are some example topics studied in software engineering? Process, tools, techniques, models of software development, and modeling of developed systems. What is the first phase in the software development cycle? Requirements: Specify what the software should do and analyze to eliminate ambiguities. What is involved in the design phase of the software development cycle? Split software into modules and specify the overall structure and interaction of these modules. What does the implementation phase of the software development cycle entail? Specify how the modules work and unit-test each module in isolation. What is the purpose of the integration phase in the software development cycle? Specify how the modules interact and system-test module interactions. What is the maintenance phase in the software development cycle? Evolve software as requirements change and perform regression-testing on changes. What is the significance of in-field feedback in quality assurance? It helps improve the software based on real user experiences. What does 'evolving software' refer to in the context of requirements? Software that adapts and changes as user needs and requirements develop. What is the role of a program manager in a project team? To oversee project planning, execution, and ensure that the project meets its goals. What does 'ambiguous requirements' mean in software engineering? Requirements that are unclear or open to multiple interpretations. What is the importance of decision making for software engineers? It involves updating knowledge and handling complexity effectively. What does 'teammate interactions' emphasize for software engineers? The importance of honesty and creating shared understanding within the team. What is a key aspect of the engineer's code in software engineering? Paying attention to coding details and striving for elegance in code. What is the definition of a software process according to Pressman (2009)? A framework for the tasks that are required to build high-quality software. How does IEEE (2006) define a software process? A set of activities (activity group) performed towards a specific purpose. What are the five sections of activity groups in IEEE 1074? Project Management, Pre-development, Development, Post-Development, and Support. Name three activities included in the Project Management section of IEEE 1074. Project initiation, Project planning, Project monitoring and control. List three activities that fall under the Pre-development section in IEEE 1074. Concept exploration, System allocation, Software importation. What are the main activities involved in the Development section of IEEE 1074? Software requirements, Design, Implementation. What activities are included in the Post-Development section of IEEE 1074? Installation, Operation and support, Maintenance, Retirement. What is one advantage of the Waterfall model? It provides a structured approach with easily identifiable milestones. What is a disadvantage of the Waterfall model? Fixing a requirements bug in later phases can require scrapping completed work. What are the activities in the Waterfall process? Requirements, Design, Implementation, Integration, Testing, Maintenance. What does the Spiral model emphasize in software development? Iterative development with risk assessment at each iteration. What are the phases in the Rational Unified Process (RUP)? Inception, Elaboration, Construction, Transition. What is a key feature of the Modified Waterfall Model? It includes phases such as Analysis, Checking, and Regression Testing. What is one reason companies are returning to the Waterfall model? It is easier to fix requirements bugs in the requirements phase than later. What is the purpose of the Waterfall Conference? To discuss all aspects of the Waterfall Model of software development. What is the primary focus of Agile methodologies? Flexibility and iterative progress through small, incremental changes. Name two examples of Agile methodologies. eXtreme Programming (XP) and Scrum. What is the main goal of software configuration management? To control changes in software and maintain integrity over time. What is the significance of training in software processes? To ensure that users and stakeholders understand how to effectively use the software. What does 'Documentation development' entail in software processes? Creating and maintaining documentation that supports software usage and maintenance. What is the role of evaluation in software processes? To assess the quality and performance of the software against requirements. What is the importance of prioritizing software requirements? To ensure that the most critical features are developed and delivered first. What does 'Define interface requirements' involve? Specifying how different software components will interact with each other. What is the purpose of the IEEE Standard 610.12-1990? To provide a glossary of software engineering terminology. What are some reasons companies are moving back to traditional development processes? Companies find it easier to fix requirements bugs in the requirements phase than in the implementation phase, where scrapping completed work is often necessary. What is the Waterfall model known for? The Waterfall model provides a structured, linear approach to software development with easily identifiable milestones. What are the four phases of the Rational Unified Process (RUP)? Inception, Elaboration, Construction, and Transition. What key questions are addressed during the Inception phase of RUP? Should we build it? What will it cost? How much work will it take? How big will it be? What will it do? What is the main goal of an Internet startup? To get revenue, create market share, and impress investors. What are the basic principles of Agile software development according to the Agile Manifesto? Individuals and interactions, working software, customer collaboration, and responding to change. What is eXtreme Programming (XP) and how does it differ from the Waterfall model? XP is radically different from Waterfall, emphasizing minimal documentation and frequent releases of working code. What are some key practices of eXtreme Programming (XP)? Planning game for requirements, test-driven development, refactoring, pair programming, and continuous integration. What is the structure of an iteration in XP? Each iteration is organized as a two-week cycle, implementing a set of user stories. What is the purpose of pair programming? Two programmers collaborate side-by-side at one computer to produce higher quality code than they could individually. What roles do the driver and navigator play in pair programming? The driver writes code while the navigator observes and looks for defects.\ How often should roles be switched in pair programming? Roles should be switched every 30 minutes or less. What is the importance of automated tests in XP? All software must have automated tests that pass at all times, ensuring no broken code is checked in. What is the first step in working on a task in XP? Get the latest version of the code and ensure all tests pass. What is the process of test-driven development in XP? Write a test first, it fails, then write code to make the test pass, followed by refactoring. What does the Agile Manifesto emphasize over comprehensive documentation? Working software. What is the significance of customer collaboration in Agile development? It prioritizes customer needs and feedback over rigid contract negotiation. How does Agile respond to change during the development process? By valuing responding to change over following a fixed plan. What is the role of iteration meetings in XP? To plan each iteration at the start, ensuring tasks are manageable within a day. What is the goal of refactoring in XP? To improve the design of existing code without changing its functionality. What is the main written product in eXtreme Programming? Working code. What is the benefit of continuous integration in XP? It allows for frequent integration of code changes, reducing integration issues. What is one anecdotal benefit of pair programming? Pairs can produce near defect-free code in less than half the time. What empirical evidence supports the effectiveness of pair programming? Pairs produced higher quality code with 15% fewer defects and completed tasks in about half the time. What percentage of pair programmers reported enjoying their work more? 92% of pair programmers reported enjoying their work more. What percentage of pair programmers feel more confident in their work products? 96% of pair programmers feel more confident in their work products. What are some benefits associated with pair programming? Benefits include pair rotation, pair learning, pair pressure, pair negotiation, pair courage, pair reviews, and pair debugging. What is the focus of the Scrum process according to Marekventur (2011)? The Scrum process focuses on agile software development. What are the five critical factors to consider when choosing between agile and plan-driven methodologies? The five critical factors are Dynamism, Personnel, Culture, Size, and Criticality. What does the Dynamism factor refer to in methodology selection? Dynamism refers to the extent of requirements and technology change. How does the Personnel factor influence methodology choice? It considers the skill level of team members and their ability to adapt to methodologies. What is the significance of the Criticality factor? Criticality assesses the impact of defects concerning comfort, money, and lives. What is the relationship between team size and methodology choice? Team size influences the predictability and order versus change preference of team members. What does Level 3 in the Personnel factor indicate? Level 3 indicates a team member is capable of revising a methodology to an unprecedented new situation. What does Level 1A in the Personnel factor indicate? Level 1A indicates a team member can conduct discretionary methodology steps with training. What does Level -1 in the Personnel factor indicate? Level -1 indicates a team member likely has technical skills but is incapable or unwilling to collaborate. What does the Culture factor assess in methodology selection? The Culture factor assesses whether team members prefer predictability/order versus change. What is the purpose of the planning game in project planning? The planning game focuses on key practices for effective project planning. What are common ways to estimate the size of a feature in project planning? Common ways include using story points and other estimation techniques. What is the expected outcome of estimating story points for a feature? Estimating story points helps in planning and prioritizing features in agile methodologies. What do developers focus on during the planning phase? Developers only worry about one iteration at a time. How do customers manage iterations in project planning? Customers can plan as many iterations as desired, but can change future iterations. What is the purpose of the Planning Game in software development? The Planning Game involves customers writing user stories, developers estimating time for each story, and customers selecting stories based on budget. What happens if a user story is too big during the Planning Game? Customers split the story into smaller parts. What is project velocity in the context of software development? Project velocity is a team's rate of progress based on the amount of work done in previous iterations. What are the three priority levels for user stories in project planning? High priority for minimal working systems, medium priority for complete systems, and low priority for additional features. What is size estimation in the context of user stories? Size estimation involves determining the ideal time and elapsed time for completing a user story. What is an example of ideal time in sports? The ideal time for an NBA game is 48 minutes. What is a story point? A story point is a measurement unit for expressing the overall size of a user story. How are story points estimated? By choosing a medium-sized story as a reference and estimating others relative to it using a Fibonacci-like sequence. What are some methods for estimating story points? Expert opinion, disaggregation, analogy, and planning poker. What is the purpose of project scheduling? To determine a list of tasks, needed resources, and to schedule tasks considering dependencies and resource competition. What does PERT stand for in project management? Program Evaluation and Review Technique. What does a PERT chart represent? A PERT chart represents tasks, their dependencies, and estimates the time for each task. What is the critical path in project management? The critical path is the longest path through the project, determining the shortest time to complete the project. What is slack in project management? Slack is the extra time available for tasks that are not on the critical path. What is a Gantt chart used for? A Gantt chart is used for project scheduling, showing tasks and their timelines. What does 'Start to Start' mean in Gantt chart terminology? A task cannot start until its predecessor starts, although it may start later. What does 'Finish to Finish' mean in Gantt chart terminology? A task cannot end before its predecessor ends, although it may end later. What is the importance of project tracking? Project tracking involves keeping track of when tasks are finished and comparing the plan to reality. What should be done if a process forbids '90% finished'? Tasks should be decomposed into smaller parts to ensure they are either finished or not. What is included in a project schedule? A list of dates and tasks to be finished or started at those dates, often organized in a spreadsheet. How can actual completion dates be tracked in project scheduling? By including a separate column for actual completion dates in the project schedule. What is a key requirement for writing actions in software documentation? Actions must be objective, e.g., 'Wrote a program' instead of 'Learned language'. How are different tasks evaluated in software projects? Different tasks are evaluated differently, with specific criteria for each. What is the completion criterion for a programming task in XP? In XP, a programming task is not finished until all tests run correctly. How does RUP differentiate between writing and reviewing documents? In RUP, writing a document is a separate task from reviewing it. What is an example tool for task management mentioned in the notes? Trello. What is the definition of risk in the context of software projects? Risk is potential future harm. What are some reasons people often don't manage risk? 1. They don't want to be negative thinkers. 2. They avoid raising problems without solutions. 3. They refrain from stating something as a problem unless it can be proven. 4. They hesitate to raise issues unless they are willing to take responsibility for solving them. What are some harms to stakeholders in software projects? Poor quality, budget overruns, schedule slips, wrong or unsatisfactory functionality, performance, reliability, and safety. What is the goal of risk management in software engineering? To identify, address, and eliminate risk items before they become threats to successful software operation or major sources of software rework. What is the proactive approach suggested for risk management? Be proactive in managing risks. Who is the professor associated with the risk management notes? Tao Xie, Professor of Computer Science at the University of Illinois at Urbana-Champaign. What is a key aspect of documenting artifacts in software projects? Artifacts should be described objectively, e.g., 'Design passed review' instead of 'Design is reusable'. What is a common misconception about raising problems in software projects? That one should not raise a problem unless they have a solution for it. What is the significance of a risk table in risk management? A risk table helps in organizing and visualizing identified risks. What can be a consequence of poor quality in software projects? It can lead to budget overruns and schedule slips. What does Boehm (1991) define risk management as? The process of identifying, addressing, and eliminating risk items before they become threats or sources of rework. What is a potential harm to customers in software projects? Wrong or unsatisfactory functionality. What is a potential harm to support engineers in software projects? Issues related to poor quality software. What is a potential harm to developers in software projects? Increased rework due to unmanaged risks. What is a potential harm to users in software projects? Unsatisfactory performance or reliability of the software. What are the main steps in Risk Management? Risk Assessment, Risk Planning, Risk Mitigation, Risk Monitoring, Risk Control. What is involved in Risk Identification? Identifying issues such as lack of communication among team members, loss of a team member, incorrect understanding of requirements, and overriding teammates' work. What are the probability classifications for risk analysis? 10%: Very improbable, 40%: Improbable, 75%: Probable, 90%: Frequent. What are the impact classifications for risk analysis? 1: Negligible 2: Marginal 3: Critical 4: Catastrophic. How is risk exposure calculated? Risk exposure is calculated as Probability * Cost. What is the purpose of Risk Prioritization? To rank risks by their exposure, which is the cost of the loss to the project should the risk occur. What are some actions taken in Risk Planning? Risk Reduction, Risk Acceptance, Information Buying, and Contingency Plans. What is an example of a risk mitigation strategy for developer turnover? Using pair programming to spread knowledge of the system among developers. What are the biggest risks in software projects according to the notes? Wrong/constantly changing requirements, inadequate schedule, and lack of user involvement. What are the top factors for software project failures? 1. Incomplete requirements (13.1%) 2. Lack of user involvement (12.4%) 3. Lack of resources (10.6%) 4. Unrealistic expectations (9.9%) 5. Lack of executive support (9.3%) What is the role of stakeholders in requirements engineering? Stakeholders express their needs through requirements to achieve project goals. What are functional requirements? Requirements that define specific behaviors or functions of a system. What are non-functional requirements? Requirements that specify criteria that can be used to judge the operation of a system, rather than specific behaviors. What is the significance of managing risks in software projects? To address and mitigate the biggest risks that could impact project success. What is the importance of communication in Risk Identification? Lack of communication can lead to misunderstandings and increased risks. What does Risk Mitigation involve? Implementing strategies to reduce the impact or likelihood of risks. What is the purpose of documentation in risk management? To ensure knowledge transfer and clarity regarding project architecture and key use cases. How can requirements be classified? Requirements can be classified into functional or non-functional types. What is the impact of inadequate schedules on software projects? It can lead to unrealistic expectations and increased project risks. What is the goal of requirements engineering? To clearly define stakeholder needs and ensure they are met in the project. What is a contingency plan in risk management? A predefined strategy to address potential risks if they occur. What does risk control entail in the context of risk management? Monitoring and adjusting risk management strategies as necessary throughout the project. What is the role of iterative development in managing risks? It allows for continuous feedback and adaptation to changing requirements. What percentage of project failures is attributed to a lack of executive support? 9.3% What is the percentage of project failures due to changing requirements and specifications? 8.7% What is the percentage of project failures attributed to a lack of planning? 8.1% What percentage of project failures is due to not needing the system any longer? 7.5% What is the percentage of project failures caused by a lack of IT management? 6.2% What percentage of project failures is due to technology illiteracy? 4.3% Why is it cheaper and easier to fix issues found earlier in requirements? Issues found earlier are cheaper and easier to fix than later. What role do customers play in requirements in Extreme Programming (XP)? Customers write and interpret user stories. What are the two main types of requirements according to Lamsweerde (2009)? Functional requirements and non-functional requirements. What do functional requirements describe? The software's functional effects on the environment resulting from software operations. What are non-functional requirements also known as? -ilities (e.g., performance, usability, maintainability). Give an example of a performance non-functional requirement. Must answer a query in 3 seconds. What is an example of a usability non-functional requirement? New user must be able to finish buying a book in 15 minutes; 90% of users must say they like the interface. What is an example of a maintainability non-functional requirement? New programmers should be able to fix the first bug in a week on the job. What are some additional non-functional requirements mentioned? Security, safety, reliability. What are the main purposes of requirements specifications? Contracts, communication, evaluation. What are descriptive statements in specifications? Properties about the system that hold regardless of how the system behaves. What are prescriptive statements in specifications? Desirable properties about the system that may or may not hold depending on how the system behaves. What is a domain property according to Lamsweerde (2009)? A descriptive statement about the problem world that holds regardless of the system/software-to-be. What is an assumption in the context of requirements engineering? A generally prescriptive statement to be satisfied by the environment of the software-to-be. What is the purpose of definitions in requirements specifications? To provide a precise, complete, and agreed meaning to domain concepts or auxiliary terms. What does the term 'shall' indicate in natural language mood for requirements? Mandatory requirements. What does the term 'should' indicate in natural language mood for requirements? Desirable requirements. What does the term 'will' indicate in natural language mood for requirements? A reference to the future, not under the control of the specified system. What are some notations used for requirements specifications? Traditional language, UML (use cases, state diagrams), user stories, finite state machines, data flow diagrams, pseudocode. What is requirements engineering? Requirements engineering is the branch of software engineering concerned with the real-world goals for, functions of, and constraints on software systems, as well as their relationship to precise specifications of software behavior and their evolution over time. What are the two main actions in requirements engineering? The two main actions in requirements engineering are discovering and communicating requirements. What is the significance of understanding the problem world and machine in requirements engineering? Understanding the problem world and machine, along with their shared phenomena, helps in effectively conducting requirements engineering. What is the definition of requirements elicitation? Requirements elicitation is a process of discovering stakeholder expectations and adjusting these expectations. What are the main objectives of requirements elicitation? The main objectives of requirements elicitation include identifying boundaries, understanding context, identifying stakeholders, collecting tasks, and assessing feasibility and risk. What are the three main sources to elicit requirements? The three main sources to elicit requirements are stakeholders, application domains, and existing documentation. What are some traditional techniques for requirements elicitation? Traditional techniques include questionnaires, surveys, interviews, and analysis of existing documentation. What are group elicitation techniques in requirements engineering? Group elicitation techniques include brainstorming, focus groups, and RAD/JAD workshops. What is prototyping in the context of requirements elicitation? Prototyping involves gathering early feedback from stakeholders to refine requirements. What are model-driven techniques in requirements elicitation? Model-driven techniques include goal-based and use case/scenario-based approaches. What cognitive techniques are used in requirements elicitation? Cognitive techniques include protocol analysis and card sorting. What contextual techniques are used in requirements elicitation? Contextual techniques include ethnography and conversation analysis. What is the 'System-as-Is' in requirements engineering? The 'System-as-Is' refers to the system as it exists before the machine is built into it. What is the 'System-to-Be' in requirements engineering? The 'System-to-Be' refers to the system as it should be when the machine is built and operated in it. Who are the main participants in requirements engineering? The main participants in requirements engineering include people assigned to problems, opportunities, and domain knowledge. What are the key components of the 'Why, What, and Who' of requirements engineering? The key components include the 'Why' (objectives), the 'What' (services, constraints, assumptions), and the 'Who' (people and devices involved). What is the role of stakeholders in requirements elicitation? Stakeholders play a crucial role in defining the problems, goals, and expectations that need to be addressed. What is the importance of identifying feasibility and risk in requirements elicitation? Identifying feasibility and risk helps to understand potential obstacles that might prevent solving the identified problems. What is the purpose of collecting tasks during requirements elicitation? Collecting tasks helps to understand how a software system might assist in solving the identified problems. What is the relationship between requirements engineering and software specifications? Requirements engineering focuses on the real-world goals and constraints that inform the precise specifications of software behavior. What is the significance of shared phenomena in requirements engineering? Shared phenomena refer to the interface between the problem world and the machine, which is crucial for effective requirements communication. Who authored the foundational papers referenced in the notes on requirements engineering? Key authors include P. Zave, M. Jackson, and B. Nuseibeh. What is the role of existing documentation in requirements elicitation? Existing documentation serves as a source of information to understand current systems and inform the elicitation process. What is the primary function of the Health Claims Processing System? To receive health insurance claims and determine whether to pay them. What types of sources can health claims be received from? Electronically, fax, and on paper. What technology is used to process scanned paper and fax documents? Optical Character Recognition (OCR). What is done to images before they are logged to optical disk? They undergo form dropout, deskewing, and despeckling. What happens to fields with low confidence levels in the claims processing? They are repaired by hand. What is the role of the adjudicator in the claims processing system? To review claims, ask for more information, and decide to accept or reject claims. What does R7 in the informal requirements specify about claims? It determines if a claim can be accepted and how much can be paid, suspending it if there are inconsistencies. What is a use case in the context of system requirements? The system's intended functionality and a complete course of events from the user's perspective. What are actors in a use case diagram? Entities external to the system that interact with it, such as people or systems. How is a scenario defined in the context of use case requirements? A sequence of actions that illustrates behavior within the system. What does a use case diagram represent? The relationships between use cases and actors. What is the purpose of including a use case in another use case? To indicate that one use case has a multi-step subtask that will always be completed when the main use case is executed. What is a key characteristic of use cases that actors want? They begin with verbs and describe major pieces of functionality. What should be avoided when writing use cases? Focusing on the graphical user interface (GUI); instead, write in terms of goals. What are the four kinds of use cases mentioned in the notes? The specific kinds are not listed in the notes, but they are to be named and explained. What is the significance of the 'include' stereotype in use case diagrams? It indicates that one use case includes another as a subtask. What is an example of an actor in the health claims processing system? [Show More]
Last updated: 7 months ago
Preview 5 out of 38 pages
Loading document previews ...
Buy this document to get the full access instantly
Instant Download Access after purchase
Buy NowInstant download
We Accept:
CS 427 LECTURES 1-13 BUNDLE
By Nurse Henny 7 months ago
$22
2
Can't find what you want? Try our AI powered Search
Connected school, study & course
About the document
Uploaded On
May 16, 2025
Number of pages
38
Written in
All
This document has been written for:
Uploaded
May 16, 2025
Downloads
0
Views
24
Scholarfriends.com Online Platform by Browsegrades Inc. 651N South Broad St, Middletown DE. United States.
We're available through e-mail, Twitter, Facebook, and live chat.
FAQ
Questions? Leave a message!
Copyright © Scholarfriends · High quality services·