Intermediate software development, Software Engineering

Assignment Help:

Provide an abstract superclass called EnergyRecord and subclasses called Contract and Transaction with default constructors (no-arg) and full-arg, overloaded constructors. Collect abstract commonality in the superclass to be inherited into the subclasses.

Provide instance fields, instance accessor and mutator methods for all of the data fields in each record data files. If no value is provided in the FERC data, then set that characteristic to some default value.

Provide a toString() method to format all of the record data in each class.

Provide an interface called TransactionRelatable with four methods:

  • boolean isTransactionChargeSmaller(Object other );
  • double findTransactionChargeDifference(Object other);
  • boolean isTransactionQuantityGreater(Object other);
  • double findTransactionQuantityDifference(Object other);

Implement this interface in the EnergyRecord class.

Provide a driver class that includes the following features:

  • creates an instance of each energy record class for each row in the two files
  • collects all contract objects into an array of EnergyRecord called contracts
  • collects all transaction objects into an array of TransactionRelatable called transactions
  • displays all contract data using the toString() method in a loop
  • displays all contract and transaction data in a tabular format using accessor methods
  • displays the comparisons of the transaction_charge  of any two transactions
  • displays the comparisons of the transaction_quantity of any two transactions
  • displays the minimum price of all transactions
  • displays the maximum units of all transactions.

Provide a test script called test_mp1.bat in the test folder to execute the project and send its output to a file called test_mp1_out.txt.

Comment your code and provide a detailed README (pdf only) file that includes:

  • project description
  • installation, compile and run-time requirements
  • development and testing insights with expected results
  • screen captures demonstrating all application capabilities
  • generate project javadocs documentation
  • minimize your main() method code by using intuitive functions

Submit a file called mp1.zip (zip format only) of all project code and documentation to the Digital DropBox link on Blackboard by 09/18/11, 23:59/CST. Note that a completed submission requires the use of both the Add File button and the Send File button. A late mini-project will lose more points the later that it is submitted.


Related Discussions:- Intermediate software development

What is role of software engineer in software development, Q Who is a Softw...

Q Who is a Software Engineer? What is his role in software development process? Ans) A software engineer is responsible for the implementation and design of a variety of softwa

Developing prototype software, Introduction Energy consumer in the comp...

Introduction Energy consumer in the computer system is getting critical all around the globe now. Therefore, the ability to figure out the components that consume energy in sys

Explain in detail about black box testing, Explain in detail about Black bo...

Explain in detail about Black box testing. Black box or behavioural testing focuses on the functional needs of the software. It is applied during the last phase of testin

Describe the implementation of new technology, Question 1: Prepare a sh...

Question 1: Prepare a short note on technology strategy. Explain in brief about the innovation management. Question 2: What is Research and Development (R&D), and how i

What is test log, What is Test log? A chronological record of all releva...

What is Test log? A chronological record of all relevant details about the implementation of a test.

Determine the meaning of vertical partitioning, Determine the meaning of ve...

Determine the meaning of vertical partitioning? Vertical partitioning often called factoring suggests that the control and work should be distributed top-down in program struct

What is maintenance, Define maintenance. Maintenance is defined as the ...

Define maintenance. Maintenance is defined as the procedure in which changes are executed by either modifying the existing system's architecture or by adding new mechanism to t

What do you mean by static analysers, Q. What do you mean by Static analyse...

Q. What do you mean by Static analysers? Static analysers A static analyser operates from a pre-computed database of descriptive information derived from the source text of t

How is software design different from coding, Q. How is software design dif...

Q. How is software design different from coding? Ans: Points of difference among software design as well as coding can be laid down as under: Design : 1. Design is mo

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd