KIT506 - Exam PDF

Title KIT506 - Exam
Author Jack Richer
Course Software Application Design and Implementation
Institution University of Tasmania
Pages 16
File Size 470.2 KB
File Type PDF
Total Downloads 96
Total Views 114

Summary

Exam...


Description

Student ID No: 529444

Pages: 16 Questions: 10 UNIVERSITY OF TASMANIA

EXAMINATIONS FOR DEGREES AND DIPLOMAS October 2020

KIT506 Software Application Design and Implementation First and Only Paper Ordinary Examination

Examiner: Dr JR Dermoudy Time Allowed: THREE (3) hours Reading Time1: FIFTEEN (15) minutes

Instructions: Type your Student ID into the field at the top of this page. There is a total of 180 marks available. Attempt ALL TEN (10) questions. Each question is worth 18 marks. Answers for each question should be typed into the spaces provided in this document and the document uploaded to MyLO before the deadline. This is an individual assessment task. You may not consult with anyone while completing the examination. Your work will be checked for plagiarism and severe penalties may be applied under the Ordinance of Student Academic Integrity if academic integrity breaches are identified.

1You may write during the Reading Time.

-2-

KIT506 Software Application Design and Implementation

Question 1. (Assessing ILO: 1)

Consider the following excerpt from a Requirements Trace Matrix for an automated teller machine (ATM). Write the action–software reaction table that would be part of the structured scenario for this use case. Entr y 16 17 18

19 20

21

Para Requirement 2.2. 1 2.2. 1

(Once authenticated,) the user shall be able to withdraw money. Deleting messages will be accessed via a button labelled “Withdraw”.

2.2. Differing amounts (denominations) will 2 be shown on the screen, e.g. $20, $50, $100, $150, $200. 2.2. The user should select which of these 2 amounts they wish to withdraw. 2.2. If the user has insufficient funds in their 3 account, a message will appear indicating this. After 5 seconds the message will disappear and the user will be returned to the main menu. 2.2. If the user has sufficient funds 3 available, the amount chosen is deducted from their balance and the cash dispensed. The user is returned to the main menu.

Ac t i o n

Typ Use Case e SW UC16 Cash Withdrawal SWC 16 SWC 16 SWC 16 SWC 16

SWC 16

So f t wa r e Re a c t i o n

1

Th eu s e rp r e s s e st h ewi t h d r a wb u t t o n

Th es o f t wa r ewi l lp o pu pwi t h d i ffe r i n ga mo u ntl i k e$ 20 ,$ 50 ,$ 1 00 , $ 1 50 ,$ 2 00

2

Theu s e rs e l e c t st hea mo un tb yp r e s s i n gt h e a mo u ntb u t t o n

Thes y s t e m wi l ll oo kf o rt h ef un d s a v a i l a b l ei nu s e r ’ sa c c o un ta n dg i v e s t h eme s s a g eo fi n s u ffic i e ntf u n d s . Theme s s a g ewi l ld i s a p p e a ra f t e r5 s e c o n da n du s e rwi l lr e t u r nt oma i n wi nd o w.

3

Theu s e rwi l ls e l e c tav a l i da v a i l a b l ea mo u n t Thes y s t e m wi l lc o n fir mt h ea mo un t

Continued…

-3-

KIT506 Software Application Design and Implementation

a n dc o un tf o rt h ea mo u nt . Thea mo un twi l lbed e d u c t e df r o mt h e a c c o u nta n dus e rwi l lg e tmo n e y . Thes y s t e m wi l lr e t u r nt oma i n wi nd o w. [18 marks] Question 2. (Assessing ILO: 1)

The Animal Kingdom consists of many kinds of animals including reptiles and fish. All animals breathe, eat, and produce young. Both reptiles and fish lay eggs, but not all animals do. Reptiles can be classified as ‘vegetarian’ or ‘carnivorous’. Each has a length, a weight, and a common name. Carnivorous reptiles can hunt. Fish also have a length, a weight, and a common name. All fish can swim as can some reptiles. Zoological gardens (zoos) contain many reptiles and many fish. A zoo can calculate how many reptiles it has and how many fish it has. Draw a UML class diagram that best describes the above information. Include attributes and methods that are mentioned in these classes. (Treat actions, like hunt or swim, etc as methods.) Include multiplicities, enumerations, specialisation, and so on, where relevant.

[18 marks] Continued…

-4-

KIT506 Software Application Design and Implementation

Question 3. (Assessing ILO: 1)

Draw a UML sequence diagram to show what happens when the following four classes are executed as a C# application. class Program { static void Main(string[] args) { A a = new A(); B b = new B{ Thingy = a }; b.Alt(a); b.Exec(); } } class A { public void DoIt(C c) { c.Display(this); } } class B { public A Thingy { get; set; } public void Exec() { Alt(Thingy); } public void Alt(A Thingy) { C c = new C(); Thingy.DoIt(c); } } class C { public void Display(A a) { /* code omitted */ }

Continued…

}

-5-

KIT506 Software Application Design and Implementation

[18 marks] Question 4. (Assessing ILO: 1)

a.

Why do software engineers use design patterns? Describe some of the advantages to using software design patterns.

The Software design pattern is used by the engineers because of several reasons: When using the design pattern, it provides the great example of good design and implementation. It also gives a shared vocab. It helps to think a library and framework of pattern This is used because it encourages low coupling, high stability, versatility and stretchability.

Advantage:  A standard approach to a core issue in coding.  A tool for rendering code more scalable by meeting those conditions  A framework of design or execution that serves a specific function  A high standard aphorism in software  Shorthand for expanding those elements of coordinating the programme  Interaction between element of programme.  An interaction schematic or model type form [6 marks]

Continued…

-6-

KIT506 Software Application Design and Implementation

b.

Design patterns often lead to more complex solutions with a greater number of distinct classes. Why is this?

Reusable architecture templates tend to eliminate minor bugs that can trigger huge challenges, and for coders and designers who are comfortable with the templates, it also increases code reuse. By offering a better image of how you are executing the layout, architecture habits help you to write code quicker. By offering specific, excellently tested approaches, architecture patterns help you examine the more conceptual aspects of a programme. Design pattern might enhance or decrease the usability or understandability of architecture or uses or implementation. This could happen because it may add some more coding programme and it leads to the complexity of the classes. This may happen because sometimes it adds the wrong direction in the classes and leads to the complexity of classes. These are some of the reasons for the increasing complexity of the design pattern and the classes it involves. [6 marks] c.

It is likely that in your assignment you made use of Model-ViewController pattern. What is it, and why was this pattern applicable in the assignment?

Continued…

-7-

KIT506 Software Application Design and Implementation

Three elements include the MVC: the model, the view, and the controller. The design feature embodies both the data of the system and the activities on such details. The aspect of the model is autonomous of how the information is interpreted or how feedback is produced. The details it receives from modelling framework is displayed by an analytics software. It divides the system design into 3 different components, enabling extensibility and ease of communication and recycle. It also senses more versatile and prototypes more accepting. Problem: It has a third-party classis whose interface cannot be able to change but it also not interactable with some different parts of the system. Pattern: Build a user class that understands how to communicate with the great legacy class and provides the rest of the device with the intended user interface.

[6 marks] Question 5. (Assessing ILO: 3)

a.

What is white box testing and when would you use it instead of black box testing?

Continued…

-8-

KIT506 Software Application Design and Implementation

White Box testing: It is one of the two broad testing forms in the system. It requires information of the execution of the system.  The testing is conducted to test all (inbuilt) operational problem routes, specifically those that are prone to failure,  In the usual design, we will also communicate with the device, but make important decisions understanding which internal pieces of the programme will be implemented. When to use White Box instead of Black Box: From the back end, in which the System Test is carried out by engineers, Since the approach is to verify that each code unit works as planned, it must also use the information of the order to accomplish the task, such as: a program's implementation routes, of those who are likely to crash. [6 marks] b.

What is black box testing and when would you use it instead of white box testing?

Black Box testing: 1. It trats the whole system as a whole or a sealed unit. 2. We can only communicate with it through the GUI interface 3. Experiments are only designed based on available experiences and predicted answers When to use Black Box instead of White Box: Rather than White Box tests, the approval and implementation tests process requires Black Box testing. Since it is done by the User and funded by engineers, it is also little to deal with creation of the back end and just deal with device design to operate out the user or user request upon the official update. [6 marks] c.

Are execution-testing approaches the only approach to testing? If not, then give some examples of non-execution-testing schemes.

Continued…

-9-

KIT506 Software Application Design and Implementation

No, there are several other approaches to the testing: 1. Unit testing: Unit Testing is a system testing stage where a device 's particular units / elements are evaluated. The aim is to verify that the programme performs as configured by each device. To aid with testing process, unit testing systems, operators, wrappers, and mock/ false artefacts have been used. FOR Process Unit Testing is carried out using the process of White Box Testing. When is it conducted? The very first phase of the process is Unit Testing which is conducted prior to Integration Testing. 2. Integration testing: Integration Testing is a type of software development that integrates, and measures separate parts as a group. The purpose of such an amount of scrutiny is to reveal flaws in the relationship among combined units. In Implementation Testing, test operators and term used to define are being used to help. Techniques You can use all the Black Box Testing, White Box Testing, and Gray Box Testing strategies. The approach typically relies on the system description. What is testing phase conducted? Integration testing is carried out after evaluation of the device and before machine evaluation. [6 marks] Question 6. (Assessing ILO: 3)

Consider the following class diagram. Write C# class declarations that represent this structure. Do not include the using statements or the namespace declaration in your answer. You may assume that all required namespaces are available. Each attribute must be a public, autogenerated property. Any methods you write should be stubs, with an appropriate header but no code within their body { }.

Continued…

-10-

KIT506 Software Application Design and Implementation

Team +Name: String +Game: Code

Player * 0..* +Number: int comprises +Skill: double 'Run(): void

+Play(t2: Team): void

Back

Forward +Shoot(): void

«enumeratio n» Code Soccer Rugby AustralianRul es

+Defend(): void

public enum Code {Soccer, Rugby, AustralianRules} Public class Team { public string Name {get; set;} public Code Game {get; set;} public void Play (t2: Team) {} public List Task {get; set;} } Public class Player { public int Number {get; set;} public double Skill {get; set;} public void Run {} } Public Class Forward: Player { public void Shoot {} } Public Class Back: Player { public void Defend {} } [18 marks]

Continued…

-11-

KIT506 Software Application Design and Implementation

Question 7. (Assessing ILOs: 2 and 3)

In parts (a)–(c) below, suppose there exists a class called Plant that represents the plants found in a typical garden. Each plant has three public properties: Name (a string), Planted (the DateTime the plant was placed in the ground) and Toxic (a bool, whether or not a person would become sick if the plant was eaten). a.

Assuming the following declaration of a collection of Plants List garden = new List(); that has been filled with Plant objects, write a LINQ expression that selects those plants that are toxic.

Var result= From plant u. in plants Where u.toxic = true Select u; [6 marks] b.

Further suppose that there exists a MySQL database with a table called botanicals that has a string-valued column title, an integer-valued column height, an integer-valued column circumference, and a boolean-valued column edible (which indicates if a plant is non-toxic). Write a suitable SQL query to retrieve the information necessary to create Plant objects from the information in the botanicals table.

List garden = new List(); MySql DataReader rdr = null; Conn.Open(); MySql Command cmd = new MySqlCommand (“little, height,circumference, edible” +”from plant “, conn); [6 marks] c.

Now assume that a MySqlDataReader called rdr has been created using the query you defined in part (b), and that it has been executed and its Read() method called to load the first result. Write a single C# statement to instantiate a Plant object using the data retrieved and assign it to a variable called p.

Continued…

-12-

KIT506 Software Application Design and Implementation

Rdr = cmd.ExecutiveReader (); While (rdr.Read()) { Garden.Add (new plant { Title = rdr.GetString (0), Height = rdr.GetInt32(3), Circumference = rdr.GetInt32 (4), Edible = rdr.bool (1), } ); }return p [6 marks] Question 8. (Assessing ILO: 3)

a.

In the .NET Framework, what is LINQ and what benefits does it provide to software development? (Write three to five sentences in total.)

LINQ: "Language Integrated Query" is a means of meeting developers' information accessibility needs by allowing requests to be published in the scripting language. Instead of using a loop to annotate and examine and control each one via a series of items. LINQ offers a means to inform the developer what you will do and then help the developer find out how to use it better. Therefore, at each cycle, it should overwrite. [6 marks] b.

Describe the purpose of and benefits from using Data Templates in XAML.

Continued…

-13-

KIT506 Software Application Design and Implementation

In WPF, displays with an XML language called development and testing phase are created. Mark Up Language (XAML) framework. The XML components and hierarchical configuration of XAML described the unit layout it had and how they have been placed and reformatted. It is also possible to use XAML to connect control to the details they should view. The XAML that you modify or create remotely through the Visual Studio GUI creator will be compiled into java script. [6 marks] c.

With regard to WPF and XAML, what is data binding and what are some of the benefits it provides? Include an example of how data binding may be used.

Data binding involves deciding at which a GUI controller (such as a checkbox, tag) can show the properties at start-up. The method is very versatile, but we recognize only 3 aspects that attach to the attributes of an entity and attach to a group of items (to occupy a List Box). Data binding offers a simple and powerful way to link details to an aspect of a user experience that shows the details. With capacity to change the data format on the fly as appropriate, you have instant replication of the properties in any path, one period or frequently. And using mark-up, you can do that with next to no algorithmic scripting. Data linking helps you to have the details where you like it and begin to write the remainder of the request. [6 marks] Question 9. (Assessing ILO: 3)

a.

Assume a WPF Window uses a Grid layout with two columns and three rows. Write a fragment of XAML to create a TextBlock with the name “txtSample” that occupies all of the top-right cell in the grid. Have the TextBlock display the text “Hello World”. Include only those properties that are necessary to achieve this behaviour. Do not write the XAML for the containing Grid.

Continued…

-14-

KIT506 Software Application Design and Implementation

[7 marks] b.

Consider the following excerpt from the XAML for an application’s main Window. Draw a low-fidelity sketch of the GUI it defines. It should be approximately to scale, but does not need to be exact.













Part A Part B



Continued…

-15-

KIT506 Software Application Design and Implementation

[11 marks] Question 10.

(Assessing ILO: 3)

Consider the following use-case-based test for the application developed in your assignments, and answer the questions that appear below the table. Description Type and Use Case Criteria

The user shall be able to filter the Staff List view based on their employment category SWC UC8_User_views_StaffList

When the user clicks on an employment level button, the system shall show only those staff members meeting that criterion. Method White box test: 1. Open the HRIS application 2. Select an employment level 3. Check the displayed details to ensure those chosen are from the selected category Outcome Pass a. Is this test case sufficiently detailed to allow a tester to verify that the system is behaving as expected? If not, where could more detail be added?

No, there should be more details to be added in some of the part of this case. There should be a detail available for the staff tab that is not visible in this case. The case should show the entry in filtered list. [6 marks]

Continued…

-16-

KIT506 Software Application Design and Implementation

b.

Based on your knowledge of the HRIS, are there enough test methods in this test case? If not, what additional methods or steps would you add?

For this portion, the case is probably to include extra tests such as an integration test, namely the Black Box test, to ensure a whole structures perform as anticipated after the White Box process unit checks like this scenario. [6 marks] c.

Do the test types appear valid? Would you change them and why?

No, because if the outcome of the entry fails it needs to show the filing message and unsuccessful test. [6 marks]

Please ensure you have put your Student ID in the top-left corner of Page 1.

Continued…...


Similar Free PDFs