This question paper may be retained by candidates EXAMINATION Unit Code: COMP3850 Unit Name: "Computing Industry Project" Duration of Exam ONE HOUR PLUS 10 MINUTES READING TIME (including reading time if applicable): Total No. of Questions: THREE (3) Total No. of Pages TWO (2) (including this cover sheet): EXAMINATION INSTRUCTIONS: THREE (3) questions should be attempted. Each question is worth 20 marks. This one hour paper will be marked out of 60 marks. So if the question is worth 20 marks spend approximately 20 minutes on answering the question. Write your name and student ID in the places indicated. Answer each question below it. You can add more lines/pages. AIDS AND MATERIALS PERMITTED/NOT PERMITTED: Dictionaries: No restrictions Calculators: No restrictions Other: Do not copy content from other sources. Your submission will be submitted via Turnitin to check for plagiarism. In answering questions, you may consider quoting sources, with appropriate referencing. However, correct answers to the exam questions do not require any quoting from sources. An answer which consists solely or in large part of such quoting will earn few, if any, marks. Quoting, copying or paraphrasing sources without proper referencing is in violation of the academic integrity principles. Student Name: Raghav Singh Student ID: 46447563 ALL ANSWERS should demonstrate your understanding of the concepts relevant to that question as well as drawing on your personal experience from the project you participated in. All answers should include a discussion of any relevant documentation. Answer each sub-question within each question. Bullet lists where each item discusses a new idea is preferred rather than long paragraphs of essay responses. Write from half a page (minimum) up to two pages (maximum) for each question. Write your answer below each question where indicated in this document and submit on iLearn. 2 Q1 Quality and Project Management (20 marks) Describe briefly the project you participated in. Describe in detail the activities, processes and tools used by your team to manage the project, the team and the end product delivered to your client. How did you ensure a quality product was delivered? What could be done better if you did the project again? Q1 Answer I was part of group 5 and our project involved creating a website solution for BT Financial. Our client’s (BT Financial) main goal was to showcase its ESG policies to reach as many potential customers as possible. We created a comparative tool that could be used by BT Financial that will display a range of ESG policies and it would the most efficient way to solve the problem. Project management is essentially the way of working on a specific task collaboratively as a team to ensure that all of the project’s goals and objectives are met within the given time constraints. A project on a general basis will involve, introductions, planning through Gantt Chart, regular meetings, ensuring deliverables are submitted on time, making sure scope is controlled, constant working with stakeholders. As our project was software based, we used an agile approach which is the best way for software products. As a team, we identified early on that we had to put an extra focus on regularly communicating with stakeholders so that we achieved a solution that both parties were happy with. At the very start of the project in our feasibility report and deliverable 2, we made it very clear that the ability to project manage through paid tools would not be available to us, therefore using free project manage tools like Trello and Google Drive would be our best option. We were able constantly communicate with our client through email and schedule meetings through zoom for feedback and approval which increased our ability to gain insight into what sort of features would be best suitable for BT. We utilised Google Drive to place our documents in an organised fashion with folders which indicated deliverables, feedback docs and individual work for the respective deliverable. We used Smartsheet and work otter along with Trello to track the individual work being completed for the deliverable as well as any tasks/blockers we may have to add a result of changes. The team worked efficiently and with ease as we were in constant contact with one another on a daily basis. Through the suggestion of our client, we implemented a quick daily standup for 5-15 minutes as well as weekly progress meetings whereby we discussed as a team what we did, what’s left and what we need to do in terms of helping with blockers etc. We used a range of technologies like Discord, Zoom and Facebook messenger as our team was not always able to meet in person. One of our team members couldn’t make it face to face due to health condition, therefore we had to be flexible and adapt using online technologies. Our client didn’t have any expectations in terms of the end product which made us very proactive in ensuring that after every deliverable we were communicating with them. Until deliverable 4, all things were going well in terms of software, however, upon a zoom call with the client we realised that they wanted a more sophisticated product that had more features. Because we communicated well throughout and ensured that scope creep wouldn’t happen, we were able to ensure that other features like the green rating system, iconography and other backend upgrades were made so that the client would be accommodated to. 3 Quality management within a software project involves improving the development of a product. For our project, we used 4 main principles to guide quality: tracking progress, communication, quality assurance and quality control. Tracking the progress through Gantt charts on excel made by men was a great way to ensure that we didn’t fall behind and using Trello alongside that to keep our tasks and responsibilities in check was helpful. As evidenced above, we focused on communication as it was crucial and we did everything from bi-weekly meetings, discord calls, partial meetings to ensure that we were working on task and that quality would not be sacrificed. For example, from deliverable 2 onwards, we did partial meetings when two people working on a task would not be sure what the solution is, and they could use Discord to collaboratively find a solution. Quality assurance was very important, and we stated in deliverable 2 that we would use a Statistical Process Control (SPC) as it would be the most effective in reducing bugs for our prototype/final product. An example of quality assurance is reviewing as a team the deliverables to ensure that we were following quality standards alongside being on track to complete on time. Quality control was highly important, and we used methods like peer reviewing code to ensure that the code is ‘neat’ and doesn’t confuse anyone so that when the final product is delivered, the coding team at BT would be able to follow with ease. Overall, what we could do better in terms of the product would definitely be focused around knowing the vision of the product and the exact time/cost required for the features/aspect of the product. For example, in deliverable 2, we didn’t have a complete idea around the product, and we didn’t how long the features/aspect of the product we wanted to include would take to implement. It was a balancing act throughout the semester to ensure that we were implementing features but in some cases we had to switch for alternatives that would cost less and take less expertise as we were limited both by time and skill. For example, instead of coming up with a login system for customers, we realised the cost and time involved which pushed us to re-evaluate and change our decision to only providing login for admins as customers will want ease of accessibility. 4 Q2 Change and Conflict Management (20 marks) Discuss the types of change the team needed to handle and describe the strategies you used to manage change. Specifically mention how conflict was dealt with for the different types of change. Did the strategies work well or how should they be improved? Q2 ANSWER In a brief sentence, change management is the way of transitioning or transforming an organisation towards a collective change, whether it be in terms of processes or a specific technology/product. As a team we had 3 foundational principles which allowed for an effective change management approach. First being preparing for change, whereby we ensure that we had the tools and processed in place to be ready in the case of change in requirement/scope. Secondly, we focused on managing the change which essentially involved implementation of the strategies and thirdly we focused on communication to ensure that we looked at feedback and changed accordingly. The types of changes the team needed to handle were different in nature. For example, there was a major structure change at the beginning of the project where a group member was unable to work on deliverables 1 and 2 due to illness. Due to the processes we had in place in terms of assigning work in the case of an emergency, we were able to allocate tasks between me and prathik who did the analysis and the other 3 individuals who focused on development. Through the use of tools like process maps, Gannt charts and Trello we were able to work around this problem effectively and with great quality. When she returned as we expected during the work for deliverable 3, we were able to get on track whereby the member replaced one person on our dev team and a testing analyst role was filled from deliverable 3 onwards. In terms of our team environment, conflict management was not needed due to very limited differences in opinion, and we ensured that everyone was on the same page. However, we did face slight ‘conflict’ in the form of the sponsor voicing that we must try to make the product more complex and sophisticated as it’s a product that millions of customers may use. We were proactive in ensuring that the sponsor felt that we heard this, and we straight away implemented changes along with increasing our emails so that they knew we were working on making the best product possible. In order to improve the product, we incorporated a scoring system for ESG policies which would rate the policies based on colour to give the customers a good idea of the policy. We also implemented visual changes which made the website more accessible and appealing to the younger demographic that would view this tool. Overall, collaboration and accommodation were the main ways through which we dealt with conflict in order to provide the highest quality software product with our given constraints. The strategies to deal with change and conflict worked superbly well as we had laser focus on our client’s feedback due to the product being possibly integrated within their system. In terms of how they should be done better, at the very start of the project, we felt we were given feedback which was not very insightful and only indicated the overall quality of the work. We could have pushed harder in emailing every 2-3 days to share our progress and get further insight which could have allowed us to avoid the slight conflict. In terms of change 5 management, we did it very well in having processes and tools in place to make sure that were prepared and ready to take on the load whenever needed. 6 Q3 Professional Ethics and Team Behaviour (20 marks) List and define the six principles in the ACS code of Ethics. Specifically discuss the implications of each principle on team behaviour and practices as well as the relationship with their client. What ethical concerns arose and how were they dealt with? Q3 ANSWER • List and define six principles The ACS code of ethics which is now renamed ACS Code of Professional Conduct involved six main principles. The enhancement of the quality of life; professional development; the primacy of the public interest; honesty; competence; and professionalism. The primacy of public interest mainly revolves around intellectual property rights of others. It focuses on respecting such rights and ensuring that you are aware of those who may be affected by your work and considering them. Competence involves working in a decent fashion for clients and stakeholders. Secondly, one must ensure that stakeholders are taken into consideration when making decisions so as to protect them. Lastly, ensuring that one knows to seek help from others in the areas in which they may not be expertly skilled. Professional development involves consistently working on one’s professional ability (speaking, listening, collaboration) as well as the people around you. Being honest can be explained in the form of not lying or twisting the reality of your skillset or know-how. Enhancing the quality of life of those who may be indirectly or directly affected by my work. Professionalism involves behavioural patterns which go against in-appropriate verbal or physical activity. • Specifically discuss the implications of each principle on team behaviour and practices as well as the relationship with their client Acting professionally was one of our highest priorities not only within the group but also with our client. We wanted to leverage this subject for maximum opportunity as to simulate a real client like relationship as well as team culture. We communicated professionally with one another and also used formality when talking with the client. Professional development and honesty were very important in ensuring that as a team we were not twisting the reality of the product for something that was unachievable. For example, the dev team was very honest and professional in communicating with the other team members what features can and can’t be done in the specific time frame. Competence is something which we all embody and as a team in the way we communicated with the client, it clearly showed that we were competent individuals who were willing to take feedback and work with the client to make the best product possible. All of these practices allowed us to maintain good 7 relations with our client and we really focused on using the 6 principles as a foundation of taking them on a journey of our product. 8