Urgent Required c# Expert

profilekaushiki12

Apply appropriate processes (design documentation and testing) and articulate the rationale for

design decisions throughout the process of developing a program.

2. Communicate own algorithmic solutions for complex programming problems using appropriate

notation.

3. Select and implement appropriate structures for file handling and error catching within a program.

4. Select and implement appropriate structures for data manipulation within a program.

5. Demonstrate knowledge of subject terminology and concepts, giving appropriate comparative

examples in specific contexts.


Task(s)

Design, implement and demonstrate a program to sort a dataset from a file in to ascending order using

three different algorithms. The program will time stamp the different algorithms to test the effectiveness

(timeliness) of the algorithms. The methods you should user are Insertion, Selection and Bubble sort.

The program should read from a file in to an appropriate data structure. The program should then use a

series of methods as discussed to sort the data and write it to another file in a sorted ascending format you

have chosen. The program will calculate the length of time it took each algorithm to process the sorts and

this information will be stored in another test file, which will not be overwritten only appended.

Extend the program to allow the user to select different files for sorting. Add a method to accept an

additional algorithm of your own design. Your algorithm will sort the dataset in to descending order again;

you will have to calculate run time. The program should continue to run until the user terminates the

program.

Design documentation (500 words plus designs):


2


All design documentation should be in a formal report format, with a clear introduction. Any research

undertaken or resources consulted should be discussed and/or presented in a bibliography. The designs

should be presented in the appendices and clearly referred to from the body of the text. The following

should be included:


• Identify any assumptions you have had to make (this is NOT information given in the brief)

• Discuss any research or resources you have used throughout the development, with

appropriate citations.

• Given the brief evaluate the program clearly identify any areas of the brief not achieved or

issues yet to be resolved

• A bibliography (all resources consulted)

• Formal design documentation in the form of use cases, Pseudo code and Flow-charts where

applicable to the scenario, (in the appendices). This should be as complete as possible and

reflect the final design. They main contain a number of elements that are not implemented.


Implementation:

The implemented program should demonstrate an appropriate use of programming concepts, as detailed

in the marking criteria. Credit will not be given for extending the brief or producing something unrelated.

All program files should include a clear header that includes at least the author’s name. The (main)

program name should be as specified in the brief. The code should be well structured and commented and

follow best practice. The majority of methods should demonstrate some form of effective testing

(commented out, output statements.

It is not expected that all designed elements be implemented; there should be a focus on demonstrating

the elements given in the marking criteria and the overall functionality of the application. However, the

implementation should NOT be significantly different from the design documentation (which should be

updated as work progresses).


Demonstration:

The program will be demonstrated to the module tutor, and in some instances a second marker. Where

the tutor will provide applicable test data, unless otherwise stated in the brief. Students will be expected

to explain specific aspects of their code and should do so using appropriate technical language. The

demonstration will take place during class on the 20 th April 2020.


Marking Criteria


Criteria Assessed Element Weighting

1. Insertion sort 10%

1. Selection sort 10%


3


1. Bubble sort 10%

2. Own Algorithm 20%

3. Main Program 20%

4. Report 30%

Total 100%


Assessment Criteria


A+/A/A-

1. All of the sorting algorithms have been correctly implemented and function as expected.

2. The descending algorithm is of an appropriate type, has been well documented in the report, and is

effectively implemented in the program.

3. The data is effectively drawn from the generated files and stored appropriately in the program.

4. The core program has been extended successful to enable user interaction and is only terminated

by the user.


4


5. The report presents the results of an effective set of experiments that test a range of different data

sets with all three sorting algorithms.

6. An appropriate and well-formed conclusion has been presented that is supported by the results.


B+/B/B-

1. All of the sorting algorithms have been correctly implemented and function as expected.

2. The descending algorithm is of an appropriate type and has been documented in the report

with some mistakes identified. The algorithm is implemented in the program however only

works in a limited way.

3. The data is drawn from the generated files and stored appropriately in the program, which is

mostly effective.

4. The core program has been extended to enable user interaction and is only terminated by the

user, however some aspects are not handled effectively.

5. The report presents the results of a set of experiments that test at least three different data

sets with all three sorting algorithms.

6. A conclusion has been presented that is supported by the results to some degree.


C+/C/C-

1. At least two of the sorting algorithms have been correctly implemented and function as expected.

The descending algorithm has not been implemented in to the final program. However, it is in the

design documentation.

2. The data is drawn from the generated files and stored appropriately in the program, which is

somewhat effective.

3. The core program has been extended to enable user interaction and is only terminated by the user;

however, a number of aspects are not handled effectively.

4. The report presents the results of a set of experiments that test at least two different data sets with

all algorithms implemented.

5. A conclusion has been presented that is supported by the results to some degree.


D+/D/D-

1. At least one of the sorting algorithms has been correctly implemented and functions as expected.

No descending algorithm exists in the program and is discussed in a minimal state in the report

and design documentation.

2. The data is drawn from the generated files and stored in the program, which is implemented in a

less than effective

  • 6 years ago
  • 30
Answer(0)