ICT2622 Oct/Nov 2020 exam paper — questions
Free sample
Question 1.1 · Requirements and information gathering · 4 marks
Explain the distinction between functional requirements and non-functional requirements, and in each case provide a brief example to illustrate the term.Show the full question
Question 2.1 · Requirements and information gathering · 4 marks
Imagine you are the systems analyst conducting interviews about a particular procedure, and during the process you receive two conflicting answers about how that procedure works from two different people: one answer comes from a clerical staff member and the other from the department manager. Explain what you, as the analyst, would do in this situation.Show the full question
Question 3.1 · Use case diagrams · 14 marks
Candidates must study a case study narrative about drone-based medicine delivery and then answer the sub-questions that follow. The narrative explains that ACM Communications reported at the end of 2019 that a high-value commodity which makes strong economic sense to deliver by drone is medicine, a concept also known as 'leapfrog' technology. The market need is clear: for perishable medical samples or life-saving vaccines, speed is critical, and aerial drones are well suited to crossing crowded or hard-to-reach areas, as is the case in the rural areas of KwaZulu-Natal. As a pilot study, Ngwelezane Hospital is used as a hub to distribute medicines to nearby remote areas using drones. When a nurse at a clinic makes a diagnosis requiring emergency medication, she immediately reports to the administration assistant, who sends a text message to Ngwelezane Hospital Services (NHS). This text message contains information about the patient, the diagnosis, and supporting facts about the emergency. The clinic staff are structured so that the nurse can be regarded as a type of administration assistant, since she can both diagnose patients and, in certain cases, send messages to NHS; however, the administration assistant herself is not permitted to diagnose patients even though she is a qualified nurse. Once Hospital Services receives the message, they inform and authorise the drone pilot to fly. The pilot performs a pre-flight check on the drone, which always includes checking the weather conditions. If the drone experiences problems during flight, the pilot takes manual control, overriding the automated functions to ensure the drone is delivered and returned safely. Occasionally, even while under manual override, pilots suffer from pilot fatigue, which becomes a risk; whenever this occurs, counter measures must be taken, such as requesting assistance from other pilots. As part of the 'Pre-flight Check' use case, the pilot initialises the settings via the drone's interface, and the drone/controller validates these initial settings. After validation, the pilot initialises the mapping sequences, and at the same time the supervisor loads and secures the load. Once this is complete, the drone runs the auto-mapping sequence, checking the traced path; if the path contains unexplored areas, the drone re-runs the auto-mapping settings, otherwise it updates the controller settings. The system then informs the pilot that the mapping sequence is complete and reports its status, after which the pilot shuts down the system via the interface. Using the drone delivery narrative about Ngwelezane Hospital Services, the nurse, the administration assistant, the drone pilot, the supervisor and the drone/controller, draw a use case diagram that captures the actors and use cases described in the scenario.Show the full question
Question 3.2 · Use case diagrams · 15 marks
Candidates must study a case study narrative about drone-based medicine delivery and then answer the sub-questions that follow. The narrative explains that ACM Communications reported at the end of 2019 that a high-value commodity which makes strong economic sense to deliver by drone is medicine, a concept also known as 'leapfrog' technology. The market need is clear: for perishable medical samples or life-saving vaccines, speed is critical, and aerial drones are well suited to crossing crowded or hard-to-reach areas, as is the case in the rural areas of KwaZulu-Natal. As a pilot study, Ngwelezane Hospital is used as a hub to distribute medicines to nearby remote areas using drones. When a nurse at a clinic makes a diagnosis requiring emergency medication, she immediately reports to the administration assistant, who sends a text message to Ngwelezane Hospital Services (NHS). This text message contains information about the patient, the diagnosis, and supporting facts about the emergency. The clinic staff are structured so that the nurse can be regarded as a type of administration assistant, since she can both diagnose patients and, in certain cases, send messages to NHS; however, the administration assistant herself is not permitted to diagnose patients even though she is a qualified nurse. Once Hospital Services receives the message, they inform and authorise the drone pilot to fly. The pilot performs a pre-flight check on the drone, which always includes checking the weather conditions. If the drone experiences problems during flight, the pilot takes manual control, overriding the automated functions to ensure the drone is delivered and returned safely. Occasionally, even while under manual override, pilots suffer from pilot fatigue, which becomes a risk; whenever this occurs, counter measures must be taken, such as requesting assistance from other pilots. As part of the 'Pre-flight Check' use case, the pilot initialises the settings via the drone's interface, and the drone/controller validates these initial settings. After validation, the pilot initialises the mapping sequences, and at the same time the supervisor loads and secures the load. Once this is complete, the drone runs the auto-mapping sequence, checking the traced path; if the path contains unexplored areas, the drone re-runs the auto-mapping settings, otherwise it updates the controller settings. The system then informs the pilot that the mapping sequence is complete and reports its status, after which the pilot shuts down the system via the interface. Using the same drone delivery narrative concerning the pre-flight check, mapping sequence, validation, and shutdown steps performed by the pilot, supervisor and drone/controller, draw an activity diagram that models the flow of actions described.Show the full question
Question 4.1 · Domain class diagrams · 4 marks
This question refers to a domain model diagram consisting of three classes. The 'Order' class is connected to the 'Order-History' class via an aggregation relationship (shown with an open diamond on the Order side), and the 'Order-History' class is in turn connected to the 'PaymentType' class via another aggregation relationship (open diamond on the Order-History side). The 'Order' class lists the following attributes: customerID (char), dispatchNo (char), dispatchDate (date), firstName (String), orderDate (date), orderID (char), and surname (char). The 'Order-History' and 'PaymentType' classes are shown without any listed attributes. Looking specifically at the attributes listed under the Order class (customerID, dispatchNo, dispatchDate, firstName, orderDate, orderID and surname), identify and explain what design problem this combination of attributes suggests.Show the full question
Question 4.2 · Domain class diagrams · 11 marks
This question refers to a domain model diagram consisting of three classes. The 'Order' class is connected to the 'Order-History' class via an aggregation relationship (shown with an open diamond on the Order side), and the 'Order-History' class is in turn connected to the 'PaymentType' class via another aggregation relationship (open diamond on the Order-History side). The 'Order' class lists the following attributes: customerID (char), dispatchNo (char), dispatchDate (date), firstName (String), orderDate (date), orderID (char), and surname (char). The 'Order-History' and 'PaymentType' classes are shown without any listed attributes. Drawing on your understanding of object classes, propose a solution to the problem identified in question 4.1, and redraw the domain model diagram to reflect this solution. You should only use the attributes already given in the original diagram (customerID, dispatchNo, dispatchDate, firstName, orderDate, orderID and surname, plus the Order-History and PaymentType classes), and you may assume reasonable relationships between the classes where needed. A sketch is sufficient.Show the full question
Question 5.1 · Domain class diagrams · 18 marks
A case study is provided for ICT2622 (Oct/Nov 2020): Drones appear small and self-contained, but must always be kept in pristine condition, so for good maintenance purposes drones may be supplied by many suppliers, and a supplier supplies a drone. Suppliers are divided according to the type of part they specialise in: frames are provided or sold by AllRobot, rotors come from AltiGator, and batteries come from KZNElectrics. All suppliers share the attributes supplier number, name and contact cell number. A drone is described by a drone identification number, its location, and its status. A drone belongs to one pilot, but a pilot may have many drones; some pilots own no drones at all because they are instead involved in training and overseeing drone operations. The drone aviation committee wants to keep a record of the parts used by the drones, modelled as follows: a supplier supplies many parts or items, and an item is supplied by many suppliers. A problem arises when they want to update the inventory, namely whether the item number, available quantity and re-order quantity should be stored in the supplier class or the item class. To resolve this, the designers decided to introduce an inventory class, modelled as an association class, to track this information. The item information includes the item number, item name and its category. Using the drone-supplier case study narrative provided, construct a domain class diagram that correctly represents the entities described (suppliers such as AllRobot, AltiGator and KZNElectrics, drones, pilots, parts/items, and the inventory association class), including their attributes and the relationships and multiplicities between them, worth 18 marks in total.Show the full question
Question 6.1 · Agile and iterative development · 10 marks
In extreme programming, user requirements are captured as stories, with each individual story written on its own card. Discuss the advantages and disadvantages of using this card-based story approach for describing requirements.Show the full question