Question

In: Computer Science

Please read this scenario and job description carefully. You are involved in the prestigious but often...

Please read this scenario and job description carefully.

You are involved in the prestigious but often challenging Google recruitment process. As part of this process you are required to respond to several questions and activities. All your answers must address the context of this scenario and the information given in the individual questions.

Job description - Software development professional at Google There's no such thing as “a normal day" at Google. We work to create and maintain the safest operating environment for Google's users and developers. Users come first at Google! As part of your work at Google, on any day you might be exposed to the full suite of Google products. You will be working on some exciting new products at Google, such as Google Digital Garage, our online learning platform. You will also be working across a growing Internet of Things (IoT) portfolio. You will also work as part of our Advertising and Commerce team: we believe that ads and commercial information can be highly useful to our users if that information is relevant to what our users wish to find or do. Advertisers worldwide use Google Ads to promote their products; publishers use AdSense to serve relevant ads on their website; and business around the world use our products (like Google Shopping, and Google Wallet) to support their online businesses and bring users into their offline stores. We are constantly innovating to deliver the most effective advertising and commerce opportunities of tomorrow. This is “hands-on” work with other systems and security engineers, to proactively identify and fix bugs, flaws and vulnerabilities in our software products. You will be placed in a specialist team where you will focus on the creation of software product development plans, software design reviews, and software development testing design across various Google products. In this role, you will often be analysing software designs and implementations from a user experience (UX) perspective and working to cultivate software development best practices across the company. You will develop solutions to help mitigate software vulnerabilities and promote excellent design and usability for users across Google products. You will work closely with other software engineers, programmers, product managers, legal and policy teams to build new features. The team are advocates of Agile software development but are also versatile enough to work with more traditional development approaches across the organisation and with other partners.

A1. Google Digital Garage offers many short courses and certifications in several study areas and disciplines. When a user has been enrolled in one or more Google Digital Garage courses, their information is included in a relevant user database. During the session of a course, the user can access their Google Digital Garage dashboard with their user account. Generate at least one user story and two brief user acceptance test strategies based on the information provided. If you were asked to conduct a Detailed Blackbox Test for Google Digital Garage, would you need to inspect the software source code or user-interface for this platform? Explain why or why not.

A2. In your studies you considered both centralised and distributed version control systems. Below is an excerpt from Apache Subversion (or SVN), a centralised version control system. It begins with the git svn clone command, which imports a Subversion repository into a local Git repository. The git svn clone command actually runs the equivalent of two other git commands on a URL provided. The source code for this unknown Google product has approximately 97,000 lines of code. Why might this process take a long time in this system? What would happen if you tried to copy an original repository to another remote repository instead of a local one?

A3. Google Chrome supports several different release channels. They use these channels to slowly roll out updates to users, starting with the “close to daily” Canary channel builds, all the way up to what are termed ‘Stable channel releases’ that happen “every 6 weeks roughly”. The Dev channel is updated “once or twice” a week, while the Beta channel is updated “roughly every week”. a) The recruiter asks you to discuss ‘dailies’/’nightlies’ and continuous integration (CI), in the context of Google Chrome. Which of the above development channels will you discuss and why? b) These build management channels manage the compilation and linkage of source code to object code to executable systems. Compare and contrast the two ways that build systems decide which source file or object file needs to be respectively compiled and linked to form a new executable? (Assume that for efficiency reasons the build process only does this when necessary).

A4. The Google Ads team is getting ready to prepare a system vision document as part of their software procurement process for a new software service. Who is the audience for this document and what is the objective of this document? What Agile practice might best assist with the generation of a system vision document in this example?

A5. Google Supplier Management is a resource for prospective and existing Google suppliers, and provides information and tools on conducting business with Google. A Request for Tender (RFT) has just been announced on this portal for a software component, as part of the early development stages of an Internet of Things (IoT) project. Justify the use of an RFT in an organisation such as Google for this project. You will need to outline the attributes of the project and its current progress in your answer. The recruiter is not interested in what goes in the RFT here, just why Google would do one and why would someone respond. In your answer you must justify the choice of an RFT over other well-known request types.

A6. As you know from the job description given at the start of this paper, the Google development team are advocates of Agile software development. A Google dev team is working on a customer relationship management system for one of their new financial technology products that will be deployed to global banking institutions. They will be using the Scrum process management methodology. The CEO wants to see this product rolled out in 12 months. Based on this information, describe and explain possible difficulties or problems that may occur during the development process.

A7. Below are two examples of basic formatting of Javadoc blocks. A simple single-line format and a multiple line format. The single-line format may be substituted when the entirety of the Javadoc block (including comment markers) can fit on a single line. A single-line example: /** An especially short bit of Javadoc. */ A multiple line example: /** * Multiple lines of Javadoc text are written here, * wrapped normally... */ public int method(String p1) { ... } Below is an extract of Google’s automatic documentation generation guides on Javadocs: Any of the standard "block tags" that are used appear in the order @param, @return, @throws, @deprecated, and these four types never appear with an empty description. Your Google recruiter asks you - is it possible to use these tags in a simple single-line Javadoc format? Explain why this is or is not possible.

A8. Google Digital Garage is Google’s online e-learning platform. As part of this is a system for querying a user’s scores for all courses that a user has purchased. This system is read-only for a user, but Google staff can create and change scores. Outline a very simple design of this system using the four operations associated with objects in RESTful services.

A9. Google’s Internet of Things (IoT) team is designing and developing a new IoT software system to assist industry with supply chain management (e.g. suppliers, shipping, wholesalers). Recommend a distributed architecture for this system and justify your recommendation. Discuss any emerging trends in service-oriented-architecture (SOA) that may be useful to the team and this project.

B1. Google Research facilitates the publishing of academic papers for their research and development staff. As part of this they have a system to allow on-line checking of paper submissions to detect possible plagiarism. The system must track submission time and dates and provide an analysis of the matches found in other people’s work, in Internet documents and in paper-based publications such as books and magazines. The analysis will be available to the staff member who submitted the paper and the academic reviewer. The plagiarism detection and matching must be configurable providing for: • Optional checking of bibliographies • Allow proper quotations to be excluded • Allow setting a minimum number of matching words • Allow resubmission of papers up to a given date/time Outline an acceptance test for the above system as described. Full marks will be awarded to those plans that can automate the acceptance test and show an example of a simple automated acceptance test script.

B2. The below shows a UI from Google’s job application site. Your recruiter has asked you to develop a black-box test plan for this interface from a purely functional point of view, using strategies you have learned about or any you can think of. • You can assume the “What do you want to do?” field is a “search” field and in this example “software development” is the search term. • Below that is another search field for location terms. Below that again, are several filters. • Do not forget the ‘Clear Filters’ at top of the page where you can assume it is a button, the ‘Turn on job alerts’ slider and the ‘Sort by’ drop menu to the right which is a simple drop down function. • You can assume the ‘Share’ operation works similarly to a hyperlink and the ‘save’ button works similar to a bookmark operation. The programmers on this project engage in several Extreme Programming (XP) practices, such as paired programming. As part of your response, describe user stories in XP, and write user stories to describe the task/requirements outlined above. End of

B3. As part of Google Digital Garage’s scoring approvals system is a web-based component (e.g. HTML pages) which links to a user management system that records final scores in courses. The permanent storage (student management system) is not part of the scoring approval system and is maintained by another team in Google. 12 programmers and software development professionals are responsible for the development and maintenance of the scoring approvals part of Google Digital Garage. It also has some ancillary staff for marketing, sales, legal and other business functions. The scoring approvals system of Google Digital Garage has three internal stages handled by the system, for you to consider: • Google Digital Garage assessors enter scores of a user in a course • Scores are approved by a committee of assessors • Scores are published by a user administration group for a Google Digital Garage user to be able to see their score Using any resources permitted, complete the following tasks: a. Identify the sources of change requests . b. How should change requests be prioritised ? c. Recommend an organisational approach source code management during the development cycle. (You may have seen several ideas so just describe one appropriate for this organisation and project – there are several correct answers) . d. Design a release contents list, which will list components in addition to the actual app executable. (2.5 marks). e. Recommend a testing process for each release. (There are several alternatives and correct answers.) .

B4. Your Google recruiter has introduced you to some of the IoT team members in the organisation. You are asked to describe and explain Web Services. As part of this detailed explanation, describe the significance of the coordination services in SOA (service-oriented architecture) systems to your recruiter. Your responses and explanation must be relevant to IoT.

B5. The success of the Google Chromebook has convinced some in the company of embarking on research and development (R&D) for a true Google ‘thin client’. They have named this topsecret and commercially sensitive project ‘GoogleFeather’. These Google executives are mostly from ‘non-IT’ backgrounds (e.g. finance, law, marketing), so do not necessarily understand the technology involved. Google envisages this product be a true example of what a thin client is. In doing so, the business units of Google believe they can not only capture more market share against rivals, but finally embark on the world domination it has always desired. a) Describe what GoogleFeather would need to be, if it was a “true example of a thin client” as understood in distributed systems theory. In doing so you must describe what layers may operate on the thin client-side (and as a result also discuss aspects of the server side), discuss the different ways GoogleFeather may be a thin client (2.5 marks). b) Discuss aspects of operating systems and service-oriented-architecture (SOA) and any other trends in SOA that may be relevant to this proposed concept (3.0 marks). c) Based on your previous answers, provide an argument as to if this concept of GoogleFeather is a good idea or not, from your perspective as a software development professional. .

Solutions

Expert Solution

User Acceptance Test

Step1: Analysis of business requirements

-Inlist all the short courses and certification in several areas

-When student will enroll themselves store their information in its relevant database.

-when user will login into his account so that he can access the dashboard with trir account information

in test cases we have to analyse these requirements.

Step2: Identify Test scenario and test cases

-test if all the short courses are listed

-test if enrolled student's data is getting stord in its relevant database

-test if user can access dashboard with their account details.

In this test we have to identify the testing scenarios

Step3:Run and Record the result

-if all the courses provided are displayed on the list

-test if enrolled user can access their services.

iIn this step we have to see for what input what output is provided by the system.

No, we can not inspect source code or user iterface in black box testing, because in black box testing we can only inspect input provided and output generated by system and what is the accuracy of ouutput for given input that only we can check in black box testing.


Related Solutions

Please read this scenario and job description carefully. You are involved in the prestigious but often...
Please read this scenario and job description carefully. You are involved in the prestigious but often challenging Google recruitment process. As part of this process you are required to respond to several questions and activities. All your answers must address the context of this scenario and the information given in the individual questions . Job description - Software development professional at Google There's no such thing as “a normal day" at Google. We work to create and maintain the safest...
Please read this scenario and job description carefully. You are involved in the prestigious but often...
Please read this scenario and job description carefully. You are involved in the prestigious but often challenging Google recruitment process. As part of this process you are required to respond to several questions and activities. All your answers must address the context of this scenario and the information given in the individual questions. Job description - Software development professional at Google There's no such thing as “a normal day" at Google. We work to create and maintain the safest operating...
Scenario Please read this scenario and job description carefully. You are involved in the prestigious but...
Scenario Please read this scenario and job description carefully. You are involved in the prestigious but often challenging Google recruitment process. As part of this process you are required to respond to several questions and activities. All your answers must address the context of this scenario and the information given in the individual questions . Job description - Software development professional at Google There's no such thing as “a normal day" at Google. We work to create and maintain the...
Scenario Please read this scenario and job description carefully. You are involved in the prestigious but...
Scenario Please read this scenario and job description carefully. You are involved in the prestigious but often challenging Google recruitment process. As part of this process you are required to respond to several questions and activities. All your answers must address the context of this scenario and the information given in the individual questions . Job description - Software development professional at Google There's no such thing as “a normal day" at Google. We work to create and maintain the...
Scenario Please read this scenario and job description carefully. You are involved in the prestigious but...
Scenario Please read this scenario and job description carefully. You are involved in the prestigious but often challenging Google recruitment process. As part of this process you are required to respond to several questions and activities. All your answers must address the context of this scenario and the information given in the individual questions . Job description - Software development professional at Google There's no such thing as “a normal day" at Google. We work to create and maintain the...
Scenario Please read this scenario and job description carefully. You are involved in the prestigious but...
Scenario Please read this scenario and job description carefully. You are involved in the prestigious but often challenging Google recruitment process. As part of this process you are required to respond to several questions and activities. All your answers must address the context of this scenario and the information given in the individual questions . Job description - Software development professional at Google There's no such thing as “a normal day" at Google. We work to create and maintain the...
***PLEASE READ CAREFULLY. IF NOT ANSWERED IN FLOWGORITHM PLEASE DON'T ANSWER*** Can you please create a...
***PLEASE READ CAREFULLY. IF NOT ANSWERED IN FLOWGORITHM PLEASE DON'T ANSWER*** Can you please create a flowgorithm chart for the problem below. Also, provide pseudocode as well. Please do not answer if you cannot put into a flowgorithm chart. Pseudocode needed as well. Thank you! Design the logic for a program that outputs every number from 1 through 15 along with its value times 10 and times 100. Make the output look like below: Number is 1 Times 10 is...
Read the following scenario and provide advice to the individual involved. You need to tell us...
Read the following scenario and provide advice to the individual involved. You need to tell us what a Kantian would recommend doing here. Show your work – do not just tell us what they would recommend doing, explain why, using the moral theory, they would recommend this course of action Please answer the following question(s) in paragraph form. As a guide, your initial post needs to be around two paragraphs in length (what is most important however is that you...
Please read the instructions and  find attached for the first wiki . Instructions for students: Read carefully...
Please read the instructions and  find attached for the first wiki . Instructions for students: Read carefully the attached document and then post your comments bearing in mind the following questions: 1- What are the pros and cons of rent controls? 2- Why economists disagree on the usefulness of rent control? 3- Do you believe rent control can help the poor? Edit Wiki Content rent control Rent regulation can take various forms, including rent control (the placing of a cap on...
c++ Please read the instructions carefully. You must put the proper items in the proper file...
c++ Please read the instructions carefully. You must put the proper items in the proper file (eitehr SSandwich.h or SSandwich.cpp. Do NOT include any main function in your submission. You are encouraged to write your own main function to test what you are submitting. You are submit two files via BlackBoard: A file named SSandwich.h, a header file defining the class SSandwich. No inline methods are permitted. Any enum classes should be defined here also. Your header file should have...
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT