12 Pages
3095 Words
Introduction of Programming Concepts And Practice Assignment
Get free written samples from subject experts and Assignment Writing in UK.
“Programming concepts and practice” basically includes the programming knowledge that begins with scratch level and must be known for those who want to start their career with the help of programming language. Almost every programming language stands on the same attribute called “building blocks” and which can be fabricated in many ways to reach the same goal. Some of the basic concepts that are needed to build a programming language are “Variables, data types, sequence, selection, and iteration”. The job of this report is to analyse and characterize the unstructured reports that are given and to determine the required functions and information and to reach the goal which is determining “maximum and minimum transaction”, “the distance from Centroid” and “the standard deviation”.
Problem Analysis
The area of problem analysis is mainly monitored by the “artificial intelligence” part of computer science with the help of “algorithms, heuristics and root cause analysis” and other techniques (Barria-Pineda et al. 2021). Basically problem analysis is a subpart of the wide process that encloses “problem determination, duplication, analysis, diagnosis, repair, and other steps”. There are some other tools named “linear and nonlinear”, “queuing systems, and simulation” that are used by most problem solving systems while dealing with some specific problems.
There are some steps that should be followed by any computer system while problem analysing of programming language such as
Problem identifying:
The problem of detecting or identifying is always the first step to solve the problem. The precautionary measures can be taken when the exact problem is known. This step actually investigates the root cause of the problem to allow the programming scientists to totally understand the problem. After understanding the core issues it is time to break down the problem into small parts and manageable parts because even if the problem is clear, the size and volume of the problem can be the obstruction. For the problem with huge volume it is good to part them and solve them differently instead of tackling the whole work at a time.
The next job is to define the goals and identify the possible methods of solving the problem. It is very important to know the goals because it states where to start and end and where to process or stop while analysing and by knowing the measures it can be found that how far the process came and how much to go to activate the required goals.
Flowchart:
To represent the process of better understanding of the workflow a diagram can be created called “Flowchart” and it can also explain the “diagrammatic representation of an algorithm” which can be observed step by step due to the flowchart.
Coding and Algorithm:
“Coding” is the process of planning and building “an executable computer program” to reach specific results or to accomplish a particular task. Basically any programming language includes steps such as “analysis, generating algorithms, profiling algorithms and resource consumption” to analyse the algorithm of the taken programming language.
“An algorithm” is a limited string well structured “computer implementable instructions” that is created to “perform computation, calculations, data processing, automated reasoning, and other tasks”. The bunch of logic determined by the software developers and for improving hardware also, algorithm of computer can be done.
For this report exactly the same type of job is done and the same steps are followed to analyse the problem and achieve the goals which is to define the functions like “maximum and minimum transaction” etc (Berry et al. 2022). At first the unstructured data is received and the step is taken to identify the problems and organize the dataset into a well formatted data for further processing as stated above. At the end of the program file the required data is executed by recalling all the functions which is the goal.
Solution Requirements
For elaborating the “solution requirements” part, it can be said that all the remedial and precautionary measures that are required to solve any problem and fulfil the goals by using programming language. There are various processes of solution requirements that are prescribed by the software developers such as
Functional requirements:
The functional requirement is the task that has to be done to provide “an operational capability or satisfy an operational job”. There are some “functional requirements” that are connected with operational activities and can be determined by the required “operational capabilities”. The eight common functions that most of the systems achieve on their “life cycle”, which are “development, manufacturing, verification, deployment, training, operations, support, and disposal”. The primary functions have to be examined in detecting all the “functional requirements” for a system.
Performance Requirements:
“The performance requirements” is the assertion of a function that must be executed that is usually referred to as “quantity, accuracy, coverage, timeliness, or readiness”. For operational functions and some others, the performance requirements often collaborate with the “operational capabilities” which is developed by “Joint capabilities Integration and Development System” also known as “JCIDS” process and through system engineering the statements of the other performance requirements can be observed (Kita et al. 2021). This is to track and control the whole data system and analyse the performance to enhance the capabilities of the programming system.
System Technical Requirements:
“Allocated requirements” can flow to the system elements from the system requirements and “Derived Requirements” depend on the “design solution” and they hold the interference among the system elements and the outcome can be found from combining both allocated and derived requirements called “System Technical Requirements”.
Specifications Requirements:
“Specification Requirements” is nothing but a “quantity, accuracy, coverage, timeliness, or readiness” and the basic purpose of this entity is to provide a particular process to obtaining a service or product that will fulfil the needs of “economical cost” and to invite “maximum reasonable competition”.
At the starting point of this dataset problem there was an unstructured file that was given and from which the required functions had to be found which the main goal (Kumar, 2020) was. The process and methods that are used to fulfil the whole process is discussed earlier in this report and all the processes are related to this programming language system that is to be accessed. At first it was very complicated to access the raw database as the volume of the database was huge and to find the particular functions that are needed was another difficult job. Then the planning was done for all the measures that had to be taken and the flowchart was made for better understanding of the processes.
By recalling and execution of the functions the main goals can be achieved which was determining the “maximum and minimum transaction”, “standard deviation” etc as can be seen in the image given above.
Implementation of Solution
Implementation of the estimated solutions include methods and techniques which are used in this database to achieve the goals and most of the performed implementation methods are
Structured Programming:
As the lines of the program in this coding method are multiplied with each other, that is why the size of the software is increased and further understanding the flow of the program becomes complicated. The solution of this issue lies in the structured programming which is used in this database (Sigayret et al. 2022). The structured programming basically supports the developers to use the “subroutines and loops instead of using simple jumps in the code” and by doing this it can bring more clarity of the code and increase the efficiency by “reducing coding times and organizing code properly”. There are three types of structured programming methods used in this job such as “Top down analysis”, “Modular programming” and “Structured coding”.
As all types of software is made to do the rational work and these types of rational work are laid into the part of “software parlance”. The process of top down analysis can break the whole problem into small pieces but each piece must have some significance and each problem is cured individually. The statement “go to” is used for jump can sometimes create problems while tracking the program flow and to counter this problem modular programming is used. After the breaking of the problem at the top down process for further breaking it into smaller parts, a structured coding process is used.
Functional Programming:
The style of programming language that uses all the abstraction of “mathematical function” is called functional programming. The mathematical programming is used here because it produces the same result every time the analysis is conducted and then flow of the program running can be controlled by these methods. During the transformation of the controlled flow from one system to another, the program can change its statement. The produced result can be varied during transformation even if the given arguments are the same. This can be referred to as a drawback for this system and it can be resolved by the “means of computation” which is produced by functional programming (Solanik et al. 2021). There are several concepts that are used by functional programming such as “First class and High-order functions, pure functions, Recursion, Strict evaluation, λ-calculus”.
Coding Guidelines:
There are some elements and guidelines of coding style that depends on the “organizations, operating systems, and language of coding” which is used while implementing this database and the guidelines are “Naming conventions, Indenting, Whitespace, Operators, Control Structures, Line length and wrapping, Functions, variables and Comments”.
While elaborating the solution part of this database system, the process and steps that are taken are stated above and an image of various functions while executing is also given for better understanding. All the functions that are executed in this programming are sorted out from the unstructured datasets that were given and functions are related to the requirements of the configuration and the pre estimated attributes.
Program Execution
The part called “Program Executing” includes the brief discussion of all the individual steps and processes that are executed during the program analysis.
Opening Dictionary:
To categorize all the essential entities from the huge unstructured dataset, the first step is to be taken is “Opening Dictionary” as by opening a basic dictionary where all the necessary attributes can be stored at the primary stage.
For opening the dictionary the command is used here “with open” followed by the dictionary name given within brackets. There are several commands and input used to split up the data to identify the essential properties because the database was too large and messy at the early stage (Stoffová, 2019). All the related data is categorized into the specific dictionary and each and every data is assigned to the particular dictionary for which they are checked for. As it can be seen that several dictionaries are made like “Black Diamond Coffee” and the data that are suitable for it is assigned to that dictionary.
Attributes Specification:
At the stage of attribute specification, the related data and sub file are assigned to the particular dictionary. By taking the integers like “notes”, “transaction” all the data is characterized and inserted in the specific groups.
It is clearly seen in the image that integers are being taken by the developers to categorize the dataset into small groups and by helping the integers it can be determined which data will go into which group.
Implementing various functions:
One of the most important sections of the whole process of programming analysis is implementing the functions. It is the section where all the essential functions are implemented and are executed by the programming language. These functions are sorted out from the whole database at the attribution part and the integers that are taken there are used for the implementation as seen in the image (Tu et al. 2018). For example the integers taken before are used with other codes and the command “calculate centroid” is used as a principal command for the functions.
Configuring the requirements:
Configuring all the requirements is the last step of this data analysing process as all the data required is accessed in this part. The principal goal of this project can be achieved here and all the required data is available after this step as seen in the image.
The end part of this project is all about getting all the required values and achieving all goals that are estimated earlier at the starting of this project. The main goal of this project was to determine the maximum and minimum translation values, the value of distance from the centroid and to determine the standard deviation (Yett et al. 2020). As it can be seen in the image that all the required data are determined and available here on this program hence it can be stated that the steps are implemented successfully.
Program Structure Flowchart
From program structure flowchart all the steps that taken and implemented during the execution of this program are shown step by step and for better understanding the flowchart is made by the shapes like rectangle and triangle with the direction signs to understand which step is taken after which step. The first point of the flowchart is “start” followed by the steps of declaring the necessary attributes as discussed earlier (Wilbur et al. 2018). Followed by the steps of “importing the dataset module” and “implementing the functions” and at last point of the flowchart is “configuring the requirements” followed by the “stop” point which is the last step of the flowchart which determines the completion of the project. Such flowchart usually is to show the timeline of the attributes and exact action point of the performance thus it this flowchart can be referred as the perfect example of the visual steps of the process.
Reflection
Basically for the compilation of the project, three key tasks are developed as “load dataset module”, “user statistics module” and “test module”. After categorizing all the attributes of the programming, development of these three modules is done. The “user statistics module” includes all the functions from which their acquired data can be determined. The functions can return the “maximum and minimum amount of transaction”, can compute the location of the centroid, can compute “the distance of the centroid from any location”, and can compute the “standard deviation of transaction” and other queries that should have been determined as an outcome.
While implementing the main module which is the test module, the functions are included which “implements the user interface through which users can query and interact with all functions”. Reflection part is all about the summary section of all the works and attributes of the programming codes and commands and execution of these integers and about the final outcomes after executing all the functions.
Reference
Barria-Pineda, J., Akhuseyinoglu, K., elem-?elap, S., Brusilovsky, P., Milicevic, A.K. and Ivanovic, M., 2021, June. Explainable Recommendations in a Personalized Programming Practice System. In International Conference on Artificial Intelligence in Education (pp. 64-76). Springer, Cham.
Berry, M., Curzon, P., Cutts, Q., Hoyes, C., Jones, S.P. and Saeed, S., 2022. Practical programming in computing education.
Kita, H., Morimura, Y. and Okamoto, M., 2021. Programming Practice Python 2021.
Kumar, A.N., 2020, June. Long term retention of programming concepts learned using a software tutor. In International Conference on Intelligent Tutoring Systems (pp. 382-387). Springer, Cham.
Sigayret, K., Tricot, A. and Blanc, N., 2022. Unplugged or plugged-in programming learning: A comparative experimental study. Computers & Education, 184, p.104505.
Solanik, M., Bilanová, Z., Gecášeka, D., Gen?i, J. and Novák, D., 2021, November. Interactive web course for teaching system programming. In 2021 19th International Conference on Emerging eLearning Technologies and Applications (ICETA) (pp. 375-380). IEEE.
Stoffová, V., 2019. Learning Object-Oriented Programming by Creating Games. In The International Scientific Conference eLearning and Software for Education (Vol. 1, pp. 20-29). " Carol I" National Defence University.
Tu, Y.C., Dobbie, G., Warren, I., Meads, A. and Grout, C., 2018, February. An experience report on a boot-camp style programming course. In Proceedings of the 49th ACM Technical Symposium on Computer Science Education (pp. 509-514).
Wilbur, J., Gosling, L. and Jones, H., 2018. Breaking the barriers: disability, ageing and HIV in inclusive WASH programming. In Equality in Water and Sanitation Services (pp. 157-172). Routledge.
Yett, B., Snyder, C., Hutchins, N. and Biswas, G., 2020, December. Exploring the Relationship Between Collaborative Discourse, Programming Actions, and Cybersecurity and Computational Thinking Knowledge. In 2020 IEEE International Conference on Teaching, Assessment, and Learning for Engineering (TALE) (pp. 213-220). IEEE.