1.
You and your development team have been commissioned to work on a database for a major bank. For obvious reasons, your client is very concerned with security. You and your team come up with many security features that could be implemented into the product.
In what phase of a software life cycle process would this task occur?
Correct Answer
A. Specification
Explanation
In the specification phase of the software life cycle process, the task of working on the security features for the database would occur. This phase involves gathering and documenting the requirements and specifications for the software. Since the client is very concerned with security, it is important to specify and define the security features that need to be implemented in the product during this phase.
2.
Consider an application in which users can share and view recipes.
A user has the option to create an account with a personal profile or use a guest account. Both the account holders and guests can browse recipes, but a user must be logged into their personal account in order to post recipes. Both types of users can also browse and search recipes from the main page.
Which of the following tasks could be performed by a ‘guest’ role?
Correct Answer(s)
A. Create an account
B. Search recipes
C. Browse recipes
Explanation
The 'guest' role in this application can perform the tasks of creating an account, searching recipes, and browsing recipes. However, they cannot add optional information to their profile or post recipes.
3.
You have been assigned to a new project. In this project, your team is developing a new database and check-out system for the local library.
It uses a mobile app to check out books to the user’s account. Theodore is a programmer on your development team. He has been assigned to writing source code for adding new books to the database, establishing the database, writing the text for the help page, and executing tests creating an account.
Which of these assignments is an activity and not a task?
Correct Answer
B. Establishing the database
Explanation
The assignment "Establishing the database" is an activity and not a task because it involves a broader and more complex process of setting up the entire database system, rather than a specific and discrete action. Activities often require multiple tasks to be completed and may involve a series of steps or actions to achieve a larger goal. In this case, establishing the database would involve tasks such as creating tables, defining relationships, and configuring settings, among others.
4.
You and your development team are working hard to implement some agile practices into your development. One practice you chose to adopt is delivering a working prototype to your client every 2 weeks for feedback.
What phase of a process does this practice belong?
Correct Answer
A. Specification
Explanation
This practice of delivering a working prototype every 2 weeks for feedback belongs to the Specification phase of the process. This is because during this phase, the team is focused on gathering and documenting the requirements and specifications of the project. By delivering a working prototype, the team is able to gather feedback from the client and ensure that the specifications are being met.
5.
Let’s imagine writing an essay as a software engineering activity. If the completed essay is the output work product.
What do you think would be the best input work products?
Correct Answer
B. An outline and notes previously generated on the topic
Explanation
An outline and notes previously generated on the topic would be the best input work products for writing an essay as a software engineering activity. These materials provide a foundation and structure for the essay, allowing the writer to organize their thoughts and ideas. They serve as a guide and reference throughout the writing process, ensuring that the essay stays focused and coherent. Additionally, the outline and notes save time and effort as the writer doesn't have to start from scratch and can build upon the existing information.
6.
Mark is a software product manager for a development team, that is working on an ordering app for local take-out restaurants. He has been at home with the flu for the last week. When he returns, he wants to know which of the project management activities have been completed while he was away. He looks around the office and sees a schedule of tasks to be completed, and a risk plan dated with yesterday’s date. He then logs onto his computer and sees that new task development rates have been entered, and that the progress tracking chart is up to date.
Which of the following activities does Mark have to complete?
Correct Answer
C. Performing estimates
Explanation
Mark needs to complete the activity of performing estimates. This is because he wants to know which project management activities have been completed while he was away, and performing estimates is a crucial activity in project management that helps in determining the time, effort, and resources required for completing tasks. By performing estimates, Mark will be able to assess the progress made by the development team in his absence and plan the next steps accordingly.
7.
You are a product manager working for a chain of coffee shops. Your client wants your development team to create an app, that allows end-users to pay for their coffees with the application. You are working on the formulating potential approaches activity with your development team.
What would an input work product be for this activity be?
Correct Answer
D. Backlog of requirements
Explanation
The input work product for the activity of formulating potential approaches would be a backlog of requirements. This is because during this activity, the product manager and development team brainstorm and come up with various approaches or ideas to achieve the client's goal of creating an app for payment. These approaches or ideas need to be documented and organized in a backlog of requirements, which will serve as a reference for the development team to prioritize and implement the necessary features and functionalities in the app.
8.
As a product manager, you're responsible for helping to track and monitor the development process.
Your team has just completed planning for this iteration, and they started writing code for the product. Now that the planning is complete, you look around for something to do. You look on your desk, and see an instruction manual for a feature created in the last iteration. You look on wall, and see the list of metrics your team decided to use. You look at your email, and see an email from your boss outlining the resources your team has been allocated. And you look on your bookshelf, and see the latest version of the risk plan. You decide it’s time to start monitoring the progress of development for this iteration.
Which of these work products do you think would help you to track development?
Correct Answer
B. Defined metrics
Explanation
Defined metrics would help the product manager track the development progress because metrics provide measurable indicators of progress and performance. By having clear and defined metrics, the product manager can monitor how well the development process is progressing and identify any areas that may need attention or improvement. Metrics provide quantitative data that can be used to assess the effectiveness and efficiency of the development efforts, making them a valuable tool for tracking and monitoring the development process.
9.
Please choose the linear process model from the list:
Correct Answer
C. Each pHase happens sequentially, and never loops or repeats
Explanation
The linear process model is characterized by each phase happening sequentially without any looping or repetition. This means that once a phase is completed, the next phase begins, and there is no going back or repeating any previous phases. This model ensures a clear and structured flow of work, with each phase building upon the previous one until the product is complete. It is a straightforward and linear approach to project management, suitable for projects with well-defined requirements and minimal changes expected throughout the process.
10.
Study our diagram which depicts the V-Model of software development. If you are in the “integration testing” phase of the model:
Which phase are you verifying when you run your tests?
Correct Answer
C. High level design
Explanation
When you are in the "integration testing" phase of the V-Model of software development, you are verifying the "High level design" phase when you run your tests. This means that you are testing the integration of different components or modules of the software to ensure that they work together as intended based on the high level design specifications.
11.
Mark is using the Spiral Model to build his software. He has extensive experience programming with punch-cards and using the waterfall model, so Spiral’s iterations are a big step for him. He just finished developing and testing his product, but can’t remember what stage of the model comes next.
Which stage of the Spiral Model comes after development and testing?
Correct Answer
B. Planning for the next iteration
Explanation
After the development and testing stage in the Spiral Model, the next stage is planning for the next iteration. This stage involves analyzing the results of the previous iteration, identifying any necessary changes or improvements, and determining the goals and objectives for the next iteration. Mark, who is using the Spiral Model for the first time, would need to plan for the next iteration in order to continue the iterative and incremental development process.
12.
Mark is building tests for his code as he designs his product’s architecture design. He is also clarifying and eliciting requirements from his client occasionally, as he runs into issues.
What style of software development is Mark using?
Correct Answer
A. Parallel development
Explanation
Mark is using parallel development because he is simultaneously working on building tests for his code and designing the architecture of his product. Additionally, he is clarifying and eliciting requirements from his client as he encounters issues, indicating that he is working on multiple aspects of the development process concurrently.
13.
Which of the following describe the main aspects of the elaboration phase?
Correct Answer(s)
C. Creating use case diagrams
D. Creating class diagrams
Explanation
During the elaboration phase, the main aspects involve creating use case diagrams and creating class diagrams. Use case diagrams help to identify and define the interactions between system actors and the system itself, while class diagrams provide a visual representation of the classes, their attributes, and their relationships in the system. These diagrams are crucial in understanding the requirements and structure of the system being developed. Identifying a strong business case for the project and creating use cases are also important activities in the software development process, but they are not specifically mentioned as main aspects of the elaboration phase in this question.
14.
Carley just built her first iteration of her product, and now has a first generation working product prototype. She intends on adding to this prototype in further increments. The test users are critical of the initial prototype. After seeing the product design, they suggest a different approach that uses some of the features that were already built.
This is called what type of prototyping?
Correct Answer
D. Incremental
Explanation
Incremental prototyping is the type of prototyping where the initial prototype is built and then further improvements or additions are made in subsequent iterations. In this case, Carley has built a first generation working product prototype and intends to add to it in further increments based on the feedback from test users. The suggestion of the test users to use some of the features that were already built aligns with the concept of incremental prototyping, as it involves building upon existing functionality and making iterative improvements.
15.
What sets incremental prototyping apart from illustrative, throwaway, or exploratory prototyping? You may select multiple answers.
Correct Answer(s)
A. Incremental prototypes use a triage system
D. Incremental prototypes may contain working software for the end product
Explanation
Incremental prototyping sets itself apart from other types of prototyping by using a triage system to prioritize and manage the development process. This means that the prototype goes through a series of iterations and improvements based on feedback and requirements, allowing for incremental enhancements. Additionally, incremental prototypes may contain working software for the end product, which means that they can provide a more realistic representation of the final product's functionality and features.
16.
Mark and his development team are constructing the support infrastructure to enable the continuous delivery of the product prototypes put together by other developers. He has automated tools in place to build and integrate code, package the product, and install the product in a test environment.
In this infrastructure, he also needs automated tools to do what?
Correct Answer
D. Run tests
Explanation
In addition to automating the building, integration, packaging, and installation of the product prototypes, Mark also needs automated tools to run tests. Running tests is an essential part of the continuous delivery process as it ensures that the product prototypes are functioning correctly and meeting the required specifications. Automated testing tools can help in executing various types of tests, such as unit tests, integration tests, and regression tests, to validate the functionality and quality of the prototypes before they are deployed.
17.
Mark is a developer working for Microsoft. He has just spent his whole day writing the code which will become part of the next version of the Windows operating system. At the end of the day, he uploads his changes onto a server.
What can cause his changes not to be tested?
Correct Answer
B. His code does not build
Explanation
If Mark's code does not build, it means that there are errors or issues in his code that prevent it from being compiled successfully. As a result, the code cannot be executed or tested because it is not in a runnable state. Building the code is an essential step before testing, as it ensures that the code is syntactically correct and can be executed. If the code does not build, it will not be able to go through the testing process.
18.
You have been called upon to help out a struggling development team. The team is working on developing a mobile ticket app for a professional baseball franchise, and has failed to deliver a working product on schedule. They think they are about two weeks behind schedule, but it’s hard to know because nothing is being tracked. They need help, and they need it fast! You have heard from other product managers that Agile practices have helped their projects in the past. You only want to implement practices that follow the Agile Manifesto.
Which of the following practices would you implement?
Correct Answer
C. The development plan is reevaluated at regular time intervals
Explanation
Reevaluating the development plan at regular time intervals is a practice that follows the Agile Manifesto. Agile emphasizes the importance of adaptability and responding to change over following a rigid plan. By regularly reevaluating the development plan, the team can adjust their priorities, make necessary changes, and ensure that they are on track to deliver a working product. This practice promotes transparency, collaboration, and continuous improvement, which are key principles of Agile.
19.
You are a software product manager for a small startup that is working on creating an application that matches parents with local babysitters and nannies. You and your development team decided early on that the team will adopt the Extreme Programming methodology. Your development team is organized into pairs, with each pair working in front of a single workstation. This is a practice of Extreme Programming that we will talk about later.
Which of the five aspects of Extreme Programming do you think this improves?
Correct Answer(s)
A. Communication
B. Simplicity
C. Feedback
D. Respect
E. Courage
Explanation
The practice of organizing the development team into pairs working in front of a single workstation improves all five aspects of Extreme Programming. Communication is enhanced as team members constantly collaborate and share ideas. Simplicity is promoted as pairs work together to simplify the code and design. Feedback is increased as pairs provide continuous feedback to each other. Respect is fostered as team members rely on each other and value each other's expertise. Courage is encouraged as pairs can support and motivate each other to take risks and try new approaches.
20.
Zhamilya is working as a software product manager for a development team that is creating a social media application. Her team spends two months completely planning out every detail of the project, including the design and schedules. The duration of their iteration is hours, not weeks. Her team has depicted their system metaphor on a whiteboard in the office.
Which of their practices are considered extreme?
Correct Answer(s)
B. Iteration duration in hours
C. System metapHor on a whiteboard
Explanation
The extreme practice in this scenario is the iteration duration in hours. In typical software development, iterations are usually measured in weeks or even months, not hours. This suggests that Zhamilya's team is following an extreme programming (XP) approach, where short iterations are emphasized for rapid development and frequent feedback. The practice of depicting the system metaphor on a whiteboard is not extreme, as it is a common practice to visually represent the system architecture and design. The two-month planning period, although longer than usual, is not necessarily extreme as it allows for thorough planning and preparation.
21.
You're a software product manager working with the development team who's producing an app for a cinema that allows users to check show times and buy tickets.
Which of the following, if any, would be acceptance tests?
Correct Answer(s)
A. A test that confirms when a user buys a ticket, a valid ticket appears.
D. A test that confirms when a user selects a show time, movies playing at that time appear.
Explanation
The two acceptance tests that would be applicable in this scenario are: a test that confirms when a user buys a ticket, a valid ticket appears, and a test that confirms when a user selects a show time, movies playing at that time appear. These tests are important as they verify the core functionalities of the cinema app, ensuring that users are able to successfully purchase tickets and view the available movies for a selected show time.
22.
Timmy and Maria were the programmers who co-wrote the unit tests for this feature. Steven and Maria were the programmers who pair programmed the source code. Danielle, the product manager, acceptance tested the product before the release.
Who is to blame for this error? Choose all that apply.
Correct Answer(s)
A. Danielle
B. Timmy
C. Maria
D. Steven
23.
You have been hired by a company that say they have tried to implement the Extreme Programming methodology exactly. You walk into the workplace and see a maze of cubicles. As you walk around the workspace and peek into cubicles, you see pairs of programmers working together. You pop into a cubicle and ask the developers where you can find the client. One developer hands you a business card that has the client’s phone number on it. He said you can leave a message there and the client will get back to you. You go into the next cubicle and ask the two programmers working there when the next release is due. They tell you that releases are due every 2nd Friday. They have a release coming up this Friday. You ask these programmers what they are working on. They explain that they are the database team, and they exclusively work on maintaining and building the database. You realize that there are many areas of Extreme Programming that they are not following properly.
What are some areas of development you are going to need to change in order to have Extreme Programming running precisely in this office?
Correct Answer(s)
A. The workspace
C. Client Availability
E. Developer Versatility
Explanation
In order to have Extreme Programming running precisely in this office, some areas of development that need to be changed include the workspace, client availability, and developer versatility. The maze of cubicles does not promote effective communication and collaboration among team members, so a more open and collaborative workspace should be implemented. The fact that the client can only be reached through a phone message indicates a lack of direct and immediate communication, which goes against the principles of Extreme Programming. Additionally, the fact that the developers are exclusively working on the database suggests a lack of versatility and cross-functional collaboration, which is another important aspect of Extreme Programming.
24.
What is the primary task of the Product Owner?
Correct Answer
C. They are in charge of making decisions about the product
Explanation
The primary task of the Product Owner is to make decisions about the product. This involves prioritizing and managing the product backlog, defining and communicating the product vision, and ensuring that the development team understands the requirements and expectations. The Product Owner is responsible for making decisions on what features and functionalities should be included in the product, based on customer needs, market trends, and business goals. They collaborate with stakeholders, gather feedback, and make informed decisions to maximize the value of the product.
25.
You are the software product manager who has been hired to work on a running app for a major athletic apparel company. In your first meeting with your development team and Penny, the representative from the company, the development team decided to use Scrum. Penny was appointed as the product owner. Your team is halfway into development, and you get an email from the CEO of the company. He is requesting pre made running playlists users can listen to when they run. You know that your development team had already talked to Penny about this feature and they decided as a team that they wouldn’t implement this feature in favour of another one.
Following the practices of Scrum, what should you do?
Correct Answer
D. Send him back an email asking for all feature requests to come through Penny
Explanation
In Scrum, the product owner is responsible for prioritizing and managing the product backlog, which includes all the features and requirements for the project. Therefore, according to Scrum practices, any feature requests should go through the product owner, in this case, Penny. By sending an email back to the CEO asking for all feature requests to come through Penny, the software product manager is following the correct practice of involving the product owner in decision-making and ensuring that the backlog is managed effectively.
26.
You are at a conference on Scrum Practices. You have been talking to several other software product managers about their development teams. The first SPM you talk to is named Kelsey. She describes her team as having 4 programmers, 2 testers, and 1 user interface designer. Next you meet Jim. He says his current team consists of 20 developers. Next, you meet Billy. He simply says he has a very talented team of 7 developers. Then you run into an old friend, Carry. She says her team has 9 developers. 5 are on the development team and 4 are on the testing team. Finally you meet a new software product manager, Hillary. She says her team consists of just 3 developers and they subcontract out their testing.
Which of these software product managers, if any, have a true scrum development team?
Correct Answer
C. Billy
Explanation
Billy is the only software product manager who has a true scrum development team. Scrum development teams typically consist of cross-functional members, including developers, testers, and user interface designers. Kelsey's team lacks a user interface designer, Jim's team consists of only developers, Carry's team has separate development and testing teams, and Hillary's team sub-contracts their testing. Only Billy's team of 7 developers meets the criteria of a true scrum development team.
27.
Let’s say your team is developing a mobile app that allows users to search for food and drink specials at local restaurants.The ‘sprint goal’ for this iteration is to set up the user interface. This is everything that the enduser will see and interact with. Halfway through development for the iteration, the client sends you an email that they’ve changed their mind and they want the main colors of the application to be blue and white instead of red and black. This is a quick fix for the development team. The client also requests that they want the application to now support ads that pop up on the screen.
Which of these changes can be made in the current iteration?
Correct Answer
A. The color change
Explanation
The color change can be made in the current iteration because it is a quick fix that can be implemented without major changes to the user interface. It does not require additional functionality or significant development effort. On the other hand, adding popup ads would require implementing new functionality and modifying the user interface, which may not be feasible within the current iteration's timeframe. Therefore, the color change is a more realistic and achievable change to make in the current iteration.
28.
You have chosen to start building a product from scratch, and are looking at all the options when it comes to how you will manage the project. You are thinking about using Agile practices.
Which of the following are traditional Agile methodologies?
Correct Answer(s)
B. Scrum
C. Extreme Programming
D. Dynamic Systems Development Method
Explanation
Scrum, Extreme Programming, and Dynamic Systems Development Method are all traditional Agile methodologies. Scrum is a framework that focuses on iterative and incremental development, with self-organizing teams and regular feedback loops. Extreme Programming (XP) is another Agile methodology that emphasizes continuous integration, frequent releases, and close collaboration between developers and customers. Dynamic Systems Development Method (DSDM) is an Agile approach that emphasizes active user involvement, iterative development, and delivering business value early and continuously. These methodologies share common principles and values of Agile, such as flexibility, adaptability, and customer collaboration.
29.
Which of the following is not a principle of Lean? You may choose more than one answer.
Correct Answer(s)
B. Delivering as late as possible
C. Deciding as early as possible
Explanation
The principles of Lean focus on maximizing efficiency and minimizing waste. Delivering as late as possible goes against this principle as it can lead to delays and inefficiencies in the production process. Deciding as early as possible is also not a principle of Lean as it may lead to premature decision-making without considering all relevant information. Instead, Lean encourages deciding as late as possible to allow for more accurate and informed decision-making.
30.
Audrey is building a software product with her development team using the Lean software development practices. She has asked her development team to only focus on one aspect of the project at a time, while creating different alternatives for their client.
By asking her team to focus on one aspect of the project at a time, Audrey is implementing which principle of Lean?
Correct Answer
D. Eliminating waste
Explanation
By asking her team to focus on one aspect of the project at a time, Audrey is implementing the principle of eliminating waste in Lean software development. This principle aims to reduce unnecessary work and activities that do not add value to the final product. By focusing on one aspect at a time, the team can avoid multitasking and improve efficiency, ensuring that resources are used effectively and waste is minimized.
31.
What is one of the main reasons that a software development team, and a client, should decide as late as possible when developing a software product?
Correct Answer
B. It allows them to explore other product designs
Explanation
One of the main reasons that a software development team and a client should decide as late as possible when developing a software product is that it allows them to explore other product designs. By delaying the decision-making process, they have more time to consider different design options and evaluate their potential impact on the final product. This flexibility can lead to the discovery of innovative ideas and solutions that may not have been considered earlier in the development process. It also allows for more informed decision-making based on feedback and insights gained throughout the development cycle.
32.
Ross is building a software product for medical research. Since the work he does every day saves lives, he is continually trying to improve his software development processes. He recently came across Lean Software Development, and has begun implementing some of its principles.
He tries to encourage his team to see the project as part of a larger purpose, gets them to create many different versions of the software before committing, and focuses on building quickly. In order to save time, he has asked his team not to develop unit tests, document code, or use any specific programming practices.
What aspect of Lean Software Development is Ross actively omitting from his project?
Correct Answer
A. Eliminating Waste
Explanation
Ross is actively omitting the aspect of Lean Software Development that focuses on eliminating waste. By not developing unit tests, documenting code, or using specific programming practices, he is not following the principle of reducing unnecessary activities or processes that do not add value to the end product. This goes against the concept of eliminating waste, which is a key principle of Lean Software Development.
33.
What is the term from the manufacturing industry which inspired the philosophy in Kanban to only do one thing at a time, when it is needed?
Correct Answer
B. “Just-in-time” manufacturing
Explanation
Just-in-time manufacturing is the term from the manufacturing industry that inspired the philosophy in Kanban to only do one thing at a time, when it is needed. Just-in-time manufacturing is a production strategy where items are produced and delivered just in time to be used, reducing waste and inventory costs. This philosophy aligns with the principles of Kanban, which emphasizes the importance of limiting work in progress and focusing on completing tasks as they are needed.
34.
You are developing a software product for a client that connects a mobile app to a database. Each of these components has a basic set of features and an advanced set of features that can be built on top of the basic features. The mobile app depends on the database in order to be released, but a proof-of-concept mobile app can be made with just the basic features and no database connection.
According to just-in-time manufacturing, what is the best strategy for developing the product? You should develop...
Correct Answer
D. Basic features of the mobile app, then basic features of the database, followed by advanced features of the mobile app and database
Explanation
The best strategy for developing the product according to just-in-time manufacturing is to start by developing the basic features of the mobile app. This allows for a proof-of-concept mobile app to be made without the need for a database connection. Once the basic features of the mobile app are completed, the basic features of the database can be developed to establish the necessary connection. Finally, the advanced features of both the mobile app and the database can be built on top of the basic features. This approach ensures that the product can be released with essential functionality and additional features can be added incrementally.
35.
You are developing a software product using Kanban. You have the following phases of development, which happen one after another in sequence: Design, implementation, acceptance testing, and delivery.
The amount of work that can be completed in each phase per week is as follows: 5 units in design, 6 units in implementation, 3 units in acceptance testing, and 10 units in delivery.
Each of these units is a consistent measure of the amount of work completed. For this example, one unit deals with one requirement.
According to the amount of work that is done in each phase, in what phase is the bottleneck located?
Correct Answer
C. Acceptance testing
Explanation
The bottleneck is located in the acceptance testing phase because it has the lowest amount of work that can be completed per week compared to the other phases. This means that the acceptance testing phase will take longer to complete compared to the other phases, causing a delay in the overall development process.
36.
Let’s see if you can pick out some examples.
Of the following, which would you consider software requirements?
Correct Answer(s)
A. “As a hotel manager, I want to be able to check guests in”
C. “Account holders will enter their banking PIN into a numeric keypad”
Explanation
The correct answer is "As a hotel manager, I want to be able to check guests in" and "Account holders will enter their banking PIN into a numeric keypad" because these statements describe specific functionalities or actions that the software should be able to perform. They represent user requirements or system requirements that need to be implemented in the software. On the other hand, "I am required to make you sign a contract" and "Users are male" are not software requirements as they do not relate to the functionality or behavior of the software system.
37.
Which of the following is not an activity associated with the specification phase?
Correct Answer
B. Gathering requirements
Explanation
The specification phase is focused on defining the requirements and specifications for a project. Activities in this phase typically include eliciting, expressing, and managing requirements. However, gathering requirements is not typically considered a separate activity in the specification phase, as it is often seen as a part of the elicitation and expression process.
38.
In Scrum, what is the step which happens after requirements have been elicited and expressed from the client and placed in a large list, also known as the product backlog?
Correct Answer
B. Requirements prioritization
Explanation
After the requirements have been elicited and expressed from the client and placed in a large list, the next step in Scrum is requirements prioritization. This involves analyzing and prioritizing the requirements based on their importance and value to the client and the project. By prioritizing the requirements, the team can focus on delivering the most valuable features first and ensure that the product backlog is organized in a way that maximizes customer satisfaction and project success.
39.
Suppose you are forming requirements for an invoicing product that needs to calculate sales tax.
Which type of requirement are you creating?
Correct Answer
B. Business rule
Explanation
The correct answer is "Business rule" because a business rule is a specific statement that defines or constrains some aspect of the business. In this case, the requirement for the invoicing product to calculate sales tax is a specific rule that needs to be implemented. It is not a general business requirement, which would describe the overall goals or objectives of the product.
40.
Which of these represents the basic form of a user story?
Correct Answer
D. As a _____, I want to _____, so that _____.
Explanation
The basic form of a user story is "As a _____, I want to _____, so that _____."
This format is commonly used in Agile software development to capture the user's perspective and their desired outcome. It helps to identify the user, their need or goal, and the reason behind it. This format allows for clear communication and understanding of user requirements among the development team.
41.
Imagine a scenario, in which you are building a not-for-profit organization that rebuilds bicycles for low-income commuters in your neighbourhood. You receive bicycles from donors, which are made of aluminum, as well as money to buy tools. You then use these things to make the bikes work again, and deliver them to your customers.
Which of the following would be considered the functional inputs and outputs of this organization?
Correct Answer
C. Input: Donated money and bicycles; Output: Working bicycles.
Explanation
The correct answer is input: Donated money and bicycles; output: Working bicycles. In this scenario, the organization receives both money and bicycles from donors, which are the functional inputs. They use these inputs to rebuild the bicycles and make them work again, which is the functional output of the organization. The other options either miss one of the inputs or include irrelevant inputs like aluminum.
42.
Airplanes fly from the Vancouver International Airport (YVR) in Canada to the Shanghai Pudong International Airport (PVG) in China daily. These airplanes have schedules to which they must adhere, and their range is limited by the amount of fuel that they can carry.
Which of the following are non-functional requirements of airplanes flying from YVR to PVG?
Correct Answer(s)
C. Must be able to travel between YVR and PVG on a single tank of fuel
D. A full load of passengers can be evacuated in no more than 90 seconds
Explanation
The non-functional requirements of airplanes flying from YVR to PVG include the ability to travel between the two airports on a single tank of fuel and the capability to evacuate a full load of passengers in no more than 90 seconds. These requirements are not directly related to the consumption of jet fuel or the avoidance of flight delays, but rather focus on the airplane's range and passenger safety in emergency situations.
43.
Which of the following would be considered an external interface requirement?
Correct Answer
A. The product must be able to communicate to a customer database and an ad server
Explanation
An external interface requirement refers to the capability of a product to interact with external systems or entities. In this case, the requirement states that the product must be able to communicate with a customer database and an ad server. This implies that the product needs to have the necessary interfaces or protocols to establish communication and exchange data with these external systems.
44.
Which of the following would constitute a change in vision?
Correct Answer
A. The client chooses to switch to mobile gaming, instead of virtual reality
Explanation
A change in vision refers to a shift in the client's desired outcome or direction for a project. In this case, the client deciding to switch to mobile gaming instead of virtual reality represents a change in their vision for the product.
45.
Before we cover the different ways we can defend against scope creep, which of the following do you think are ways to defend against scope creep?
Correct Answer(s)
A. Have the client prioritize requirements
B. Make expectations clear
C. Draw the scope with your client
D. Ask “is this in scope?”
Explanation
The different ways to defend against scope creep include having the client prioritize requirements, making expectations clear, drawing the scope with the client, and asking "is this in scope?". These strategies help to establish clear boundaries and prevent the project from expanding beyond its intended scope. By involving the client in the decision-making process and continuously checking if new requests align with the project's objectives, the team can effectively manage and control scope creep.
46.
Feel free to "Skip" if you have not yet taken the Software Processes and Agile Practices course.
In which software development process model would requirements and design be two completely separate phases?
Correct Answer
E. Waterfall model
Explanation
In the Waterfall model, requirements and design are two completely separate phases. This means that the requirements are gathered and documented in the initial phase, and then the design phase follows where the system architecture and detailed design are created. In this model, there is no overlap or iteration between these two phases, and each phase is completed before moving on to the next. This sequential approach allows for a clear separation of requirements and design, making it easier to manage and track progress.
47.
You produced an online booking system for a hair salon. The system was requested and funded by the owner of the salon.
The system allows customers of the salon to call or visit the salon, and have the receptionist book their appointments on the system.
Customers also have the option to create an online account, and book their own appointments from the salon’s website.
Hair stylists can also ask the receptionist to check when they have appointments on a particular day.
Who, if any, are the primary users of the system?
Correct Answer(s)
B. The receptionists
C. The customers
Explanation
The primary users of the system are the receptionists and the customers. The receptionists use the system to book appointments for the customers, whether they call or visit the salon. The customers also have the option to create an online account and book their own appointments from the salon's website. Therefore, both the receptionists and the customers are the primary users of the system. The owner of the salon and the hair stylists are not mentioned as primary users in this scenario.
48.
An association that represents senior citizens with diabetes, has approached your team to develop a mobile application, that will allow seniors to track their blood-glucose levels.
The representative from the association specified that users will all be above the age of 65. Also, the application must be easy enough to use without assistance.
What features could you add to the product, that would better accommodate its end-user?
Correct Answer(s)
A. Voice Command
C. Large Text
Explanation
To better accommodate the end-users, the product could include voice command functionality, allowing seniors to navigate and interact with the application using voice prompts instead of complex menus. Additionally, incorporating large text options would make it easier for seniors with visual impairments to read and understand the information displayed on the application. These features would enhance the user experience and ensure that the application is accessible and user-friendly for the target audience of senior citizens with diabetes.
49.
Hal developed a game to be played on a mobile device. The game involves users clicking colourful circles before they disappear. The music in the game would speed up when circles were about to disappear. The phone would vibrate when a circle was clicked. Hal was reading the feedback that he received about his game. Most of the feedback was positive, however, there were a couple complaints about usability.
Which of the following complaints represent a physical limitation?
Correct Answer
D. “I can only play the game for so long before my hand gets tired”
Explanation
The complaint "I can only play the game for so long before my hand gets tired" represents a physical limitation because it indicates that the person's hand becomes fatigued after playing the game for a certain period of time. This suggests that the physical act of clicking the circles on the mobile device is causing strain or discomfort in their hand, limiting their ability to continue playing the game.
50.
You and your development team are creating an online shopping website, for a company that sells pet supplies online.
The client is very specific about what they want. She wants a green background with red text. She wants pictures of animals that are animated to look like they’re dancing. And she wants all products displayed on the front page, sorted by price from high to low.Your development team is a little uneasy about this design. They try to convince her to let go of these features.
One developer explains that it’s hard to read red text on a green background, and that people who are colorblind won’t be able to read it at all. Her favorite colors are red and green, so she was hesitant to change her mind, but eventually she agreed to a green background with blue text.
Not ideal, but better. The development team then try to convince her out of sorting prices by high to low. They decided the dancing animals were harmless and the least of their worries.
They explain to the client that the user should be able to sort by animal type, or product types, like food, toys, etc. They explained it would make the website much easier for users, and less crowded on the main page. She refuses to change the sorting system.
What should be the next approach for the development team in this situation?
Correct Answer
B. Provide experimental data, to show her that sales can be increased with a better sorting system.
Explanation
The next approach for the development team should be to provide experimental data, showing the client that sales can be increased with a better sorting system. This approach aims to convince the client by presenting evidence that a different sorting system would lead to improved user experience and ultimately higher sales. By providing concrete data, the development team can make a persuasive argument and potentially convince the client to reconsider her decision.