ITECH7201 Software Engineering: Analysis and Design Assignment 1 Overview You are required to design and develop a small console application in any Object Oriented Programming Language. Completion of...

1 answer below »

ITECH7201 Software Engineering: Analysis and Design




Assignment 1




Overview




You are required to design and develop a small console application in any Object Oriented Programming Language. Completion of this assignment requires an understanding of:


 Analysis and design techniques, including the development of use cases and UML diagrams –


specifically, use case diagrams, class diagrams, and sequence diagrams




 Object-oriented programming, focusing on polymorphism and the use of interfaces




Timelines and Expectations




Percentage Value of Task: 20%




Due: Sun, May 5, 2019 – 1pm (week 7) Minimum time expectation: 20 hours




Learning Outcomes Assessed




The following course learning outcomes are assessed by completing this assessment:




 Understand the significance of detailed project planning and control, good communication and


documentation and the use of appropriate tools in order to provide a quality product




 Understand the distinction between software engineering and programming, and thus the


distinction between a software configuration and a program




 Understand the methods and techniques involved in designing, implementing and maintaining


an information system, in particular using an object-oriented approach




 Demonstrate skills in designing and implementing an information system.




Assessment Details




A new city “Ballymanus” has been announced in a state in Australia and the state government has planned to extend the public transport where the fares will be calculated according to the existing fare rule of the state. As per the existing fare system, everyone must have to buy the “Move Card” in order to travel on trains, tram, and buses in different parts of the state, including the new city.




There are 2 options in “Move Card”




 “Move Money”: When you travel occasionally, you can use a “Move Money”. You need to load an amount onto your “Move Card” and it will automatically calculate the lowest fare possible as you touch on and touch off. The fare for the Move Money is given in the following table:












































CRICOS Provider No. 00103D Page 1 of 5































































Table 1 Move Money Daily Fare























Fare Type



Weekdays (Daily)



Weekends (Daily)



Full fare



$8.80



$6.40



Concession



$4.40



$3.20









 “Move Pass”: If you travel often, you can use a “Move Pass” and you’ll need to select the number of consecutive days you travel when you buy it. You can buy a Move Pass for 7 days or anywhere between 28 and 365 days. The fare for the Move Pass is given in the following table:






Table 2 Move Pass Fare























Fare Type



Weekly rate


(7 days pass)



Daily rate


for 28-365 days



Full fare



$44.00



$5.30



Concession



$22.00



$2.65









Travelers might need a calculator to work out how much their journey will cost and to find the most cost- effective way for them to travel using “Move Card”. You have been assigned to design and develop a small console CALCULATOR program to help the travelers, enabling them to find the appropriate option (“Move Pass”/”Move Money”) and to calculate the traveling cost. Once a calculation is processed, the program will return to the initial condition and will be ready to commence another calculation. The CALCULATOR program should be able to input the following options:




 Fare type: 1 OR 2 (1= Full fare, 2= Concession)




 Number of days to travel on weekdays: a number between 0 and 5




 Number of days to travel on weekends: a number between 0 and 2




 Number of weeks you are planning to travel: a number between 1 and 52




The CALCULATOR will display the following output based on the input provided by the user:




 The amount in “Move Money”




 The amount in “Move Pass”




 And a Recommendation on which option should be cost effective for the user
































































CRICOS Provider No. 00103D Page 2 of 5



























































The system should be flexible so that the state government can include new fare types (e.g., student pass) and the concept of varying fares for different zones (e.g., Zone 1, Zone 2, a combination of multiple zones) at a later date without having to rewrite the entire program. This means you will need to use an interface for processing total fares, and polymorphism for the various fare type classes, so that new and different fare types may be added at a later date with minimal updates to the code. You are asked to provide with some documentation before you commence coding so that the client (the state government) is able to verify that the program you intend to code will address their requirements. The client would like to see the use cases to summarize the requirements in written format, as well as use case diagrams, class diagrams, and sequence diagrams.




* For verifying the program, two sample input-outputs are given at the Appendix section




Submission




You are required to submit the assignment before the due date consisting of:




 A Zip file containing the following (submitted via Moodle under the Assignment 1 link)




o A written report comprising:




 Use Cases summarizing the requirements




 UML Diagrams, created in Enterprise Architect, comprising: a Use Case Diagram for processing the calculation a Class Diagram of the intended system


 a Sequence Diagram for processing the calculation


 A short reflection (approximately 200-300 words) of what you have learned, if anything, on this assignment, particularly relating to requirements design and analysis, UML diagrams and object-oriented programming with interfaces and polymorphism. As an example, if you found that you changed your initial UML diagrams after you had commenced coding, you should explain what these changes were and explain what you learned that led to these changes.




o Enterprise Architect file(s) containing your UML Diagrams for the Use Case, Class and Sequence


Diagrams




o Your finished program (in any OOP language), addressing the requirements outlined in the


Assignment Details.




























































































CRICOS Provider No. 00103D Page 3 of 5



























































Marking Criteria/Rubric

























































































Task





Available


Marks





Student


Mark



Requirements Analysis and Design









 Use Cases summarizing the requirements of the program



2






 A Use Case Diagram for processing a calculation



2








 A Class Diagram of the intended system



2








 A Sequence Diagram for processing a client’s query order





2






Development of Code









A complete program (in any OOP language) addressing the requirements outlined in the Assignment Details section of this specification, including:









 Functionality to process the Calculation for each Fare type





2






 Functionality to process the Final Recommendation





1






 Validation of input values for each field





1








 Code demonstrating the use of an interface and polymorphism to


handle Fare types and the various options in each fare type





6






Reflection on Learning









 A short reflection (approximately 200-300 words) of what you havelearned, if anything, on this assignment, particularly relating to requirements design and analysis, UML diagrams and object-oriented programming with interfaces and polymorphism.





2






Total



20












Feedback




Marks will be uploaded in fdlGrades and a completed marking guide provided in Moodle within 2 weeks of assignment submission.




Plagiarism




Plagiarism is the presentation of the expressed thought or work of another person as though it is one's own without properly acknowledging that person. You must not allow other students to copy your work and must take care to safeguard against this happening. More information about the plagiarism policy and procedure for the university can be found at http://federation.edu.au/students/learning-and- study/online-help-with/plagiarism.




























CRICOS Provider No. 00103D Page 4 of 5



























































Appendix












Sample Input and Output








Case 1:




INPUT:




 Fare Type (Enter “1” for Full Fare and “2” for Concession): 1 Number of days to travel on weekdays: 3


 Number of days to travel on weekends: 2 Number of weeks: 6


OUTPUT:


 The amount in “Move Money”: $235.20 The amount in “Move Pass”: $222.60 Recommendation: “Move Pass”






Case 2:




INPUT:


 Fare Type (Enter “1” for Full Fare and “2” for Concession): 2


 Number of days to travel on weekdays: 2 Number of days to travel on weekends: 0 Number of weeks: 6


OUTPUT:


 The amount in “Move Money”: $52.8 The amount in “Move Pass”: $111.3 Recommendation: “Move Money”




































































































































CRICOS Provider No. 00103D Page 5 of 5

Answered Same DayApr 30, 2021ITECH7201

Answer To: ITECH7201 Software Engineering: Analysis and Design Assignment 1 Overview You are required to design...

Kuldeep answered on May 03 2021
139 Votes
Software engineering
Contents
Introduction    2
A Use Case Diagram for processing an order    5
A Class Diagram of the intended system    6
A Sequence Diagram for processing a customer’s order    7
Program Test:    8
Program Code    8
Start:    8
Dessert:    9
Donut:    10
Muffin:    12
SelectedItems:    14
Order:    15
Conclusion    23
References    25
        Introduction
The Software engineering’s goal is to prod
uce high-quality software products. A software product is a software system delivered to the customer that contains documentation describing how to implement and utilize the system. Quality of the software product, apart from the services offered by product, also judged by the features displayed after the product is installed as well as put into utilize.
This report designed and developed the small Java console program for in-depth selection of the corresponding projects and packages, and the corresponding costs. After processing the order, a program will return to menu and be ready to start further order. This recompence information is also displayed through the Java program during processing, such as the total payment amount for the received donut order, the total payment amount received for the muffin order, in addition, the entire number of muffins and doughnuts sold in the session. This report creates and designs charts as the use case diagrams, sequence diagrams, and class diagrams in software through Enterprise Architect.
The java platform defines the java virtual machine specification as well as java language specification with different technologies. In context of the operating system, these technologies are only pertinent at a continuing environment level. The choice of Java operating system characteristics is led by the classic requirements of the OS. Performance’s linking, coding, running engine as well as memory management. We believe that in the card file processing, which gives the similar reduction rate as a JEFF conversion, which is reduced by 50%. This process explains more details in the figure below.
As the load linkage operation only happens once in a life cycle of a class, we believe that the growth advantage carried by loading the standard class file is worth completely loading a class file and applying the onboard conversion process, storing in a size equivalent to the 50% of original class file in the card memory. (Toegl, Winkler, Nauman & Hong, 2011)
One of the chief industrial revenues of choosing a class file as well as defining its own conversion procedure is that it provides freedom of distinction, and most card manufacturers can select an inner format that suits their own specific constraints.
An interesting characteristic of the Java Virtual Machine is the automatic garbage collection heap, which is utilized to apportion Java objects as they are formed, thereby reducing the load of moving, compressing, and freeing memory to a system rather than the developer (Jendrosch, Dueck, Gracie & Hinkenjann, 2014).
This stimulating feature lacks Java card specification as well as provides developers with sophisticated applications to develop memory management sequences in their own application code, written in a Java, which makes the Java card to act like the operating system. Programs should not manage such sensitive tasks. There are numerous types of the garbage collectors, nevertheless what seems to be more suitable for smart card alike environments is the generational collector. This kind of collector is well suited for servers, such as long-lived applications, which is often the case with smart card programs.
In fact, the memory management of object cases is distinct from memory management of the system data, such as descriptions, classes, threads, code, and objects. This usually leads to memory management complexity, greater footprint and inert segmentation of memory. We are trying to replace...
SOLUTION.PDF

Answer To This Question Is Available To Download

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here